/* [page:records] 기록실 — 경기기록 + 선수기록 */

/* ═══ 서브탭 ═══ */
.rec-tabs{
  display:flex;border-bottom:1px solid var(--color-line);flex-shrink:0;
}
.rec-tab{
  flex:1;padding:var(--g12) 0;border:none;
  border-bottom:2.5px solid transparent;
  background:transparent;cursor:pointer;
  font-family:var(--ff-app);font-size:var(--fs-14);
  font-weight:var(--fw-bold);letter-spacing:var(--ls-snug);
  color:var(--color-muted2);text-align:center;
  -webkit-tap-highlight-color:transparent;
}
.rec-tab.active{
  border-bottom-color:var(--color-text);
  font-weight:var(--fw-black);color:var(--color-text);
}
.rec-panel{display:block}

/* ═══ 날짜바 (cal-nav 패턴 일치) ═══ */
.rec-datebar{
  display:flex;align-items:center;justify-content:center;
  gap:4px;margin:var(--g8) 0;padding:0;
}
.rec-datebar-btn{
  width:36px;height:36px;border:0;background:transparent;
  color:var(--color-muted);cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  border-radius:50%;-webkit-tap-highlight-color:transparent;
}
.rec-datebar-btn:active{background:var(--color-line)}
.rec-datebar-btn .material-symbols-outlined{font-size:20px}
.rec-datebar-text{
  font-weight:var(--fw-black);font-size:var(--fs-16);
  letter-spacing:var(--ls-snug);color:var(--color-muted);
  min-width:120px;text-align:center;line-height:36px;
  cursor:pointer;-webkit-tap-highlight-color:transparent;
}

/* ═══ 경기 드롭다운 바디 ═══ */
.rec-ga-body{padding:var(--g12) 0 var(--g8)}

/* 전광판 (역마진 풀너비) */
.rec-ga-scoreboard{
  margin-left:-8px;margin-right:-8px;padding:0;
  margin-bottom:var(--g12);
}
.rec-ga-scoreboard .rec-linescore{padding:var(--g4) var(--g8)}

/* 4토글 */
.rec-gd-tabs{
  display:flex;border-bottom:1px solid var(--color-line);
}
.rec-gd-tab{
  flex:1;padding:var(--g10) 0;
  border:none;border-bottom:2.5px solid transparent;
  background:transparent;cursor:pointer;
  font-size:var(--fs-12);font-weight:var(--fw-bold);
  color:var(--color-muted2);text-align:center;
  font-family:inherit;-webkit-tap-highlight-color:transparent;
}
.rec-gd-tab.active{
  border-bottom-color:var(--color-text);
  font-weight:var(--fw-black);color:var(--color-text);
}

/* 타자/투수 테이블 영역 */
.rec-gd-panel{display:none}
.rec-gd-panel.active{display:block}
.rec-gd-table-wrap{
  overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;
  overscroll-behavior-x:contain;
}
.rec-gd-table-wrap::-webkit-scrollbar{display:none}

/* 선발/교체 구분 */
.rec-gd-section-label{
  font-size:var(--fs-11);font-weight:var(--fw-black);color:var(--color-muted);
  padding:var(--g8) var(--pad-x) var(--g4);
}

.rec-linescore{
  overflow-x:auto;-webkit-overflow-scrolling:touch;
  scrollbar-width:none;padding:var(--g8) 0;
  overscroll-behavior-x:contain;
}
.rec-linescore::-webkit-scrollbar{display:none}
.rec-linescore table{
  width:100%;min-width:360px;border-collapse:collapse;
  font-size:var(--fs-11);font-weight:var(--fw-bold);font-variant-numeric:tabular-nums;
}
.rec-linescore th,.rec-linescore td{padding:5px 0;text-align:center;min-width:22px}
.rec-linescore th{
  color:var(--color-muted2);font-weight:var(--fw-mid);
  border-bottom:1px solid #ececec;
}
.rec-linescore td{color:var(--color-text)}
.rec-linescore .ls-team{
  text-align:left;padding-left:4px;min-width:36px;
  font-weight:var(--fw-black);position:sticky;left:0;
  background:inherit;z-index:1;
}
.rec-linescore .ls-total{font-weight:var(--fw-black);padding-left:6px}

