/* ============================================================
   아이템 툴팁 v2 — 프리미엄 섹션 구분 디자인
   ============================================================ */

/* ── 컨테이너 ── */
.item-tooltip {
  position: absolute;
  z-index: 10000;
  pointer-events: none;
  max-width: 340px;
  min-width: 240px;
  animation: ttIn .1s ease-out;
}
@keyframes ttIn { from { opacity: 0; transform: scale(.97); } to { opacity: 1; transform: scale(1); } }

/* ── 본문 ── */
.tt-body {
  background: rgba(18, 18, 22, .96);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  border: 1px solid rgba(255, 255, 255, .1);
  border-radius: 10px;
  box-shadow:
    0 12px 40px rgba(0, 0, 0, .55),
    0 0 1px rgba(255, 255, 255, .08),
    inset 0 1px 0 rgba(255, 255, 255, .04);
  overflow: hidden;
  font-family: var(--font-ui, 'Pretendard', -apple-system, sans-serif);
  font-size: 13px;
  color: #c4c4cc;
  line-height: 1.45;
}

/* ── 헤더 ── */
.tt-head {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 14px 16px 12px;
  background: rgba(255, 255, 255, .025);
  border-bottom: 1px solid rgba(255, 255, 255, .06);
}
.tt-icon {
  width: 42px;
  height: 42px;
  object-fit: contain;
  image-rendering: pixelated;
  background: rgba(255, 255, 255, .04);
  border: 1px solid rgba(255, 255, 255, .08);
  border-radius: 8px;
  padding: 5px;
  flex-shrink: 0;
}
.tt-titles { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.tt-name {
  font-size: 15px;
  font-weight: 700;
  color: #f5f5f5;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.tt-type {
  font-size: 11px;
  color: #71717a;
  letter-spacing: .02em;
}

/* ── 섹션 (구분선 + 패딩) ── */
.tt-section {
  padding: 10px 16px;
  border-top: 1px solid rgba(255, 255, 255, .06);
}
.tt-section:first-child { border-top: none; }

/* ── 섹션 타이틀 ── */
.tt-sec-title {
  font-size: 10px;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: .08em;
  color: var(--color-accent, #f0b90b);
  margin-bottom: 6px;
  opacity: .8;
}

/* ── 스탯 행 (공격력 등) ── */
.tt-stat-row {
  display: flex;
  justify-content: space-between;
  padding: 3px 0;
}
.tt-stat-row .tt-label {
  color: #a1a1aa;
  font-size: 12px;
}
.tt-stat-row .tt-val {
  font-weight: 700;
  color: #e4e4e7;
  font-size: 13px;
}

/* ── 속성 행 (재질, 무게 등) ── */
.tt-prop {
  display: flex;
  justify-content: space-between;
  align-items: baseline;
  padding: 2px 0;
  gap: 12px;
}
.tt-prop .tt-label {
  color: #71717a;
  font-size: 11px;
  font-weight: 600;
  flex-shrink: 0;
  min-width: 56px;
}
.tt-prop span:last-child {
  text-align: right;
  color: #d4d4d8;
  font-size: 12px;
}
.tt-classes em {
  color: #93c5fd;
  font-style: normal;
  font-size: 12px;
}
.tt-accent {
  color: var(--color-accent, #f0b90b) !important;
  font-weight: 700 !important;
}
.tt-loc { color: #71717a; font-style: normal; font-size: 11px; }

/* ── 태그 리스트 (드랍, 사용처) ── */
.tt-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 4px;
}
.tt-tag {
  display: inline-block;
  padding: 3px 8px;
  background: rgba(255, 255, 255, .04);
  border: 1px solid rgba(255, 255, 255, .06);
  border-radius: 4px;
  font-size: 11px;
  color: #d4d4d8;
  line-height: 1.4;
}
.tt-tag em {
  color: #71717a;
  font-style: normal;
}

/* ── 제작 섹션 강조 ── */
.tt-craft-sec {
  background: rgba(240, 185, 11, .03);
}

/* ── 채집 섹션 강조 ── */
.tt-collect-sec {
  background: rgba(34, 197, 94, .04);
}

/* ── 로딩 ── */
.tt-loading {
  padding: 20px 16px;
  text-align: center;
  color: #71717a;
  font-size: 12px;
}
.tt-spinner {
  display: inline-block;
  width: 12px;
  height: 12px;
  border: 2px solid rgba(255, 255, 255, .08);
  border-top-color: var(--color-accent, #f0b90b);
  border-radius: 50%;
  animation: ttSpin .5s linear infinite;
  vertical-align: middle;
  margin-right: 6px;
}
@keyframes ttSpin { to { transform: rotate(360deg); } }
