:root{color:#12201b;background:#edf3ee;font-family:Microsoft YaHei,PingFang SC,Segoe UI,system-ui,sans-serif;--ink: #10231c;--muted: #607169;--navy: #071827;--navy-soft: #11314a;--green: #0f7a55;--green-soft: #dff2e7;--gold: #d8a526;--gold-soft: #fff4cf;--line: #d7e2dc;--card: rgba(255, 255, 255, .9)}*{box-sizing:border-box}body{margin:0;background:linear-gradient(90deg,rgba(15,122,85,.045) 1px,transparent 1px),linear-gradient(0deg,rgba(15,122,85,.035) 1px,transparent 1px),radial-gradient(circle at 8% 4%,rgba(216,165,38,.14),transparent 28%),#edf3ee;background-size:42px 42px,42px 42px,auto,auto}button,input,textarea{font:inherit}.appShell{min-height:100vh}.topHeader{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:end;position:relative;overflow:hidden;padding:42px clamp(16px,4vw,54px) 38px;background:linear-gradient(135deg,#071827fa,#0b3537f0),radial-gradient(circle at 72% 18%,rgba(216,165,38,.32),transparent 26%),radial-gradient(circle at 20% 10%,rgba(45,212,137,.24),transparent 30%);color:#fff}.topHeader:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(90deg,rgba(255,255,255,.05) 0 1px,transparent 1px 96px),linear-gradient(90deg,transparent 0 46%,rgba(255,255,255,.06) 46% 54%,transparent 54%);pointer-events:none}.topHeaderInner{position:relative;max-width:780px;z-index:1}.eyebrow{margin:0 0 8px;color:#f3c84d;font-size:13px;letter-spacing:0;font-weight:700}.dark{color:var(--green)}h1{margin:0;font-size:clamp(30px,5vw,52px);letter-spacing:0}h2,h3,p{letter-spacing:0}.headerCopy{max-width:680px;margin:12px 0 0;color:#d8ede3;font-size:16px;line-height:1.7}.nextMatchBadge{position:relative;display:grid;gap:6px;min-width:220px;padding:14px 16px;border:1px solid rgba(255,232,170,.38);border-radius:8px;background:#ffffff1a;box-shadow:0 18px 40px #0000002e;z-index:1}.nextMatchBadge span{color:#ffe9a8;font-size:13px}.nextMatchBadge small{color:#d8ede3}.nextMatchBadge button{width:fit-content;border:1px solid rgba(255,232,170,.42);border-radius:6px;padding:7px 10px;background:#ffffff1f;color:#fff;cursor:pointer}.pageGrid{display:grid;gap:18px;padding:24px clamp(16px,4vw,48px) 38px}.panel{background:var(--card);border:1px solid var(--line);border-radius:8px;padding:20px;box-shadow:0 16px 44px #0f251e14;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.sectionTitle{margin-bottom:16px}.sectionTitle h2,.matchGroup h3{margin:0}.championRows,.matchGroup{display:grid;gap:12px}.championRows{grid-template-columns:repeat(2,minmax(0,1fr))}.championRow,.matchCard{display:grid;gap:12px;align-items:center;width:100%;border:1px solid #dbe6df;border-radius:8px;padding:14px;background:linear-gradient(180deg,#fffffff5,#f9fcf9f5)}.championRow{grid-template-columns:auto 1fr}.matchCard{grid-template-columns:1fr auto auto;text-align:left;cursor:pointer;transition:border-color .16s ease,transform .16s ease}.matchCard:hover{border-color:var(--green);transform:translateY(-1px);box-shadow:0 12px 30px #0f7a5524}.matchCard p{margin:6px 0 0;color:var(--muted)}.matchInfo{min-width:0}.scorePick{display:grid;justify-items:center;gap:3px;min-width:112px;padding:10px 12px;border-radius:8px;background:linear-gradient(135deg,#10231c,#0f7a55);color:#fff;box-shadow:inset 0 0 0 1px #ffe8aa33}.scorePick span,.scorePick em{color:#ffe9a8;font-size:12px;font-style:normal;font-weight:700}.scorePick strong{font-size:34px;line-height:1;letter-spacing:0}.rank{width:32px;height:32px;display:grid;place-items:center;border-radius:999px;background:var(--gold-soft);color:#7a5610;font-weight:700}.teamIdentity{display:flex;gap:10px;align-items:center}.flag{font-size:12px;padding:3px 6px;border-radius:4px;background:var(--green-soft);color:#0f5138;font-weight:700}.statBar{grid-column:1 / -1}.statBarHeader{display:flex;justify-content:space-between;font-size:13px}.statBarTrack{height:8px;border-radius:999px;background:#e1e9e4;overflow:hidden}.statBarFill{height:100%;background:linear-gradient(90deg,var(--green),#2aa36f 60%,var(--gold))}.matchTime,.muted{color:var(--muted);margin:0 0 6px}.matchTime{display:inline-flex;width:fit-content;padding:5px 8px;border-radius:6px;background:#f4ead0;color:#6b4d12;font-weight:700}.probabilityStrip{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.probabilityStrip span{padding:6px 8px;border-radius:6px;background:#e9f5ee;color:#0f5138;font-size:13px;white-space:nowrap;font-weight:700}.trustGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.trustGrid div{display:grid;gap:4px;padding:14px;border-radius:8px;background:linear-gradient(135deg,#f7fbf8,#eef7f1);border:1px solid #dde9e1}.trustGrid strong{font-size:26px;color:var(--green)}.backButton{justify-self:start;border:0;border-radius:6px;padding:10px 14px;background:var(--navy);color:#fff;cursor:pointer}.detailPage{max-width:1180px;margin:0 auto;gap:14px}.matchDetailHero{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:stretch;color:#fff;background:linear-gradient(135deg,#071827f5,#0b3d30eb),radial-gradient(circle at 82% 0%,rgba(216,165,38,.24),transparent 34%);border-color:#ffe8aa38}.matchHeroMain{display:grid;align-content:start;gap:10px}.matchDetailHero h2{margin:6px 0;font-size:clamp(26px,4vw,40px)}.matchDetailHero .muted{color:#cfe5d8}.verdictBox{display:grid;gap:6px;max-width:360px;margin-top:4px;padding:12px 14px;border-radius:8px;background:#ffffff1a;border:1px solid rgba(255,232,170,.28)}.verdictBox span,.matchHeroSide span,.receiptGrid span{color:#7b8d85;font-size:13px}.verdictBox span,.matchHeroSide span{color:#ffe9a8}.verdictBox strong{font-size:22px}.verdictBox em{display:flex;align-items:baseline;justify-content:space-between;gap:14px;color:#d8ede3;font-style:normal}.verdictBox b{color:#ffe9a8;font-size:clamp(34px,5vw,54px);line-height:.95}.matchHeroSide{display:grid;grid-template-columns:repeat(2,minmax(120px,1fr));gap:12px;min-width:280px}.matchHeroSide div{display:grid;align-content:center;gap:6px;min-height:96px;padding:14px;border-radius:8px;background:#ffffff1a;border:1px solid rgba(255,232,170,.28)}.matchHeroSide strong{font-size:34px;color:#fff}.detailStats,.playerGrid,.fanBars{display:grid;gap:10px}.playerSummary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:12px}.playerSummary div{display:grid;gap:4px;padding:12px;border:1px solid rgba(216,165,38,.32);border-radius:8px;background:#fff8df}.playerSummary span{color:#7a5610;font-size:13px;font-weight:700}.playerSummary strong{color:#6b4d12;font-size:20px}.playerSummary p{margin:0;color:#7a6a3f}.probabilityPanel .detailStats,.lineMatchups{grid-template-columns:repeat(3,minmax(0,1fr))}.lineMatchups{display:grid}.detailSplit{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.weatherGrid,.receiptGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:10px}.weatherVerdict{display:grid;gap:4px;margin-bottom:10px;padding:12px;border:1px solid rgba(216,165,38,.34);border-radius:8px;background:#fff8df}.weatherVerdict span{color:#7a5610;font-size:13px;font-weight:700}.weatherVerdict strong{color:#6b4d12;font-size:22px}.weatherVerdict p{margin:0;color:#7a6a3f;line-height:1.55}.weatherGrid div,.receiptGrid div,.weaknessGrid article{display:grid;gap:4px;padding:12px;border:1px solid #dde9e1;border-radius:8px;background:#f7fbf8}.weaknessGrid,.upsetGrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.upsetGrid{grid-template-columns:.8fr 1fr 1.4fr}.weaknessGrid article,.upsetGrid div{align-content:start;border-color:#d8a52647;background:linear-gradient(180deg,#fffdf5,#f7fbf8)}.upsetGrid div{display:grid;gap:4px;padding:12px;border:1px solid rgba(216,165,38,.28);border-radius:8px}.upsetScore{background:linear-gradient(135deg,#11231d,#21472f)!important}.upsetScore span,.upsetScore p{color:#ffe9a8!important}.upsetScore strong{color:#fff!important;font-size:42px!important}.weightGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-bottom:10px}.weightItem{display:grid;gap:7px;padding:12px;border:1px solid #dde9e1;border-radius:8px;background:#f7fbf8}.weightItem div:first-child{display:flex;justify-content:space-between;gap:12px}.weightItem strong{color:var(--ink)}.weightItem div:first-child span{color:var(--green);font-weight:800}.weightTrack{height:7px;overflow:hidden;border-radius:999px;background:#e1e9e4}.weightTrack span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--green),var(--gold))}.weightItem p{margin:0;color:var(--muted);font-size:13px}.checkpointGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.checkpointGrid div{display:grid;gap:5px;padding:12px;border:1px solid #dde9e1;border-radius:8px;background:linear-gradient(180deg,#f7fbf8,#fffdf5)}.checkpointGrid span{color:var(--green);font-size:13px;font-weight:800}.checkpointGrid strong{color:var(--ink);font-size:18px}.checkpointGrid p{margin:0;color:var(--muted);line-height:1.55}.weaknessGrid span,.upsetGrid span{color:#7a5610;font-size:13px;font-weight:700}.weaknessGrid strong,.upsetGrid strong{color:var(--ink);font-size:18px}.weaknessGrid p,.upsetGrid p{margin:0;color:var(--muted);line-height:1.55}.weatherGrid strong,.receiptGrid strong{color:var(--green);font-size:20px}.weatherGrid span{color:var(--muted);font-size:13px}.reasonList{display:grid;gap:8px;margin:0;padding:0;list-style:none;counter-reset:reason}.reasonList li{counter-increment:reason;position:relative;padding:12px 12px 12px 46px;border:1px solid #dbe6df;border-radius:8px;background:#fbfdfb}.reasonList li:before{content:counter(reason);position:absolute;left:12px;top:11px;width:24px;height:24px;display:grid;place-items:center;border-radius:999px;background:var(--gold-soft);color:#7a5610;font-weight:700}.playerCard{display:grid;gap:6px;border:1px solid #dbe6df;border-radius:8px;padding:12px;background:#fbfdfb}.playerCard div{display:flex;justify-content:space-between;gap:12px}.playerCard span{color:var(--green);font-size:13px}.playerCard b{font-size:28px}.playerMiniStats{display:flex;flex-wrap:wrap;gap:6px}.playerMiniStats span{padding:4px 7px;border-radius:6px;background:#e9f5ee;color:#0f5138;font-size:12px;font-weight:700}.playerCard p{margin:0;color:var(--muted)}.fanBars span{padding:10px 12px;border-radius:8px;background:#f4ead0;color:#6b4d12;font-weight:700}.configPage{max-width:1180px;margin:0 auto}.configHero h1{color:var(--ink);font-size:clamp(28px,4vw,44px)}.configGrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.configField{display:grid;gap:6px;margin-bottom:12px}.configField span{color:var(--muted);font-size:13px;font-weight:700}.configField input,.configField select,.configTextarea{width:100%;border:1px solid #dbe6df;border-radius:8px;padding:10px 12px;background:#fbfdfb;color:var(--ink)}.sourceList,.teamConfigTable{display:grid;gap:10px}.sourceList div,.teamConfigTable div{display:grid;gap:4px;padding:12px;border:1px solid #dde9e1;border-radius:8px;background:#f7fbf8}.sourceList strong,.teamConfigTable strong{color:var(--green)}.sourceList span,.teamConfigTable span{color:var(--muted)}.teamConfigTable{grid-template-columns:repeat(2,minmax(0,1fr))}.configTextarea{min-height:120px;resize:vertical}@media(max-width:860px){.topHeader,.championRows,.matchCard,.trustGrid,.matchDetailHero,.detailSplit,.probabilityPanel .detailStats,.lineMatchups,.weatherGrid,.receiptGrid,.playerSummary,.weaknessGrid,.upsetGrid,.weightGrid,.checkpointGrid,.configGrid,.teamConfigTable{grid-template-columns:1fr}.nextMatchBadge{min-width:0}.probabilityStrip{justify-content:flex-start}.matchHeroSide{grid-template-columns:1fr;min-width:0}}
