/* R19~R21 — 경기 상세 페이지. 핸드오프(handoff-game-detail/styles.css) 구조 참고,
   값은 전부 --bb-* 토큰으로 치환(원값 hex/px 직접 사용 금지). 모바일 375px 우선. */

/* ── 상단바 ──────────────────────────────────────────────────────── */
.gd-topbar {
  display: flex;
  align-items: center;
  gap: var(--bb-space-2);
  padding: var(--bb-space-3) var(--bb-space-3) var(--bb-space-2);
}
.gd-topbar__title {
  flex: 1;
  min-width: 0;
  font-size: 16px;
  font-weight: 700;
  color: var(--bb-ink);
  margin: 0;
}
/* 핸드오프 .navpdf — 다크 칩 (사용자 피드백 2026-07-25) */
.gd-topbar__pdf-chip {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  min-height: 30px;
  padding: 0 var(--bb-space-15);
  border-radius: var(--bb-radius-8);
  background: var(--bb-ink);
  border: 0;
  color: var(--bb-neutral-0);
  font-size: 11px;
  font-weight: 700;
  text-decoration: none;
  transition: background var(--bb-t-fast) var(--bb-ease);
}
.gd-topbar__pdf-chip:hover { background: var(--bb-neutral-700); }

/* ── 스코어 헤더(다크) ───────────────────────────────────────────── */
.gd-header {
  background: var(--bb-hero-dark);
  padding: var(--bb-space-4) var(--bb-space-3) var(--bb-space-5);
  border-radius: 0 0 var(--bb-radius-xl) var(--bb-radius-xl);
}
.gd-header__meta {
  display: flex;
  align-items: center;
  gap: var(--bb-space-1);
  justify-content: center;
  margin-bottom: var(--bb-space-3);
}
.gd-header__date,
.gd-header__tournament {
  font-size: 12px;
  color: var(--bb-neutral-400);
}
.gd-header__dot { color: var(--bb-neutral-600); }

.gd-header__score {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  gap: var(--bb-space-2);
}
.gd-header__team {
  min-width: 0;
  font-size: 14px;
  font-weight: 600;
  color: var(--bb-neutral-400);
}
/* 핸드오프 .dhead — 승팀명 화이트, 패팀명 그레이 (사용자 피드백 2026-07-25) */
.gd-header__team--win {
  font-weight: 700;
  color: var(--bb-neutral-0);
}
.gd-header__team--home { text-align: right; }
.gd-header__team--away { text-align: left; }
.gd-header__team-name {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  color: inherit;
  text-decoration: none;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  max-width: 100%;
}
a.gd-header__team-name:active { opacity: 0.7; }

.gd-header__scoreline {
  font-size: 32px;
  font-weight: 800;
  letter-spacing: -1.2px;
  color: var(--bb-neutral-600);   /* 핸드오프 .dhead .s u — 패팀 점수 딤 */
  white-space: nowrap;
}
.gd-header__score-value--win { color: var(--bb-primary); }   /* 사용자 확정(3차): 스코어 강조 주황 */
.gd-header__score-sep { color: var(--bb-neutral-700); margin: 0 4px; font-weight: 500; }

.gd-header__venue {
  margin: var(--bb-space-2) 0 0;
  text-align: center;
  font-size: 11px;
  color: var(--bb-neutral-500);
}

/* ── 셰브론(드릴다운 어포던스) ───────────────────────────────────── */
.gd-chevron { color: var(--bb-ink-muted); flex-shrink: 0; }
.gd-chevron--dark { color: var(--bb-neutral-500); }

/* ── 페이지 배경 (사용자 피드백 2026-07-25 3차 — 회색 배경 + 흰 카드) ── */
.gd-page {
  background: var(--bb-surface);
  min-height: 100vh;
  padding-bottom: var(--bb-space-4);
}
.gd-topbar { background: var(--bb-bg); }

