/* ===== AI Sports Lab 樣式（refresh-1：偏藍炭黑・數據儀表板，MLB/NBA 共用）===== */
:root{
  --bg:#0d1117; --card:#151b23; --card-2:#1c232d; --line:#262e39; --text:#e6edf3; --text2:#8b949e;
  --gold:#d4af37; --up:#3fb950; --down:#f85149; --bar-oth:#2d3540; --link:#c9d1d9;
  --c-strong:#0d1117; --c-strong-bg:var(--gold); --c-lean:var(--gold); --c-lean-bg:transparent;
  --c-toss:#c9d1d9; --c-toss-bg:#262e39; --c-muted:var(--text2); --c-border:var(--line);
  --c-bg:var(--card-2); --c-text:var(--text); --c-focus:#ffb300;
  --fs-xs:12px; --fs-sm:14px; --fs-md:15px; --fs-lg:18px; --fs-xl:26px;
  --num:"SF Mono","Roboto Mono",ui-monospace,monospace;
  --sp-1:4px; --sp-2:8px; --sp-3:12px; --sp-4:16px; --sp-5:20px; --sp-6:24px;
  --radius:12px; --radius-sm:8px; --radius-pill:999px; --nav-h:56px;
}
/* 基本 */
html{scroll-behavior:smooth;scroll-padding-top:56px}
body{margin:0;background:var(--bg);color:var(--text);font-family:-apple-system,BlinkMacSystemFont,"PingFang TC","Noto Sans TC","Microsoft JhengHei",system-ui,sans-serif;font-size:var(--fs-md);line-height:1.6;-webkit-font-smoothing:antialiased}
a{color:var(--link)}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:2px solid var(--c-focus);outline-offset:2px}
.num,td.n{font-family:var(--num);font-variant-numeric:tabular-nums}
.nw{white-space:nowrap}