.rec-box-section{padding:var(--g4) 0}
.rec-box-title{
  font-size:var(--fs-12);font-weight:var(--fw-black);
  padding:var(--g8) 0 var(--g4);color:var(--color-text);
  display:flex;align-items:center;gap:6px;
}
.rec-box-title .rec-game-dot{width:6px;height:6px}
.rec-box-table-wrap{
  overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;
  overscroll-behavior-x:contain;
}
.rec-box-table-wrap::-webkit-scrollbar{display:none}
.rec-box-table{
  width:100%;min-width:360px;border-collapse:collapse;
  font-size:var(--fs-11);font-variant-numeric:tabular-nums;
}
.rec-box-table th{
  padding:5px 6px;text-align:center;
  font-weight:var(--fw-mid);color:var(--color-muted2);
  border-bottom:1px solid #ececec;white-space:nowrap;
}
.rec-box-table td{
  padding:6px 6px;text-align:center;
  font-weight:var(--fw-bold);color:var(--color-text);
  border-bottom:1px solid #f5f5f5;
  white-space:nowrap;
}
.rec-box-table .bt-name{
  text-align:left;padding-left:4px;font-weight:var(--fw-black);
  white-space:nowrap;background:#fff;
}
.rec-box-table .bt-order{
  text-align:center;width:20px;
  color:var(--color-muted2);font-weight:var(--fw-mid);
  white-space:nowrap;background:#fff;
}

/* ═══ 검색창 ═══ */
.rec-search-wrap{
  display:flex;align-items:center;gap:var(--g8);
  padding:var(--g8) var(--pad-x);
  border-bottom:1px solid var(--color-line);
  position:relative;
}
.rec-search-icon{
  font-size:18px;color:var(--color-muted2);flex-shrink:0;
}
.rec-search-input{
  flex:1;border:none;outline:none;
  font-size:var(--fs-14);font-weight:var(--fw-bold);
  font-family:inherit;color:var(--color-text);
  background:transparent;padding:var(--g4) 0;
}
.rec-search-input::placeholder{color:var(--color-muted2);font-weight:var(--fw-mid)}