/* ── 공용 블록 — 흰 카드 (구분선 대신 카드 분리) ─────────────────── */
.gd-block {
  background: var(--bb-bg);
  margin: var(--bb-space-2) var(--bb-space-3);
  padding: var(--bb-space-4) var(--bb-space-3);
  border: 1px solid var(--bb-border-soft);
  border-radius: var(--bb-radius-lg);
  box-shadow: var(--bb-shadow-sm);
}
.gd-block__title {
  display: flex;
  align-items: baseline;
  gap: var(--bb-space-2);
  font-size: 14px;
  font-weight: 800;
  color: var(--bb-ink);
  margin: 0 0 var(--bb-space-3);
}
.gd-block__title-sub {
  font-size: 10px;
  font-weight: 700;
  color: var(--bb-ink-muted);
  letter-spacing: 0.04em;
}
.gd-block__missing {
  font-size: 13px;
  color: var(--bb-ink-muted);
  text-align: center;
  padding: var(--bb-space-3) 0;
  margin: 0;
}

/* ── 쿼터별 득점표 ───────────────────────────────────────────────── */
.gd-quarters-table {
  width: 100%;
  border-collapse: collapse;
}
.gd-quarters-table th,
.gd-quarters-table td {
  text-align: center;
  font-size: 13px;
  padding: var(--bb-space-2) var(--bb-space-1);
}
.gd-quarters-table th {
  font-size: 11px;
  font-weight: 700;
  color: var(--bb-ink-muted);
  border-bottom: 1px solid var(--bb-border-soft);
}
.gd-quarters-table__name,
.gd-quarters-table th.gd-quarters-table__name {
  text-align: left;
  font-weight: 700;
  color: var(--bb-ink);
}
/* 핸드오프 .qt — TOTAL 블루(--blue→--bb-accent), 승팀 행 진하게 (사용자 피드백 2026-07-25) */
.gd-quarters-table td { color: var(--bb-ink-sub); font-weight: 700; }
.gd-quarters-table__total-head { color: var(--bb-primary); }   /* 사용자 확정(3차): 파랑→주황 */
.gd-quarters-table__total { font-weight: 800; color: var(--bb-ink-muted); }
.gd-quarters-table__row--win td { color: var(--bb-ink); }
.gd-quarters-table__row--win .gd-quarters-table__total { color: var(--bb-primary); }

/* ── 팀 합산 양방향 바 ───────────────────────────────────────────── */
.gd-teambars__head {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  padding-bottom: var(--bb-space-2);
  border-bottom: 1px solid var(--bb-border-soft);
  margin-bottom: var(--bb-space-2);
}
.gd-teambars__head-name {
  font-size: 12px;
  font-weight: 800;
}
.gd-teambars__head-name--home { text-align: right; color: var(--bb-ink-muted); }
.gd-teambars__head-name--away { text-align: left; color: var(--bb-ink-muted); }
.gd-teambars__head-name--win { color: var(--bb-primary); }   /* 사용자 확정(4차): 승팀 주황 */
.gd-teambars__head-vs {
  font-size: 10px;
  font-weight: 700;
  color: var(--bb-ink-muted);
  padding: 0 var(--bb-space-2);
}

.gd-bar-row {
  display: grid;
  grid-template-columns: 1fr 64px 1fr;
  align-items: center;
  gap: var(--bb-space-2);
  padding: var(--bb-space-2) 0;
}
.gd-bar-row__side {
  display: flex;
  align-items: center;
  gap: var(--bb-space-2);
  min-width: 0;
}
.gd-bar-row__side--home { flex-direction: row-reverse; }
.gd-bar-row__track {
  flex: 1;
  height: 8px;
  border-radius: var(--bb-radius-pill);
  background: var(--bb-surface);
  overflow: hidden;
}
.gd-bar-row__fill { height: 100%; width: 0; transition: width var(--bb-t-slow) var(--bb-ease); }
.gd-bar-row__fill--home { background: var(--bb-ink-muted); margin-left: auto; }
.gd-bar-row__fill--away { background: var(--bb-ink-muted); }
.gd-bar-row__fill--win { background: var(--bb-primary); }   /* 사용자 확정(4차): 승팀 주황 */
.gd-bar-row__value {
  font-size: 13px;
  font-weight: 700;
  color: var(--bb-ink-muted);   /* 핸드오프: 우세 쪽 숫자만 진하게 */
  min-width: 28px;
  text-align: center;
}
.gd-bar-row__value--lead { color: var(--bb-primary); font-weight: 800; }   /* 사용자 확정(5차): 앞서는 수치 주황 */
.gd-bar-row__label {
  text-align: center;
  font-size: 11px;
  font-weight: 700;
  color: var(--bb-ink-muted);
}

