/* Score presentation only. Shared site tokens and existing controls are retained. */
/* ── 색상 토큰 ────────────────────────────────────────────────────────────
   /score 는 바이올렛 테마 범위(.rt-header · .pd-explorer-v2 · .pd-md …)에 들어 있지 않아 identity.css 의 브랜드 주황이 새고 있었다.
   그래서 이 화면 안에서만 같은 토큰을 세우고(다크 전용), 표면·구분선·칩 값은 /market 의 실제 적용값(리그 카드·머리·행·종목 칩)을 따른다.
   색의 역할: 바이올렛 = 선택·이동(옅은 면과 밑줄), 빨강 = 실시간, 파랑 = 예정, 회색 = 종료.
   아래 --cs-* 는 다크에서만 정의된다. 라이트에서는 정의가 없어 각 규칙의 var(--cs-*, 대체값) 이 기존 라이트 값을 그대로 쓴다. */
html:root:not([data-theme="light"]) .pd-canonical-scores {
 --rt-brand:#956BFF; --rt-brand-rgb:149,107,255; --rt-brand-amber:#B49AFF;
 --rt-accent:var(--rt-brand); --rt-accent-hover:var(--rt-brand-amber); --rt-accent-text:var(--rt-brand-amber);
 --rt-on-brand:#101322; --rt-selected:rgba(149,107,255,.14); --rt-data-blue:#4DA3FF;
 --t3-green:var(--rt-accent); --t3-green-text:var(--rt-accent-text); --t3-accent:var(--rt-accent);
 --cs-card-bg:linear-gradient(rgba(13,19,46,.96),rgba(9,14,36,.98)); --cs-card-line:rgba(149,107,255,.28);
 --cs-head-bg:linear-gradient(rgba(149,107,255,.10),rgba(149,107,255,.035)); --cs-head-line:rgba(149,107,255,.16);
 --cs-cols-bg:rgba(8,10,26,.55); --cs-line:rgba(149,107,255,.14); --cs-hover:rgba(149,107,255,.08);
 --cs-chip-bg:rgba(149,107,255,.06); --cs-chip-line:rgba(149,107,255,.2); --cs-chip-text:#CFC6EE;
 --cs-chip-hover-bg:rgba(149,107,255,.16); --cs-chip-hover-line:rgba(149,107,255,.45);
 --cs-chip-on:linear-gradient(180deg,#9b79ff,#7549eb); --cs-chip-on-line:rgba(190,165,255,.5);
 --cs-count-bg:rgba(149,107,255,.18); --cs-count-line:rgba(167,123,255,.4); --cs-count-text:#D7C8FF;
 --cs-tab-on:rgba(149,107,255,.22);
 --cs-fin-bg:rgba(170,177,199,.12); --cs-fin-text:#AAB1C7;
 --cs-up-text:#7DB8FF;
 --cs-live-bg:rgba(239,71,111,.20); --cs-live-text:#FF8FA3; --cs-live:#EF476F; --cs-score-live:#fff;
}
.pd-canonical-scores [hidden] { display:none !important; }
.pd-cs-heading { display:flex; justify-content:flex-end; align-items:center; margin:0 0 6px; }   /* 제목은 화면에서 뺐다(h1 은 스크린리더용으로 남김) — 15초 갱신 안내만 오른쪽에 */
.pd-cs-refresh { font-size:11px; color:var(--t3-text-3); white-space:nowrap; }
.pd-cs-refresh[hidden] { display:none; }
.pd-cs-heading:has(.pd-cs-refresh[hidden]) { margin:0; }   /* 정상 갱신 문구를 감추면 자리도 남기지 않는다 */
.pd-cs-refresh:before { content:''; display:inline-block; width:6px; height:6px; background:#34d399; border-radius:50%; margin-right:7px; }
.pd-cs-note { font-size:10px; color:var(--t3-text-3); margin:8px 0; }

/* ── 상단 카드: /market 의 .pd-sports-toolbar 와 같은 바깥 카드(여백 12/14 · 반지름 16) 안에 종목 칩 → 구분선 → 상태·날짜 줄 ── */
.pd-cs-toolbar { margin:0 0 14px; padding:12px 14px; border:1px solid var(--cs-card-line,var(--t3-border)); border-radius:16px; background:var(--cs-card-bg,var(--t3-surface)); }
.pd-cs-toolbar .pd-cs-note { margin:8px 0 0; }
.pd-cs-toolbar .pd-sc-bar { margin:11px 0 0; padding:11px 0 0; border-top:1px solid var(--cs-chip-line,var(--t3-border-soft)); border-bottom:0; }

/* ── 종목 카테고리: /market 의 종목 칩과 같은 알약(아이콘 + 이름 + 선택적 경기 수) ── */
.pd-canonical-scores .pd-sc-sports { display:flex; flex-wrap:wrap; align-items:center; gap:6px; margin:0; }
.pd-canonical-scores .pd-sc-sport { box-sizing:border-box; display:inline-flex; align-items:center; justify-content:center; gap:5px; height:36px; padding:0 8px; border:1px solid var(--cs-chip-line,var(--t3-border)); border-radius:9px; background:var(--cs-chip-bg,var(--t3-surface)); color:var(--cs-chip-text,var(--t3-text-2)); font-size:13px; font-weight:600; line-height:1.25; white-space:nowrap; text-decoration:none; transition:background-color .18s ease,border-color .18s ease,color .18s ease; }
.pd-canonical-scores .pd-sc-sport:hover { border-color:var(--cs-chip-hover-line,var(--t3-text-3)); background:var(--cs-chip-hover-bg,var(--t3-surface-2)); color:var(--t3-text); }
.pd-canonical-scores .pd-sc-sport.is-active { border-color:var(--cs-chip-on-line,var(--t3-green)); background:var(--cs-chip-on,var(--t3-green)); color:var(--rt-on-brand,#fff); font-weight:700; }
html:root:not([data-theme="light"]) .pd-canonical-scores .pd-sc-sport.is-active { color:#fff; }
.pd-canonical-scores .pd-sc-sport:focus-visible { outline:2px solid var(--rt-accent-hover,var(--t3-green)); outline-offset:2px; }
.pd-canonical-scores .pd-sc-sport-icon { flex:none; width:20px; height:20px; font-size:17px; line-height:20px; text-align:center; }
.pd-cs-sport-count { display:inline-flex; align-items:center; justify-content:center; min-width:20px; height:20px; box-sizing:border-box; padding:0 5px; border:1px solid var(--cs-count-line,var(--t3-border)); border-radius:999px; background:var(--cs-count-bg,var(--t3-surface-2)); color:var(--cs-count-text,var(--t3-text-2)); font-size:11px; font-weight:700; font-variant-numeric:tabular-nums; }
.pd-canonical-scores .pd-sc-sport.is-active .pd-cs-sport-count { border-color:rgba(255,255,255,.38); background:rgba(255,255,255,.22); color:#fff; }
.pd-canonical-scores[data-sport="mma"] .pd-sc-scores .pd-sc-num,
.pd-canonical-scores[data-sport="mma"] .pd-sc-scores .pd-cs-score-separator { display:none; }
.pd-cs-bout-state { font-size:14px; font-weight:500; white-space:nowrap; }

/* ── 상태 탭(전체·실시간·예정·종료) + 날짜 줄: /market 의 날짜·검색 줄 값(높이 36 · 반지름 9)과 맞춘다 ── */
.pd-canonical-scores .pd-sc-bar { gap:14px; }
.pd-canonical-scores .pd-sc-tabs { box-sizing:border-box; height:36px; align-items:center; gap:4px; padding:2px; border:1px solid var(--cs-card-line,var(--t3-border)); border-radius:9px; background:var(--cs-chip-bg,var(--t3-surface)); }
.pd-canonical-scores .pd-sc-tab { padding:0 12px; height:28px; border-radius:7px; }
.pd-canonical-scores .pd-sc-tab:hover { color:var(--t3-text); background:var(--cs-chip-hover-bg,var(--t3-surface-2)); }
.pd-canonical-scores .pd-sc-tab.is-active { background:var(--cs-tab-on,var(--t3-green)); color:var(--t3-text); }
.pd-canonical-scores .pd-sc-tab.is-active .pd-sc-tabnum { color:var(--rt-accent-hover,rgba(255,255,255,.85)); }
.pd-canonical-scores .pd-sc-tab[data-tab="live"]:not(.is-active) .pd-sc-tabnum { color:var(--cs-live-text,var(--t3-text-3)); }
.pd-canonical-scores .pd-sc-tab[data-tab="upcoming"]:not(.is-active) .pd-sc-tabnum { color:var(--cs-up-text,#1F6FD6); }
/* 날짜 이동: /market 의 날짜 줄과 같은 모양 — 분할 ‹ 오늘 › (154×36 · 반지름 9)과 날짜 선택(36 높이), 이동은 /market 의 검색 버튼과 같은 보라 채움 */
.pd-cs-dates,.pd-cs-dates form { display:flex; align-items:center; gap:10px; margin:0; }
.pd-cs-datenav { display:flex; height:36px; overflow:hidden; border:1px solid var(--cs-card-line,var(--t3-border)); border-radius:9px; background:var(--cs-chip-bg,var(--t3-surface)); }
.pd-cs-datenav a { display:flex; align-items:center; justify-content:center; box-sizing:border-box; height:34px; min-width:38px; color:var(--t3-text-2); font-size:20px; line-height:1; text-decoration:none; }
.pd-cs-datenav a:hover { background:var(--cs-chip-hover-bg,var(--t3-surface-2)); color:var(--t3-text); }
.pd-cs-datenav .pd-cs-today { min-width:76px; border-left:1px solid var(--cs-card-line,var(--t3-border)); border-right:1px solid var(--cs-card-line,var(--t3-border)); background:var(--cs-chip-bg,transparent); color:var(--t3-text); font-size:13px; font-weight:700; }
.pd-cs-date { box-sizing:border-box; height:36px; width:190px; padding:0 12px; color:var(--t3-text); background:var(--cs-chip-bg,var(--t3-surface-2)); border:1px solid var(--cs-card-line,var(--t3-border)); border-radius:9px; color-scheme:dark; font:inherit; font-size:14px; font-weight:700; }
.pd-cs-go { box-sizing:border-box; height:36px; min-width:68px; padding:0 18px; border:1px solid var(--cs-chip-on-line,var(--t3-green)); border-radius:9px; background:var(--cs-chip-on,var(--t3-green)); color:#fff; font:inherit; font-size:14px; font-weight:700; cursor:pointer; }
.pd-cs-go:hover { filter:brightness(1.08); }
html[data-theme="light"] .pd-cs-date { color-scheme:light; }

/* ── 표: /market 의 리그 카드와 같은 바탕·테두리, 머리·행 구분선은 같은 바이올렛 톤의 옅은 값 ── */
.pd-cs-table { --score-columns:156px minmax(0,1fr) 78px minmax(0,1fr); border:1px solid var(--cs-card-line,var(--t3-border)); border-radius:12px; overflow:hidden; background:var(--cs-card-bg,transparent); }
.pd-cs-columns,.pd-canonical-scores.pd-scores .pd-sc-list .pd-sc-row { display:grid; grid-template-columns:var(--score-columns); gap:0 10px; align-items:center; padding:0 12px; }
.pd-cs-columns { height:34px; background:var(--cs-cols-bg,var(--t3-surface-2)); border-bottom:1px solid var(--cs-head-line,transparent); font-size:11px; color:var(--t3-text-2); }
.pd-cs-columns span { text-align:center; }
.pd-cs-columns span:nth-child(2) { text-align:right; padding-right:14px; }
.pd-cs-columns span:nth-child(4) { text-align:left; padding-left:14px; }
@media(min-width:901px) { .pd-cs-columns { display:none; } }   /* PC 는 열 머리글 줄을 쓰지 않는다(모바일은 유지). 마크업은 그대로 둔다. */
.pd-canonical-scores.pd-scores .pd-sc-league { border:0; border-radius:0; margin:0; background:transparent; }
/* 리그 수백 개가 한 화면에 그려지므로 화면 밖 리그는 렌더링을 미룬다. 크기는 처음 그려진 뒤 브라우저가 기억한다(auto). .pd-cs-table 이 이미 overflow:hidden 이라 잘릴 내용은 없다. */
.pd-canonical-scores .pd-sc-league { content-visibility:auto; contain-intrinsic-size:auto 180px; }
.pd-canonical-scores .pd-league-head { padding:0; min-height:0; border:0; border-top:1px solid var(--cs-head-line,var(--t3-border)); border-bottom:1px solid var(--cs-head-line,var(--t3-border)); background:var(--cs-head-bg,var(--t3-surface-2)); }
.pd-canonical-scores .pd-sc-league:first-child .pd-league-head { border-top:0; }
.pd-cs-collapse { width:100%; min-width:0; display:flex; align-items:center; gap:10px; padding:8px 12px; color:var(--t3-text); text-align:left; cursor:default; }   /* 접기 기능 없음: 버튼·화살표 없이 리그 이름 줄만 */
.pd-canonical-scores .pd-league-name { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:15px; font-weight:700; }
.pd-cs-league-icon { width:22px; height:16px; display:flex; align-items:center; justify-content:center; flex-shrink:0; overflow:hidden; border-radius:2px; font-size:9px; background:var(--cs-count-bg,var(--t3-surface-3)); }
.pd-cs-league-icon img { width:100%; height:100%; object-fit:cover; }
.pd-canonical-scores.pd-scores .pd-sc-list .pd-sc-row { min-height:36px; cursor:default; border-top:1px solid var(--cs-line,var(--t3-border-soft)); background:var(--cs-card-bg,var(--t3-surface)); }
.pd-canonical-scores.pd-scores .pd-sc-list .pd-sc-row:hover { background:var(--cs-hover,var(--t3-surface-2)); }
/* 경기시간 / 상태: 한 칸에 시간(왼쪽) + 상태 배지(오른쪽)를 가로로, 칸 전체는 가운데. 예정 경기는 시간만(배지를 숨기면 빈 자리도 없다). */
.pd-cs-timecell { display:flex; align-items:center; justify-content:center; gap:8px; min-width:0; }
.pd-cs-kickoff { flex:none; font-size:14px; color:var(--t3-text-2); white-space:nowrap; text-align:center; font-variant-numeric:tabular-nums; }

/* 상태 배지: 종료 회색 · 예정 파랑 · 실시간 빨강(글자 대비 AA 이상). */
.pd-canonical-scores .pd-sc-list .pd-sc-state { flex:none; border:0; flex-direction:row; flex-wrap:wrap; gap:2px 4px; justify-content:center; white-space:normal; padding:3px 4px; border-radius:4px; background:var(--cs-fin-bg,var(--t3-surface-2)); color:var(--cs-fin-text,var(--t3-text-2)); font-size:12px; line-height:1.2; min-height:24px; }
.pd-canonical-scores .pd-sc-upcoming .pd-sc-state { display:none; }
/* 한 칸에는 하나만: 예정=시작 시간, 그 밖(실시간·종료·기타)=상태 배지. '실시간' 문구는 쓰지 않는다. 서버 행과 갱신 행이 같은 DOM 이라 CSS 로 한 번에 처리한다. */
.pd-canonical-scores .pd-sc-row:not(.pd-sc-upcoming) .pd-cs-kickoff,.pd-canonical-scores .pd-cs-live-label { display:none; }
.pd-canonical-scores .pd-sc-list .pd-sc-state { min-width:44px; align-items:center; box-sizing:border-box; }
.pd-canonical-scores .pd-sc-live .pd-sc-state { background:var(--cs-live-bg,rgba(185,47,47,.35)); color:var(--cs-live-text,#ffb4ac); font-weight:700; }
.pd-cs-live-label { font-size:10px; font-weight:700; }
/* 실시간 줄: 왼쪽 3px 붉은 선 + 아주 옅은 붉은 단색 바탕(그라데이션 없음). 호버에서도 붉은 기운을 잃지 않는다. */
.pd-canonical-scores.pd-scores .pd-sc-list .pd-sc-row.pd-sc-live { box-shadow:inset 3px 0 var(--cs-live,#ff7417); background:linear-gradient(rgba(239,71,111,.07),rgba(239,71,111,.07)),var(--cs-card-bg,var(--t3-surface)); }
.pd-canonical-scores.pd-scores .pd-sc-list .pd-sc-row.pd-sc-live:hover { background:linear-gradient(rgba(239,71,111,.11),rgba(239,71,111,.11)),var(--cs-hover,var(--t3-surface-2)); }

/* 팀: 양쪽이 가운데 스코어를 향한다 — 홈은 오른쪽 정렬, 원정은 왼쪽 정렬이고 로고는 스코어 쪽(홈은 이름 오른쪽, 원정은 이름 왼쪽)에 붙는다. 긴 팀명은 PC 한 줄 말줄임, 모바일 두 줄(아래). */
.pd-canonical-scores .pd-sc-row .pd-sc-team { height:auto; min-width:0; display:flex; align-items:center; justify-content:flex-start; gap:8px; font-size:15px; line-height:18px; overflow:hidden; }
.pd-canonical-scores .pd-sc-row .pd-cs-home { flex-direction:row-reverse; padding-right:14px; }   /* row-reverse: 시작 쪽이 오른쪽이라 로고+이름 묶음이 스코어 쪽으로 붙는다 */
.pd-canonical-scores .pd-sc-row .pd-cs-away { padding-left:14px; }
.pd-cs-team-name { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; min-width:0; }
.pd-cs-home .pd-cs-team-name { text-align:right; }
.pd-cs-away .pd-cs-team-name { text-align:left; }
.pd-cs-logo-slot { display:inline-flex; position:relative; width:22px; height:22px; flex:0 0 22px; align-items:center; justify-content:center; }
.pd-cs-logo { position:absolute; inset:0; width:22px; height:22px; object-fit:contain; background:var(--t3-surface); }
/* 거의 검은 문양뿐인 로고(JS 가 픽셀로 판정해 is-dark-logo 부여): 다크 테마에서만 은은한 회색 칩 배경. 크기·위치는 그대로. */
.pd-cs-logo.is-dark-logo { background:rgba(176,181,206,.82); border-radius:5px; }
html[data-theme="light"] .pd-cs-logo.is-dark-logo { background:var(--t3-surface); }
.pd-cs-fallback.pd-md-badge { width:21px; height:21px; display:flex; align-items:center; justify-content:center; border:1px solid var(--t3-border); border-radius:5px 5px 9px 9px; background:var(--t3-surface-2); color:var(--t3-text-3); font-size:8px; font-weight:700; }

/* 스코어: 종료·실시간은 밝은 글자(실시간이 더 굵게), 예정은 흐리게. 가운데 정렬 유지. */
.pd-canonical-scores .pd-sc-row .pd-sc-scores { flex-direction:row; gap:6px; align-items:center; justify-content:center; font-variant-numeric:tabular-nums; }
.pd-canonical-scores .pd-sc-list .pd-sc-num { height:auto; font-size:16px; line-height:20px; color:var(--t3-text); font-weight:600; }
.pd-canonical-scores .pd-sc-list .pd-sc-live .pd-sc-num { color:var(--cs-score-live,var(--t3-text)); font-weight:800; }
.pd-cs-score-separator { font-size:14px; color:var(--t3-text-3); }
.pd-canonical-scores .pd-sc-upcoming .pd-sc-num { color:var(--t3-text-3); font-weight:400; }
.pd-canonical-scores .pd-sc-upcoming .pd-sc-num:last-child,.pd-canonical-scores .pd-sc-upcoming .pd-cs-score-separator { display:none; }
.pd-cs-ht { text-align:center; color:var(--t3-text-3); font-size:11px; }
.pd-canonical-scores[data-sport="soccer"] .pd-cs-ht { display:none; }   /* 축구의 '전반' 칸은 쓰지 않는다(갱신 스크립트가 서버 행 판별에 쓰는 자리표시 셀만 남는다) */
.pd-canonical-scores .pd-sc-row:not(.pd-sc-live) .pd-cs-live-label { display:none; }
.pd-canonical-scores[data-tab="live"] .pd-sc-row:not(.pd-sc-live),.pd-canonical-scores[data-tab="upcoming"] .pd-sc-row:not(.pd-sc-upcoming),.pd-canonical-scores[data-tab="finished"] .pd-sc-row:not(.pd-sc-finished) { display:none; }
@media(max-width:900px) {
 .pd-cs-table { --score-columns:124px minmax(0,1fr) 76px minmax(0,1fr); }
 .pd-cs-columns,.pd-canonical-scores.pd-scores .pd-sc-list .pd-sc-row { gap:0 6px; padding:0 8px; }
}
@media(max-width:600px) {
 .pd-cs-heading { justify-content:flex-start; margin-bottom:8px; }
 .pd-cs-refresh { font-size:10px; }
 .pd-canonical-scores .pd-sc-tabs { width:100%; display:flex; }
 .pd-canonical-scores .pd-sc-tab { flex:1; justify-content:center; padding:0 4px; font-size:11px; }   /* 높이는 PC 와 같은 28px(막대 안에 들어가게) — 위아래 padding 이 막대를 넘쳐 활성 칸이 튀어나왔다 */
 .pd-canonical-scores .pd-sc-bar { gap:10px; }
 .pd-cs-dates { gap:5px; flex-wrap:wrap; }
 .pd-cs-dates form { gap:5px; }
 .pd-cs-columns { grid-template-columns:78px minmax(0,1fr) 62px minmax(0,1fr); height:29px; gap:0 5px; font-size:10px; }
 .pd-cs-columns span:nth-child(5) { display:none; }
 .pd-cs-ht { display:none; }
 .pd-cs-columns span:nth-child(2) { padding-right:6px; }
 .pd-cs-columns span:nth-child(4) { padding-left:6px; }
 .pd-cs-collapse { padding:6px 7px; gap:6px; }
 .pd-canonical-scores .pd-league-name { font-size:13px; }
 .pd-cs-league-icon { width:19px; height:14px; }
 .pd-cs-live-label { display:none; }
 .pd-canonical-scores .pd-sc-sports { gap:5px; }
 .pd-canonical-scores .pd-sc-sport { padding:0 7px; font-size:12px; }
}

.pd-cs-sport-pending { align-self:center; color:#8a99aa; font-size:12px; padding:10px; }
.pd-cs-match-link { position:absolute; inset:0; z-index:1; border-radius:3px; }
.pd-canonical-scores .pd-sc-row { position:relative; }
.pd-cs-match-link:focus-visible { outline:2px solid var(--rt-accent-hover,#ff7b31); outline-offset:-2px; }

/* 세부 점수(쿼터·피리어드·세트·이닝별)는 화면에 두지 않는다. 자료(detail·segments)와 갱신 스크립트가 쓰는 셀은 DOM 에 그대로 두고 보이지만 않게 해서,
   모든 종목이 시간/상태 | 홈 | 스코어 | 원정 4칸이 되고 남는 너비는 팀명 칸(1fr)이 쓴다. */
.pd-canonical-scores .pd-cs-ht, .pd-canonical-scores .pd-cs-columns span:nth-child(5) { display:none; }

/* Independent action above the existing match overlay; reserve a right-hand slot. */
.pd-canonical-scores .pd-cs-columns,
.pd-canonical-scores.pd-scores .pd-sc-list .pd-sc-row { padding-right:38px; }
.pd-cs-analysis-link { position:absolute; right:6px; top:50%; transform:translateY(-50%); z-index:2; display:flex; align-items:center; justify-content:center; width:26px; height:28px; border:1px solid var(--cs-chip-line,var(--t3-border)); border-radius:4px; color:var(--rt-accent-hover,#ff852b); background:var(--cs-chip-bg,var(--t3-surface)); text-decoration:none; font-size:18px; line-height:1; }
.pd-cs-analysis-link:hover { background:var(--cs-chip-hover-bg,var(--t3-surface-2)); border-color:var(--cs-chip-hover-line,var(--t3-border)); }
.pd-cs-analysis-link:focus-visible { outline:2px solid var(--rt-accent-hover,#ff852b); outline-offset:2px; }

/* PC(≥1024px) 본문 시작 위치 통일 — 레이아웃이 헤더 아래 16px 를 주므로 경기 결과 화면 안쪽 위 여백(16px)은 뺀다. */
@media (min-width: 1024px) { .pd-wrap.pd-canonical-scores { padding-top: 0; } }
/* PC(≥1024px) 콘텐츠 너비를 /market·/rank 와 같은 공통 기준(max-width 1400px, 좌우 여백 0)으로 맞춘다. 예전 1220px·좌우 16px 은 이 화면에서만 좁았다. 모바일·태블릿(<1024px)은 그대로. */
@media (min-width: 1024px) { .pd-wrap.pd-canonical-scores.pd-scores { max-width: 1400px; padding-left: 0; padding-right: 0; } }

/* 라이트: 라이트 파생 규칙(주황 갈색 스코어)보다 우선하도록 스코어 글자만 기본 글자색으로 맞춘다. 나머지는 위 var(--cs-*, 대체값)이 기존 라이트 값을 그대로 쓴다. */
html[data-theme="light"] .pd-canonical-scores .pd-sc-list .pd-sc-num,
html[data-theme="light"] .pd-canonical-scores .pd-sc-list .pd-sc-live .pd-sc-num { color:var(--t3-text); }
html[data-theme="light"] .pd-canonical-scores .pd-sc-list .pd-sc-upcoming .pd-sc-num { color:var(--t3-text-3); }
html[data-theme="light"] .pd-canonical-scores .pd-sc-sport.is-active { border-color:var(--rt-brand); color:var(--rt-on-brand); }   /* 라이트 파생 규칙의 주황 테두리·어두운 글자를 덮는다 */

/* 라이브스코어: 종목·상태 탭 옆 숫자는 표시하지 않는다 (JS가 요소를 참조하므로 DOM 은 유지) */
.pd-canonical-scores .pd-cs-sport-count,
.pd-canonical-scores .pd-sc-tab .pd-sc-tabnum { display:none !important; }
/* 상태 배지 짧은 표기(2Q 8′ · 3P 12′ · 2SET · MAP 2 · GAME 2)는 줄바꿈하지 않고 가운데 정렬한다. */
.pd-canonical-scores .pd-sc-state { justify-content:center; text-align:center; }
.pd-canonical-scores .pd-cs-clock { white-space:nowrap; }

/* "해당하는 경기가 없습니다" 박스: 전역 .pd-empty 의 청록 배경(--rt-surface-1) 대신 이 화면의 다른 카드(상단 선택 카드)와 같은 기본 카드 배경·테두리를 쓴다. */
html:root .pd-wrap.pd-canonical-scores .pd-cs-empty { background:var(--cs-card-bg,var(--t3-surface)); border:1px solid var(--cs-card-line,var(--t3-border)); border-radius:16px; }
/* 빈 상태 박스가 보일 때는 목록 표(머리 줄·위 테두리 1px)를 접어, 박스 위에 가는 선이 남지 않게 한다. */
.pd-canonical-scores .pd-cs-table:has(~ .pd-cs-empty:not([hidden])) { display:none; }

/* PC(≥901px) 경기 그룹 중앙 정렬: 홈 | 스코어 | 원정이 행(콘텐츠) 중심에 오도록 양쪽 바깥 열을 같은 너비로 둔다.
   왼쪽 바깥 열 = 경기시간/상태, 오른쪽 바깥 열 = 분석 링크 자리(링크는 절대 위치라 열은 비어 있다).
   예전에는 왼쪽 156px · 오른쪽 38px 로 비대칭이어서 그룹이 중심보다 70px 오른쪽에 있었다. 바깥 열 너비를 줄여(156→72) 팀명 칸이 오히려 넓어졌다.
   태블릿(601~900px)·모바일(≤600px)은 기존 구조를 유지한다. 서버 행과 15초 갱신 행이 같은 DOM 이라 CSS 한 곳으로 둘 다 처리된다. */
@media (min-width:901px) {
 .pd-cs-table { --score-columns:72px minmax(0,1fr) 84px minmax(0,1fr) 72px; }
 .pd-canonical-scores .pd-cs-columns,
 .pd-canonical-scores.pd-scores .pd-sc-list .pd-sc-row { gap:0 8px; padding-left:10px; padding-right:10px; }
}

/* ═══ PC(≥1024px) 상단 필터 개편 ═══════════════════════════════════════════════════════════
   ① 종목 카테고리바: 사용 가능한 전체 너비에 균등 배치(버튼 flex:1 1 0, 내용보다 좁아지면 내용 너비 유지 → 글자 잘림 없음).
   ② 날짜 선택기: /market 의 달력 컴포넌트(마크업·prediction.js)를 그대로 쓰고, 날짜를 고르면 바로 이동한다('이동' 버튼 없음).
      /market 의 스타일(market_sidebar_list.css 의 .rt-date-nav · .rt-calendar-* 규칙, 다크·라이트)을 이 화면 범위(.pd-canonical-scores)로 옮겨 온 것이다.
      /market 의 파일은 건드리지 않았다. 태블릿·모바일(<1024px)은 기존 입력 + '이동' 버튼 그대로다. */
.pd-canonical-scores .pd-cs-picker { display:none; }
@media (min-width:1024px) {
  .pd-canonical-scores .pd-sc-sports { flex-wrap:wrap; gap:8px; }
  .pd-canonical-scores .pd-sc-sport { flex:1 1 0; min-width:max-content; white-space:nowrap; }
  .pd-canonical-scores .pd-cs-dates { gap:12px; }
  .pd-canonical-scores .pd-cs-dates > .pd-cs-form-native { display:none; }
  .pd-canonical-scores .pd-cs-dates > .pd-cs-picker { display:flex; flex:none; }
  .pd-canonical-scores .rt-date-picker, .pd-canonical-scores .rt-date-nav { display:flex; align-items:center; }
  .pd-canonical-scores .rt-date-picker { position:relative; }
  .pd-canonical-scores .rt-date-nav { height:40px; overflow:hidden; box-sizing:border-box; border:1px solid var(--rt-border); border-radius:7px; background:var(--rt-surface-2); }
  .pd-canonical-scores .rt-calendar-trigger, .pd-canonical-scores .rt-date-nav a { box-sizing:border-box; height:40px; color:var(--rt-text-2); font:inherit; font-size:11px; }
  .pd-canonical-scores .rt-calendar-trigger { display:grid; grid-template-columns:18px minmax(0,1fr) 14px; align-items:center; gap:8px; width:158px; padding:0 10px; cursor:pointer; text-align:left; }
  .pd-canonical-scores .rt-calendar-trigger { border:1px solid var(--rt-border); border-radius:7px; background:var(--rt-surface-2); }
  .pd-canonical-scores .rt-calendar-trigger:hover, .pd-canonical-scores .rt-calendar-trigger[aria-expanded="true"], .pd-canonical-scores .rt-calendar-trigger:focus-visible { border-color:var(--rt-brand); outline:0; color:var(--rt-text); }
  .pd-canonical-scores .rt-calendar-trigger svg { width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
  .pd-canonical-scores .rt-calendar-trigger .rt-calendar-chevron { width:14px; height:14px; }
  .pd-canonical-scores .rt-calendar-trigger-label { display:flex; align-items:baseline; gap:4px; min-width:0; white-space:nowrap; }
  .pd-canonical-scores .rt-calendar-trigger-label strong { color:var(--rt-text); font-size:12px; font-weight:700; line-height:1; }
  .pd-canonical-scores .rt-calendar-trigger-label small { color:var(--rt-muted); font-size:11px; font-weight:500; line-height:1; }
  .pd-canonical-scores .rt-calendar-popup { position:absolute; z-index:50; top:calc(100% + 9px); right:0; width:296px; box-sizing:border-box; padding:12px; border:1px solid var(--rt-border); border-radius:10px; background:var(--rt-surface-1); color:var(--rt-text); }
  .pd-canonical-scores .rt-calendar-popup[hidden] { display:none; }
  .pd-canonical-scores .rt-calendar-head { display:grid; grid-template-columns:34px minmax(0,1fr) 34px; align-items:center; gap:6px; margin-bottom:8px; }
  .pd-canonical-scores .rt-calendar-head strong { text-align:center; font-size:13px; }
  .pd-canonical-scores .rt-calendar-head button { width:34px; height:34px; padding:0; border:0; border-radius:6px; background:transparent; color:var(--rt-accent-text); font:inherit; font-size:22px; cursor:pointer; }
  .pd-canonical-scores .rt-calendar-head button:hover, .pd-canonical-scores .rt-calendar-head button:focus-visible { background:var(--rt-surface-2); outline:1px solid var(--rt-brand); }
  .pd-canonical-scores .rt-calendar-weekdays, .pd-canonical-scores .rt-calendar-grid { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:3px; }
  .pd-canonical-scores .rt-calendar-weekdays { margin-bottom:4px; color:var(--rt-muted); font-size:10px; text-align:center; }
  .pd-canonical-scores .rt-calendar-weekdays span { padding:4px 0; }
  .pd-canonical-scores .rt-calendar-weekdays span:first-child { color:var(--rt-danger); }
  .pd-canonical-scores .rt-calendar-weekdays span:last-child { color:var(--rt-info); }
  .pd-canonical-scores .rt-calendar-day { position:relative; display:flex; align-items:center; justify-content:center; width:100%; aspect-ratio:1; padding:0; border:1px solid transparent; border-radius:6px; background:transparent; color:var(--rt-text-2); font:inherit; font-size:11px; cursor:pointer; }
  .pd-canonical-scores .rt-calendar-day:hover, .pd-canonical-scores .rt-calendar-day:focus-visible { border-color:rgba(var(--rt-brand-rgb),.55); background:var(--rt-surface-2); outline:0; color:var(--rt-text); }
  .pd-canonical-scores .rt-calendar-day.is-other { color:var(--rt-muted); opacity:.5; }
  .pd-canonical-scores .rt-calendar-day.is-sunday { color:var(--rt-danger); }
  .pd-canonical-scores .rt-calendar-day.is-saturday { color:var(--rt-info); }
  .pd-canonical-scores .rt-calendar-day.is-today { border-color:rgba(var(--rt-brand-rgb),.55); }
  .pd-canonical-scores .rt-calendar-day.is-selected { border-color:var(--rt-brand); background:var(--rt-brand); color:#fff; font-weight:800; }
  .pd-canonical-scores .rt-calendar-today { width:100%; height:36px; margin-top:10px; padding:0; border:0; border-top:1px solid var(--rt-border); background:transparent; color:var(--rt-accent-text); font:inherit; font-size:11px; font-weight:700; cursor:pointer; }
  .pd-canonical-scores .rt-calendar-today:hover, .pd-canonical-scores .rt-calendar-today:focus-visible { color:var(--rt-text); outline:0; }
  .pd-canonical-scores .rt-date-nav a { display:flex; align-items:center; justify-content:center; min-width:38px; padding:0 10px; border:0; border-left:1px solid var(--rt-border); background:transparent; text-decoration:none; }
  .pd-canonical-scores .rt-date-nav a:first-child { border-left:0; }
  .pd-canonical-scores .rt-date-nav a:nth-child(2) { background:rgba(var(--rt-brand-rgb),.08); color:var(--rt-text); font-weight:700; }
  .pd-canonical-scores .rt-date-nav a:hover, .pd-canonical-scores .rt-date-nav a:focus-visible { background:rgba(var(--rt-brand-rgb),.14); color:var(--rt-text); outline:0; }
  .pd-canonical-scores .rt-date-nav a:first-child, .pd-canonical-scores .rt-date-nav a:last-child { font-size:20px; }
  html:root .pd-canonical-scores.pd-scores .pd-cs-dates .rt-date-nav { border-color:rgba(149,107,255,.28); background:linear-gradient(rgba(14,18,48,.9),rgba(9,13,36,.95)); box-shadow:inset 0 1px 0 rgba(255,255,255,.04),0 6px 16px rgba(0,0,0,.22); }
  html:root .pd-canonical-scores.pd-scores .pd-cs-dates :is(.rt-calendar-trigger,.pd-search-input) { border-color:rgba(149,107,255,.28); background:rgba(149,107,255,.07); transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease,color .18s ease; }
  html:root .pd-canonical-scores.pd-scores .pd-cs-dates :is(.rt-calendar-trigger,.rt-date-nav a):hover { border-color:rgba(149,107,255,.35); background:rgba(149,107,255,.16); color:#fff; box-shadow:inset 0 0 12px rgba(149,107,255,.18); }
  html:root .pd-canonical-scores.pd-scores .pd-cs-dates .rt-calendar-trigger svg { color:#b79cff; }
  html:root .pd-canonical-scores .rt-date-nav a { border-left-color:rgba(149,107,255,.28); }
  html:root .pd-canonical-scores.pd-scores .pd-cs-dates :is(.rt-date-nav,.rt-calendar-trigger) { border-radius:999px; overflow:hidden; }
  html:root .pd-canonical-scores .pd-cs-toolbar :is(.pd-chip,.rt-date-nav a,.rt-calendar-trigger,.pd-search-input,.pd-search-btn):focus-visible { outline:2px solid #b49aff; outline-offset:2px; }
  html:root:not([data-theme="light"]) .pd-canonical-scores.pd-scores .pd-cs-dates :is(.rt-calendar-trigger,.rt-date-nav a):hover { box-shadow:none; }
  html:root .pd-canonical-scores.pd-scores .pd-cs-dates .rt-date-nav { height:36px; border-radius:9px; overflow:hidden; box-shadow:none; background:rgba(149,107,255,.07); }
  html:root .pd-canonical-scores .pd-cs-dates .rt-date-nav a { height:36px; min-width:38px; font-size:13px; }
  html:root .pd-canonical-scores .pd-cs-dates .rt-date-nav a:first-child, html:root .pd-canonical-scores .pd-cs-dates .rt-date-nav a:last-child { font-size:20px; }
  html:root .pd-canonical-scores .pd-cs-dates .rt-date-nav a:nth-child(2) { min-width:76px; }
  html:root .pd-canonical-scores.pd-scores .pd-cs-dates .rt-calendar-trigger { width:190px; height:36px; padding:0 12px; border-radius:9px; }
  html:root .pd-canonical-scores .pd-cs-dates .rt-calendar-trigger-label strong { font-size:14px; }
  html:root .pd-canonical-scores.pd-scores .pd-cs-dates :is(.rt-date-nav,.rt-date-picker) { flex:none; }
  html:root .pd-canonical-scores .rt-date-picker .rt-calendar-popup { left:0; right:auto; top:calc(100% + 8px); width:300px; padding:14px; border:1px solid rgba(149,107,255,.38); border-radius:16px; background:linear-gradient(180deg,rgba(16,22,52,.98),rgba(10,15,38,.98)); box-shadow:0 14px 34px rgba(0,0,0,.5); }
  html:root .pd-canonical-scores .rt-calendar-head { margin-bottom:10px; }
  html:root .pd-canonical-scores .rt-calendar-head strong { color:#f3eeff; font-size:14px; font-weight:800; letter-spacing:-.2px; }
  html:root .pd-canonical-scores .rt-calendar-head button { width:34px; height:34px; border:1px solid rgba(149,107,255,.3); border-radius:10px; background:rgba(149,107,255,.1); color:#cdbcff; font-size:20px; line-height:1; }
  html:root .pd-canonical-scores .rt-calendar-head button:hover, html:root .pd-canonical-scores .rt-calendar-head button:focus-visible { border-color:rgba(190,165,255,.6); background:rgba(149,107,255,.24); color:#fff; outline:0; }
  html:root .pd-canonical-scores .rt-calendar-weekdays { margin-bottom:6px; color:#9a8fc4; font-size:11px; font-weight:700; }
  html:root .pd-canonical-scores .rt-calendar-weekdays span:first-child { color:#ff8da4; }
  html:root .pd-canonical-scores .rt-calendar-weekdays span:last-child { color:#8fb4ff; }
  html:root .pd-canonical-scores .rt-calendar-day { border-radius:10px; color:#d9d2f2; font-size:12px; font-weight:600; transition:background-color .15s ease,border-color .15s ease; }
  html:root .pd-canonical-scores .rt-calendar-day:hover, html:root .pd-canonical-scores .rt-calendar-day:focus-visible { border-color:rgba(190,165,255,.5); background:rgba(149,107,255,.2); color:#fff; outline:0; }
  html:root .pd-canonical-scores .rt-calendar-day.is-other { color:#7d749f; opacity:.45; }
  html:root .pd-canonical-scores .rt-calendar-day.is-sunday { color:#ff8da4; }
  html:root .pd-canonical-scores .rt-calendar-day.is-saturday { color:#8fb4ff; }
  html:root .pd-canonical-scores .rt-calendar-day.is-today { border-color:rgba(190,165,255,.65); background:rgba(149,107,255,.1); color:#fff; }
  html:root .pd-canonical-scores .rt-calendar-day.is-selected { border-color:rgba(190,165,255,.55); background:#7549eb; color:#fff; font-weight:800; box-shadow:none; }
  html:root .pd-canonical-scores .rt-calendar-today { height:38px; margin-top:12px; border-top:1px solid rgba(149,107,255,.22); color:#cdbcff; font-size:12px; font-weight:700; }
  html:root .pd-canonical-scores .rt-calendar-today:hover, html:root .pd-canonical-scores .rt-calendar-today:focus-visible { color:#fff; outline:0; }
  .pd-canonical-scores .rt-calendar-trigger-label { gap: 4px; }
  .pd-canonical-scores .rt-calendar-trigger-label small { color: var(--rt-text); font-size: 14px; font-weight: 700; }
  :where(html[data-theme="light"]) .pd-canonical-scores .rt-date-nav { border: 1px solid var(--rt-border); background: var(--rt-surface-2); }
  :where(html[data-theme="light"]) .pd-canonical-scores .rt-calendar-trigger, :where(html[data-theme="light"]) .pd-canonical-scores .rt-date-nav a { color: var(--rt-text-2); }
  :where(html[data-theme="light"]) .pd-canonical-scores .rt-calendar-trigger { border: 1px solid var(--rt-border); background: var(--rt-surface-2); }
  :where(html[data-theme="light"]) .pd-canonical-scores .rt-calendar-trigger:hover, :where(html[data-theme="light"]) .pd-canonical-scores .rt-calendar-trigger[aria-expanded="true"], :where(html[data-theme="light"]) .pd-canonical-scores .rt-calendar-trigger:focus-visible { border-color: var(--rt-brand); color: var(--rt-text); }
  :where(html[data-theme="light"]) .pd-canonical-scores .rt-calendar-popup { border: 1px solid var(--rt-border); background: var(--rt-surface-1); color: var(--rt-text); }
  :where(html[data-theme="light"]) .pd-canonical-scores .rt-calendar-weekdays { color: var(--rt-muted); }
  :where(html[data-theme="light"]) .pd-canonical-scores .rt-calendar-day { color: var(--rt-text-2); }
  :where(html[data-theme="light"]) .pd-canonical-scores .rt-calendar-day:hover, :where(html[data-theme="light"]) .pd-canonical-scores .rt-calendar-day:focus-visible { border-color: rgba(var(--rt-brand-rgb),.55); background: var(--rt-surface-2); color: var(--rt-text); }
  :where(html[data-theme="light"]) .pd-canonical-scores .rt-calendar-day.is-other { color: var(--rt-muted); }
  :where(html[data-theme="light"]) .pd-canonical-scores .rt-calendar-day.is-sunday { color: var(--rt-danger); }
  :where(html[data-theme="light"]) .pd-canonical-scores .rt-calendar-day.is-saturday { color: var(--rt-info); }
  :where(html[data-theme="light"]) .pd-canonical-scores .rt-calendar-day.is-today { border-color: rgba(var(--rt-brand-rgb),.55); }
  :where(html[data-theme="light"]) .pd-canonical-scores .rt-calendar-day.is-selected { border-color: var(--rt-brand); background: var(--rt-brand); color: #141414; }
  :where(html[data-theme="light"]) .pd-canonical-scores .rt-calendar-today { border-top: 1px solid var(--rt-border); color: var(--rt-accent-text); }
  :where(html[data-theme="light"]) .pd-canonical-scores .rt-calendar-today:hover, :where(html[data-theme="light"]) .pd-canonical-scores .rt-calendar-today:focus-visible { color: var(--rt-text); }
  html[data-theme="light"] .pd-canonical-scores.pd-scores .pd-cs-dates .rt-date-nav { border-color: rgba(149,107,255,.28); background: linear-gradient(rgba(236, 237, 243, 0.9),rgba(241, 242, 246, 0.95)); box-shadow: inset 0 1px 0 rgba(14, 22, 48, 0.04),0 6px 16px rgba(0, 0, 0, 0.077); }
  html[data-theme="light"] .pd-canonical-scores.pd-scores .pd-cs-dates :is(.rt-calendar-trigger,.pd-search-input) { border-color: rgba(149,107,255,.28); background: rgba(149,107,255,.07); }
  html[data-theme="light"] .pd-canonical-scores.pd-scores .pd-cs-dates :is(.rt-calendar-trigger,.rt-date-nav a):hover { border-color: rgba(149,107,255,.35); background: rgba(149,107,255,.16); color: #141414; box-shadow: inset 0 0 12px rgba(149,107,255,.18); }
  html[data-theme="light"] .pd-canonical-scores.pd-scores .pd-cs-dates .rt-calendar-trigger svg { color: #652cff; }
  html[data-theme="light"] .pd-canonical-scores .pd-cs-toolbar :is(.pd-chip,.rt-date-nav a,.rt-calendar-trigger,.pd-search-input,.pd-search-btn):focus-visible { outline: 2px solid #b49aff; }
  html[data-theme="light"] .pd-canonical-scores.pd-scores .pd-cs-dates .rt-date-nav { background: rgba(149,107,255,.07); }
  html[data-theme="light"] .pd-canonical-scores .rt-date-picker .rt-calendar-popup { border: 1px solid rgba(149,107,255,.38); background: linear-gradient(rgba(231, 232, 240, 0.99),rgba(241, 242, 246, 0.99)); box-shadow: 0 14px 34px rgba(0, 0, 0, 0.175); }
  html[data-theme="light"] .pd-canonical-scores .rt-calendar-head strong { color: #6727ff; }
  html[data-theme="light"] .pd-canonical-scores .rt-calendar-head button { border: 1px solid rgba(149,107,255,.3); background: rgba(149,107,255,.1); color: #622dff; }
  html[data-theme="light"] .pd-canonical-scores .rt-calendar-head button:hover, html[data-theme="light"] .pd-canonical-scores .rt-calendar-head button:focus-visible { border-color: rgba(190,165,255,.6); background: rgba(149,107,255,.24); color: #141414; }
  html[data-theme="light"] .pd-canonical-scores .rt-calendar-weekdays { color: #6555a2; }
  html[data-theme="light"] .pd-canonical-scores .rt-calendar-weekdays span:first-child { color: #c00027; }
  html[data-theme="light"] .pd-canonical-scores .rt-calendar-weekdays span:last-child { color: #004ff0; }
  html[data-theme="light"] .pd-canonical-scores .rt-calendar-day { color: #6448ca; }
  html[data-theme="light"] .pd-canonical-scores .rt-calendar-day:hover, html[data-theme="light"] .pd-canonical-scores .rt-calendar-day:focus-visible { border-color: rgba(190,165,255,.5); background: rgba(149,107,255,.2); color: #141414; }
  html[data-theme="light"] .pd-canonical-scores .rt-calendar-day.is-other { color: #696283; }
  html[data-theme="light"] .pd-canonical-scores .rt-calendar-day.is-sunday { color: #c00027; }
  html[data-theme="light"] .pd-canonical-scores .rt-calendar-day.is-saturday { color: #004ff0; }
  html[data-theme="light"] .pd-canonical-scores .rt-calendar-day.is-today { border-color: rgba(190,165,255,.65); background: rgba(149,107,255,.1); color: #141414; }
  html[data-theme="light"] .pd-canonical-scores .rt-calendar-day.is-selected { border-color: rgba(190,165,255,.55); background: linear-gradient(180deg,#9b79ff,#7549eb); color: #fff; box-shadow: 0 4px 12px rgba(117,73,235,.4); }
  html[data-theme="light"] .pd-canonical-scores .rt-calendar-today { border-top: 1px solid rgba(149,107,255,.22); color: #622dff; }
  html[data-theme="light"] .pd-canonical-scores .rt-calendar-today:hover, html[data-theme="light"] .pd-canonical-scores .rt-calendar-today:focus-visible { color: #141414; }
  /* /market 은 보라 디자인 시스템(ranktipster-violet-trial.css)이 .pd-explorer-v2 범위에 글자색 토큰을 따로 정한다. 같은 값을 날짜 영역에만 준다(다크). */
  html:root:not([data-theme="light"]) .pd-canonical-scores .pd-cs-dates { --rt-text:#F7F7FA; --rt-text-2:#AAB1C7; --rt-muted:#AAB1C7; color:#F7F7FA; }
  .pd-canonical-scores .pd-cs-dates .rt-date-nav a { border-radius:0; }
  .pd-canonical-scores .pd-cs-dates > .pd-cs-picker { gap:normal; }
  /* 서버가 받지 않는 날짜(범위 밖)는 고를 수 없다. */
  html:root .pd-canonical-scores .rt-calendar-day.is-disabled { border-color:transparent; background:transparent; color:#7d749f; opacity:.28; cursor:not-allowed; pointer-events:none; }
}

/* ═══ PC(≥1024px) 팀·리그 통합 검색창 ═══════════════════════════════════════════════════════
   필터바 맨 오른쪽(margin-left:auto), 기본 210px · 높이 36px(날짜 선택기와 같음). 스타일은 /market 검색창(.pd-search-input)의 PC 실제 값을 따른다:
   보라 테두리 .28 · 배경 .07 · 반지름 9 · 14px · 왼쪽 돋보기(17px). 태블릿·모바일(<1024px)에는 그리지 않는다. */
.pd-canonical-scores .pd-cs-search { display:none; }
@media (min-width:1024px) {
  .pd-canonical-scores .pd-cs-search { display:block; position:relative; flex:0 1 210px; width:210px; min-width:160px; margin-left:auto; }
  /* 전역 컨트롤 규칙(ranktipster-v3.css 23행: input[type=text] 높이 44px · 반지름 7px, 우선순위 0,3,2)을 이기도록 선택자를 길게 쓴다. */
  /* 검색창이 생겨도 상태 필터·날짜 이동·달력은 줄어들지 않는다. */
  .pd-canonical-scores .pd-sc-tabs, .pd-canonical-scores .pd-cs-dates { flex:none; }
  .pd-canonical-scores .pd-cs-search-field { position:relative; display:flex; min-width:0; }
  .pd-canonical-scores .pd-cs-search-field svg { position:absolute; z-index:1; left:12px; top:50%; width:17px; height:17px; transform:translateY(-50%); pointer-events:none; fill:none; stroke:var(--rt-text-2,#AAB1C7); stroke-width:1.8; stroke-linecap:round; }
  html:root:not([data-theme="light"]) .pd-canonical-scores .pd-cs-search-field svg { stroke:#AAB1C7; }
  html:root .pd-canonical-scores.pd-scores .pd-cs-search .pd-cs-search-input { box-sizing:border-box; width:100%; height:36px; min-height:36px; margin:0; padding:0 32px 0 38px; border:1px solid rgba(149,107,255,.28); border-radius:9px; background:rgba(149,107,255,.07); color:#F7F7FA; font:inherit; font-size:14px; font-weight:400; line-height:38px; -webkit-appearance:none; appearance:none; transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease,color .18s ease; }
  html:root .pd-canonical-scores.pd-scores .pd-cs-search .pd-cs-search-input::placeholder { color:#AAB1C7; font-size:13px; font-weight:400; opacity:1; }
  html:root .pd-canonical-scores.pd-scores .pd-cs-search .pd-cs-search-input:focus { border-color:#956BFF; box-shadow:0 0 0 3px rgba(149,107,255,.2); outline:0; }
  html:root .pd-canonical-scores.pd-scores .pd-cs-search .pd-cs-search-input:focus-visible { outline:2px solid #b49aff; outline-offset:2px; }
  html:root .pd-canonical-scores.pd-scores .pd-cs-search .pd-cs-search-input::-webkit-search-cancel-button { display:none; }
  html:root .pd-canonical-scores .pd-cs-search-clear { position:absolute; z-index:2; right:7px; top:50%; display:flex; align-items:center; justify-content:center; width:22px; height:22px; margin:-11px 0 0; padding:0; border:0; border-radius:50%; background:transparent; color:#AAB1C7; font:inherit; font-size:18px; line-height:1; cursor:pointer; }
  html:root .pd-canonical-scores .pd-cs-search-clear:hover, .pd-canonical-scores .pd-cs-search-clear:focus-visible { background:rgba(149,107,255,.22); color:#fff; outline:0; }
  html:root .pd-canonical-scores .pd-cs-search-clear:focus-visible { outline:2px solid #b49aff; outline-offset:1px; }
  /* 라이트: /market 검색창의 라이트 값(글자 #2b3440 · placeholder #4d555e). 배경·테두리는 다크와 같은 보라 .07 / .28 이다. */
  html[data-theme="light"] .pd-canonical-scores.pd-scores .pd-cs-search .pd-cs-search-input { color:#2b3440; }
  html[data-theme="light"] .pd-canonical-scores.pd-scores .pd-cs-search .pd-cs-search-input::placeholder { color:#4d555e; }
  html[data-theme="light"] .pd-canonical-scores .pd-cs-search-clear { color:#4d555e; }
  html[data-theme="light"] .pd-canonical-scores .pd-cs-search-clear:hover, html[data-theme="light"] .pd-canonical-scores .pd-cs-search-clear:focus-visible { color:#141414; }
}

/* ═══ 모바일(≤600px) 라이브스코어 개편 ═══════════════════════════════════════════════════════
   종목 = 한 줄 아이콘 메뉴(가로 스크롤) · 날짜 = ‹ 2026년 10월 29일(목) 📅 › 한 줄 · 경기 = 홈(로고+이름) | 시간·상태+스코어 | 원정 카드 행.
   마크업·JS 데이터 구조는 그대로이고 CSS 로만 재배치한다(서버 행과 15초 갱신 행이 같은 DOM). 태블릿·PC 는 위의 기존 규칙을 그대로 쓴다. */
.pd-cs-mdate, .pd-cs-msearch { display:none; }
@media(max-width:600px) {
 .pd-cs-toolbar { padding:10px 10px 8px; border-radius:14px; margin-bottom:10px; }
 /* 종목: 한 줄, 좌우 스와이프. 카드 안쪽 여백까지 번지게 해서 잘린 칸이 스와이프 단서가 된다. */
 .pd-canonical-scores .pd-sc-sports { position:relative; flex-wrap:nowrap; overflow-x:auto; overflow-y:hidden; gap:4px; margin:0 -10px; padding:0 10px 2px; scrollbar-width:none; -webkit-overflow-scrolling:touch; overscroll-behavior-x:contain; }
 .pd-canonical-scores .pd-sc-sports::-webkit-scrollbar { display:none; }
 .pd-canonical-scores .pd-sc-sport { flex:0 0 auto; flex-direction:column; justify-content:center; gap:3px; min-width:56px; height:56px; padding:4px 6px; border-color:transparent; background:transparent; color:#8F96AD; font-size:11px; font-weight:600; }
 .pd-canonical-scores .pd-sc-sport:hover { background:var(--cs-chip-bg,transparent); border-color:transparent; color:#C5CAE0; }
 .pd-canonical-scores .pd-sc-sport.is-active { border-color:var(--cs-chip-on-line,var(--t3-green)); }
 .pd-canonical-scores .pd-sc-sport-icon { width:24px; height:24px; font-size:21px; line-height:24px; }
 /* 상태 탭: 높이·여백 축소 */
 .pd-canonical-scores .pd-sc-tabs { height:32px; }
 .pd-canonical-scores .pd-sc-tab { height:24px; font-size:12px; }
 .pd-cs-toolbar .pd-sc-bar { margin-top:8px; padding-top:8px; gap:8px; }
 /* 날짜: ‹ [2026년 10월 29일(목) 📅] › 오늘 — 가운데를 누르면 기존 date 입력(투명하게 덮어 둠)의 달력이 열리고, 고르면 바로 이동한다. */
 .pd-cs-dates { display:flex; flex-wrap:nowrap; align-items:stretch; gap:5px; }
 .pd-cs-datenav { display:contents; }
 .pd-cs-dates .pd-cs-datenav a { box-sizing:border-box; height:36px; min-height:36px; min-width:36px; align-self:stretch; border:1px solid var(--cs-card-line,var(--t3-border)); border-radius:9px; background:var(--cs-chip-bg,var(--t3-surface)); }
 .pd-cs-datenav .pd-sc-dstep:first-child { order:1; }
 .pd-cs-dates > .pd-cs-form-native { order:2; flex:1 1 auto; min-width:0; position:relative; }
 .pd-cs-datenav .pd-sc-dstep:last-child { order:3; }
 .pd-cs-datenav .pd-cs-today { display:none; }
 .pd-cs-dates .pd-cs-mdate { display:flex; align-items:center; justify-content:center; gap:7px; box-sizing:border-box; width:100%; height:36px; padding:0 6px; border:1px solid var(--cs-card-line,var(--t3-border)); border-radius:9px; background:var(--cs-chip-bg,var(--t3-surface)); color:var(--t3-text); white-space:nowrap; }
 .pd-cs-mdate strong { font-size:13px; font-weight:700; font-variant-numeric:tabular-nums; }
 .pd-cs-mdate svg { flex:none; width:16px; height:16px; fill:none; stroke:var(--rt-accent-text,#B49AFF); stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
 .pd-cs-dates .pd-cs-date { position:absolute; inset:0; width:100%; height:100%; opacity:0; cursor:pointer; padding:0; border:0; }
 .pd-cs-dates .pd-cs-go { display:none; }

 /* 경기 목록(모바일): 리그 머리줄 + 경기 카드. 카드 = 홈 | 상태·점수 | 원정 — 로고(40) 아래 팀명(최대 2줄, 가운데 정렬)이 중앙 점수를 마주 본다.
    머리줄은 묶음의 첫 카드 바로 위 한 줄(::before, JS 가 data-lg-first 를 켠다). 예정 경기는 시작 시간만 가운데에 둔다. */
 .pd-cs-columns { display:none; }
 .pd-cs-table { border:0; border-radius:0; overflow:visible; background:none; }
 .pd-canonical-scores .pd-league-head { display:none; }
 .pd-cs-leagues { display:flex; flex-direction:column; }
 .pd-canonical-scores .pd-sc-league, .pd-canonical-scores .pd-sc-list { display:contents; }
 .pd-canonical-scores.pd-scores .pd-sc-list .pd-sc-row { grid-template-columns:minmax(0,1fr) 92px minmax(0,1fr); grid-template-rows:auto auto; align-items:center; gap:2px 6px; min-height:96px; padding:12px 10px; margin:0 0 8px; border:1px solid var(--cs-card-line,var(--t3-border)); border-radius:10px; box-sizing:border-box; order:var(--rt-order,0); }
 .pd-cs-timecell { grid-column:2; grid-row:1; align-self:end; justify-content:center; min-height:22px; gap:4px; }
 .pd-canonical-scores .pd-sc-row .pd-sc-scores { grid-column:2; grid-row:2; align-self:start; gap:6px; }
 .pd-canonical-scores .pd-sc-upcoming .pd-sc-scores { display:none; }   /* 예정: 점수 자리 '-' 를 그리지 않는다(DOM 은 남아 갱신 스크립트가 그대로 쓴다) */
 .pd-canonical-scores .pd-sc-upcoming .pd-cs-timecell { grid-row:1 / span 2; align-self:center; }
 .pd-cs-home, .pd-cs-away { grid-row:1 / span 2; align-self:start; }   /* 로고 높이를 양쪽 맞춘다(이름이 1줄이든 2줄이든) */
 .pd-cs-home { grid-column:1; }
 .pd-cs-away { grid-column:3; }
 .pd-canonical-scores .pd-sc-row .pd-sc-team,
 .pd-canonical-scores .pd-sc-row .pd-cs-home,
 .pd-canonical-scores .pd-sc-row .pd-cs-away { flex-direction:column; justify-content:flex-start; align-items:center; gap:6px; padding:0; font-size:13px; line-height:16px; text-align:center; }
 .pd-cs-team-name,.pd-cs-home .pd-cs-team-name,.pd-cs-away .pd-cs-team-name { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; min-width:0; max-width:100%; white-space:normal; text-align:center; font-size:13px; font-weight:600; line-height:16px; overflow-wrap:break-word; word-break:keep-all; }
 .pd-cs-logo-slot { width:40px; height:40px; flex:0 0 40px; }
 .pd-cs-logo { width:40px; height:40px; }
 .pd-cs-logo.is-dark-logo { border-radius:8px; }
 .pd-cs-fallback.pd-md-badge { width:40px; height:40px; border:0; border-radius:50%; font-size:12px; }
 .pd-canonical-scores .pd-sc-list .pd-sc-num { font-size:28px; line-height:32px; font-weight:700; }
 .pd-canonical-scores .pd-sc-list .pd-sc-live .pd-sc-num { font-weight:800; }
 .pd-cs-score-separator { font-size:18px; }
 .pd-cs-kickoff { font-size:17px; font-weight:600; }
 .pd-canonical-scores .pd-sc-list .pd-sc-state { font-size:12px; min-height:20px; min-width:36px; padding:2px 8px; gap:1px; border-radius:10px; }
 /* 분석 링크: 카드 오른쪽 위 모서리 */
 .pd-cs-analysis-link { top:8px; right:8px; transform:none; width:24px; height:24px; font-size:15px; }
 /* 리그 머리줄: 묶음의 첫 카드 위(카드 바깥)에 한 줄. 모든 리그 같은 다크 네이비 바탕 + 왼쪽 3px 퍼플 선 + 밝은 회색 글자, 한 줄 말줄임 — 눌러서 전체 이름을 펼친다(JS 가 data-lg-open 을 켠다). */
 .pd-canonical-scores .pd-sc-row[data-league-name]::before { display:none; }
 .pd-canonical-scores.pd-scores .pd-sc-list .pd-sc-row[data-lg-first] { margin-top:36px; }
 .pd-canonical-scores.pd-scores .pd-sc-list .pd-sc-row[data-lg-first][data-lg-open] { margin-top:64px; }
 .pd-canonical-scores .pd-sc-row[data-lg-first][data-league-name]::before { content:attr(data-league-name); display:block; position:absolute; left:0; right:0; bottom:calc(100% + 6px); box-sizing:border-box; padding:0 12px; height:30px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; text-align:left; font-size:13px; font-weight:700; line-height:30px; color:var(--cs-lg-text,#B9BED3); background:var(--cs-lg-bg,#10173A); box-shadow:inset 3px 0 0 var(--cs-lg-line,#956BFF); border-radius:8px; cursor:pointer; }
 .pd-canonical-scores .pd-sc-row[data-lg-first][data-league-name][data-lg-open]::before { height:auto; min-height:30px; white-space:normal; padding-top:6px; padding-bottom:6px; line-height:18px; }
 html[data-theme="light"] .pd-canonical-scores .pd-sc-row[data-lg-first][data-league-name]::before { color:#4A5068; background:#E6E8F2; box-shadow:inset 3px 0 0 #7549EB; }
 /* 실시간 행 왼쪽 세로 막대 제거(모바일만; 옅은 붉은 바탕과 붉은 상태 배지는 유지) */
 .pd-canonical-scores.pd-scores .pd-sc-list .pd-sc-row.pd-sc-live { box-shadow:none; }


 /* 날짜 줄 = 길쭉한 한 줄 막대: ‹ 날짜(가운데) 🔍 › — 달력 아이콘·오늘 버튼 없음 */
 .pd-cs-dates { gap:0; width:100%; flex:1 1 100%; height:40px; box-sizing:border-box; border:1px solid var(--cs-card-line,var(--t3-border)); border-radius:9px; background:var(--cs-chip-bg,var(--t3-surface)); overflow:hidden; }
 .pd-cs-dates .pd-cs-datenav a, .pd-cs-dates .pd-cs-mdate { height:38px; min-height:38px; border:0; border-radius:0; background:transparent; }
 .pd-cs-dates .pd-cs-datenav a { width:44px; min-width:44px; font-size:22px; color:var(--t3-text-3,#8F96AD); }
 .pd-cs-dates .pd-cs-mdate { padding:0; }
 .pd-cs-dates .pd-cs-msearch { order:3; display:flex; align-items:center; justify-content:center; width:44px; height:38px; padding:0; border:0; background:transparent; color:var(--rt-accent-text,#B49AFF); cursor:pointer; }
 .pd-cs-dates .pd-cs-msearch svg { width:22px; height:22px; fill:none; stroke:currentColor; stroke-width:2.2; stroke-linecap:round; }
 .pd-cs-datenav .pd-sc-dstep:last-child { order:4; }
 .pd-cs-mdate svg { display:none; }
 /* 검색창: 돋보기를 누르면 날짜 줄 아래로 펼쳐진다(PC 의 검색창과 같은 요소·같은 필터) */
 .pd-canonical-scores .pd-cs-search.is-open { display:block; position:relative; flex:1 1 100%; width:100%; margin:0; }
 .pd-canonical-scores .pd-cs-search-field { position:relative; display:flex; min-width:0; }
 .pd-canonical-scores .pd-cs-search-field svg { position:absolute; z-index:1; left:12px; top:50%; width:17px; height:17px; transform:translateY(-50%); pointer-events:none; fill:none; stroke:#AAB1C7; stroke-width:1.8; stroke-linecap:round; }
 .pd-canonical-scores .pd-cs-search .pd-cs-search-input { box-sizing:border-box; width:100%; height:38px; margin:0; padding:0 34px 0 38px; border:1px solid var(--cs-card-line,rgba(149,107,255,.28)); border-radius:9px; background:var(--cs-chip-bg,rgba(149,107,255,.07)); color:var(--t3-text,#F7F7FA); font:inherit; font-size:14px; -webkit-appearance:none; appearance:none; }
 .pd-canonical-scores .pd-cs-search .pd-cs-search-input:focus { border-color:#956BFF; outline:0; box-shadow:0 0 0 3px rgba(149,107,255,.2); }
 .pd-canonical-scores .pd-cs-search-clear { position:absolute; right:7px; top:50%; display:flex; align-items:center; justify-content:center; width:24px; height:24px; margin:-12px 0 0; padding:0; border:0; border-radius:50%; background:transparent; color:#AAB1C7; font-size:18px; line-height:1; cursor:pointer; }
 /* 바깥 여백: /market 등 다른 화면과 같게 — 좌우 12px(/market 과 같은 카드 위치), 위는 헤더 아래 간격만 */
 .pd-wrap.pd-canonical-scores.pd-scores { padding:0 12px 8px; }
 /* 종목 한 줄: 화면 너비와 관계없이 5개 + 여섯 번째 칸의 절반이 보이게(어중간하게 글자가 잘리지 않고 '밀어서 더 있음'이 분명하다) */
 .pd-canonical-scores .pd-sc-sport { flex:0 0 64px; min-width:64px; padding:4px 2px; }
 /* 잘린 칸이 어색하지 않게 가장자리를 부드럽게 흐린다(더 있으면 흐림, 끝에 닿으면 선명). 흐림은 JS 가 .has-left/.at-end 로 켜고 끈다. */
 .pd-canonical-scores .pd-sc-sports { --fl:0px; --fr:34px; -webkit-mask-image:linear-gradient(90deg,transparent 0,#000 var(--fl),#000 calc(100% - var(--fr)),transparent 100%); mask-image:linear-gradient(90deg,transparent 0,#000 var(--fl),#000 calc(100% - var(--fr)),transparent 100%); }
 .pd-canonical-scores .pd-sc-sports.has-left { --fl:34px; }
 .pd-canonical-scores .pd-sc-sports.at-end { --fr:0px; }
 .pd-canonical-scores .pd-sc-sport-label { letter-spacing:-.02em; }
 /* 팀 로고 뒤 네이비 바탕 제거(모바일) — 로고·기본 표시(두 글자 배지) 모두 투명. 거의 검은 로고용 회색 칩(.is-dark-logo)은 그대로. */
 .pd-cs-logo { background:transparent; }
 .pd-cs-fallback.pd-md-badge { background:rgba(149,107,255,.14); }
}

/* ═══ PC·태블릿(≥601px) 라이브스코어 테이블 ══════════════════════════════════════════════════════════
   리그 구역·목록을 풀어 모든 행을 한 열에 두고 --rt-order(JS groupOrder: 상태 → 시작 시간)로 세운다. 리그 머리줄은 숨기고
   각 행 맨 왼쪽의 리그 배지(.pd-cs-lgbadge)로 대신한다. 열: 리그 | 시간 | 경기 진행 | 홈팀 | 스코어 | 원정팀 | (전반·세부 — 값이 있을 때만).
   모바일(≤600px)은 위의 모바일 블록이 그대로 맡고, 리그 배지는 거기서 보이지 않는다. */
.pd-cs-lgbadge { display:none; }
@media (min-width:601px) {
 .pd-cs-leagues { display:flex; flex-direction:column; }
 .pd-canonical-scores .pd-sc-league, .pd-canonical-scores .pd-sc-list { display:contents; }
 .pd-canonical-scores .pd-sc-league > .pd-league-head { display:none; }
 .pd-canonical-scores.pd-scores .pd-sc-list .pd-sc-row { order:var(--rt-order,0); }
 .pd-canonical-scores .pd-cs-table { --score-columns:180px 132px minmax(0,1fr) 84px minmax(0,1fr); }
 .pd-canonical-scores.pd-cs-has-ht .pd-cs-table { --score-columns:180px 132px minmax(0,1fr) 84px minmax(0,1fr) 150px; }
 /* 열 머리줄(기존 PC 에서는 숨겨 두었다) */
 html:root .pd-canonical-scores .pd-cs-columns { display:grid; height:30px; align-items:center; font-size:11px; font-weight:600; letter-spacing:.02em; }
 html:root .pd-canonical-scores .pd-cs-columns > span { display:block; min-width:0; padding:0; text-align:center; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
 html:root .pd-canonical-scores .pd-cs-columns > .pd-cs-colh-league { text-align:center; }
 html:root .pd-canonical-scores .pd-cs-columns > .pd-cs-colh-home { text-align:right; padding-right:14px; }
 html:root .pd-canonical-scores .pd-cs-columns > .pd-cs-colh-away { text-align:left; padding-left:14px; }
 html:root .pd-canonical-scores:not(.pd-cs-has-ht) .pd-cs-columns > .pd-cs-colh-ht { display:none; }
 /* 행: 더 촘촘하게. 시간·상태는 한 칸에 하나만 — 예정 = 시작 시간, 실시간·종료·기타 = 상태 배지(기존 공통 규칙이 그대로 가른다; DOM 의 시간은 정렬·갱신용으로 남는다). */
 .pd-canonical-scores.pd-scores .pd-sc-list .pd-sc-row { min-height:34px; }
 html:root .pd-canonical-scores .pd-sc-row .pd-cs-timecell { display:flex; align-items:center; justify-content:center; gap:8px; min-width:0; }
 html:root .pd-canonical-scores .pd-sc-row .pd-sc-team { font-size:13px; }
 html:root .pd-canonical-scores .pd-sc-row .pd-cs-kickoff { flex:none; text-align:center; font-size:13px; color:var(--t3-text-2); }
 html:root .pd-canonical-scores .pd-sc-row .pd-sc-state { min-width:60px; max-width:100%; box-sizing:border-box; padding:2px 8px; font-size:12px; }
 html:root .pd-canonical-scores.pd-cs-has-ht .pd-sc-row .pd-cs-ht { display:block; text-align:center; font-size:12px; color:var(--t3-text-2); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
 /* 리그 배지: 작은 직사각형(이름, 긴 이름은 말줄임 · 전체 이름은 title 로) — 기존 칩 색(--cs-chip-*)을 쓴다 */
 html:root .pd-canonical-scores .pd-cs-lgbadge { display:flex; align-items:center; gap:6px; min-width:0; box-sizing:border-box; width:100%; height:24px; padding:0 8px; border:1px solid hsl(var(--lg-hue,262) calc(45% * var(--lg-s,1)) calc(36% + var(--lg-l,0%))); border-radius:6px; background:hsl(var(--lg-hue,262) calc(40% * var(--lg-s,1)) calc(22% + var(--lg-l,0%))); color:hsl(var(--lg-hue,262) calc(90% * var(--lg-s,1)) calc(90% + var(--lg-l,0%))); font-size:13px; font-weight:600; line-height:1; cursor:default; }
 /* 배지 왼쪽의 국가·지역 약어/국기 칸은 쓰지 않는다(JS 가 채워도 보이지 않는다). */
 html:root .pd-canonical-scores .pd-cs-lgbadge .pd-cs-lgicon { display:none; }
 html[data-theme="light"] .pd-canonical-scores .pd-cs-lgbadge { border-color:hsl(var(--lg-hue,262) calc(50% * var(--lg-s,1)) calc(72% - var(--lg-l,0%))); background:hsl(var(--lg-hue,262) calc(80% * var(--lg-s,1)) calc(92% - var(--lg-l,0%))); color:hsl(var(--lg-hue,262) calc(60% * var(--lg-s,1)) calc(24% - var(--lg-l,0%))); }
 .pd-cs-lgicon { display:flex; flex:none; align-items:center; justify-content:center; width:20px; height:14px; overflow:hidden; border-radius:2px; font-size:8px; background:var(--cs-count-bg,var(--t3-surface-3)); }
 .pd-cs-lgicon img { width:100%; height:100%; object-fit:cover; }
 .pd-cs-lgname { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
}
@media (min-width:901px) and (max-width:1199px) {   /* 중간 폭: 리그 배지·세부 점수 열을 줄여 팀명 칸을 지킨다 */
 .pd-canonical-scores .pd-cs-table { --score-columns:164px 124px minmax(0,1fr) 76px minmax(0,1fr); }
 .pd-canonical-scores.pd-cs-has-ht .pd-cs-table { --score-columns:164px 124px minmax(0,1fr) 76px minmax(0,1fr) 104px; }
}
@media (min-width:601px) and (max-width:900px) {
 .pd-canonical-scores .pd-cs-table { --score-columns:112px 120px minmax(0,1fr) 72px minmax(0,1fr); }
 .pd-canonical-scores.pd-cs-has-ht .pd-cs-table { --score-columns:112px 120px minmax(0,1fr) 72px minmax(0,1fr) 92px; }
}

/* ═══ 모바일(≤600px) 달력: 승부예측(/market)과 같은 달력 팝업. 기존 투명 date 입력 대신 PC 의 .rt-date-picker(prediction.js)를 그대로 쓰고, 검색 버튼·‹ › 날짜 이동은 그대로다. ═══ */
@media(max-width:600px) {
 .pd-cs-dates { overflow:visible; }
 .pd-cs-dates > .pd-cs-form-native { display:none; }
 .pd-cs-dates > .pd-cs-picker { display:flex; order:2; flex:1 1 auto; min-width:0; position:relative; gap:0; }
 .pd-cs-picker .rt-calendar-trigger { display:flex; align-items:center; justify-content:center; gap:8px; box-sizing:border-box; width:100%; height:38px; padding:0; border:0; border-radius:0; background:transparent; color:var(--t3-text); font:inherit; cursor:pointer; }
 .pd-cs-picker .rt-calendar-trigger svg { flex:none; width:18px; height:18px; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; color:var(--rt-accent-text,#B49AFF); }
 .pd-cs-picker .rt-calendar-trigger .rt-calendar-chevron { display:none; }
 .pd-cs-picker .rt-calendar-trigger-label { display:flex; align-items:baseline; gap:4px; white-space:nowrap; }
 .pd-cs-picker .rt-calendar-trigger-label strong { color:var(--rt-text,var(--t3-text)); font-size:15px; font-weight:700; line-height:1.2; font-variant-numeric:tabular-nums; }
 .pd-cs-picker .rt-calendar-trigger-label small { color:var(--rt-text,var(--t3-text)); font-size:15px; font-weight:700; line-height:1.2; }
 .pd-canonical-scores .rt-calendar-popup { position:absolute; z-index:50; top:calc(100% + 9px); right:0; width:296px; box-sizing:border-box; padding:12px; border:1px solid var(--rt-border); border-radius:10px; background:var(--rt-surface-1); color:var(--rt-text); }
 .pd-canonical-scores .rt-calendar-popup[hidden] { display:none; }
 .pd-canonical-scores .rt-calendar-head { display:grid; grid-template-columns:34px minmax(0,1fr) 34px; align-items:center; gap:6px; margin-bottom:8px; }
 .pd-canonical-scores .rt-calendar-head strong { text-align:center; font-size:13px; }
 .pd-canonical-scores .rt-calendar-head button { width:34px; height:34px; padding:0; border:0; border-radius:6px; background:transparent; color:var(--rt-accent-text); font:inherit; font-size:22px; cursor:pointer; }
 .pd-canonical-scores .rt-calendar-head button:hover, .pd-canonical-scores .rt-calendar-head button:focus-visible { background:var(--rt-surface-2); outline:1px solid var(--rt-brand); }
 .pd-canonical-scores .rt-calendar-weekdays, .pd-canonical-scores .rt-calendar-grid { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); gap:3px; }
 .pd-canonical-scores .rt-calendar-weekdays { margin-bottom:4px; color:var(--rt-muted); font-size:10px; text-align:center; }
 .pd-canonical-scores .rt-calendar-weekdays span { padding:4px 0; }
 .pd-canonical-scores .rt-calendar-weekdays span:first-child { color:var(--rt-danger); }
 .pd-canonical-scores .rt-calendar-weekdays span:last-child { color:var(--rt-info); }
 .pd-canonical-scores .rt-calendar-day { position:relative; display:flex; align-items:center; justify-content:center; width:100%; aspect-ratio:1; padding:0; border:1px solid transparent; border-radius:6px; background:transparent; color:var(--rt-text-2); font:inherit; font-size:11px; cursor:pointer; }
 .pd-canonical-scores .rt-calendar-day:hover, .pd-canonical-scores .rt-calendar-day:focus-visible { border-color:rgba(var(--rt-brand-rgb),.55); background:var(--rt-surface-2); outline:0; color:var(--rt-text); }
 .pd-canonical-scores .rt-calendar-day.is-other { color:var(--rt-muted); opacity:.5; }
 .pd-canonical-scores .rt-calendar-day.is-sunday { color:var(--rt-danger); }
 .pd-canonical-scores .rt-calendar-day.is-saturday { color:var(--rt-info); }
 .pd-canonical-scores .rt-calendar-day.is-today { border-color:rgba(var(--rt-brand-rgb),.55); }
 .pd-canonical-scores .rt-calendar-day.is-selected { border-color:var(--rt-brand); background:var(--rt-brand); color:#fff; font-weight:800; }
 .pd-canonical-scores .rt-calendar-today { width:100%; height:36px; margin-top:10px; padding:0; border:0; border-top:1px solid var(--rt-border); background:transparent; color:var(--rt-accent-text); font:inherit; font-size:11px; font-weight:700; cursor:pointer; }
 .pd-canonical-scores .rt-calendar-today:hover, .pd-canonical-scores .rt-calendar-today:focus-visible { color:var(--rt-text); outline:0; }
 html:root .pd-canonical-scores .rt-date-picker .rt-calendar-popup { left:0; right:auto; top:calc(100% + 8px); width:300px; padding:14px; border:1px solid rgba(149,107,255,.38); border-radius:16px; background:linear-gradient(180deg,rgba(16,22,52,.98),rgba(10,15,38,.98)); box-shadow:0 14px 34px rgba(0,0,0,.5); }
 html:root .pd-canonical-scores .rt-calendar-head { margin-bottom:10px; }
 html:root .pd-canonical-scores .rt-calendar-head strong { color:#f3eeff; font-size:14px; font-weight:800; letter-spacing:-.2px; }
 html:root .pd-canonical-scores .rt-calendar-head button { width:34px; height:34px; border:1px solid rgba(149,107,255,.3); border-radius:10px; background:rgba(149,107,255,.1); color:#cdbcff; font-size:20px; line-height:1; }
 html:root .pd-canonical-scores .rt-calendar-head button:hover, html:root .pd-canonical-scores .rt-calendar-head button:focus-visible { border-color:rgba(190,165,255,.6); background:rgba(149,107,255,.24); color:#fff; outline:0; }
 html:root .pd-canonical-scores .rt-calendar-weekdays { margin-bottom:6px; color:#9a8fc4; font-size:11px; font-weight:700; }
 html:root .pd-canonical-scores .rt-calendar-weekdays span:first-child { color:#ff8da4; }
 html:root .pd-canonical-scores .rt-calendar-weekdays span:last-child { color:#8fb4ff; }
 html:root .pd-canonical-scores .rt-calendar-day { border-radius:10px; color:#d9d2f2; font-size:12px; font-weight:600; transition:background-color .15s ease,border-color .15s ease; }
 html:root .pd-canonical-scores .rt-calendar-day:hover, html:root .pd-canonical-scores .rt-calendar-day:focus-visible { border-color:rgba(190,165,255,.5); background:rgba(149,107,255,.2); color:#fff; outline:0; }
 html:root .pd-canonical-scores .rt-calendar-day.is-other { color:#7d749f; opacity:.45; }
 html:root .pd-canonical-scores .rt-calendar-day.is-sunday { color:#ff8da4; }
 html:root .pd-canonical-scores .rt-calendar-day.is-saturday { color:#8fb4ff; }
 html:root .pd-canonical-scores .rt-calendar-day.is-today { border-color:rgba(190,165,255,.65); background:rgba(149,107,255,.1); color:#fff; }
 html:root .pd-canonical-scores .rt-calendar-day.is-selected { border-color:rgba(190,165,255,.55); background:#7549eb; color:#fff; font-weight:800; box-shadow:none; }
 html:root .pd-canonical-scores .rt-calendar-today { height:38px; margin-top:12px; border-top:1px solid rgba(149,107,255,.22); color:#cdbcff; font-size:12px; font-weight:700; }
 html:root .pd-canonical-scores .rt-calendar-today:hover, html:root .pd-canonical-scores .rt-calendar-today:focus-visible { color:#fff; outline:0; }
 :where(html[data-theme="light"]) .pd-canonical-scores .rt-calendar-popup { border: 1px solid var(--rt-border); background: var(--rt-surface-1); color: var(--rt-text); }
 :where(html[data-theme="light"]) .pd-canonical-scores .rt-calendar-weekdays { color: var(--rt-muted); }
 :where(html[data-theme="light"]) .pd-canonical-scores .rt-calendar-day { color: var(--rt-text-2); }
 :where(html[data-theme="light"]) .pd-canonical-scores .rt-calendar-day:hover, :where(html[data-theme="light"]) .pd-canonical-scores .rt-calendar-day:focus-visible { border-color: rgba(var(--rt-brand-rgb),.55); background: var(--rt-surface-2); color: var(--rt-text); }
 :where(html[data-theme="light"]) .pd-canonical-scores .rt-calendar-day.is-other { color: var(--rt-muted); }
 :where(html[data-theme="light"]) .pd-canonical-scores .rt-calendar-day.is-sunday { color: var(--rt-danger); }
 :where(html[data-theme="light"]) .pd-canonical-scores .rt-calendar-day.is-saturday { color: var(--rt-info); }
 :where(html[data-theme="light"]) .pd-canonical-scores .rt-calendar-day.is-today { border-color: rgba(var(--rt-brand-rgb),.55); }
 :where(html[data-theme="light"]) .pd-canonical-scores .rt-calendar-day.is-selected { border-color: var(--rt-brand); background: var(--rt-brand); color: #141414; }
 :where(html[data-theme="light"]) .pd-canonical-scores .rt-calendar-today { border-top: 1px solid var(--rt-border); color: var(--rt-accent-text); }
 :where(html[data-theme="light"]) .pd-canonical-scores .rt-calendar-today:hover, :where(html[data-theme="light"]) .pd-canonical-scores .rt-calendar-today:focus-visible { color: var(--rt-text); }
 html[data-theme="light"] .pd-canonical-scores .rt-date-picker .rt-calendar-popup { border: 1px solid rgba(149,107,255,.38); background: linear-gradient(rgba(231, 232, 240, 0.99),rgba(241, 242, 246, 0.99)); box-shadow: 0 14px 34px rgba(0, 0, 0, 0.175); }
 html[data-theme="light"] .pd-canonical-scores .rt-calendar-head strong { color: #6727ff; }
 html[data-theme="light"] .pd-canonical-scores .rt-calendar-head button { border: 1px solid rgba(149,107,255,.3); background: rgba(149,107,255,.1); color: #622dff; }
 html[data-theme="light"] .pd-canonical-scores .rt-calendar-head button:hover, html[data-theme="light"] .pd-canonical-scores .rt-calendar-head button:focus-visible { border-color: rgba(190,165,255,.6); background: rgba(149,107,255,.24); color: #141414; }
 html[data-theme="light"] .pd-canonical-scores .rt-calendar-weekdays { color: #6555a2; }
 html[data-theme="light"] .pd-canonical-scores .rt-calendar-weekdays span:first-child { color: #c00027; }
 html[data-theme="light"] .pd-canonical-scores .rt-calendar-weekdays span:last-child { color: #004ff0; }
 html[data-theme="light"] .pd-canonical-scores .rt-calendar-day { color: #6448ca; }
 html[data-theme="light"] .pd-canonical-scores .rt-calendar-day:hover, html[data-theme="light"] .pd-canonical-scores .rt-calendar-day:focus-visible { border-color: rgba(190,165,255,.5); background: rgba(149,107,255,.2); color: #141414; }
 html[data-theme="light"] .pd-canonical-scores .rt-calendar-day.is-other { color: #696283; }
 html[data-theme="light"] .pd-canonical-scores .rt-calendar-day.is-sunday { color: #c00027; }
 html[data-theme="light"] .pd-canonical-scores .rt-calendar-day.is-saturday { color: #004ff0; }
 html[data-theme="light"] .pd-canonical-scores .rt-calendar-day.is-today { border-color: rgba(190,165,255,.65); background: rgba(149,107,255,.1); color: #141414; }
 html[data-theme="light"] .pd-canonical-scores .rt-calendar-day.is-selected { border-color: rgba(190,165,255,.55); background: linear-gradient(180deg,#9b79ff,#7549eb); color: #fff; box-shadow: 0 4px 12px rgba(117,73,235,.4); }
 html[data-theme="light"] .pd-canonical-scores .rt-calendar-today { border-top: 1px solid rgba(149,107,255,.22); color: #622dff; }
 html[data-theme="light"] .pd-canonical-scores .rt-calendar-today:hover, html[data-theme="light"] .pd-canonical-scores .rt-calendar-today:focus-visible { color: #141414; }
 html:root .pd-canonical-scores .rt-calendar-day.is-disabled { border-color:transparent; background:transparent; color:#7d749f; opacity:.28; cursor:not-allowed; pointer-events:none; }
 html:root .pd-canonical-scores .rt-date-picker .rt-calendar-popup { left:calc(50% + 30px); right:auto; width:min(300px,calc(100vw - 32px)); transform:translateX(-50%); }
}

/* 세부 점수 열 숨김: 자리는 다른 내용을 위해 비워 둔다(헤더·셀 모두). JS 도 pd-cs-has-ht 를 켜지 않는다. */
html:root .pd-canonical-scores .pd-cs-columns > .pd-cs-colh-ht, html:root .pd-canonical-scores .pd-sc-row .pd-cs-ht { display:none; }
/* 팀 로고 출처 표기(TheSportsDB 약관: 데이터·아트워크 출처를 밝히고 링크) — 목록 아래 한 줄, 눈에 띄지 않게 */
.pd-canonical-scores .pd-cs-credit { margin:10px 0 0; text-align:center; font-size:12px; line-height:1.4; color:var(--t3-text-3,#8F96AD); }
.pd-canonical-scores .pd-cs-credit a { color:inherit; text-decoration:underline; }

/* 601~767px: 모바일 카드/한 줄 구조는 JS 가 ≤600px 에서만 켜므로(리그 묶음·배지) 이 폭은 PC 표 구조를 쓰고, 크기만 같은 기준(로고 24·점수 18·팀명 13)으로 맞춘다. */
@media(min-width:601px) and (max-width:767px) {
 .pd-canonical-scores.pd-scores .pd-sc-list .pd-sc-row { min-height:56px; }
 html:root .pd-cs-logo-slot { width:24px; height:24px; flex:0 0 24px; }
 html:root .pd-cs-logo { width:24px; height:24px; }
 html:root .pd-cs-fallback.pd-md-badge { width:24px; height:24px; border:0; border-radius:0; font-size:10px; }
 html:root .pd-canonical-scores .pd-sc-list .pd-sc-num { font-size:18px; line-height:22px; }
 html:root .pd-canonical-scores .pd-sc-row .pd-sc-team { font-size:13px; }
}

/* ═══ PC(≥1024px) 경기 목록 리뉴얼 — 행 56px·점수 박스·상태 배지·큰 로고 + '기타' 열(라인업·전적비교 버튼)과 팝업(중앙 모달). 모바일·태블릿(≤1023px)은 위의 기존 규칙 그대로다. ═══════════════════════════ */
.pd-cs-actions { display:none; }
html:root .pd-canonical-scores .pd-cs-columns > .pd-cs-colh-act { display:none; }
.pd-cs-modal { display:none; }
@media (min-width:1024px) {
 .pd-canonical-scores .pd-cs-table { --score-columns:168px 116px minmax(0,1fr) 84px minmax(0,1fr) 216px; }
 /* 머리줄 */
 html:root .pd-canonical-scores .pd-cs-columns { height:44px; font-size:13px; font-weight:600; letter-spacing:0; color:var(--t3-text-2,#AAB1C7); background:rgba(8,10,28,.55); }
 html:root .pd-canonical-scores .pd-cs-columns > .pd-cs-colh-league { text-align:left; padding-left:50px; }
 /* 행: 56px, 얇은 구분선. 실시간 행의 붉은 바탕·왼쪽 막대는 상태 배지가 대신한다. */
 html:root .pd-canonical-scores.pd-scores .pd-sc-list .pd-sc-row { min-height:56px; border-top:1px solid rgba(149,107,255,.12); }
 html:root .pd-canonical-scores.pd-scores .pd-sc-list .pd-sc-row.pd-sc-live { box-shadow:none; background:var(--cs-card-bg,transparent); }
 html:root .pd-canonical-scores.pd-scores .pd-sc-list .pd-sc-row.pd-sc-live:hover { background:var(--cs-hover,rgba(149,107,255,.08)); }
 /* 리그: 색 칩(국기·약어) + 이름. 칩 색은 리그별 색상 번호를 그대로 써서 식별을 유지한다. 전체 이름은 title. */
 html:root .pd-canonical-scores .pd-cs-lgbadge { height:auto; gap:12px; padding:0; border:0; border-radius:0; background:none; color:var(--t3-text,#E8EAF6); font-size:14px; font-weight:600; }
 html:root .pd-canonical-scores .pd-cs-lgbadge .pd-cs-lgicon { display:flex; width:38px; height:26px; border-radius:6px; font-size:10px; font-weight:800; color:#fff; background:hsl(var(--lg-hue,262) calc(55% * var(--lg-s,1)) calc(36% + var(--lg-l,0%))); }
 html:root .pd-canonical-scores .pd-cs-lgbadge .pd-cs-lgicon.has-flag { width:42px; height:30px; border-radius:4px; background:none; box-shadow:0 0 0 1px rgba(255,255,255,.12); }
 html:root .pd-canonical-scores .pd-cs-lgicon.has-flag img { width:100%; height:100%; object-fit:cover; }
 /* 시간·상태 배지 */
 html:root .pd-canonical-scores .pd-sc-row .pd-sc-state { min-width:100px; height:30px; padding:0 12px; border:1px solid rgba(148,160,200,.32); border-radius:8px; background:rgba(148,160,200,.12); color:#cfd5ea; font-size:13px; font-weight:600; align-items:center; justify-content:center; gap:6px; }
 html:root .pd-canonical-scores .pd-sc-row.pd-sc-live .pd-sc-state { border-color:rgba(239,71,111,.55); background:rgba(239,71,111,.16); color:#ff8aa0; }
 html:root .pd-canonical-scores .pd-sc-row.pd-sc-live .pd-sc-state::before { content:''; flex:none; width:8px; height:8px; border-radius:50%; background:#ff4d6d; box-shadow:0 0 6px rgba(255,77,109,.8); }
 html:root .pd-canonical-scores .pd-sc-row.pd-sc-upcoming .pd-cs-kickoff { display:inline-flex; align-items:center; justify-content:center; min-width:100px; height:30px; box-sizing:border-box; padding:0 12px; border:1px solid rgba(149,107,255,.3); border-radius:8px; background:rgba(149,107,255,.1); color:#d6dbf2; font-size:13px; font-weight:600; }
 /* 팀: 로고 36px, 홈은 이름 | 로고, 원정은 로고 | 이름 */
 html:root .pd-canonical-scores .pd-sc-row .pd-sc-team { gap:12px; font-size:14px; }
 html:root .pd-canonical-scores .pd-sc-row .pd-cs-home { padding-right:6px; } html:root .pd-canonical-scores .pd-sc-row .pd-cs-away { padding-left:6px; }
 html:root .pd-canonical-scores .pd-cs-team-name { font-weight:500; }
 html:root .pd-canonical-scores .pd-cs-logo-slot { width:36px; height:36px; flex-basis:36px; }
 html:root .pd-canonical-scores .pd-cs-logo { width:36px; height:36px; }
 html:root .pd-canonical-scores .pd-cs-fallback.pd-md-badge { width:34px; height:34px; border-radius:50%; font-size:11px; }
 /* 점수: 별도 다크 네이비 박스 */
 html:root .pd-canonical-scores .pd-sc-row .pd-sc-scores { justify-self:center; width:84px; height:36px; box-sizing:border-box; gap:8px; border:1px solid rgba(149,107,255,.22); border-radius:8px; background:rgba(7,10,30,.8); }
 html:root .pd-canonical-scores .pd-sc-list .pd-sc-num { font-size:17px; font-weight:700; line-height:1; }
 html:root .pd-canonical-scores .pd-cs-columns > span.pd-cs-colh-act { display:block; }
 .pd-canonical-scores .pd-cs-actions { display:flex; align-items:center; justify-content:flex-end; gap:6px; position:relative; z-index:3; min-width:0; }
 .pd-cs-act { display:inline-flex; align-items:center; gap:6px; height:34px; box-sizing:border-box; padding:0 10px; border:1px solid; border-radius:8px; background:transparent; font:inherit; font-size:12px; font-weight:600; line-height:1; white-space:nowrap; cursor:pointer; transition:background-color .15s ease,border-color .15s ease; }
 .pd-cs-act svg { width:15px; height:15px; flex:none; fill:none; stroke:currentColor; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; }
 .pd-cs-act-lineup { min-width:114px; justify-content:center; }
 .pd-cs-act-form { min-width:92px; justify-content:center; }
 /* 라인업 버튼 상태: 없음(비활성 '라인업') · AI 예상(퍼플·로봇) · 확정(청록·체크). 서버 판정(data-state)을 그대로 따른다. */
 .pd-cs-act-lineup :is(.i-ai,.i-ok,.t-ai,.t-ok) { display:none; }
 .pd-cs-act-lineup[data-state="predicted"] :is(.i-none,.t-none,.i-ok,.t-ok), .pd-cs-act-lineup[data-state="confirmed"] :is(.i-none,.t-none,.i-ai,.t-ai) { display:none; }
 .pd-cs-act-lineup[data-state="predicted"] :is(.i-ai,.t-ai) { display:inline; }
 .pd-cs-act-lineup[data-state="confirmed"] :is(.i-ok,.t-ok) { display:inline; }
 .pd-cs-act-lineup[data-state="predicted"] svg.i-ai, .pd-cs-act-lineup[data-state="confirmed"] svg.i-ok { display:block; }
 .pd-cs-act-lineup[data-state="predicted"] { color:#c4adff; border-color:rgba(149,107,255,.7); background:rgba(149,107,255,.18); }
 .pd-cs-act-lineup[data-state="confirmed"] { color:#5eead4; border-color:rgba(45,212,191,.65); background:rgba(20,184,166,.14); }
 .pd-cs-act-form { color:#c4adff; border-color:rgba(149,107,255,.6); background:rgba(149,107,255,.16); }
 .pd-cs-act-lineup[data-state="predicted"]:hover:not(:disabled) { background:rgba(149,107,255,.32); border-color:rgba(190,165,255,.9); color:#fff; }
 .pd-cs-act-lineup[data-state="confirmed"]:hover:not(:disabled) { background:rgba(20,184,166,.28); border-color:rgba(94,234,212,.9); color:#fff; }
 .pd-cs-act-form:hover:not(:disabled) { background:rgba(149,107,255,.3); border-color:rgba(190,165,255,.9); color:#fff; }
 .pd-cs-act:focus-visible { outline:2px solid #b49aff; outline-offset:2px; }
 .pd-cs-act:disabled { border-color:rgba(160,170,210,.16); background:rgba(160,170,210,.05); color:#5f6788; cursor:not-allowed; }
 html[data-theme="light"] .pd-cs-act-lineup[data-state="predicted"] { color:#5b34d6; background:rgba(149,107,255,.12); }
 html[data-theme="light"] .pd-cs-act-lineup[data-state="confirmed"] { color:#0f766e; background:rgba(20,184,166,.12); }
 html[data-theme="light"] .pd-cs-act-form { color:#5b34d6; background:rgba(149,107,255,.12); }

 /* 팝업 */
 html.pd-cs-modal-open { overflow:hidden; }
 .pd-cs-modal { position:fixed; inset:0; z-index:1000; display:flex; align-items:center; justify-content:center; padding:24px; }
 .pd-cs-modal[hidden] { display:none; }
 .pd-cs-modal-back { position:absolute; inset:0; background:rgba(3,5,18,.68); }
 .pd-cs-modal-box { position:relative; width:min(1180px,100%); max-height:calc(100vh - 48px); display:flex; flex-direction:column; box-sizing:border-box; border:1px solid rgba(149,107,255,.4); border-radius:14px; background:linear-gradient(rgba(16,22,52,.99),rgba(10,15,38,.99)); color:var(--t3-text,#EEF0F8); box-shadow:0 24px 60px rgba(0,0,0,.55); outline:0; }
 .pd-cs-modal-head { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:14px 18px; border-bottom:1px solid rgba(149,107,255,.22); }
 .pd-cs-modal-title { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:15px; }
 .pd-cs-modal-x { flex:none; width:30px; height:30px; border:0; border-radius:8px; background:rgba(149,107,255,.14); color:inherit; font-size:20px; line-height:1; cursor:pointer; }
 .pd-cs-modal-x:hover, .pd-cs-modal-x:focus-visible { background:rgba(149,107,255,.32); outline:0; }
 .pd-cs-modal-body { padding:6px 18px 20px; overflow:auto; }
 .pd-cs-modal-body .pd-cs-pbody { margin:0; padding:0; background:none; }
 .pd-cs-modal-body .pd-cs-pbody > section:first-of-type { margin-top:0; }
/* 라인업 팝업(전용 래퍼 .pd-cs-pbody[data-pd-kind="lineup"]): 탭 없이 선수 정보 헤더 → 전광판+그라운드 → 교체 명단 → 결장 정보를 세로로. 마크업은 경기 상세와 같은 조각이고, 팝업에서만 켜지는 요소(.pd-cs-side/.pd-cs-vs/.pd-cs-sechead)는 $pd_popup 이 그린다. 상세 CSS 는 건드리지 않는다. */
 .pd-cs-modal:is([data-kind="lineup"],[data-kind="form"]) .pd-cs-modal-head { position:absolute; z-index:3; top:0; right:30px; height:68px; padding:0; border:0; }
 .pd-cs-modal:is([data-kind="lineup"],[data-kind="form"]) .pd-cs-modal-title { position:absolute; width:1px; height:1px; overflow:hidden; clip:rect(0 0 0 0); white-space:nowrap; }
 .pd-cs-modal:is([data-kind="lineup"],[data-kind="form"]) .pd-cs-modal-body { padding:0 18px 18px; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players.pd-v14-tactics { margin-top:0; padding:0; border:0; background:none; box-shadow:none; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-v21-player-tabs { display:none; }
 /* 머리글: 아이콘 + 선수 정보 + 배지 + 안내(오른쪽은 X 자리) */
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-v15-lineup-header { display:flex; align-items:center; min-height:72px; margin:0; padding:0 64px 0 6px; border:0; background:none; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-v15-lineup-heading { display:flex; align-items:center; gap:14px; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-cs-state { display:flex; align-items:center; gap:14px; margin:0; font-size:28px; font-weight:900; letter-spacing:-.3px; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-cs-state-ico { display:grid; place-items:center; flex:none; width:56px; height:56px; border-radius:50%; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-cs-state-ico svg { width:30px; height:30px; fill:none; stroke:#fff; stroke-width:2; stroke-linecap:round; stroke-linejoin:round; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-cs-state.is-predicted { color:#b9a2ff; text-shadow:0 0 18px rgba(139,92,246,.55); }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-cs-state.is-predicted .pd-cs-state-ico { background:linear-gradient(145deg,#8b5cf6,#5b34d6); box-shadow:0 0 18px rgba(139,92,246,.6); }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-cs-state.is-confirmed { color:#5fd4ff; text-shadow:0 0 18px rgba(34,160,255,.5); }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-cs-state.is-confirmed .pd-cs-state-ico { background:linear-gradient(145deg,#2fa8ff,#0e6fd8); box-shadow:0 0 18px rgba(34,160,255,.55); }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-cs-state.is-confirmed + .pd-v15-lineup-note { color:#7fc8ee; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-v15-lineup-content { padding:0; border:0; background:none; }
 /* 전광판 + 그라운드 한 카드 */
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-v14-board-shell { margin:0; padding:0; border:0; background:none; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players [data-pd-tab-panel="start"] { padding:0 14px 14px; border:1px solid rgba(120,110,230,.38); border-radius:12px; background:rgba(14,18,52,.55); }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-v14-team-bar { grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); gap:16px; padding:16px 8px; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-v14-team { display:grid; align-items:center; column-gap:12px; row-gap:2px; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-v14-team.is-home { grid-template-columns:auto auto auto auto 1fr; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-v14-team.is-away { grid-template-columns:1fr auto auto auto auto; justify-content:stretch; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-v14-team .rt-team-logo { width:52px; height:52px; flex-basis:52px; border-radius:50%; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-v14-team .rt-team-initial { font-size:14px; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-v14-team.is-home .rt-team-logo { grid-column:1; grid-row:1 / 3; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-v14-team.is-home strong { grid-column:2; grid-row:1; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-v14-team.is-home .pd-cs-side { grid-column:3; grid-row:1; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-v14-team.is-home .pd-v13-formation { grid-column:4; grid-row:1; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-v14-team.is-home .pd-v14-coach { grid-column:2 / 5; grid-row:2; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-v14-team.is-away .pd-v13-formation { grid-column:2; grid-row:1; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-v14-team.is-away .pd-cs-side { grid-column:3; grid-row:1; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-v14-team.is-away strong { grid-column:4; grid-row:1; text-align:right; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-v14-team.is-away .rt-team-logo { grid-column:5; grid-row:1 / 3; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-v14-team.is-away .pd-v14-coach { grid-column:2 / 5; grid-row:2; text-align:right; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-v14-team strong { font-size:22px; font-weight:800; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-v14-team .pd-v13-formation { padding:5px 14px; border:1px solid #3b82f6; border-radius:999px; background:rgba(37,99,235,.2); color:#dbe8ff; font-size:16px; font-weight:800; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-v14-coach { color:#9aa8c7; font-size:14px; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-v14-coach::before { content:'감독 '; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-cs-side { padding:2px 10px; border-radius:999px; background:rgba(120,90,230,.35); color:#e5dcff; font-size:13px; font-weight:700; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-v14-team.is-away .pd-cs-side { background:rgba(240,180,40,.22); color:#ffe08a; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-cs-vs { display:flex; align-items:center; justify-content:center; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-cs-vs b { background:linear-gradient(180deg,#9bb8ff,#7c5cff); -webkit-background-clip:text; background-clip:text; color:transparent; font-size:30px; font-weight:900; letter-spacing:1px; }
 /* 교체 명단·결장 정보: 같은 틀(왼쪽 포인트 라인 + 아이콘 + 제목 + 총인원 배지) 안에 홈(왼쪽)·원정(오른쪽) 독립 카드 */
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-v14-benches,  html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-v13-availability { position:relative; margin-top:16px; padding:14px 14px 14px 18px; border:1px solid rgba(120,110,230,.3); border-radius:12px; background:rgba(14,18,52,.55); box-shadow:inset 5px 0 0 #8b5cf6; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-v13-availability { box-shadow:inset 5px 0 0 #ec4899; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-v14-benches::before,  html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-v13-availability > h4 { display:none; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-v14-benches,  html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-v13-availability-cols { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; align-items:stretch; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-v13-availability { display:block; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-cs-sechead { grid-column:1 / -1; display:flex; align-items:center; gap:12px; margin:0 0 12px; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-cs-sechead svg { flex:none; width:32px; height:32px; fill:none; stroke:#4f8bff; stroke-width:2.4; stroke-linecap:round; stroke-linejoin:round; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-cs-sechead.is-out svg { stroke:#ff5d73; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-cs-sechead strong { color:#f2f7ff; font-size:21px; font-weight:800; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players :is(.pd-v14-bench .pd-bn-n, .pd-v18-availability-head small) { display:none; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-v14-bench ul { grid-template-columns:repeat(2,minmax(0,1fr)); }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-v13-availability-team { min-width:0; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="lineup"] .pd-v13-players .pd-v14-bench ul:not(:has(li))::after { content:'등록된 교체 선수 없음'; grid-column:1 / -1; padding:14px 0; text-align:center; color:var(--t3-text-3,#8F96AD); font-size:12px; }
 /* 전적비교 팝업(전용 래퍼 .pd-cs-pbody[data-pd-kind="form"]): 전광판 → 최근폼·H2H 요약 → 탭 → 2열 카드. 수치는 서버가 getMatchFormPanel 값으로 채운다. */
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] { padding-top:14px; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-cs-fboard { display:grid; grid-template-columns:minmax(0,1fr) auto minmax(0,1fr); align-items:center; gap:16px; margin:0 0 12px; padding:16px 64px; border:1px solid rgba(120,110,230,.38); border-radius:14px; background:linear-gradient(90deg,rgba(40,70,170,.18),rgba(14,18,52,.6) 50%,rgba(150,60,170,.16)); }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-cs-fb-team { display:flex; align-items:center; gap:14px; min-width:0; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-cs-fb-team.is-away { justify-content:flex-end; text-align:right; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-cs-fb-role { flex:none; padding:4px 12px; border-radius:6px; font-size:13px; font-weight:800; color:#fff; background:#1d6fe0; border:1px solid #5aa2ff; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-cs-fb-team.is-away .pd-cs-fb-role { background:#b8334f; border-color:#ff7b93; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-cs-fb-team .rt-team-logo { position:relative; display:inline-grid; place-items:center; flex:none; width:56px; height:56px; overflow:hidden; border-radius:50%; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-cs-fb-team .rt-team-logo img { position:absolute; inset:0; width:100%; height:100%; object-fit:contain; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-cs-fb-name { display:flex; flex-direction:column; gap:3px; min-width:0; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-cs-fb-name strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:#f2f7ff; font-size:24px; font-weight:800; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-cs-fb-name small { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:#9aa8c7; font-size:14px; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-cs-fb-vs b { background:linear-gradient(180deg,#9bb8ff,#7c5cff); -webkit-background-clip:text; background-clip:text; color:transparent; font-size:34px; font-weight:900; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-cs-fsumm { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) minmax(0,1.5fr); gap:10px; margin-bottom:12px; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-cs-fs-team { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(0,1fr) minmax(0,1fr); gap:8px; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-cs-fs-flow,  html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-cs-fs-stat,  html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-cs-fs-h2h { min-width:0; padding:12px 14px; border:1px solid rgba(120,110,230,.3); border-radius:12px; background:rgba(14,18,52,.55); }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-cs-fs-flow strong { display:block; margin-bottom:10px; color:#dfe6fa; font-size:16px; font-weight:700; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-cs-fs-flow em,  html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-cs-fs-h2h em { color:#8F96AD; font-size:13px; font-style:normal; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-cs-dots { display:flex; gap:6px; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-cs-dots b { display:grid; place-items:center; width:30px; height:30px; border-radius:50%; color:#fff; font-size:13px; font-weight:800; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-cs-dots b.is-W { background:#12a05c; }  html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-cs-dots b.is-D { background:#e0a800; }  html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-cs-dots b.is-L { background:#d6334f; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-cs-fs-stat { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:6px; text-align:center; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-cs-fs-stat small { color:#9aa8c7; font-size:13px; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-cs-fs-stat b { color:#f2f7ff; font-size:21px; font-weight:800; white-space:nowrap; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-cs-fs-h2h { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:6px; text-align:center; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-cs-fs-h2h strong { color:#f2f7ff; font-size:17px; }  html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-cs-fs-h2h small { color:#9aa8c7; font-size:13px; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-cs-fs-bar { display:flex; width:100%; height:8px; overflow:hidden; border-radius:999px; background:rgba(255,255,255,.08); }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-cs-fs-bar .is-h { background:#2f80ed; }  html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-cs-fs-bar .is-d { background:#7b6fc4; }  html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-cs-fs-bar .is-a { background:#e5395c; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-cs-fs-bl { display:flex; justify-content:space-between; width:100%; font-size:15px; font-weight:800; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-cs-fs-bl .is-h { color:#58a6ff; }  html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-cs-fs-bl .is-d { color:#c4adff; }  html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-cs-fs-bl .is-a { color:#ff6b8a; }
 /* 탭: 제목 없이 가로 2분할 */
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-v16-h2h-summary { display:none; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-v15-history { padding:0; border:0; background:none; box-shadow:none; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-v15-history-head { display:block; margin:0 0 12px; padding:0; border:0; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-v15-history-head h2 { display:none; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-v15-history-head .pd-v15-tabs { display:grid; grid-template-columns:1fr 1fr; width:100%; padding:0; gap:0; border:1px solid rgba(120,110,230,.38); border-radius:12px; overflow:hidden; background:rgba(14,18,52,.55); }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-v15-history-head .pd-v15-tabs button { min-width:0; padding:13px 0; border:0; border-radius:0; background:transparent; color:#aab4d4; font-size:17px; font-weight:700; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-v15-history-head .pd-v15-tabs button[aria-selected="true"] { background:linear-gradient(180deg,#7a4be8,#5a30c4); color:#fff; box-shadow:0 0 16px rgba(122,75,232,.5); }
 .pd-cs-modal[data-kind="form"] .pd-cs-modal-head { top:24px; right:32px; height:auto; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] #pd-v15-panel-h2h :is(.pd-v20-h2h-columns,.pd-md-h2h-list) { margin-left:0; margin-right:0; }
/* 전적비교 최근 경기: 홈·원정 2열 카드. 행은 날짜 / 리그 / 홈팀 / 스코어 / 원정팀(경기 방향 그대로)이고, 스코어 박스 색은 그 카드 팀의 승무패(.pd-md-form-badge.is-W/D/L, 숨김)이며 상단 최근 5경기 원형 아이콘(.pd-cs-dots b.is-W/D/L)과 같은 색, 이긴 팀 이름만 굵게. 데이터·마크업은 그대로. */
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-v15-history #pd-v15-panel-recent .pd-md-form-cols { grid-template-columns:repeat(2,minmax(0,1fr)); gap:14px; align-items:start; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-v15-history #pd-v15-panel-recent .pd-md-form-col { padding:12px 12px 10px; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-v15-history #pd-v15-panel-recent .pd-md-form-team { box-sizing:border-box; min-height:44px; padding:0 0 8px; gap:10px; border-bottom:0; flex-wrap:nowrap; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-v15-history #pd-v15-panel-recent .pd-v20-form-role { padding:4px 10px; height:auto; border-radius:7px; font-size:12px; font-weight:800; color:#fff; border:0; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-v15-history #pd-v15-panel-recent .pd-v20-form-role.is-home { background:linear-gradient(180deg,#2f80ed,#1d63d1); }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-v15-history #pd-v15-panel-recent .pd-v20-form-role.is-away { background:linear-gradient(180deg,#f0526a,#d9304a); }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-v15-history #pd-v15-panel-recent .pd-md-form-team .rt-team-logo { position:relative; width:28px; height:28px; flex:0 0 28px; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-v15-history #pd-v15-panel-recent .pd-md-form-team .rt-team-logo img { position:absolute; inset:0; width:100%; height:100%; object-fit:contain; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-v15-history #pd-v15-panel-recent .pd-md-form-name { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:17px; font-weight:800; color:#f4f7ff; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-v15-history #pd-v15-panel-recent .pd-cs-ffilter { display:inline-flex; margin-left:auto; flex:none; border:1px solid rgba(120,110,230,.4); border-radius:8px; background:rgba(14,18,52,.7); overflow:hidden; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-v15-history #pd-v15-panel-recent .pd-cs-ffilter button { min-width:44px; padding:6px 12px; border:0; background:transparent; color:#aab4d4; font-size:13px; font-weight:700; cursor:pointer; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-v15-history #pd-v15-panel-recent .pd-cs-ffilter button[aria-pressed="true"] { background:linear-gradient(180deg,#7a4be8,#5a30c4); color:#fff; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-v15-history #pd-v15-panel-recent .pd-v20-form-columns,  html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-v15-history #pd-v15-panel-recent .pd-md-form-row { grid-template-columns:72px 92px minmax(0,1fr) 68px minmax(0,1fr); column-gap:6px; align-items:center; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-v15-history #pd-v15-panel-recent .pd-v20-form-columns { min-height:38px; padding:0 10px; font-size:13px; font-weight:600; color:#aab6dc; background:rgba(110,100,230,.2); }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-v15-history #pd-v15-panel-recent .pd-v20-form-columns > span:nth-child(3) { grid-column:3 / 6; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-v15-history #pd-v15-panel-recent .pd-v20-form-columns > :is(span:nth-child(4),span:nth-child(5)) { display:none; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-v15-history #pd-v15-panel-recent .pd-md-form-row { min-height:46px; padding:4px 10px; border-top:1px solid rgba(120,110,230,.2); }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-v15-history #pd-v15-panel-recent .pd-md-form-row:first-child { border-top:0; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-v15-history #pd-v15-panel-recent .pd-md-form-cols .pd-md-form-col[data-pd-filter="home"] .pd-md-form-row:not(:has(.pd-md-form-match > .pd-md-form-focus:first-child)),
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-v15-history #pd-v15-panel-recent .pd-md-form-cols .pd-md-form-col[data-pd-filter="away"] .pd-md-form-row:not(:has(.pd-md-form-match > .pd-md-form-focus:last-child)) { display:none; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-v15-history #pd-v15-panel-recent :is(.pd-md-form-date,.pd-md-form-league) { grid-row:1; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:13px; font-weight:500; color:#aeb9d8; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-v15-history #pd-v15-panel-recent .pd-md-form-match { display:contents; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-v15-history #pd-v15-panel-recent .pd-md-form-match > span { grid-row:1; min-width:0; font-size:14px; font-weight:500; line-height:1.25; color:#c3cde6; overflow-wrap:anywhere; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-v15-history #pd-v15-panel-recent .pd-md-form-match > span:first-child { grid-column:3; text-align:right; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-v15-history #pd-v15-panel-recent .pd-md-form-match > span:last-child { grid-column:5; text-align:left; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-v15-history #pd-v15-panel-recent .pd-md-form-match > .pd-md-form-vs { display:none; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-v15-history #pd-v15-panel-recent .pd-md-form-row:has(.pd-md-form-badge.is-W) .pd-md-form-match > .pd-md-form-focus,
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-v15-history #pd-v15-panel-recent .pd-md-form-row:has(.pd-md-form-badge.is-L) .pd-md-form-match > span:not(.pd-md-form-focus):not(.pd-md-form-vs) { font-weight:800; color:#fff; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-v15-history #pd-v15-panel-recent .pd-md-form-score { grid-column:4; grid-row:1; align-self:center; justify-self:center; width:66px; height:30px; line-height:1; display:inline-grid; place-items:center; border-radius:6px; font-size:16px; font-weight:800; background:rgba(28,34,96,.75); color:#fff; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-v15-history #pd-v15-panel-recent .pd-md-form-row:has(.pd-md-form-badge.is-W) .pd-md-form-score { background:#12a05c; color:#fff; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-v15-history #pd-v15-panel-recent .pd-md-form-row:has(.pd-md-form-badge.is-D) .pd-md-form-score { background:#e0a800; color:#fff; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-v15-history #pd-v15-panel-recent .pd-md-form-row:has(.pd-md-form-badge.is-L) .pd-md-form-score { background:#d6334f; color:#fff; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-v15-history #pd-v15-panel-recent .pd-md-form-badge { display:none; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-v15-history #pd-v15-panel-recent .pd-md-more { padding:8px 0 4px; }
 html:root .pd-md.pd-cs-pbody[data-pd-kind="form"] .pd-v15-history #pd-v15-panel-recent .pd-md-more-btn { height:32px; min-width:110px; padding:0 18px; border:1px solid rgba(130,120,240,.6); border-radius:8px; background:rgba(16,20,60,.85); color:#e6ecff; font-size:13px; font-weight:700; }
 .pd-cs-modal-note { margin:28px 0; text-align:center; color:var(--t3-text-2,#AAB1C7); font-size:14px; }
}
@media (min-width:1280px) {
 .pd-canonical-scores .pd-cs-table { --score-columns:200px 136px minmax(0,1fr) 92px minmax(0,1fr) 264px; }
 html:root .pd-canonical-scores .pd-cs-columns > .pd-cs-colh-league { padding-left:52px; }
 html:root .pd-canonical-scores .pd-sc-row .pd-sc-scores { width:92px; }
 .pd-cs-act { padding:0 14px; font-size:13px; }
 .pd-cs-act-lineup { min-width:132px; } .pd-cs-act-form { min-width:104px; }
 .pd-canonical-scores .pd-cs-actions { gap:10px; }
}

/* 실제 팀 로고가 없을 때(주소 없음·로딩 실패)의 기본 로고: 홈=용(블루), 원정=호랑이(퍼플). 로고가 로드되면 .has-logo 로 숨겨 실제 로고가 최우선이다. 크기·정렬은 기존 약자 배지 칸을 그대로 쓴다(PC·모바일 공통). */
html:root .pd-canonical-scores .pd-cs-fallback.pd-md-badge { border:0; border-radius:0; background:center / contain no-repeat transparent; color:transparent; font-size:0; }
html:root .pd-canonical-scores .pd-cs-home .pd-cs-fallback.pd-md-badge { background-image:url(assets/team-default-home.png); }
html:root .pd-canonical-scores .pd-cs-away .pd-cs-fallback.pd-md-badge { background-image:url(assets/team-default-away.png); }
html:root .pd-canonical-scores .pd-cs-logo-slot.has-logo .pd-cs-fallback.pd-md-badge { visibility:hidden; }

