
:root{--bg:#05070c;--red:#ed1028;--red2:#ff3048;--white:#f4f6f9;--muted:#8b96a5;--line:rgba(225,233,244,.12);--panel:rgba(7,10,16,.82)}
*{box-sizing:border-box}
html,body{margin:0;width:100%;height:100%;overflow:hidden;background:var(--bg)}
body{font-family:Inter,"Bahnschrift","Microsoft YaHei","Noto Sans SC",sans-serif;color:var(--white)}
.scene{position:relative;width:100vw;height:100vh;overflow:hidden;isolation:isolate;padding:clamp(18px,2.6vh,32px) clamp(22px,3vw,58px) clamp(15px,2.2vh,27px);display:flex;flex-direction:column;gap:clamp(10px,1.4vh,17px);background:radial-gradient(ellipse at 0% 74%,rgba(237,16,40,.22),transparent 34%),radial-gradient(ellipse at 18% 110%,rgba(123,0,20,.31),transparent 42%),radial-gradient(ellipse at 80% 8%,rgba(25,42,63,.23),transparent 37%),linear-gradient(118deg,#07090f 0%,#080b11 48%,#05070c 100%)}
.grid{position:absolute;inset:-30%;z-index:-6;opacity:.13;background-image:linear-gradient(rgba(206,218,232,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(206,218,232,.08) 1px,transparent 1px);background-size:52px 52px;transform:perspective(1000px) rotateX(58deg) rotateZ(-15deg) scale(1.25);transform-origin:center;mask-image:linear-gradient(to bottom,transparent 0%,#000 23%,#000 80%,transparent 100%)}
.stripes{position:absolute;inset:-25%;z-index:-5;opacity:.12;background:repeating-linear-gradient(128deg,transparent 0 62px,rgba(218,226,238,.1) 63px,transparent 64px 126px);background-size:220% 100%;animation:drift 44s linear infinite;pointer-events:none}
.dots{position:absolute;inset:0;z-index:-4;opacity:.25;background-image:radial-gradient(rgba(255,37,62,.42) .8px,transparent .9px);background-size:9px 9px;mask-image:radial-gradient(ellipse at 0% 100%,#000 0%,transparent 38%),radial-gradient(ellipse at 100% 0%,#000 0%,transparent 24%);pointer-events:none}
.left-slab{position:absolute;z-index:-3;left:-9vw;top:9%;width:32vw;height:92%;opacity:.2;background:linear-gradient(140deg,rgba(255,23,48,.06),rgba(126,4,24,.5) 48%,rgba(237,16,40,.02));clip-path:polygon(0 0,78% 0,100% 13%,78% 23%,88% 36%,59% 48%,72% 62%,35% 80%,50% 100%,0 100%);filter:blur(.3px)}
.rings{position:absolute;z-index:-4;width:64vw;aspect-ratio:1;left:-26vw;bottom:-49vw;border:1px solid rgba(255,39,61,.22);border-radius:50%;box-shadow:0 0 0 4vw rgba(237,16,40,.025),0 0 0 8vw rgba(237,16,40,.02),0 0 0 12vw rgba(237,16,40,.014);animation:breathe 10s ease-in-out infinite;pointer-events:none}
.rings:before,.rings:after{content:"";position:absolute;inset:12%;border:1px solid rgba(255,255,255,.045);border-radius:50%}.rings:after{inset:27%;border-color:rgba(237,16,40,.14);border-style:dashed;animation:rotate 90s linear infinite}
.logo-watermark{position:absolute;left:-6.8vw;bottom:-12vh;width:min(37vw,690px);height:auto;opacity:.075;filter:drop-shadow(0 0 34px rgba(237,16,40,.18));transform:rotate(-7deg);pointer-events:none;user-select:none;z-index:-2}
.top-rule{position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,rgba(237,16,40,.7),rgba(255,255,255,.14) 25%,rgba(255,255,255,.04) 80%,transparent)}
.header{position:relative;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:24px;flex:0 0 clamp(62px,8.3vh,88px);min-height:0}
.brand{display:flex;align-items:center;gap:14px;min-width:0}
.brand-logo{width:clamp(42px,4.4vw,68px);height:clamp(42px,4.4vw,68px);object-fit:contain;filter:drop-shadow(0 0 14px rgba(237,16,40,.2));flex:none}
.brand-copy{display:flex;flex-direction:column;gap:5px;min-width:0}
.brand-title{font-family:Impact,"Arial Black",sans-serif;font-size:clamp(25px,2.15vw,40px);font-weight:900;letter-spacing:.1em;line-height:1;color:#f4f6f8}.brand-title span{color:var(--red2)}
.brand-sub{font-size:clamp(7px,.56vw,10px);font-weight:800;letter-spacing:.2em;color:rgba(210,219,231,.52);white-space:nowrap}
.event-meta{text-align:right;flex:none}.event-meta .eyebrow{font-size:clamp(8px,.62vw,11px);letter-spacing:.25em;font-weight:800;color:var(--red2)}.event-meta .main{margin-top:5px;font-size:clamp(17px,1.6vw,29px);font-weight:900;letter-spacing:.08em;line-height:1.05}.event-meta .sub{margin-top:5px;font-size:clamp(7px,.55vw,10px);color:rgba(208,217,229,.42);letter-spacing:.2em}
.scoreboard{position:relative;z-index:2;flex:1;min-height:0;display:flex;flex-direction:column;padding:clamp(9px,1.15vh,14px) clamp(12px,1.35vw,25px) clamp(10px,1.2vh,15px);background:linear-gradient(115deg,rgba(11,15,23,.89),rgba(5,8,13,.78));border:1px solid rgba(229,236,246,.14);box-shadow:0 22px 80px rgba(0,0,0,.34),inset 0 0 0 1px rgba(255,255,255,.018);backdrop-filter:blur(8px);overflow:hidden}
.scoreboard:before{content:"";position:absolute;top:0;left:0;width:24%;height:2px;background:linear-gradient(90deg,var(--red),rgba(237,16,40,0))}.scoreboard:after{content:"";position:absolute;right:0;top:0;width:3px;height:100%;background:linear-gradient(180deg,rgba(237,16,40,.72),transparent 55%);opacity:.8}
.table-head,.team-row{display:grid;grid-template-columns:clamp(72px,6.5vw,112px) minmax(180px,1fr) clamp(130px,14vw,230px) clamp(120px,13vw,210px) clamp(145px,14.5vw,235px);align-items:center;column-gap:clamp(10px,1.2vw,22px)}
.table-head{flex:0 0 clamp(32px,3.8vh,42px);padding:0 clamp(12px,1vw,18px);background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.045);color:rgba(203,213,226,.64);font-size:clamp(9px,.68vw,12px);font-weight:800;letter-spacing:.18em;text-transform:uppercase}
.table-head>div:not(:nth-child(2)){text-align:center}.table-head .team-col{text-align:left}
.rows{display:grid;grid-template-rows:repeat(20,minmax(0,1fr));flex:1;min-height:0;gap:clamp(2px,.34vh,4px);padding-top:clamp(5px,.65vh,8px)}
.team-row{position:relative;min-height:0;padding:0 clamp(12px,1vw,18px);background:linear-gradient(90deg,rgba(255,255,255,.033),rgba(255,255,255,.012));border:1px solid rgba(255,255,255,.035);border-left:2px solid rgba(255,255,255,.07);transition:background .25s,border-color .25s}
.team-row:nth-child(even){background:linear-gradient(90deg,rgba(255,255,255,.052),rgba(255,255,255,.018))}.team-row:hover{background:rgba(237,16,40,.09);border-left-color:var(--red)}
.rank{display:flex;align-items:center;justify-content:center;gap:7px;font-family:Impact,"Arial Black",sans-serif;font-size:clamp(15px,1.18vw,22px);font-style:italic;letter-spacing:.02em;color:rgba(235,240,247,.7)}
.rank .hash{font-family:inherit;font-size:.55em;font-style:normal;color:rgba(237,16,40,.75)}
.team-row:nth-child(1) .rank{color:#f3d48a}.team-row:nth-child(2) .rank{color:#d9e2ed}.team-row:nth-child(3) .rank{color:#d99a76}
.team-info{display:flex;align-items:center;gap:clamp(9px,.9vw,16px);min-width:0}.team-mark{position:relative;width:clamp(22px,2.1vw,34px);height:clamp(22px,2.1vw,34px);display:flex;align-items:center;justify-content:center;flex:none;background:linear-gradient(135deg,rgba(237,16,40,.2),rgba(255,255,255,.025));border:1px solid rgba(237,16,40,.34);color:#ff6577;font-size:clamp(8px,.65vw,11px);font-weight:900;letter-spacing:.02em;transform:skewX(-7deg)}.team-mark>span{transform:skewX(7deg)}.team-mark img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#10151d;transform:skewX(7deg)}
.team-name{font-size:clamp(12px,.98vw,18px);font-weight:750;letter-spacing:.035em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.team-tag{margin-left:auto;padding:4px 8px;border:1px solid rgba(255,255,255,.07);color:rgba(209,218,230,.3);font-size:clamp(7px,.48vw,9px);letter-spacing:.14em;white-space:nowrap}
.score{display:flex;align-items:center;justify-content:center;font-family:Impact,"Arial Black",sans-serif;font-size:clamp(15px,1.12vw,21px);font-variant-numeric:tabular-nums;letter-spacing:.035em;color:#e8edf4}.score.total{height:72%;background:linear-gradient(90deg,rgba(237,16,40,.065),rgba(237,16,40,.13));border-left:1px solid rgba(237,16,40,.24);color:#fff}.score.total .num{color:#ff4056}.score .unit{margin-left:6px;font-family:Inter,"Microsoft YaHei",sans-serif;font-size:clamp(7px,.5vw,9px);font-weight:700;letter-spacing:.1em;color:rgba(207,216,228,.42)}
.footer{position:relative;z-index:2;flex:0 0 clamp(14px,1.8vh,20px);display:flex;align-items:center;justify-content:space-between;gap:16px;color:rgba(181,193,208,.36);font-size:clamp(7px,.52vw,10px);font-weight:800;letter-spacing:.19em}.footer .left{display:flex;align-items:center;gap:9px}.footer .live-dot{width:6px;height:6px;border-radius:50%;background:var(--red);box-shadow:0 0 10px rgba(255,35,61,.65);animation:pulse 1.8s ease-in-out infinite}.footer .right{text-align:right}
@keyframes drift{from{background-position:0 0}to{background-position:640px 0}}@keyframes rotate{to{transform:rotate(360deg)}}@keyframes breathe{0%,100%{opacity:.55;transform:scale(1)}50%{opacity:.95;transform:scale(1.035)}}@keyframes pulse{0%,100%{opacity:1}50%{opacity:.45}}
@media(max-width:1100px){.scene{padding:16px 18px 14px;gap:8px}.header{flex-basis:58px}.table-head,.team-row{grid-template-columns:54px minmax(130px,1fr) 86px 86px 100px;column-gap:7px;padding-left:8px;padding-right:8px}.table-head{font-size:9px;letter-spacing:.08em}.team-row{gap:7px}.team-name{font-size:12px}.score{font-size:14px}.rank{font-size:15px}.team-mark{width:20px;height:20px;font-size:8px}.team-tag{display:none}.score .unit{display:none}.brand-sub{letter-spacing:.08em}.scoreboard{padding:8px}.rows{gap:2px;padding-top:5px}}
@media(max-height:760px){.scene{padding-top:14px;padding-bottom:12px;gap:7px}.header{flex-basis:52px}.brand-logo{width:40px;height:40px}.scoreboard{padding-top:7px;padding-bottom:7px}.table-head{flex-basis:28px}.rows{gap:2px;padding-top:4px}.team-name{font-size:clamp(10px,.85vw,15px)}.team-mark{width:clamp(18px,1.8vw,27px);height:clamp(18px,1.8vw,27px)}.team-tag{padding:2px 5px}.footer{flex-basis:12px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}}

.accent{color:var(--red2)}.event-picker select{background:#111820;color:#eee;border:1px solid #4a3440;padding:4px 6px;font:inherit;max-width:200px}.footer .right{display:flex;align-items:center;gap:15px}.footer a{color:#9ca9ba;text-decoration:none}.scene.stale .live-dot{background:#ffbd59}.empty-scores{grid-row:1/-1;display:grid;place-items:center;color:#9ba8b9}.team-mark{overflow:hidden}.team-mark img{width:100%;height:100%;object-fit:contain}.score.total{position:relative}.score.total .adjustment{position:absolute;right:7px;bottom:0;font:8px Arial;color:#b7a4ab}.team-row{will-change:transform}@media(max-width:640px){.table-head,.team-row{grid-template-columns:35px minmax(80px,1fr) 55px 55px 65px;column-gap:4px}.event-meta .main{font-size:16px}.brand-sub{display:none}.event-picker select{max-width:110px}.footer{letter-spacing:0}.team-info{gap:5px}.team-mark{display:none}}

.team-row.match-point{border-color:#8d7133;border-left-color:#f2c95f;background:linear-gradient(90deg,rgba(104,78,24,.48),rgba(51,42,22,.54),rgba(18,19,17,.62));box-shadow:inset 0 0 18px rgba(244,199,82,.055)}.team-row.match-point:nth-child(even){background:linear-gradient(90deg,rgba(114,84,26,.52),rgba(55,45,24,.58),rgba(18,19,17,.64))}.team-row.match-point .rank{color:#ffe49a}.team-row.match-point .rank .hash{color:#d7a93c}.team-row.match-point .team-name{color:#fff5d4}.team-row.match-point .team-mark{border-color:#cda74c;background:#17130b;color:#f2d171}.team-row.match-point .score{color:#fff0bf}.team-row.match-point .score.total{background:linear-gradient(90deg,rgba(242,197,76,.1),rgba(242,197,76,.2));border-left-color:rgba(242,197,76,.4)}.team-row.match-point .score.total .num{color:#ffdc73}.team-tag.matchpoint-tag{border-color:#8c702e;background:rgba(134,99,28,.24);color:#f7d877}.team-tag.champion-tag{border-color:#f0cc67;background:linear-gradient(135deg,#ffe391,#be8625);color:#211604;font-weight:900;box-shadow:0 0 12px rgba(235,188,62,.2)}.team-row.champion{border-color:#e4be59;box-shadow:inset 0 0 23px rgba(255,216,109,.09),0 0 12px rgba(221,164,38,.08)}