/* ── 개인 기록 팀 탭 ─────────────────────────────────────────────── */
/* 핸드오프 .tabs 세그먼트 컨트롤 (사용자 피드백 2026-07-25) */
.gd-team-tabs {
  display: flex;
  gap: var(--bb-space-1);
  padding: var(--bb-space-05);
  background: var(--bb-surface);
  border: 1px solid var(--bb-border-soft);
  border-radius: var(--bb-radius-8);
  margin-bottom: var(--bb-space-3);
}
.gd-team-tab {
  flex: 1;
  min-height: 40px;
  border: 0;
  border-radius: var(--bb-radius-sm);
  background: transparent;
  color: var(--bb-ink-muted);
  font-size: 13px;
  font-weight: 700;
  cursor: pointer;
  transition: background var(--bb-t-fast) var(--bb-ease), color var(--bb-t-fast) var(--bb-ease);
}
.gd-team-tab--active {
  background: var(--bb-bg);
  color: var(--bb-ink);
  box-shadow: var(--bb-shadow-sm);
}

.gd-players-table-head {
  display: grid;
  grid-template-columns: 1fr repeat(5, 40px);
  padding: 0 var(--bb-space-1) var(--bb-space-1);
  font-size: 10px;
  font-weight: 700;
  color: var(--bb-ink-muted);
}
.gd-players-table-head span:not(:first-child) { text-align: center; }

.gd-player-row {
  display: grid;
  grid-template-columns: 1fr repeat(5, 40px);
  align-items: center;
  min-height: var(--bb-tap-target);
  padding: 0 var(--bb-space-1);
  border-top: 1px solid var(--bb-border-soft);
}
.gd-player-row span:not(.gd-player-row__name) { text-align: center; font-size: 13px; color: var(--bb-ink); }
.gd-player-row__pts { font-weight: 800; }
.gd-player-row__minutes { color: var(--bb-ink-muted) !important; font-size: 11.5px !important; }

