/* cards.css —— 道具卡片网格(紧凑版) */
.card-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(148px, 1fr));
  gap: 10px;
}

.card {
  background: var(--card); border: 1px solid var(--border); border-radius: var(--radius);
  padding: 10px 6px 8px; text-align: center; cursor: pointer;
  transition: transform .12s, border-color .12s, background .12s;
  display: flex; flex-direction: column; align-items: center; gap: 5px; position: relative;
  min-width: 0;
}
.card:hover { transform: translateY(-3px); border-color: var(--accent); background: var(--card-hover); }
.card img.it-icon { width: 42px; height: 42px; }
.card .icon-ph { width: 42px; height: 42px; font-size: 17px; }
.card .zh-name {
  font-size: 13px; font-weight: 600; line-height: 1.25;
  overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical;
  min-height: 1.25em; word-break: break-all;
}
.card .en-name {
  font-size: 10.5px; color: var(--text-dim); line-height: 1.2; min-height: 13px;
  overflow: hidden; display: -webkit-box; -webkit-line-clamp: 1; -webkit-box-orient: vertical;
  white-space: nowrap; text-overflow: ellipsis; max-width: 100%;
}
.card .lv-tag {
  font-size: 11px; color: var(--text-dim); background: var(--bg2);
  border-radius: 10px; padding: 2px 8px;
}
.card .type-dot { position: absolute; top: 8px; left: 8px; width: 8px; height: 8px; border-radius: 50%; }
.card .evo-arrow {
  position: absolute; top: 5px; right: 8px; font-size: 13px; color: var(--accent);
  filter: drop-shadow(0 0 4px rgba(230,180,90,.6));
}
.card .dlc-tag {
  position: absolute; bottom: 6px; right: 6px; font-size: 10px; color: #ffd98a;
  background: rgba(0,0,0,.35); border-radius: 6px; padding: 1px 6px;
}
.card .dlc-tag.secret-tag { color: #9aa0c3; }

/* 角色卡片(复用 .card 结构;头像为 gif 动画) */
.char-grid { grid-template-columns: repeat(auto-fill, minmax(138px, 1fr)); }
.char-card .lv-tag { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; max-width: 100%; }
.char-card img.it-icon { width: 46px; height: 46px; }

@media (max-width: 640px) {
  .card-grid { grid-template-columns: repeat(auto-fill, minmax(124px, 1fr)); gap: 8px; }
  .char-grid { grid-template-columns: repeat(auto-fill, minmax(116px, 1fr)); }
}
