/* Match explanations and transparent plan accounting. */
.data-freshness{display:grid;grid-template-columns:1fr auto;gap:5px 12px;padding:12px 14px;margin:0 0 14px;border:1px solid var(--line);border-radius:14px;background:var(--panel);font-size:12px;color:var(--muted)}
.data-freshness b{font-size:11px;color:var(--green)}
.data-freshness small{grid-column:1/-1;font-size:10px;line-height:1.5}
.data-freshness.delayed b{color:var(--gold)}
.plan-schedule,.accounting-note{color:var(--muted);font-size:11px;line-height:1.7;margin:12px 2px 18px}
#matches{align-items:start}
.match summary{display:grid;grid-template-columns:38px minmax(0,1fr) minmax(68px,auto);gap:7px 10px;align-items:start;position:relative;padding-bottom:4px}
.match summary:after{display:none}
.match .no{font-size:12px;line-height:1.45}
.match .no small{display:block;font-size:9px;line-height:1.5;white-space:normal;margin-top:3px;opacity:1}
.match .teams{min-width:0;font-size:13px;line-height:1.55;overflow-wrap:anywhere}
.match .teams>i{font-size:9px;display:block;margin:1px 0;color:var(--muted)}
.match .pick{max-width:110px;font-size:12px;line-height:1.6;text-align:right;overflow-wrap:anywhere}
.match .pick small{display:block;font-size:9px;line-height:1.5;margin-top:4px;color:var(--muted);opacity:1}
.match .teams .kuli-kickoff{font-size:10px!important;font-weight:500;line-height:1.5!important;display:block;margin-top:6px;color:var(--muted)}
.match-state{grid-column:2/-1;display:flex;align-items:center;gap:6px;font-size:10px;line-height:1.5;color:var(--muted)}
.match-state:after{content:'查看解析 ＋';margin-left:auto;font-size:10px;color:var(--gold)}
.match[open] .match-state:after{content:'收起解析 −'}
.match-state.is-live{color:var(--green)}
.match .detail{margin-top:12px;padding:0;border:0;background:transparent}
.match-analysis{padding:0;overflow:hidden;background:var(--panel);border:1px solid var(--line);border-radius:13px;color:var(--text)}
.insight-conclusion{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:15px;background:var(--soft);border-bottom:1px solid var(--line)}
.insight-conclusion div>small{display:block;color:var(--muted);font-size:10px;line-height:1.6}
.insight-conclusion div>b{display:block;font-size:18px!important;color:var(--gold);margin-top:4px;line-height:1.5}
.insight-conclusion>span{text-align:right;flex-shrink:0;color:var(--gold);font-size:10px;line-height:1.6}
.insight-conclusion>span>small{display:block;color:var(--muted);font-size:10px}
.insight-section{padding:15px;border-bottom:1px solid var(--line)}
.insight-section h4{font-size:12px;line-height:1.5;margin:0 0 10px;color:var(--text)}
.insight-section ul{margin:0;padding-left:17px;color:var(--muted);font-size:12px;line-height:1.9}
.insight-section li+li{margin-top:5px}
.insight-section p,.analysis-original p{margin:0;font-size:12px;line-height:1.9;white-space:pre-line}
.goal-model{display:grid;gap:7px;padding:14px 15px;border-bottom:1px solid var(--line);font-size:11px}
.goal-model span,.goal-model small{color:var(--muted);font-size:10px}
.goal-model b{font-size:12px;line-height:1.8;color:var(--text);overflow-wrap:anywhere}
.goal-model i{color:var(--muted);font-style:normal;margin:0 5px}
.prob-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}
.prob-item{padding:10px;background:var(--bg);border:1px solid var(--line);border-radius:10px}
.prob-item span{display:block;color:var(--muted);font-size:10px}
.prob-item b{display:block;font-size:20px;line-height:1.6;color:var(--text)}
.prob-item b small{font-size:11px;margin-left:2px}
.prob-track{height:4px;background:var(--line);border-radius:4px;overflow:hidden;margin-top:4px}
.prob-track i{display:block;height:100%;background:var(--gold);border-radius:4px}
.insight-note{display:block;font-size:10px;line-height:1.7;color:var(--muted);margin-top:10px}
.insight-risk h4{color:var(--gold)}
.analysis-original{padding:12px 15px}
.analysis-original summary{display:block;cursor:pointer;font-size:11px;color:var(--muted);padding:0;line-height:1.7}
.analysis-original summary:after{display:none}
.analysis-original p{margin-top:12px;color:var(--muted)}
.settlement-line{display:flex;justify-content:space-between;font-size:12px;margin:0 0 12px;color:var(--muted)}
.plan-leg-row{display:flex;align-items:flex-start;gap:10px;justify-content:space-between}
.plan-leg-row>span{flex:1;min-width:0;line-height:1.7}
.plan-leg-row>b{flex-shrink:0;line-height:1.7;text-align:right}
.plan-leg-info{display:block;line-height:1.7;margin-top:8px;padding-top:8px;color:var(--muted)}
.plan-divergence{font-size:11px;line-height:1.7;color:var(--gold);padding:10px 0 0}
.progression-panel{border:1px solid var(--line);border-radius:13px;padding:14px;margin:15px 0;background:var(--bg)}
.progression-panel>div{display:grid;grid-template-columns:1fr auto;gap:6px}
.progression-panel small{color:var(--muted);font-size:11px}
.progression-panel b{grid-row:1/3;grid-column:2;font-size:25px;color:var(--gold);align-self:center}
.progression-panel span{font-size:11px;color:var(--muted)}
.stake-ladder{padding:0;margin:14px 0 10px;list-style:none;display:grid;grid-template-columns:repeat(4,1fr);gap:6px}
.stake-ladder li{padding:8px 2px;text-align:center;border:1px solid var(--line);border-radius:8px;font-size:11px;color:var(--muted)}
.stake-ladder li.current{color:var(--gold);border-color:var(--gold);background:var(--soft);font-weight:750}
.progression-panel p{font-size:11px;line-height:1.7;color:var(--text);margin:0;text-align:center}
.progression-panel p span{padding:0 8px}
.fixed-stake{font-size:11px;color:var(--muted);padding:12px 0 0}
.accounting-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 10px;font-size:13px}
.accounting-heading span{font-size:10px;color:var(--muted)}
.profit-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}
.profit-summary div{min-width:0;padding:14px;background:var(--panel);border:1px solid var(--line);border-radius:12px}
.profit-summary b{font-size:20px;line-height:1.6;font-variant-numeric:tabular-nums}
.profit-summary span{font-size:11px;line-height:1.5;color:var(--muted)}
.pending-account{display:grid;grid-template-columns:1fr auto;gap:5px 10px;border:1px dashed var(--line);border-radius:11px;margin-top:10px;padding:12px 14px;font-size:12px;color:var(--muted)}
.pending-account small{grid-column:1/-1;font-size:10px;line-height:1.6}
.replay-badge{display:inline-block!important;padding:5px 8px!important;margin:8px 0;font-size:10px;line-height:1.6;color:var(--gold);background:var(--soft);border-radius:6px}
.plan-performance{margin:10px 0 20px}
.plan-performance>details{border:1px solid var(--line);border-radius:12px;background:var(--panel);margin:8px 0;overflow:hidden}
.plan-performance>details>summary{display:flex;justify-content:space-between;gap:8px;font-size:12px;padding:14px;cursor:pointer}
.plan-performance>details>summary>span{font-size:10px;color:var(--muted)}
.performance-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:0 12px 12px}
.performance-grid>div{padding:11px;border-radius:10px;border:1px solid var(--line);background:var(--bg);min-width:0}
.performance-grid small,.performance-grid span{display:block;font-size:10px;color:var(--muted);line-height:1.6}
.performance-grid b{display:block;font-size:19px;line-height:1.8;color:var(--text);overflow-wrap:anywhere}
.performance-overview{background:var(--panel);border:1px solid var(--line);border-radius:15px;padding:15px;margin-bottom:14px}
.performance-overview>div:first-child{font-size:13px;font-weight:750;margin-bottom:12px}
.performance-overview .performance-grid{padding:0;grid-template-columns:1fr 1fr}
.performance-overview p{font-size:10px;line-height:1.8;color:var(--muted);margin:10px 0 0}
.empty-state{padding:24px;text-align:center;font-size:12px;color:var(--muted)}
html[data-kuli-theme="light"] .insight-conclusion{background:#f6f1e5}
html[data-kuli-theme="light"] .insight-conclusion div>b{color:#805a0a}
html[data-kuli-theme="light"] .match-analysis{background:var(--panel);border-color:var(--line)}
html[data-kuli-theme="light"] .plan-performance>details,html[data-kuli-theme="light"] .performance-overview{background:var(--panel)}
@media(min-width:760px){.profit-summary{grid-template-columns:repeat(4,minmax(0,1fr))}.data-freshness{margin-top:0}.match summary{grid-template-columns:38px minmax(0,1fr) minmax(65px,auto)}}
@media(max-width:360px){.match summary{grid-template-columns:30px minmax(0,1fr) 73px;column-gap:6px}.match .pick{font-size:11px}.insight-conclusion{padding:12px;gap:7px}.insight-conclusion div>b{font-size:16px!important}.plan-leg-row{flex-wrap:wrap}.prob-item{padding:8px}.accounting-heading{align-items:flex-start;flex-direction:column;gap:5px}}

/* Recommendation tiers, calibration context and risk visibility. */
.strategy-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:0 0 16px}
.strategy-summary>div{padding:11px 8px;text-align:center;border:1px solid var(--line);border-radius:12px;background:var(--panel)}
.strategy-summary>div span{display:block;font-size:9px;color:var(--muted)}
.strategy-summary>div b{display:block;margin-top:4px;font-size:18px;line-height:1.4}
.strategy-summary>div:first-child{border-color:#ad7d26;background:linear-gradient(145deg,#2b2110,var(--panel))}
.strategy-summary>p{grid-column:1/-1;margin:0;padding:10px 12px;border-left:3px solid var(--gold);border-radius:7px;background:var(--soft);font-size:10px;line-height:1.7;color:var(--text)}
.strategy-summary>p small{display:block;color:var(--muted);font-size:9px}
.match.tier-core{border-color:#b38732;box-shadow:inset 3px 0 var(--gold)}
.match.tier-secondary{border-color:#64343a;box-shadow:inset 3px 0 #a23b49}
.match.tier-watch{opacity:.91}
.tier-badge{display:inline-flex!important;flex-direction:column;padding:6px 9px;border:1px solid var(--line);border-radius:9px;font-weight:800}
.tier-badge.tier-core{color:var(--gold);border-color:#9a742d;background:#2a210f}
.tier-badge.tier-secondary{color:#ff8b96;border-color:#65313a;background:#281318}
.tier-badge.tier-watch{color:var(--muted)}
.signal-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:14px 15px;border-bottom:1px solid var(--line)}
.signal-grid>div{padding:10px;border:1px solid var(--line);border-radius:10px;background:var(--bg);min-width:0}
.signal-grid span,.signal-grid small{display:block;color:var(--muted);font-size:9px;line-height:1.5}
.signal-grid b{display:block!important;margin:3px 0 1px;font-size:16px!important;line-height:1.5;color:var(--text)!important}
.market-value-note{padding:9px 15px;border-bottom:1px solid var(--line);font-size:9px;line-height:1.6;color:var(--muted)}
.risk-exposure{display:grid!important;grid-template-columns:1fr auto!important;gap:2px 10px!important;margin-top:12px;padding:10px 12px;border:1px solid var(--line);border-radius:9px;background:var(--panel)}
.risk-exposure span{font-size:10px!important}
.risk-exposure b{grid-row:auto!important;grid-column:auto!important;font-size:15px!important;color:var(--text)!important}
.risk-exposure small{grid-column:1/-1!important;font-size:9px!important;line-height:1.6}
.risk-exposure.risk-high{border-color:#7f3540;background:#2b1418}
.risk-exposure.risk-high b,.risk-exposure.risk-high small{color:#ff8b96!important}
.pending-account.has-overdue{border-color:#8d6b2d;background:#261f12}
.app{padding-bottom:calc(118px + env(safe-area-inset-bottom))}
html{scroll-padding-bottom:calc(100px + env(safe-area-inset-bottom))}
.match,.history-day,.plan-card{scroll-margin-bottom:100px}
nav{padding-bottom:env(safe-area-inset-bottom);height:calc(70px + env(safe-area-inset-bottom))}
html[data-kuli-theme="light"] .strategy-summary>div:first-child{background:#fff8e8;border-color:#cfa74c}
html[data-kuli-theme="light"] .strategy-summary>p{background:#fff8e8}
html[data-kuli-theme="light"] .tier-badge.tier-core{background:#fff3d8;border-color:#cfa74c;color:#805a0a}
html[data-kuli-theme="light"] .tier-badge.tier-secondary{background:#fff0f2;border-color:#e6bac2;color:#a52d40}
html[data-kuli-theme="light"] .signal-grid>div{background:#f6f9fd}
html[data-kuli-theme="light"] .risk-exposure.risk-high{background:#fff0f2;border-color:#e6bac2}
html[data-kuli-theme="light"] .risk-exposure.risk-high b,html[data-kuli-theme="light"] .risk-exposure.risk-high small{color:#a52d40!important}
html[data-kuli-theme="light"] .pending-account.has-overdue{background:#fff8e8;border-color:#dfc58a}
@media(min-width:760px){.signal-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