.gd-player-row__name {
  display: flex;
  align-items: center;
  gap: var(--bb-space-1);
  min-height: var(--bb-tap-target);
  font-size: 14px;
  font-weight: 700;
  color: var(--bb-ink);
  text-decoration: none;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
a.gd-player-row__name:active { background: var(--bb-surface); }
.gd-mvp-tag {
  flex-shrink: 0;
  font-size: 9px;
  font-weight: 800;
  color: var(--bb-primary-dark);
  background: var(--bb-primary-soft);
  border-radius: var(--bb-radius-4);
  padding: 1px 5px;
}
.gd-players__empty {
  font-size: 13px;
  color: var(--bb-ink-muted);
  text-align: center;
  padding: var(--bb-space-3) 0;
}
.gd-players__note {
  margin-top: var(--bb-space-2);
  font-size: 11px;
  color: var(--bb-ink-muted);
}

/* ── 부문별 리더 ─────────────────────────────────────────────────── */
.gd-leaders__head {
  display: flex;
  justify-content: space-between;
  padding-bottom: var(--bb-space-2);
  border-bottom: 1px solid var(--bb-border-soft);
  margin-bottom: var(--bb-space-2);
}
.gd-leaders__head-name { font-size: 11.5px; font-weight: 800; }
.gd-leaders__head-name--home { color: var(--bb-ink-muted); }
.gd-leaders__head-name--away { color: var(--bb-ink-muted); }
.gd-leaders__head-name--win { color: var(--bb-primary); }   /* 사용자 확정(4차): 승팀 주황 */

.gd-leader-row { padding: var(--bb-space-2) 0; border-bottom: 1px solid var(--bb-border-soft); }
.gd-leader-row__label {
  text-align: center;
  font-size: 10px;
  font-weight: 800;
  color: var(--bb-ink-muted);
  margin: 0 0 var(--bb-space-1);
}
.gd-leader-row__matchup {
  display: grid;
  grid-template-columns: 1fr auto 1px auto 1fr;
  align-items: center;
  gap: var(--bb-space-2);
}
.gd-leader-row__side { min-width: 0; }
.gd-leader-row__side--home { text-align: right; }
.gd-leader-row__side--away { text-align: left; }
.gd-leader-row__name {
  font-size: 12px;
  font-weight: 700;
  color: var(--bb-ink);
}
.gd-leader-row__value {
  font-size: 15px;
  font-weight: 800;
  min-width: 32px;
  text-align: center;
}
.gd-leader-row__value--home { color: var(--bb-ink-muted); }
.gd-leader-row__value--away { color: var(--bb-ink-muted); }
.gd-leader-row__value--win { color: var(--bb-primary); }   /* 사용자 확정(4차): 승팀 주황 */
.gd-leader-row__divider { width: 1px; height: 18px; background: var(--bb-border); }

/* ── PDF 카드 / VOD (핸드오프 .pdfrow / .pdfbtn — 사용자 피드백 2026-07-25) ── */
.gd-pdf-card {
  display: flex;
  align-items: center;
  gap: var(--bb-space-15);
  margin: var(--bb-space-2) var(--bb-space-3) 0;
  padding: var(--bb-space-15) var(--bb-space-3);
  border: 1px solid var(--bb-border);
  border-radius: var(--bb-radius-lg);
  border-bottom: 1px solid var(--bb-border);   /* .gd-block 의 soft border 오버라이드 */
  background: var(--bb-bg);
  transition: border-color var(--bb-t-fast) var(--bb-ease), box-shadow var(--bb-t-fast) var(--bb-ease);
}
.gd-pdf-card:hover {
  border-color: var(--bb-ink-muted);
  box-shadow: var(--bb-shadow);
}
.gd-pdf-card__icon {
  flex-shrink: 0;
  width: 34px;
  height: 34px;
  border-radius: var(--bb-radius-8);
  background: var(--bb-primary-soft);
  color: var(--bb-primary-dark);
  font-size: 9px;
  font-weight: 800;
  display: flex;
  align-items: center;
  justify-content: center;
}
.gd-pdf-card__body { flex: 1; min-width: 0; }
.gd-pdf-card__filename {
  font-size: 13px;
  font-weight: 700;
  color: var(--bb-ink);
  margin: 0 0 2px;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.gd-pdf-card__hint { font-size: 11px; font-weight: 600; color: var(--bb-ink-muted); margin: 0; }
.gd-pdf-card__btn {
  flex-shrink: 0;
  display: inline-flex;
  align-items: center;
  gap: var(--bb-space-1);
  min-height: 32px;
  padding: 0 var(--bb-space-15);
  border-radius: var(--bb-radius-8);
  background: var(--bb-ink);
  color: var(--bb-neutral-0);
  font-size: 11.5px;
  font-weight: 700;
  text-decoration: none;
}
.gd-pdf-card__btn:active { transform: scale(0.97); }

.gd-vod { padding: var(--bb-space-3); }

.gd-footnote {
  padding: 0 var(--bb-space-3) var(--bb-space-3);
  font-size: 11px;
  color: var(--bb-ink-muted);
  text-align: center;
}

/* 핸드오프 .note — 최하단 원본 요약 안내 */
.gd-source-note {
  padding: var(--bb-space-15) var(--bb-space-3) var(--bb-space-4);
  margin: 0;
  font-size: 11px;
  line-height: 1.5;
  color: var(--bb-ink-muted);
  text-align: center;
}

/* ── V3 돋보기(3차) — 리더/헤더 링크 정렬 (아이콘은 전역 .bb-mg/.bb-taprow) ── */
a.gd-leaders__head-name,
a.gd-leader-row__name {
  display: inline-flex;
  align-items: center;
  gap: var(--bb-space-1);
  color: inherit;
  text-decoration: none;
}
/* 4차: 팀명이 링크(a)여도 승팀 주황이 color:inherit 에 밀리지 않게 */
a.gd-leaders__head-name.gd-leaders__head-name--win { color: var(--bb-primary); }

/* ══ 검색 어포던스 V4 (2026-07-30) — "누를 수 있는 줄 모른다" 피드백 대응 ══
   헤더 아래 1회성 안내 배너 — "알겠어요" 로 영구 닫기(localStorage). 스타일은
   공용 컴포넌트로 승격됨(2026-07-31, 중복 구현 금지) → rtp-components.css 의
   .bb-hint* 참고(마크업도 .gd-search-hint → .bb-hint 로 이관, data-gd-search-hint*
   속성은 이 페이지 전용 훅으로 유지). 아이콘은 기존 돋보기(.bb-mg) 유지
   (화살표 칩 시안은 사용자 피드백으로 롤백). */