/* 頁首 */
header{position:relative;background:var(--bg);border-bottom:1px solid var(--line);padding:0 16px}
header h1{margin:0;color:var(--text);font-size:22px;font-weight:700;letter-spacing:.2px}
.brand{display:flex;align-items:center;gap:8px;white-space:nowrap;font-size:clamp(20px,6vw,28px)}
.brand .logo{width:30px;height:30px;flex:none;background:#fff;border-radius:50%;padding:2px}
.brand .sport{color:var(--gold);font-weight:600}
#lgbar{position:sticky;top:0;z-index:15;background:rgba(13,17,23,.96);backdrop-filter:blur(8px);padding:8px 16px}
.lgsw{display:flex;gap:8px;width:100%}
.lgsw button{flex:1;height:44px;border-radius:var(--radius-pill);background:#1c232d;border:1px solid var(--line);color:#8b949e;font-size:16px;font-weight:600;cursor:pointer}
.lgsw button[aria-selected="true"]{background:#d4af37;border-color:#d4af37;color:#0d1117;font-weight:700}
main section.tab-off{display:none}
main section.tab-on{animation:tabfade .15s ease}
@keyframes tabfade{from{opacity:0}to{opacity:1}}
.tagline{margin:6px 0 0;color:var(--text);font-size:var(--fs-sm);font-weight:600}
.tagline a{color:var(--link);font-weight:400;white-space:nowrap;text-decoration:none}
.tagline-sub{margin:2px 0 0;color:var(--text2);font-size:var(--fs-xs)}
.tagline-link{margin:2px 0 0;font-size:var(--fs-xs)}
.tagline-link a{color:var(--link);font-weight:400;text-decoration:none}

/* 導覽 */
#topnav{position:sticky;top:60px;z-index:10;display:flex;gap:4px;overflow-x:auto;white-space:nowrap;background:rgba(13,17,23,.94);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);padding:8px 16px}
#topnav a{flex:none;color:var(--text2);text-decoration:none;font-size:13px;padding:4px 8px}
#topnav a[aria-current="page"]{color:var(--gold);font-weight:700;box-shadow:inset 0 -2px 0 var(--gold)}
#bottomnav{display:none}
@media(max-width:767px){
  #topnav{display:none}
  body{padding-bottom:calc(var(--nav-h) + env(safe-area-inset-bottom))}
  html{scroll-padding-top:8px} section{scroll-margin-top:8px}
  #bottomnav{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:20;height:calc(var(--nav-h) + env(safe-area-inset-bottom));
    padding-bottom:env(safe-area-inset-bottom);background:rgba(13,17,23,.94);backdrop-filter:blur(8px);border-top:1px solid var(--line)}
  #bottomnav a{flex:1;min-width:48px;min-height:48px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;
    color:var(--text2);text-decoration:none;font-size:11px;position:relative;white-space:nowrap}
  #bottomnav .ic{display:block;line-height:0;margin-bottom:2px}
  #bottomnav a:active{background:rgba(255,255,255,.04)}
  #bottomnav a[aria-current="page"]{color:var(--gold);font-weight:700}
  #bottomnav a[aria-current="page"]::before{content:"";position:absolute;top:0;left:50%;width:24px;height:3px;margin-left:-12px;background:var(--gold);border-radius:0 0 3px 3px}
}

/* 區塊：不加外框，標題直接放在背景上 */
main{max-width:1200px;margin:auto;padding:8px}
section{background:none;border:0;padding:8px 4px;margin-bottom:var(--sp-5);scroll-margin-top:56px}
h2{font-size:var(--fs-lg);font-weight:700;color:var(--text);margin:0 0 4px;padding:0;border:0}
h3,.sub{margin:8px 0;color:var(--text);font-size:var(--fs-md);font-weight:600}
.sub{margin-top:var(--sp-6)}
.note{background:none;border:0;padding:0;margin:0 0 12px;font-size:var(--fs-xs);color:var(--text2)}
.grid,.divs{display:grid;grid-template-columns:1fr;gap:var(--sp-3)}
.grid>div,.divs>div,article{overflow-x:auto;-webkit-overflow-scrolling:touch}
/* 戰績、排行榜等清單：一層 --card 底色 */
#standings>.divs>div,#batting>div,#pitching>div,#nba-standings-box>.divs>div,#nba-standings-box>div>div,#nba-leaders-box .ntabp,#hit,#nba-hit{background:var(--card);border-radius:var(--radius);padding:var(--sp-3) var(--sp-4)}
#batting>div h3,#pitching>div h3,#standings h3,#nba-standings-box h3,#nba-leaders-box h3{margin-top:0}
@media(min-width:768px){
  .grid,.divs{grid-template-columns:repeat(auto-fit,minmax(320px,1fr))}
  header h1{font-size:28px} main{padding:16px}
}

/* 表格 */
table{border-collapse:collapse;width:100%;font-size:13px;white-space:nowrap}
th,td{padding:6px 8px;text-align:center}
td:first-child,th:first-child{text-align:left}
th{background:none;color:var(--text2);font-weight:600;border-bottom:1px solid var(--line)}
td{border-bottom:1px solid rgba(38,46,57,.6);color:var(--text)}
tr:last-child td{border-bottom:0}
.ls td,.ls th{padding:2px 6px}
.hrt td,.hrt th{white-space:nowrap}
.chartbox{position:relative;height:300px;background:var(--card);border-radius:var(--radius);padding:var(--sp-3)}
@media(min-width:768px){ .chartbox{height:380px} }

/* 載入、錯誤、舊資料 */
.sk{height:16px;margin:10px 0;border-radius:4px;background:linear-gradient(90deg,#1c232d 25%,#262e39 50%,#1c232d 75%);background-size:200% 100%;animation:sk 1.2s infinite}
@keyframes sk{to{background-position:-200% 0}}
.err{display:flex;align-items:center;justify-content:space-between;gap:8px;background:var(--card);color:var(--text);border-left:3px solid var(--down);padding:8px 10px;border-radius:var(--radius-sm);font-size:var(--fs-sm);margin-bottom:8px}
.err button{margin-left:8px;padding:6px 14px;border:0;border-radius:4px;background:var(--card-2);color:var(--text);font-size:14px}
.stale{background:var(--card-2);color:var(--text2);padding:6px 10px;border-radius:var(--radius-sm);font-size:13px;margin-bottom:8px}
.status:empty{display:none}

/* 展開 */
details>summary{list-style:none;cursor:pointer;color:var(--link)} details>summary::-webkit-details-marker{display:none}
details>summary::after{content:"▾";display:inline-block;margin-left:4px;transition:transform .15s}
details[open]>summary::after{transform:rotate(180deg)}
.cmp{margin:0 0 12px;font-size:var(--fs-sm)}
.cmp summary{font-weight:400;color:var(--text2);padding:6px 0}
.full summary{font-weight:400;color:var(--text2);font-size:var(--fs-sm);padding:8px 0}
.mk-more summary{font-size:var(--fs-xs);color:var(--text2);margin-top:4px}
.mk-more ul{margin:4px 0 0;padding-left:18px;font-size:var(--fs-sm)}

/* 預測卡 */
.pcard{position:relative;display:flex;flex-direction:column;gap:var(--sp-2);background:var(--card);border:0;box-shadow:0 1px 0 rgba(255,255,255,.03) inset;padding:var(--sp-4);border-radius:var(--radius)}
.pcard .meta{color:var(--text2);font-size:var(--fs-sm);padding-right:96px}
.meta .ser{font-size:var(--fs-xs)}
.pcard .headline{color:var(--text);font-size:var(--fs-xl);font-weight:700;line-height:1.25}
@media(max-width:767px){ .pcard .headline{font-size:var(--fs-lg)} }
.pcard .headline,.pbar-lab,.pcard .meta,.chip,.dl,.why,.cmpt,.pcard td{font-variant-numeric:tabular-nums}
.pcard details.cmp{margin:0} .pcard details.cmp summary{padding:0;line-height:1.4} .pcard details.cmp[open]>summary{margin-bottom:var(--sp-2)}
.tier-row{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:4px 0}
.tier{display:inline-block;white-space:nowrap;font-size:var(--fs-sm);font-weight:700;padding:2px 10px;border-radius:var(--radius-pill);border:0}
.tier.strong{color:var(--c-strong);background:var(--c-strong-bg)}
.tier.lean{color:var(--c-lean);background:var(--c-lean-bg);border:1px solid var(--gold)}
.tier.toss{color:var(--c-toss);background:var(--c-toss-bg)}
.wait-tag{position:absolute;top:8px;right:8px;background:var(--line);color:var(--text2);font-size:var(--fs-xs);border-radius:var(--radius-pill);padding:1px 8px}
.early-note{color:var(--text2);font-size:var(--fs-xs);margin:2px 0 4px}
.upset{font-size:var(--fs-sm);color:var(--text2)}
.upd{font-size:var(--fs-xs);color:var(--text2);margin-top:var(--sp-2)}
.pbar-lab{display:flex;justify-content:space-between;font-size:var(--fs-sm);font-weight:600;color:var(--text2)}
.pbar{display:flex;height:10px;border-radius:6px;overflow:hidden;gap:2px;background:var(--bar-oth)}
.pbar .fav{background:var(--gold)} .pbar .oth{background:var(--bar-oth)}
.kp{margin:0;padding-left:22px;font-size:var(--fs-md);line-height:1.6} .kp li{margin:2px 0}
.kp-end{font-weight:700;font-size:var(--fs-md)}
.ref,.desc,.vnote{color:var(--text2)} .ref{font-size:var(--fs-sm)} .desc,.vnote{font-size:var(--fs-xs);font-weight:400}
/* 為什麼這樣預測 */
.why{margin:0;background:var(--card-2);border:0;border-radius:var(--radius-sm);padding:var(--sp-3);font-size:var(--fs-sm);line-height:1.7}
.why-h{font-size:var(--fs-xs);color:var(--text2)}
.why-c{font-size:var(--fs-md);font-weight:700;color:var(--text);margin:2px 0 var(--sp-2)}
.why-l{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.why-l li{display:flex;gap:var(--sp-2);align-items:flex-start;line-height:1.5}
.why-s,.hl-s{font-size:var(--fs-sm);font-weight:600;color:var(--text);margin-bottom:var(--sp-1)}
.why-u{font-size:var(--fs-xs);color:var(--text2);margin-top:var(--sp-2);line-height:1.5}
.why-k{background:none;border:0;border-top:1px solid var(--line);border-radius:0;padding:var(--sp-2) 0 0;margin-top:var(--sp-2)}
.why-kh,.ref-tag{font-size:var(--fs-xs);color:var(--text2)} .why-kh{font-weight:600} .ref-tag{font-weight:400}
.mk-focus{font-size:var(--fs-sm);margin-top:2px}
.chips{display:flex;flex-wrap:wrap;gap:4px 10px;margin-top:3px}
.chip{background:none;border:0;padding:0;color:var(--text2);font-size:var(--fs-sm);white-space:nowrap} .chip b{color:var(--text);font-weight:700}
.dl{flex:none;min-width:4.6em;text-align:center;font-family:var(--num);font-weight:700;font-size:var(--fs-xs);padding:2px 6px;border-radius:10px}
.dl.up{background:rgba(63,185,80,.12);color:var(--up)} .dl.down{background:rgba(248,81,73,.12);color:var(--down)} .dl.zero{background:none;color:var(--text2)}
/* 修正過程圖 */
.bridge{display:flex;flex-direction:column;gap:6px;margin:var(--sp-2) 0;color:var(--text)}
.br-cap{font-size:var(--fs-xs);color:var(--text2)}
.br-row{display:grid;grid-template-columns:5.5em 1fr 6.5em;align-items:center;gap:var(--sp-2);height:28px;font-size:var(--fs-sm)}
.br-track{position:relative;height:100%;background:var(--card-2);border-radius:4px}
.br-seg{position:absolute;top:0;bottom:0;border-radius:4px}
.br-seg.base,.br-seg.start{background:var(--bar-oth)} .br-seg.final{background:var(--gold)}
.br-seg.up{background:var(--up)} .br-seg.down{background:var(--down)} .br-seg.zero{background:var(--text2)}
.br-v{text-align:right;font-weight:700;white-space:nowrap;font-family:var(--num);font-variant-numeric:tabular-nums}
.br-row.na,.br-row.muted{color:var(--text2)} .br-row.na .br-v{font-family:inherit;font-weight:400;font-size:var(--fs-xs);white-space:normal;line-height:1.2}
/* 兩隊對比表 */
.cmpt{width:100%;white-space:normal;color:var(--text)}
.cmpt th{position:sticky;top:0;background:var(--card)}
.cmpt td{height:44px} .cmpt tr:nth-child(even) td{background:var(--card-2)}
.cmpt td:first-child,.cmpt th:first-child{text-align:left} .cmpt td:last-child,.cmpt th:last-child{text-align:right}
.cmpt .mid{text-align:center}

/* 賽後分析：每篇一張 --card，三行重點用 --card-2 */
article{background:var(--card);border:0;border-radius:var(--radius);padding:var(--sp-3) var(--sp-4);margin:0 0 var(--sp-3)}
article p{line-height:1.7;margin:6px 0}
article h3{font-size:var(--fs-md);margin-top:0}
article h3 .ah-d{display:block;font-size:var(--fs-xs);font-weight:400;color:var(--text2)}
article h3 .ah-s{display:block;white-space:nowrap}
.hl{background:var(--card-2);border:0;border-radius:var(--radius-sm);padding:10px 12px;margin:8px 0}
.hl-title{font-size:var(--fs-sm);font-weight:600;color:var(--text);margin-bottom:4px}
.hl ol{margin:0;padding-left:22px;font-size:var(--fs-md);line-height:1.6}
.hl li{margin:4px 0}

/* 命中率 */
.vp{display:inline-block;padding:1px 8px;border-radius:10px;font-size:var(--fs-xs);font-weight:600;background:var(--line);color:var(--text2)}
.hr-big{font-size:var(--fs-xl);font-weight:700;font-family:var(--num)} .hr-big.muted{color:var(--text2);font-family:inherit}
.hr-prog{display:flex;align-items:center;gap:var(--sp-2);margin:var(--sp-1) 0;font-size:var(--fs-sm)}
.hr-bar{flex:1;height:8px;background:var(--bar-oth);border-radius:4px;overflow:hidden} .hr-bar div{height:100%;background:var(--text2)}
.hr-sub,.hr-ref,.hr-upd{font-size:var(--fs-sm);color:var(--text2)} .hr-ref{margin:var(--sp-2) 0}
.hr-vers{font-size:var(--fs-sm);line-height:1.9;margin-bottom:var(--sp-2)}

/* 排行榜切換 */
.tabs{display:flex;gap:var(--sp-2);margin-bottom:var(--sp-3)}
.tabs button{flex:1;min-height:44px;border:1px solid var(--line);background:none;color:var(--text2);border-radius:var(--radius-sm);font-size:var(--fs-md)}
.tabs button[aria-selected="true"]{background:var(--card-2);color:var(--text);border-color:var(--text2);font-weight:700}

/* 聯盟切換 */
.nba-only{display:none} body.lg-nba .nba-only{display:block} body.lg-nba .mlb-only{display:none}

/* 頁尾 */
.site-foot{text-align:center;color:var(--text2);font-size:var(--fs-xs);border-top:1px solid var(--line);padding:16px 16px calc(96px + env(safe-area-inset-bottom))}
.site-foot p{margin:2px 0} .site-foot a{color:var(--link)}

/* 驗證頁 */
.vpage{max-width:720px;margin:0 auto;padding:16px}
.vpage h1{font-size:22px;margin:0 0 4px} .vpage h2{border:0;font-size:var(--fs-lg);margin:24px 0 8px;padding:0}
.vpage p,.vpage li{color:var(--text);font-size:var(--fs-md)}
.vpage table{width:100%;white-space:normal}
.vpage td,.vpage th{padding:8px 6px;text-align:left} .vpage td.n{text-align:right}
.vpage .card{background:var(--card);border-radius:var(--radius);padding:12px 16px}
.vpage .back{color:var(--link);text-decoration:none;font-size:var(--fs-sm)}

/* qa-4：手機版表格只留重點欄位 */
.rm{font-family:var(--num);font-weight:700;margin-left:2px} .rm.ok{color:var(--up)} .rm.bad{color:var(--down)} .rm.wait{color:var(--text2);font-weight:400;font-family:inherit;font-size:var(--fs-xs)}
.nst td:first-child,.nst th:first-child{position:sticky;left:0;background:var(--card);z-index:1}
.vt-g{display:block;font-size:var(--fs-xs);color:var(--text2);font-family:var(--num)}
@media(max-width:767px){ .dk{display:none} .hrt td,.hrt th{padding-left:4px;padding-right:4px} }

/* header-2：logo 列一行 ≤48px，隨頁面捲走；標語只在預測區 */
header .brand,header h1.brand{height:48px;margin:0;font-size:18px;gap:8px;line-height:48px}
.brand .logo{width:24px;height:24px;padding:1px}
.tagline,.tagline-sub,.tagline-link{display:none}

body.tab-predict header{padding-bottom:10px}
.tagline{margin-top:0}
.dtime{color:var(--text2);font-size:12px;margin:0 0 6px;background:none;padding:0;border:0}
@media(min-width:700px){header h1.brand{font-size:18px}}
.why-tot{border-top:1px solid var(--line);padding-top:6px;margin-top:2px;font-weight:700}
.refd{border:1px dashed #262e39;border-radius:6px;padding:8px 10px;margin-top:var(--sp-2);color:#c9d1d9}
.refd summary{font-size:12px;color:#8b949e;cursor:pointer;list-style:none;min-height:24px;display:flex;align-items:center}
.refd summary::-webkit-details-marker{display:none}
.refd .ref-t{font-size:12px;color:#8b949e;margin-bottom:4px}
.refd ul{list-style:none;margin:0;padding:0;font-size:var(--fs-sm);line-height:1.6;color:#c9d1d9}
.refd .num{color:#c9d1d9}
.site-foot .foot-src{font-size:12px;color:#8b949e;text-align:center;border:0;background:none;padding:0}
/* 卡片規格（UI 設計師 10/16）：一場一卡、卡內不再套框 */
#predict,#nba-predict-list{gap:12px} #analysis,#nba-analysis{display:flex;flex-direction:column;gap:12px}
.pcard,#analysis article,#nba-analysis article{background:#151b23;border:1px solid #262e39;border-radius:12px;padding:16px;margin:0;box-shadow:none}
.pcard .why,article .hl{background:#1c232d;border:0}
.pcard .why-k{border-top:0}
.pcard th,.pcard td,article th,article td{border-bottom:0}
.dgrp{grid-column:1/-1;font-size:12px;line-height:18px;color:#8b949e;margin:0 0 -6px;padding:0 2px}
.dgrp:first-child{margin-top:0}
/* 信心標籤（10/16）：高＝金底黑字、中＝淡金底金字、低／五五波＝深灰底灰字，皆無框 */
.tier.strong,.tier.lean,.tier.toss{border:0}
.tier.strong{background:#d4af37;color:#0d1117}
.tier.lean{background:rgba(212,175,55,.15);color:#d4af37}
.tier.toss{background:#1c232d;color:#8b949e}
.refd .ref-o{display:none} .refd[open] .ref-o{display:inline} .refd[open] .ref-c{display:none}
.pcard .cmpt th,.pcard .cmpt td,article .ls th,article .ls td,article table th,article table td{border-bottom:1px solid #262e39}
.pcard .cmpt tr:last-child td,article table tr:last-child td{border-bottom:0}
.refd summary::after,.refd summary::before{content:none!important;display:none!important} .refd summary{gap:4px}
/* 先發投手對比（spec-pitchers） */
.pitch{background:#1c232d;border-radius:8px;padding:12px}
.pc-lab{font-size:12px;color:#8b949e;text-align:center;margin-bottom:6px}
.pc-row{display:flex;align-items:stretch}
.pc-col{flex:1 1 50%;min-width:0;padding:0 8px} .pc-col:first-child{padding-left:0} .pc-col:last-child{padding-right:0;text-align:right}
.pc-div{flex:0 0 1px;background:#262e39}
.pc-n{font-size:15px;font-weight:700;color:#e6edf3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.pc-s{font-size:12px;color:#8b949e;margin-top:2px;line-height:1.5}
.pc-s .num{color:#8b949e}
.pc-small{color:#8b949e}
.pc-tbd{font-size:13px;color:#8b949e}
.pc-chg{font-size:12px;color:#d4af37;margin-top:4px;line-height:1.4}
.pc-ann{font-size:12px;color:#e6edf3;margin-top:4px;line-height:1.4}
.day-sum{font-size:12px;color:#8b949e;margin:0 0 8px} .day-sum .num{color:#8b949e}
.nosp{font-size:12px;color:#8b949e;font-weight:400}
.hrt td.mu{font-size:13px}
.hrt .tent{font-size:11px;color:#8b949e;line-height:1.3;white-space:nowrap}

.hrt .md{width:40px;max-width:40px}
.hrt .mu-short{display:none}
@media(max-width:767px){
  .hrt th{white-space:normal;vertical-align:bottom}
  .hrt th.mu-h{white-space:nowrap}
  .hrt .mu-full{display:none}
  .hrt .mu-short{display:inline;white-space:nowrap}
}
@media(max-width:767px){ .hrt td.dt{font-size:12px} .hrt td,.hrt th{padding-left:3px;padding-right:3px} }

.hrt .tent .ts{display:none}
@media(max-width:360px){
  .hrt td.dt .dd,.hrt td.dt .tt{display:block}
  .hrt td.dt .tt{font-size:11px;color:#8b949e}
}

.acc-line{margin:0 0 4px;font-size:12px;color:#8b949e;border:0}
.acc-line .num{font-family:var(--num)} .acc-line a{color:#8b949e}
.ser-row{margin:0 0 4px;padding-right:96px} .ser-tag{display:inline-block;font-size:11px;background:#1c232d;border-radius:4px;padding:0 6px;color:#8b949e;white-space:nowrap}
.ser-tag .num{font-family:var(--num)}
/* 關於與免責 */
body.view-about #mlb-main,body.view-about #nba-main{display:none}
.about-page{max-width:720px;margin:0 auto;padding:0 12px}
.about-page p,.about-page li{font-size:15px;line-height:1.75;color:#e6edf3}
.about-page ul{padding-left:20px;margin:8px 0 16px} .about-page li{margin:6px 0}
.about-page h3{font-size:16px;color:#e6edf3;margin:20px 0 6px}
.about-page b{color:#e6edf3}
.about-back a{color:#d4af37;display:inline-block;padding:12px 0;min-height:44px}

/* 精簡卡片（4 行版） */
.pcard.cc{padding:0;gap:0}
.cc-head{all:unset;box-sizing:border-box;display:flex;flex-direction:column;gap:6px;width:100%;min-height:44px;padding:12px;cursor:pointer;color:#e6edf3;-webkit-tap-highlight-color:transparent}
.cc-head:focus-visible{outline:2px solid #d4af37;outline-offset:-2px;border-radius:12px}
.cc-head>span{display:flex;align-items:center;gap:8px;min-width:0}
.cc-r1{justify-content:space-between;min-height:18px;flex-wrap:wrap;gap:6px}
.cc-head>.cc-r1{column-gap:6px}   /* 第一行間距最小 6px */
.cc-rt{display:flex;align-items:center;gap:4px;margin-left:auto;white-space:nowrap}
.cc-time{font-size:12px;color:#8b949e;white-space:nowrap}
.cc-time .ct-s{display:none} .cc-head.tzs .ct-l{display:none} .cc-head.tzs .ct-s{display:inline}
.cc-tag{font-size:11px;background:#1c232d;border-radius:4px;padding:0 5.75px;color:#8b949e;line-height:18px}
.cc-conf.tier{font-size:11px;padding:0 8px;line-height:18px;white-space:nowrap}
.cc-c2{display:none}
.cc-head.tight .cc-c1{display:none} .cc-head.tight .cc-c2{display:inline-flex}
.cc-c2{align-items:center;gap:4px;flex:none} .cc-head>.cc-t2{display:none;text-align:left} .cc-head.tag2 .cc-r1 .cc-tag{display:none} .cc-head.tag2>.cc-t2{display:flex;justify-content:flex-start}   /* 第一行放不下時「先發已公布／等先發」移到第二行、靠左對齊隊名 */
.cc-head>.cc-s2{display:none} .cc-head.ser2 .cc-ser .ser-tag{display:none} .cc-head.ser2>.cc-s2{display:flex} .cc-head.ser2>.cc-s2 .ser-tag{display:inline-block}   /* 進行中＋焦點＋系列賽仍放不下時，系列賽標籤改到第二行，開打時間留在第一行 */
.cc-r2{justify-content:space-between}
.cc-tm{font-size:15px;font-weight:700;color:#e6edf3;white-space:nowrap;flex:1;min-width:0}
.cc-tm.r{text-align:right}
.cc-r3{gap:6px!important}
.cc-p{font-size:13px;color:#c9d1d9;min-width:36px;flex:none;white-space:nowrap;font-variant-numeric:tabular-nums}
.cc-p.r{text-align:right}
.cc-lab{font-size:12px;color:#8b949e;flex:none;white-space:nowrap;margin-right:-2px}
.cc-bar{flex:1;display:flex;height:8px;border-radius:4px;overflow:hidden;gap:2px;background:var(--bar-oth)}
.cc-bar .fav{background:#d4af37} .cc-bar .oth{background:var(--bar-oth)}
.cc-r4{justify-content:space-between;align-items:flex-start!important;font-size:12px;line-height:18px;color:#8b949e}
.cc-why{min-width:0;flex:1}
.cc-more{white-space:nowrap;margin-left:auto;color:#e6edf3}
.cc-body{max-height:0;opacity:0;overflow:hidden;transition:max-height .2s ease,opacity .2s ease}
.cc-body.open{opacity:1}
.cc-in{display:flex;flex-direction:column;gap:var(--sp-2);padding:12px;border-top:1px solid #262e39}
/* 預測分頁標題區縮短 */
#sec-predict>h2,#nsec-predict>h2{font-size:18px;line-height:1.3;margin-bottom:4px}
#sec-predict>.acc-line,#nsec-predict>.acc-line,#sec-predict>.day-sum,#sec-predict>.pnote,#nsec-predict>.pnote{font-size:12px;line-height:18px;margin:0 0 4px}
.about-tag{color:#e6edf3}

/* 命中率依信心分組 */
.cg{background:#151b23;border:1px solid #262e39;border-radius:8px;padding:10px 12px;margin:10px 0;font-size:13px;color:#e6edf3}
.cg-h{font-size:12px;color:#8b949e;margin-bottom:4px}
.cg-row{display:flex;justify-content:space-between;align-items:baseline;gap:8px;padding:6px 0;border-top:1px solid #262e39}
.cg-h+.cg-row{border-top:0}
.cg-l{color:#e6edf3;white-space:nowrap}
.cg-r{display:block;font-size:12px;color:#8b949e}
.cg-v{text-align:right;color:#8b949e}
.cg-v .num{color:#e6edf3}
.cg-n{font-size:12px;color:#8b949e;margin-top:4px}

/* 今日數據焦點 */
.pcard.cc.focus{border-left:3px solid #d4af37}
/* 進行中：四邊灰框；焦點卡左線仍用金，其餘三邊灰 */
.pcard.cc.live{border:1px solid #8b949e}
.pcard.cc.focus.live{border:1px solid #8b949e;border-left:3px solid #d4af37}
.cc-live{
  font-size:11px;
  line-height:16px;
  padding:0 6px;
  border-radius:4px;
  border:1px solid #8b949e;
  color:#8b949e;
  background:transparent;
  white-space:nowrap;
}
.cc-ser{display:flex;align-items:center;gap:6px;min-width:0}
.cc-focus{font-size:11px;color:#d4af37;border:1px solid #d4af37;border-radius:4px;padding:0 6px;line-height:16px;white-space:nowrap}
.focus-sub{font-size:12px;color:#8b949e;margin:0 0 6px}

.po-note{font-size:12px;color:#8b949e;text-align:center;margin:8px 0 0}
.tbd-note{font-size:13px;color:#8b949e;text-align:center;margin:8px 0 0}
.empty-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:24px;font-size:13px;color:#8b949e;text-align:center}
.empty-season{padding:32px 0;text-align:center}.empty-season .es-main{font-size:16px;font-weight:600;color:#e6edf3;text-wrap:balance}.empty-season .es-l{display:block}.empty-season .es-sub{margin-top:8px;font-size:13px;color:#8b949e}
#predict>.po-note,#nba-predict-list>.po-note{margin-top:-4px}  /* 列表 gap 12px − 4px = 8px */
.tbd-note{text-wrap:balance} .tbd-note .nw{white-space:nowrap}
.tbd-note{font-size:12px} #predict>.tbd-note,#nba-predict-list>.tbd-note{margin-top:-4px}

.cg.bt{border:1px dashed #262e39;background:#151b23;color:#8b949e}
.cg.bt .cg-l,.cg.bt .cg-v .num,.cg.bt .num{color:#8b949e}
.cg.bt .bt-t{font-size:13px;margin-bottom:2px}
.bt-note{margin:2px 0 4px}
.bt-all{font-size:13px;padding:6px 0;border-top:1px solid #262e39}
.cg.bt:empty{display:none}

.cg-v1,.cg-v2{display:block;white-space:nowrap;text-align:right}
.cg.bt .cg-v{font-size:13px;color:#8b949e}
.sbar{margin:16px 0 -4px;/* 外層 grid gap 12px，-4px 後到卡片實際 8px */ display:flex;flex-direction:column;justify-content:center;gap:4px}
.sbar .sb-note{margin:2px 0 0;font-size:12px;color:#8b949e;text-align:left;line-height:1.5;word-break:keep-all;overflow-wrap:anywhere}
.sb-r1{display:flex;justify-content:space-between;font-size:12px;color:#8b949e;white-space:nowrap}
.sb-r2{display:flex;align-items:center;gap:8px}
.sb-t{font-size:12px;color:#8b949e;white-space:nowrap;flex:none}
.sb-b{flex:1;display:flex;height:4px;border-radius:2px;overflow:hidden;background:#262e39}
.sb-b .g{background:#58677a} .sb-b .o{background:#262e39}

.cc-pp{font-size:12px;color:#8b949e;border:1px solid #8b949e;border-radius:4px;padding:0 6px;line-height:16px;white-space:nowrap}
.cc-head>.cc-ppt{display:block;font-size:12px;color:#8b949e;white-space:nowrap}
/* NBA 排行用上季資料時，小標旁註明季別（數據分析師 10/17） */
#nba-leaders-box h3 .h-sea{margin-left:8px;font-size:12px;font-weight:400;color:#8b949e}
/* 頁尾第一行：資料更新時間（UI 設計師 10/17） */
.site-foot .foot-upd{font-size:12px;color:#8b949e;text-align:center;margin:0 0 4px;white-space:nowrap}
.site-foot .foot-upd .num{font-family:var(--num);font-variant-numeric:tabular-nums}
/* 預測卡載入骨架（UI 設計師 10/17）：3 塊與真卡同高同寬同圓角，資料到了就換成真卡 */
.skc{height:129px;background:#151b23;border-radius:var(--radius)}
/* 載入中先保留「資料時間」那一行的高度，避免卡片被往下推 */
#st-nba-predict-list[data-wait]{display:block;height:25px}
/* JS 載入前（body[data-pre]）只顯示要開的那個分頁 */
body[data-pre] main section{display:none}
body[data-pre="mlb-predict"] #sec-predict,body[data-pre="mlb-recap"] #sec-analysis,body[data-pre="mlb-hitrate"] #sec-hit,body[data-pre="mlb-standings"] #sec-standings,body[data-pre="mlb-leaders"] #sec-batting,
body[data-pre="nba-predict"] #nsec-predict,body[data-pre="nba-recap"] #nsec-analysis,body[data-pre="nba-hitrate"] #nsec-hit,body[data-pre="nba-standings"] #nsec-standings,body[data-pre="nba-leaders"] #nsec-leaders{display:block}
/* 直接開 NBA 時（<html class="pre-nba">，app.js 接手前）：切換鈕與頁首標籤從第一個畫面就是 NBA */
html.pre-nba .lgsw button[data-lg="mlb"]{background:#1c232d;border-color:var(--line);color:#8b949e;font-weight:600}
html.pre-nba .lgsw button[data-lg="nba"]{background:#d4af37;border-color:#d4af37;color:#0d1117;font-weight:700}
html.pre-nba #lg-tag{font-size:0}
html.pre-nba #lg-tag::after{content:"｜NBA";font-size:18px}
/* 其他分頁載入中：內容區先撐一個螢幕高，資料到了才收回，避免後面的圖表、頁尾在畫面裡被推來推去 */
.sk-wait{min-height:100vh}
.sb-t .num{font-variant-numeric:tabular-nums;white-space:nowrap}
/* 命中率表：補記備註（不換行，不撐寬表格） */
.hrt .bf-row td{padding-top:0;border-top:0}
.hrt .bf-note{display:block;white-space:nowrap;font-size:11px;color:#8b949e;max-width:calc(100vw - 48px);overflow:hidden;text-overflow:clip}

/* NBA 資料更新延遲提示條（UI設計師 10/22）：資料時間那行正下方、只佔一行 */
.delay-bar{background:#161b22;border:1px solid #d29922;border-radius:6px;padding:6px 12px;margin:0 0 8px;font-size:12px;line-height:22px;color:#e6edf3;white-space:nowrap;overflow:hidden;text-overflow:clip}
/* 命中率表：待結算／未開打用灰字、不加底色 */
.hrt td.pend{color:#8b949e;background:none}
/* NBA 第一屏縮版（UI設計師 10/22）：卡片間距 8px（卡片上下內距維持 12px）、第一行與隊名間距 4px；字級、勝率條、焦點金框、觸控 44px 不動 */
#nba-predict-list{gap:8px}
#nba-predict-list>.day-sum{grid-column:1/-1;margin:0;white-space:nowrap;overflow:hidden}
#nba-predict-list>.po-note,#nba-predict-list>.tbd-note{margin-top:0}
#nba-predict-list .cc-head{row-gap:4px}
.tent.pend{color:#8b949e;background:none}

/* 頁首中英站名並排（202610291602） */
header h1.brand{height:48px;line-height:48px;white-space:nowrap;overflow:hidden;font-size:18px;gap:8px;justify-content:flex-start}
.brand .zh,.brand .nw{font-size:1em;font-weight:700;color:#e6edf3;letter-spacing:0;margin-left:0;flex:none}
.brand .sport{font-size:1em;font-weight:600;color:#d4af37;flex:none}
html.pre-nba #lg-tag::after{font-size:18px}
@media(max-width:360px){header h1.brand{font-size:17px;gap:6px}html.pre-nba #lg-tag::after{font-size:17px}}

/* LINE 意見回饋（10/30） */
.site-foot .foot-links{display:flex;justify-content:center;align-items:center;gap:4px;margin:0}
.site-foot .foot-links a{display:inline-flex;align-items:center;min-height:44px;padding:0 8px;font-size:13px;color:var(--link);white-space:nowrap}
.site-foot .foot-links span{color:#8b949e}
.about-page a.about-line{display:inline-flex;align-items:center;min-height:44px;color:var(--link)}
