:root{--accent:#e10600;--accent2:#ff8a00;--bg:#05070b;--bg-grad:radial-gradient(1100px 700px at 0% -10%, #e106001a, transparent 60%), radial-gradient(900px 600px at 110% 110%, #2563eb14, transparent 60%);--panel:#0c0f15f0;--panel-2:#12161ef5;--panel-3:#0a0d12;--glass-blur:10px;--glass-alpha:.14;--glass-tint:#ffffff0d;--text:#e7eaf0;--muted:#7d8696;--dim:#4b5262;--line:#ffffff12;--line-2:#ffffff1f;--ok:#22c55e;--warn:#facc15;--bad:#ef4444;--blue:#3b82f6;--r:14px;--r-sm:9px;--shadow:0 12px 40px #0000008c;--mono:"JetBrains Mono", "SFMono-Regular", ui-monospace, Menlo, Consolas, monospace;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;font-family:Inter,Segoe UI,system-ui,-apple-system,sans-serif}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{color:var(--text);background:var(--bg);background-image:var(--bg-grad);-webkit-font-smoothing:antialiased;background-attachment:fixed;font-size:14px;line-height:1.45;overflow-x:hidden}::selection{background:color-mix(in srgb, var(--accent) 45%, transparent)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#ffffff1a;border-radius:8px}::-webkit-scrollbar-track{background:0 0}h1,h2,h3,h4{letter-spacing:-.01em;margin:0 0 .5em;font-weight:700}h1{font-size:28px}h2{font-size:19px}h3{text-transform:uppercase;letter-spacing:.14em;color:var(--muted);font-size:11px;font-family:var(--mono);font-weight:600}a{color:var(--accent2)}.muted{color:var(--muted)}.small{font-size:12px}.mono{font-family:var(--mono);font-variant-numeric:tabular-nums}.row{align-items:center;gap:10px;display:flex}.col{flex-direction:column;gap:10px;display:flex}.wrap{flex-wrap:wrap}.grow{flex:1;min-width:0}.right{margin-left:auto}.center{text-align:center}.hidden{display:none!important}.glass{background:linear-gradient(180deg, var(--glass-tint), transparent 120px), var(--panel);-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--line);border-radius:var(--r);box-shadow:var(--shadow), inset 0 1px 0 #ffffff0a}.panel{padding:16px}.panel-title{align-items:center;gap:8px;margin-bottom:10px;display:flex}.panel-title h3{margin:0}button,.btn{font:inherit;color:var(--text);background:var(--panel-2);border:1px solid var(--line-2);cursor:pointer;white-space:nowrap;border-radius:10px;padding:8px 14px;transition:transform .12s,background .15s,border-color .15s,box-shadow .15s,color .15s}button:hover:not(:disabled){background:#1c2230;border-color:#fff3}button:active:not(:disabled){transform:scale(.98)}button:disabled{opacity:.35;cursor:not-allowed}button.primary{background:linear-gradient(135deg, var(--accent), color-mix(in srgb, var(--accent) 60%, var(--accent2)));color:#fff;box-shadow:0 6px 22px color-mix(in srgb, var(--accent) 35%, transparent);border-color:#0000;font-weight:600}button.primary:hover:not(:disabled){filter:brightness(1.1);background:linear-gradient(135deg, var(--accent), color-mix(in srgb, var(--accent) 60%, var(--accent2)))}button.danger{color:#fecaca;background:#ef444424;border-color:#ef444473}button.ghost{background:0 0;border-color:#0000}button.ghost:hover:not(:disabled){background:#ffffff0d}button.sm{border-radius:8px;padding:4px 10px;font-size:12px}button.active{border-color:var(--accent2);color:#fff;background:color-mix(in srgb, var(--accent2) 18%, var(--panel-2))}.tile-btn{border-radius:var(--r);text-align:left;white-space:normal;flex-direction:column;align-items:flex-start;gap:6px;min-height:96px;padding:16px;display:flex}.tile-btn:hover:not(:disabled){border-color:color-mix(in srgb, var(--accent2) 50%, transparent);box-shadow:0 0 0 1px color-mix(in srgb, var(--accent2) 25%, transparent), var(--shadow)}.tile-btn .ico{font-size:22px}.tile-btn b{font-size:15px}.tile-btn span{color:var(--muted);font-size:12px}input,select,textarea{font:inherit;color:var(--text);background:var(--panel-3);border:1px solid var(--line-2);border-radius:9px;outline:none;min-width:0;padding:7px 10px}input:focus,select:focus,textarea:focus{border-color:var(--accent2);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent2) 20%, transparent)}input[type=checkbox]{accent-color:var(--accent2);width:16px;height:16px}input[type=range]{accent-color:var(--accent2);background:0 0;border:0;padding:0}select option{background:#0d1017}label.field{color:var(--muted);flex-direction:column;gap:4px;font-size:12px;display:flex}textarea{resize:vertical}.chip{border:1px solid var(--line-2);background:#ffffff0d;border-radius:999px;align-items:center;gap:4px;padding:2px 8px;font-size:11px;display:inline-flex}.chip.ok{color:#bbf7d0;background:#22c55e1f;border-color:#22c55e66}.chip.warn{color:#fef08a;background:#facc151f;border-color:#facc1566}.chip.bad{color:#fecaca;background:#ef44441f;border-color:#ef444473}.chip.blue{color:#bfdbfe;background:#3b82f61f;border-color:#3b82f673}.page{max-width:1340px;margin:0 auto;padding:20px 16px 60px}.topbar{align-items:center;gap:14px;margin-bottom:18px;padding:10px 16px;display:flex}.brand{letter-spacing:.04em;align-items:center;gap:10px;font-weight:800;display:flex}.brand .logo{background:conic-gradient(#0b0b0b 0 25%, #f5f5f5 0 50%, #0b0b0b 0 75%, #f5f5f5 0);width:32px;height:32px;box-shadow:0 0 0 2px var(--accent), 0 0 18px color-mix(in srgb, var(--accent) 45%, transparent);background-size:10px 10px;border-radius:8px;flex:none}.brand-title{font-family:var(--mono);letter-spacing:.16em;font-size:13px}.brand-sub{font-family:var(--mono);color:var(--muted);letter-spacing:.08em;font-size:10px;font-weight:500}.grid{gap:16px;display:grid}.home-grid{grid-template-columns:1.3fr 1fr}.btn-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;display:grid}@media (width<=900px){.home-grid{grid-template-columns:1fr}}.list{flex-direction:column;gap:6px;display:flex}.list-item{border-radius:var(--r-sm);border:1px solid var(--line);background:#ffffff06;padding:10px 12px}table.tbl{border-collapse:collapse;width:100%;font-size:13px}.tbl th{text-align:left;color:var(--muted);text-transform:uppercase;letter-spacing:.1em;border-bottom:1px solid var(--line-2);font-size:10px;font-weight:600;font-family:var(--mono);padding:6px 8px}.tbl td{border-bottom:1px solid var(--line);padding:6px 8px}.tbl tr:hover td{background:#ffffff06}.teambar{vertical-align:middle;border-radius:2px;width:4px;height:16px;margin-right:6px;display:inline-block}.cal{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px;max-height:420px;padding-right:4px;display:grid;overflow:auto}.cal-item{border:1px solid var(--line);background:#ffffff06;border-radius:10px;padding:10px;font-size:12px;position:relative}.cal-item.done{opacity:.55}.cal-item.current{border-color:var(--accent2);background:color-mix(in srgb, var(--accent2) 10%, var(--panel));box-shadow:0 0 20px color-mix(in srgb, var(--accent2) 15%, transparent)}.cal-item .flag{font-size:20px}.cal-item .conf{font-size:10px;position:absolute;top:8px;right:8px}.news-item{border:1px solid var(--line);background:#ffffff06;border-radius:10px;padding:12px;animation:.4s both slideIn}.news-item.update{border-left:3px solid var(--accent2)}@keyframes slideIn{0%{opacity:0;transform:translateY(8px)}}.modal-back{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);z-index:100;background:#020306bf;justify-content:center;align-items:center;padding:16px;animation:.2s fade;display:flex;position:fixed;inset:0}.modal{width:min(640px,100%);max-height:90vh;padding:22px;animation:.22s cubic-bezier(.2,1.3,.4,1) pop;overflow:auto}@keyframes fade{0%{opacity:0}}@keyframes pop{0%{opacity:0;transform:scale(.96)}}.toasts{z-index:200;flex-direction:column;gap:8px;display:flex;position:fixed;bottom:18px;right:18px}.toast{border-radius:10px;max-width:360px;padding:10px 14px;animation:.3s slideIn}.toast.ok{border-color:#22c55e80}.toast.error{border-color:#ef444499}.dash{grid-template-rows:auto minmax(0,1fr) auto;grid-template-columns:250px minmax(0,1fr) 330px;gap:8px;height:100vh;padding:8px;display:grid}.dash-top{background:var(--panel);border:1px solid var(--line);border-radius:12px;grid-column:1/-1;align-items:center;gap:14px;padding:8px 14px;display:flex}.dash-left,.dash-right,.dash-center{flex-direction:column;gap:8px;min-height:0;display:flex}.dash-bottom{grid-column:1/-1}.mon-main{flex:1}.mon-row{flex:1;grid-template-columns:1fr 1fr;gap:8px;min-height:0;display:grid}@media (width<=1250px){.dash{grid-template-columns:220px minmax(0,1fr) 290px}}@media (width<=980px){.dash{grid-template-columns:1fr;height:auto}.dash-center,.dash-right{height:900px}.dash-left{height:520px}}.phase-pill{font-family:var(--mono);letter-spacing:.14em;border:1px solid color-mix(in srgb, var(--pc) 60%, transparent);color:var(--pc);background:color-mix(in srgb, var(--pc) 10%, transparent);border-radius:8px;padding:7px 14px;font-size:12px;font-weight:700}.stat{flex-direction:column;line-height:1.15;display:flex}.stat span{font-family:var(--mono);color:var(--muted);letter-spacing:.14em;font-size:9px}.stat b{font-size:15px}.speed{gap:3px;display:flex}.speed button{min-width:34px;font-family:var(--mono)}.scores{gap:12px;display:flex}.score{flex-direction:column;min-width:64px;padding-bottom:5px;display:flex;position:relative}.score span{font-family:var(--mono);color:var(--muted);letter-spacing:.12em;font-size:9px}.score b{font-size:16px}.score i{border-radius:2px;height:2px;transition:width .5s;position:absolute;bottom:0;left:0}@media (width<=1400px){.scores{display:none}}.monitor{background:var(--panel);border-radius:12px;flex-direction:column;min-height:0;display:flex;overflow:hidden}.mon-head{border-bottom:1px solid var(--line);font-family:var(--mono);letter-spacing:.12em;color:var(--muted);z-index:5;flex-wrap:wrap;align-items:center;gap:8px;min-height:32px;padding:6px 10px;font-size:10px;display:flex;position:relative}.mon-tag{color:var(--dim);font-weight:700}.mon-info{color:var(--dim);margin-left:auto}.mon-tab{font-family:var(--mono);letter-spacing:.12em;color:var(--muted);background:0 0;border:1px solid #0000;border-radius:6px;padding:3px 8px;font-size:10px}.mon-tab:hover:not(:disabled){border-color:var(--line);background:#ffffff0a}.mon-tab.active{color:#fff;border-color:var(--line-2);box-shadow:inset 0 -2px 0 var(--accent2);background:#ffffff0d}.mon-body{background:#070a0f;flex:1;min-height:0;position:relative}.mon-body.scroll{background:0 0}.scroll{min-height:0;overflow:auto}.fill{flex:1;min-height:0}.tabs{gap:6px;display:flex}.cam-layer{pointer-events:none;z-index:3;width:100%;height:100%;position:absolute;inset:0}.cam-grid{grid-auto-rows:1fr;gap:3px;padding:3px;display:grid;position:absolute;inset:0}.cam-tile{border-radius:6px;width:100%;height:100%;min-height:0;position:relative;overflow:hidden}.mon-body>.cam-tile{border-radius:0;position:absolute;inset:0}.cam-tile .hud{z-index:4;align-items:center;gap:6px;display:flex;position:absolute;top:8px;left:8px}.cam-tile .hud select{font-size:11px;font-family:var(--mono);background:#000000b3;border-color:#ffffff26;padding:3px 6px}.cam-tile .lower{font-family:var(--mono);z-index:4;border-left:3px solid var(--accent);text-overflow:ellipsis;white-space:nowrap;background:#000000b8;border-radius:5px;max-width:calc(100% - 16px);padding:4px 9px;font-size:11px;font-weight:700;position:absolute;bottom:8px;left:8px;overflow:hidden}.cam-tile .live{font-family:var(--mono);background:var(--bad);z-index:4;letter-spacing:.1em;border-radius:4px;padding:2px 7px;font-size:10px;font-weight:800;position:absolute;top:8px;right:8px}.cam-tile .live:before{content:"● ";animation:1s steps(2,end) infinite blink}.cam-tile .live.replay{background:#a855f7}[data-overlay=minimal] .cam-tile .lower{text-shadow:0 1px 3px #000;background:0 0;border:0}[data-overlay=broadcast] .cam-tile .lower{background:linear-gradient(90deg, var(--accent), #0009);letter-spacing:.08em;border:0;padding:5px 30px 5px 10px}.lb{padding:4px;background:0 0!important}.lb-row{cursor:pointer;font-size:12px;font-family:var(--mono);border-radius:6px;grid-template-columns:22px 3px minmax(0,1fr) 30px 58px 18px 24px;align-items:center;gap:6px;height:25px;padding:4px 6px;transition:background .15s;display:grid}.lb-row:nth-child(odd){background:#ffffff05}.lb-row:hover{background:#ffffff0d}.lb-row.sel{background:color-mix(in srgb, var(--accent2) 16%, transparent);box-shadow:inset 2px 0 0 var(--accent2)}.lb-row.dim{opacity:.55}.lb-row .pos{text-align:right;color:#fff;font-weight:800}.lb-row .tbar{border-radius:2px;width:3px;height:15px}.lb-row .who{white-space:nowrap;align-items:center;gap:5px;display:flex;overflow:hidden}.lb-row .who b{letter-spacing:.05em}.lb-row .who i{color:var(--dim);font-size:10px;font-style:normal}.lb-row .pen{background:var(--bad);color:#fff;border-radius:3px;padding:0 4px;font-size:9px;font-weight:800}.lb-row .secs{gap:2px;display:flex}.sec{background:#ffffff1a;border-radius:1px;width:8px;height:4px;display:inline-block}.sec.purple{background:#a855f7;box-shadow:0 0 6px #a855f7}.sec.green{background:#22c55e}.sec.yellow{background:#eab308}.lb-row .gap{text-align:right;color:var(--muted);font-size:11px}.lb-row .gap.battle{color:#fbbf24}.lb-row .delta{text-align:right;color:var(--dim);font-size:9px}.lb-row .delta.up{color:var(--ok)}.lb-row .delta.down{color:var(--bad)}.flag-swatch.mini{width:10px;height:7px}.status-tag.fin{color:#111;background:#e5e7eb}.lb-legend{border-top:1px solid var(--line);color:var(--muted);font-size:9px;font-family:var(--mono);justify-content:center;gap:10px;padding:6px;display:flex}.lb-legend span{align-items:center;gap:4px;display:inline-flex}.map-wrap{position:absolute;inset:0}.map-ctl{z-index:6;border:1px solid var(--line);background:#05070bcc;border-radius:10px;align-items:center;gap:4px;padding:4px;display:flex;position:absolute;bottom:10px;right:10px}.map-ctl button{padding:4px 7px;display:inline-flex}.trackmap.zoomed{cursor:grab}.trackmap.zoomed:active{cursor:grabbing}.tyre{width:17px;height:17px;font-size:8px;font-weight:800;font-family:var(--mono);border:2px solid;border-radius:50%;justify-content:center;align-items:center;display:inline-flex}.tyre.S{color:#ef4444;border-color:#ef4444}.tyre.M{color:#facc15;border-color:#facc15}.tyre.H{border-color:#e5e7eb}.tyre.I{color:#22c55e;border-color:#22c55e}.tyre.W{color:#3b82f6;border-color:#3b82f6}.status-tag{background:#ffffff1a;border-radius:3px;padding:1px 4px;font-size:9px;font-weight:800}.status-tag.pit{background:#2563eb}.status-tag.out{background:#b91c1c}.status-tag.stop{background:#ea580c}.status-tag.dsq{background:#000;border:1px solid #fff}.feed-item{border-left:3px solid var(--c,transparent);background:#ffffff05;border-radius:8px;gap:10px;padding:7px 10px;animation:.4s cubic-bezier(.2,1.2,.4,1) both feedIn;display:flex}@keyframes feedIn{0%{opacity:0;transform:translate(-12px)}}.feed-item .t{color:var(--muted);min-width:56px;font-size:11px;font-family:var(--mono)}.feed-item.announcement{background:linear-gradient(90deg,#38bdf824,#0000)}.rc-msg{background:#ffffff05;border-left:3px solid;border-radius:0 6px 6px 0;margin-bottom:4px;padding:5px 8px;font-size:11px;line-height:1.35;animation:.35s both feedIn}.card{border:1px solid var(--line);background:#ffffff06;border-radius:10px;padding:10px 12px;animation:.3s both slideIn}.card+.card{margin-top:6px}.card.open{box-shadow:inset 3px 0 0 var(--warn);border-color:#facc1559}.card.noted{box-shadow:inset 3px 0 0 var(--blue);border-color:#3b82f659}.card.done{opacity:.6}.card.danger{box-shadow:inset 3px 0 0 var(--bad), 0 0 16px #ef44441a;border-color:#ef444480}.ev{border-bottom:1px dashed var(--line);justify-content:space-between;gap:8px;padding:3px 0;font-size:12px;display:flex}.replay-btn{margin-top:6px;margin-right:6px}.actionbar{align-items:stretch;gap:8px;display:flex}@media (width<=1300px){.actionbar{flex-wrap:wrap}}.act-group{background:var(--panel);border:1px solid var(--line);border-radius:12px;flex-direction:column;flex:1 1 0;gap:7px;min-width:0;padding:10px 12px;display:flex}.act-group.wide{flex-grow:1.5}.act-group.narrow{flex-grow:.8}.act-group input,.act-group select{width:100%}.act-group h4{font-family:var(--mono);text-transform:uppercase;letter-spacing:.14em;color:var(--muted);margin:0;font-size:10px;font-weight:600}.act-grid{gap:5px;display:grid}.act-grid.c2{grid-template-columns:repeat(2,minmax(0,1fr))}.act-grid.c3{grid-template-columns:repeat(3,minmax(0,1fr))}button.act{font-family:var(--mono);letter-spacing:.05em;text-transform:uppercase;white-space:normal;text-align:center;background:var(--panel-3);border-color:var(--line-2);border-radius:7px;justify-content:center;align-items:center;gap:6px;min-height:32px;padding:7px 6px;font-size:10.5px;line-height:1.15;display:inline-flex}button.act.sm{text-transform:none;letter-spacing:.02em;padding:5px 8px;font-size:10px}button.act.go{color:#bbf7d0;background:#22c55e2e;border-color:#22c55e99;box-shadow:0 0 16px #22c55e2e}button.act.go-soft{color:#bbf7d0;background:#22c55e14;border-color:#22c55e59}button.act.warn{color:#fed7aa;background:#f973161a;border-color:#f9731666}button.act.yellow{color:#fde68a;background:#facc1514;border-color:#facc1566}button.act.yellow.on{color:#111;background:#facc15d9;box-shadow:0 0 18px #facc1566}button.act.red{color:#fecaca;background:#ef44441a;border-color:#ef444473}button.act.red.on{color:#fff;background:#dc2626;box-shadow:0 0 18px #ef444473}button.act.sector{flex-direction:column;gap:1px;padding:8px 6px}button.act.sector b{font-size:13px}button.act.sector span{letter-spacing:.1em;font-size:9px}.sec-green{color:#bbf7d0!important;background:#22c55e1a!important;border-color:#22c55e80!important}.sec-yellow{color:#111!important;background:#facc15!important;border-color:#facc15!important}.sec-dyellow{animation:.9s ease-in-out infinite alternate pulseY;color:#111!important;background:repeating-linear-gradient(90deg,#facc15 0 10px,#eab308 10px 12px)!important;border-color:#facc15!important}.sec-slip{color:#111!important;background:repeating-linear-gradient(90deg,#ef4444 0 6px,#facc15 6px 12px)!important}.sec-white{color:#111!important;background:#f5f5f5!important}.sec-mixed{color:#fde68a!important;background:#f59e0b1f!important;border-color:#f59e0b!important}@keyframes pulseY{to{box-shadow:0 0 16px #facc1599}}.chipbtn{background:var(--panel-3);border-radius:999px;padding:2px 9px;font-size:11px}.chipbtn.active{border-color:var(--accent2);color:#fff;background:color-mix(in srgb, var(--accent2) 20%, var(--panel-3))}.flag-btn{align-items:center;gap:6px;display:inline-flex}.flag-swatch{border:1px solid #ffffff4d;border-radius:2px;flex:none;width:18px;height:12px;display:inline-block}.flag-swatch.big{border-radius:4px;width:36px;height:24px}.fs-yellow{background:#facc15}.fs-double_yellow{background:repeating-linear-gradient(90deg,#facc15 0 6px,#111 6px 8px)}.fs-green{background:#22c55e}.fs-red{background:#ef4444}.fs-blue{background:#3b82f6}.fs-white{background:#f5f5f5}.fs-slippery{background:repeating-linear-gradient(90deg,#ef4444 0 3px,#facc15 3px 6px)}.fs-sc,.fs-vsc,.fs-fcy{background:#facc15}.fs-chequered{background:conic-gradient(#111 0 25%, #fff 0 50%, #111 0 75%, #fff 0);background-size:6px 6px}.fs-none{background:#111}.fs-black_white{background:linear-gradient(135deg,#111 50%,#fff 50%)}.fs-black_orange{background:radial-gradient(circle,#f97316 35%,#111 36%)}.fs-black{background:#111}.fs-sc:after{content:"SC";font:700 8px var(--mono);color:#111;text-align:center;line-height:10px;display:block}.flag-swatch.big.fs-sc:after{font-size:12px;line-height:22px}.lights{background:#050505;border:1px solid #1b1b1b;border-radius:8px;gap:5px;padding:6px 8px;display:flex}.light{background:#2a0606;border-radius:50%;width:18px;height:18px;transition:background 80ms,box-shadow 80ms;box-shadow:inset 0 0 4px #000}.light.on{background:#ff1a1a;box-shadow:0 0 14px #ff1a1a,inset 0 0 4px #fff}.light.green{background:#22c55e;box-shadow:0 0 14px #22c55e}.light.orange{background:#f97316;animation:.5s steps(2,end) infinite blink;box-shadow:0 0 14px #f97316}[data-lights=led] .light{border-radius:4px}[data-lights=led] .light.on{background:repeating-radial-gradient(circle,#ff3b3b 0 2px,#b00 2px 3px)}[data-lights=neon] .light.on{background:#ff2bd6;box-shadow:0 0 18px #ff2bd6,0 0 36px #ff2bd6}@keyframes blink{50%{opacity:.25}}.flag-overlay{pointer-events:none;z-index:90;position:fixed;inset:0}.flag-overlay .edge{border:4px solid var(--fc);opacity:0;box-shadow:inset 0 0 70px var(--fc);animation:2.6s ease-out forwards edgeGlow;position:absolute;inset:0}@keyframes edgeGlow{10%{opacity:.9}to{opacity:0}}.flag-banner{font-family:var(--mono);letter-spacing:.12em;text-transform:uppercase;border-radius:16px;align-items:center;gap:18px;padding:14px 28px;font-size:24px;font-weight:800;animation:2.6s cubic-bezier(.2,1.2,.4,1) forwards bannerIn;display:flex;position:absolute;top:16%;left:50%;transform:translate(-50%)}.flag-banner .cloth{transform-origin:0;border-radius:5px;width:80px;height:54px}@keyframes bannerIn{0%{opacity:0;transform:translate(-50%,-30px)scale(.85)}12%{opacity:1;transform:translate(-50%)scale(1)}80%{opacity:1}to{opacity:0;transform:translate(-50%,-10px)scale(.97)}}[data-flaganim=wave] .flag-banner .cloth{animation:.6s ease-in-out infinite alternate wave}@keyframes wave{0%{transform:perspective(200px)rotateY(-18deg)skewY(-3deg)}to{transform:perspective(200px)rotateY(14deg)skewY(3deg)}}[data-flaganim=sweep] .flag-banner{animation-name:sweepIn}@keyframes sweepIn{0%{opacity:0;transform:translate(-150%)}15%{opacity:1;transform:translate(-50%)}85%{opacity:1;transform:translate(-50%)}to{opacity:0;transform:translate(60%)}}[data-flaganim=pulse] .flag-banner .cloth{animation:.5s ease-in-out infinite alternate pulse}@keyframes pulse{to{filter:brightness(1.4);transform:scale(1.15)}}[data-flaganim=shatter] .flag-banner{animation-name:shatter}@keyframes shatter{0%{opacity:0;filter:blur(10px);transform:translate(-50%)scale(2)}12%{opacity:1;filter:blur();transform:translate(-50%)scale(1)}85%{opacity:1}to{opacity:0;filter:blur(6px);transform:translate(-50%)scale(.6)rotate(-4deg)}}.ann-banner{z-index:95;pointer-events:none;border-radius:12px;max-width:min(720px,92vw);padding:12px 22px;animation:5s cubic-bezier(.2,1.2,.4,1) forwards annIn;position:fixed;top:64px;left:50%;transform:translate(-50%);border-color:#38bdf899!important}@keyframes annIn{0%{opacity:0;transform:translate(-50%,-24px)}8%{opacity:1;transform:translate(-50%)}88%{opacity:1}to{opacity:0;transform:translate(-50%,-12px)}}.trackmap{width:100%;height:100%;display:block}.post{cursor:pointer}.post.blink{animation:.8s steps(2,end) infinite postBlink}@keyframes postBlink{50%{opacity:.3}}.marshal-ring{transform-box:fill-box;transform-origin:50%;animation:1.4s ease-out infinite ring}@keyframes ring{0%{opacity:1;transform:scale(.6)}to{opacity:0;transform:scale(2.4)}}.replay{flex-direction:column;width:min(1500px,98vw);height:min(900px,94vh);padding:0;animation:.22s pop;display:flex;overflow:hidden}.replay-head{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:10px 14px;font-size:13px;display:flex}.replay-body{flex:1;grid-template-columns:1fr 340px;min-height:0;display:grid}.replay-view{flex-direction:column;min-height:0;display:flex}.replay-canvas{cursor:grab;touch-action:none;background:#070a0f;flex:1;min-height:0;position:relative}.replay-canvas:active{cursor:grabbing}.replay-canvas canvas{width:100%;height:100%;position:absolute;inset:0}.replay-osd{background:#000000b3;border-left:3px solid #a855f7;border-radius:6px;padding:4px 9px;font-size:12px;position:absolute;top:12px;left:12px}.replay-ctl{border-top:1px solid var(--line);background:var(--panel-2);flex-direction:column;gap:8px;padding:10px 14px;display:flex}.replay-side{border-left:1px solid var(--line);padding:12px}.timeline{position:relative}.timeline input{width:100%}.timeline-mark{background:var(--bad);width:2px;height:22px;box-shadow:0 0 8px var(--bad);pointer-events:none;position:absolute;top:-2px}.mon-tag,.replay-head .mon-tag{font-family:var(--mono);color:#e9d5ff;letter-spacing:.12em;background:#a855f733;border-radius:4px;padding:2px 6px;font-size:10px}.mon-head .mon-tag{color:var(--dim);background:0 0;padding:0}@media (width<=1000px){.replay-body{grid-template-columns:1fr}.replay-side{display:none}}.doc-intro{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:14px;display:flex}.doc-intro>div{flex:1;min-width:260px}.doc{grid-template-columns:repeat(auto-fit,minmax(440px,1fr));gap:14px;display:grid}.art{padding:18px 20px}.art h2{border-bottom:1px solid var(--line);align-items:baseline;gap:10px;margin-bottom:12px;padding-bottom:10px;font-size:16px;display:flex}.art-n{font-family:var(--mono);color:var(--accent2);letter-spacing:.08em;font-size:11px}.art p{color:#c3c9d4;margin:0 0 10px;font-size:13px;line-height:1.6}.param{border-top:1px dashed var(--line);justify-content:space-between;align-items:center;gap:12px;padding:8px 0;font-size:13px;display:flex}.flag-table{flex-direction:column;gap:8px;display:flex}.flag-row{grid-template-columns:40px 150px 1fr;align-items:center;gap:10px;display:grid}.cat-table select{width:100%;padding:4px 6px;font-size:12px}@media (width<=560px){.doc{grid-template-columns:1fr}.flag-row{grid-template-columns:40px 1fr}.flag-row .muted{grid-column:1/-1}}.score-ring{background:conic-gradient(var(--accent2) calc(var(--p) * 1%), #ffffff0f 0);border-radius:50%;place-items:center;width:140px;height:140px;display:grid;position:relative}.score-ring:before{content:"";background:var(--panel-3);border-radius:50%;position:absolute;inset:10px}.score-ring b{font-size:38px;font-family:var(--mono);position:relative}.bar{background:#ffffff0f;border-radius:4px;height:7px;overflow:hidden}.bar>i{background:linear-gradient(90deg, var(--accent), var(--accent2));border-radius:4px;height:100%;transition:width .6s;display:block}.shop-item{flex-direction:column;gap:8px;padding:14px;display:flex}.shop-preview{border:1px solid var(--line);border-radius:10px;place-items:center;height:64px;font-size:26px;display:grid}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.hero{min-height:190px;position:relative;overflow:hidden}.hero-track{opacity:.85;pointer-events:none;width:46%;position:absolute;top:0;right:-10px}.hero-content{z-index:1;position:relative}.track-outline .draw{stroke-dasharray:1000;stroke-dashoffset:1000px;animation:2.4s cubic-bezier(.6,0,.2,1) forwards drawTrack}@keyframes drawTrack{to{stroke-dashoffset:0}}.steps{flex-wrap:wrap;gap:6px;margin-top:10px;display:flex}.step{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--line-2);color:var(--muted);border-radius:999px;align-items:center;gap:4px;padding:4px 10px;font-size:10px;display:inline-flex}.step.done{color:var(--ok);border-color:#22c55e66}.step.now{color:#fff;border-color:var(--accent2);background:color-mix(in srgb, var(--accent2) 18%, transparent);box-shadow:0 0 14px color-mix(in srgb, var(--accent2) 25%, transparent)}.tile-btn .ico{color:var(--accent2);background:color-mix(in srgb, var(--accent2) 12%, transparent);border:1px solid color-mix(in srgb, var(--accent2) 25%, transparent);border-radius:10px;justify-content:center;align-items:center;width:38px;height:38px;display:inline-flex}.panel-title svg{color:var(--muted)}.podium{grid-template-columns:1fr 1fr 1fr;align-items:end;gap:12px;max-width:820px;margin:0 auto 18px;display:grid}.pod{flex-direction:column;gap:8px;animation:.7s cubic-bezier(.2,1.2,.4,1) both podIn;display:flex}.pod.p1{animation-delay:.35s}.pod.p2{animation-delay:.15s}.pod.p3{animation-delay:.5s}@keyframes podIn{0%{opacity:0;transform:translateY(30px)}}.pod-name{text-align:center;flex-direction:column;align-items:center;gap:2px;display:flex}.pod-num{color:var(--tc);font-size:11px;font-weight:800}.pod-block{background:linear-gradient(180deg, color-mix(in srgb, var(--tc) 55%, #000), color-mix(in srgb, var(--tc) 15%, #05070b));border:1px solid color-mix(in srgb, var(--tc) 60%, transparent);box-shadow:0 0 30px color-mix(in srgb, var(--tc) 25%, transparent);border-radius:12px 12px 4px 4px;place-items:center;font-size:34px;font-weight:800;display:grid}.pod.p1 .pod-block{height:120px}.pod.p2 .pod-block{height:86px}.pod.p3 .pod-block{height:64px}.lb-row .who i{display:none}.update-banner{z-index:300;align-items:center;gap:12px;padding:10px 16px;animation:.3s slideIn;display:flex;position:fixed;bottom:18px;left:50%;transform:translate(-50%);border-color:color-mix(in srgb, var(--accent2) 60%, transparent)!important}.act-group.red-menu{border-color:#ef44448c;animation:.3s slideIn;box-shadow:0 0 24px #ef444426,inset 0 0 0 1px #ef444433}.act-group.red-menu h4{color:#fca5a5}.dash-center-wrap{min-height:0;display:flex}.dash-center-wrap>.dash-center{flex:1;gap:0}.dash-right{gap:0}.dash-right>.monitor{flex:1;min-height:0}.dash-right>.monitor+.monitor{margin-top:8px}.dash-right>div>.monitor,.dash-center>div>.monitor{flex:1}.splitter{z-index:6;flex:none;position:relative}.splitter.x{cursor:col-resize;width:6px;margin:0 -1px}.splitter.y{cursor:row-resize;height:8px}.splitter:after{content:"";background:#ffffff0f;border-radius:2px;transition:background .15s;position:absolute}.splitter.x:after{width:2px;top:40%;bottom:40%;left:2px}.splitter.y:after{height:2px;top:3px;left:45%;right:45%}.splitter:hover:after,body.resizing .splitter:after{background:var(--accent2)}.splitter.x:hover:after{top:0;bottom:0}.splitter.y:hover:after{left:0;right:0}body.resizing{-webkit-user-select:none;user-select:none;cursor:grabbing}.dash{column-gap:2px}@media (width<=980px){.dash{grid-template-columns:1fr!important}.splitter.x{display:none}}.track-outline .fade-draw{animation:1.6s both fadeDraw}@keyframes fadeDraw{0%{opacity:0;transform-origin:50%;transform:scale(.97)}}