/* 검색 드롭다운 */
.rec-dropdown{
  max-height:260px;overflow-y:auto;-webkit-overflow-scrolling:touch;
  border-bottom:1px solid var(--color-line);background:#fff;
}
.rec-dropdown::-webkit-scrollbar{display:none}
.rec-dropdown-item{
  display:flex;align-items:center;gap:var(--g8);
  padding:var(--g12) var(--pad-x);cursor:pointer;
  -webkit-tap-highlight-color:transparent;
  border-bottom:1px solid #f5f5f5;
}
.rec-dropdown-item:active{background:#f8f9fa}
.rec-dropdown-name{font-size:var(--fs-14);font-weight:var(--fw-black);color:var(--color-text)}
.rec-dropdown-team{font-size:var(--fs-12);font-weight:var(--fw-bold)}
.rec-dropdown-type{font-size:var(--fs-10);font-weight:var(--fw-mid);color:var(--color-muted2);margin-left:auto}
.rec-dropdown-empty{
  padding:var(--g12) var(--pad-x);font-size:var(--fs-13);
  color:var(--color-muted);text-align:center;
}

/* ═══ 선수 상세 (인페이지) ═══ */
.rec-detail{padding:0}

.rec-detail-header{
  display:flex;align-items:baseline;gap:var(--g8);
  padding:var(--g12) var(--pad-x);
  border-bottom:1px solid var(--color-line);
}
.rec-detail-name{font-size:var(--fs-18);font-weight:var(--fw-black);color:var(--color-text)}
.rec-detail-meta{font-size:var(--fs-13);font-weight:var(--fw-bold)}
.rec-detail-sub{font-size:var(--fs-11);color:var(--color-muted2);margin-top:1px}

/* ═══ 아코디언 ═══ */
.rec-accordion{border-bottom:1px solid #f0f0f0}
.rec-accordion-head{
  display:flex;align-items:center;justify-content:space-between;
  padding:14px 18px;cursor:pointer;
  -webkit-tap-highlight-color:transparent;
}
.rec-accordion-head:active{background:#fafafa}
.rec-accordion-title{font-size:var(--fs-14);font-weight:var(--fw-black);color:var(--color-text)}
.rec-accordion-arrow{
  font-size:18px;color:var(--color-muted2);
  transition:transform .2s;flex-shrink:0;
}
.rec-accordion.is-open .rec-accordion-arrow{transform:rotate(180deg)}
.rec-accordion-body{display:none;padding:0 0 12px}
.rec-accordion.is-open .rec-accordion-body{display:block}

/* 스탯 그리드 */
.rec-sg{display:grid;grid-template-columns:1fr 1fr 1fr;gap:0;padding:0 18px}
.rec-sg-cell{
  display:flex;flex-direction:column;align-items:center;
  padding:10px 4px;border-bottom:1px solid #f5f5f5;
}
.rec-sg-label{font-size:var(--fs-10);font-weight:var(--fw-mid);color:var(--color-muted2);margin-bottom:2px}
.rec-sg-val{font-size:var(--fs-16);font-weight:var(--fw-black);letter-spacing:var(--ls-tight)}
.rec-sg-val.is-primary{font-size:var(--fs-22);color:var(--color-text)}

/* 레이더 차트 */
.rec-radar-wrap{display:flex;align-items:center;justify-content:center;padding:var(--pad-x)}
.rec-radar-wrap canvas{max-width:260px;max-height:260px}

/* ═══ 홈/원정 스플릿 ═══ */
.rec-split-area{padding:0 18px var(--g8)}
.rec-split-loading{padding:var(--g12);text-align:center}
.rec-split-empty{
  padding:var(--g12);text-align:center;font-size:var(--fs-12);
  color:var(--color-muted);font-weight:var(--fw-mid);
}
.rec-split-table{
  width:100%;border-collapse:collapse;font-size:var(--fs-13);font-variant-numeric:tabular-nums;
}
.rec-split-table th{
  padding:6px var(--g8);text-align:center;
  font-size:var(--fs-11);font-weight:var(--fw-bold);
  color:var(--color-muted);border-bottom:1px solid #ececec;
}
.rec-split-table th:first-child{text-align:left}
.rec-split-table td{
  padding:var(--g8);text-align:center;
  font-weight:var(--fw-bold);color:var(--color-text);
  border-bottom:1px solid #f5f5f5;
}
.rec-split-label{text-align:left!important;font-size:var(--fs-12);color:var(--color-muted);font-weight:var(--fw-mid)!important}
.rec-split-val{font-weight:var(--fw-black)!important}

/* ═══ 최근 폼 ═══ */
.rec-form-area{padding:0 18px var(--g12)}
.rec-form-chart-wrap{display:flex;justify-content:center;padding:var(--g4) 0 var(--g8)}
.rec-form-chart-wrap canvas{max-width:100%}
.rec-form-list{display:flex;flex-direction:column;gap:0}
.rec-form-row{
  display:flex;align-items:center;gap:6px;
  padding:6px 0;border-bottom:1px solid #f5f5f5;font-size:var(--fs-12);
}
.rec-form-row:last-child{border-bottom:none}
.rec-form-date{
  width:44px;flex-shrink:0;font-weight:var(--fw-mid);
  color:var(--color-muted);font-variant-numeric:tabular-nums;
}
.rec-form-opp{width:36px;flex-shrink:0;font-weight:var(--fw-bold);color:var(--color-text)}
.rec-form-stat{
  flex:1;text-align:right;font-weight:var(--fw-black);
  color:var(--color-text);font-variant-numeric:tabular-nums;
}
.rec-form-stat2{
  width:40px;flex-shrink:0;text-align:right;
  font-weight:var(--fw-bold);color:var(--color-muted);font-variant-numeric:tabular-nums;
}

/* ═══ vs 상대기록 테이블 ═══ */
.rec-vs-area{padding:0 18px var(--g8)}
.rec-vs-table{
  width:100%;border-collapse:collapse;
  font-size:var(--fs-12);font-variant-numeric:tabular-nums;
}
.rec-vs-table th{
  padding:6px var(--g4);text-align:center;
  font-size:var(--fs-10);font-weight:var(--fw-bold);
  color:var(--color-muted);border-bottom:1px solid #ececec;
}
.rec-vs-table th:first-child{text-align:left;padding-left:0}
.rec-vs-table td{
  padding:var(--g8) var(--g4);text-align:center;
  font-weight:var(--fw-bold);color:var(--color-text);
  border-bottom:1px solid #f5f5f5;
}
.rec-vs-table td:first-child{text-align:left;padding-left:0;font-weight:var(--fw-black)}
.rec-vs-team-badge{
  font-size:var(--fs-10);font-weight:var(--fw-bold);
  margin-left:4px;
}
.rec-vs-divider{
  padding:8px 18px 4px;font-size:var(--fs-11);font-weight:var(--fw-black);
  color:var(--color-muted);
}

/* ═══ 선수 비교 ═══ */
.rec-vs-select-wrap{padding:0 0 var(--g12)}
.rec-vs-select{
  width:100%;padding:var(--g8) var(--g12);
  font-size:var(--fs-14);font-weight:var(--fw-bold);font-family:inherit;
  border:1.5px solid var(--color-line);border-radius:10px;
  background:#fff;color:var(--color-text);
  -webkit-appearance:none;appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%239ca3af' stroke-width='1.5' fill='none'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 12px center;
  padding-right:32px;
}
.rec-cmp-header{
  display:flex;align-items:center;justify-content:center;
  gap:var(--g12);padding:14px 0 10px;
}
.rec-cmp-p{display:flex;flex-direction:column;align-items:center;flex:1;min-width:0}
.rec-cmp-pname{
  font-size:var(--fs-16);font-weight:var(--fw-black);
  white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%;
}
.rec-cmp-pteam{font-size:var(--fs-11);font-weight:var(--fw-mid);color:var(--color-muted)}
.rec-cmp-psub{font-size:var(--fs-11);color:var(--color-muted2);margin-top:1px}
.rec-cmp-vs{font-size:var(--fs-12);font-weight:var(--fw-black);color:var(--color-muted2);flex-shrink:0}
.rec-cmp-bars{padding:0 0 var(--g8)}
.rec-cmp-row{display:flex;align-items:center;gap:6px;padding:5px 0}
.rec-cmp-val{
  width:38px;flex-shrink:0;text-align:center;
  font-size:var(--fs-12);font-weight:var(--fw-bold);font-variant-numeric:tabular-nums;
}
.rec-cmp-val.is-win{font-weight:var(--fw-black)}
.rec-cmp-barwrap{
  flex:1;display:flex;align-items:center;
  height:22px;border-radius:11px;overflow:hidden;
  background:#f1f5f9;position:relative;
}
.rec-cmp-bar1{height:100%;border-radius:11px 0 0 11px;opacity:.35;transition:width .3s}
.rec-cmp-bar2{height:100%;border-radius:0 11px 11px 0;opacity:.35;transition:width .3s;margin-left:auto}
.rec-cmp-barlabel{
  position:absolute;left:50%;transform:translateX(-50%);
  font-size:var(--fs-10);font-weight:var(--fw-black);
  color:var(--color-text);white-space:nowrap;z-index:1;
}

/* ═══ 빈 상태 ═══ */
.rec-empty{
  display:flex;flex-direction:column;align-items:center;
  padding:40px var(--pad-x);gap:var(--g12);
}
.rec-empty-text{font-size:var(--fs-14);font-weight:var(--fw-bold);color:var(--color-muted)}

/* ═══ 스켈레톤 ═══ */
.rec-skeleton{padding:var(--g12) var(--pad-x)}
.rec-skeleton-row{
  height:42px;border-radius:var(--r-sm);
  background:linear-gradient(90deg,#D4D6DA 25%,#eee 50%,#D4D6DA 75%);
  background-size:200% 100%;animation:shimmer 1.5s infinite;
  margin-bottom:var(--g8);
}

/* 아코디언 행 확장 하이라이트 */
.rec-ga-row.is-expanded{background:#f8f9fa}
