*{box-sizing:border-box}body{margin:0;background:#0d1510;color:#edf3db;font:15px Arial}header{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:24px 4vw;border-bottom:1px solid #45593a;background:#101810;position:sticky;top:0;z-index:3}a{color:#c3ff62;text-decoration:none}header>a:first-child{font-size:30px;font-weight:900;font-style:italic}header span,.eyebrow,.privacy{font:10px/1.7 monospace;letter-spacing:1px;color:#afc29f}main{max-width:1250px;margin:auto;padding:32px 24px}h1{font-size:clamp(32px,5vw,60px);line-height:1;margin:18px 0}em{color:#c3ff62;font-style:normal}#status{color:#c6d9b9}#score{padding:20px 0;color:#c3ff62;font-weight:800}#boards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.player{min-width:0;border:1px solid #465c3e;padding:22px;background:linear-gradient(#13271bd9,#0f1a15ed),url('/rad/tcg/graveyard.webp') center/cover}.player.moving{border-color:#c3ff62}.player.out{opacity:.55}.player h2{margin:0 0 10px;font-size:21px;overflow-wrap:anywhere}.meta{font:11px/1.6 monospace;color:#c2d1b6}.zones{display:flex;gap:18px;margin:20px 0}.zone-label{font:9px monospace;color:#c3ff62;margin-bottom:8px}.cards{display:flex;gap:8px;overflow-x:auto}.card{width:82px;flex:0 0 82px}.card img{width:100%;border-radius:5px}.card small{display:block;font:9px/1.5 monospace;color:#c3ff62}.active .card{width:108px;flex-basis:108px}.empty{color:#7c8e73;font:11px monospace}.privacy{padding:25px 0}@media(max-width:600px){header{padding:16px}header span{font-size:8px}header a{font-size:10px}main{padding:22px 16px}#boards{grid-template-columns:1fr}.player{padding:18px}}@media(prefers-reduced-motion:no-preference){.moving{animation:glow 3s infinite alternate}@keyframes glow{to{box-shadow:0 0 18px #c3ff6222}}}
/* Broadcast-specific layout; tournament pages keep their own layout. */
.spectator-page main{max-width:1560px;padding:28px 30px}.spectator-page header{padding:18px 30px}.on-air{display:flex;align-items:center;gap:8px}.on-air i{width:7px;height:7px;background:#c3ff62;border-radius:50%;box-shadow:0 0 12px #c3ff62}.watch-intro{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:28px}.watch-intro h1{font-size:clamp(30px,4vw,54px);letter-spacing:-1.8px;margin:12px 0 0}.watch-intro>p{font-size:13px;line-height:1.8;color:#acbca0;max-width:330px}.watch-layout{display:grid;grid-template-columns:270px minmax(0,1fr);gap:20px;align-items:start}.broadcast-rail{background:#141f16;border:1px solid #405336;padding:20px;position:sticky;top:90px}.rail-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #3c4e32;padding-bottom:14px}.rail-head h2{font-size:13px;letter-spacing:1px;margin:0}.rail-head>span{color:#c3ff62;font:12px monospace}.broadcast-choice{display:block;width:100%;border:1px solid #475c39;color:#e6efda;background:#101912;padding:16px;text-align:left;cursor:pointer;margin-top:12px;transition:border-color .2s,background .2s}.broadcast-choice.selected{border-color:#c3ff62;background:#26391d;box-shadow:inset 3px 0 #c3ff62}.broadcast-choice small{display:block;font:9px monospace;color:#bc95df;line-height:1.6;margin-bottom:8px}.broadcast-choice strong{font-size:13px;line-height:1.6;display:block;overflow-wrap:anywhere}.broadcast-choice>span{display:block;font:9px monospace;margin-top:12px;color:#aec89a}.rail-note{font-size:11px;line-height:1.7;color:#91a286;margin:18px 0}.tournament-link{display:block;padding:14px 8px;text-align:center;border:1px solid #678247;font-size:10px;font-weight:bold}.watch-stage{background:linear-gradient(#0d1d15b8,#0d1914dc),url('/rad/tcg/graveyard.webp') center/cover;border:1px solid #4b603b;min-width:0;padding:22px}.stage-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;border-bottom:1px solid #5a714344;padding-bottom:16px}.stage-heading .eyebrow{font-size:8px;letter-spacing:1.4px}.stage-heading #status{font:800 14px Arial;margin:8px 0 0}.delay-label{font:9px monospace;border:1px solid #576c40;padding:8px;white-space:nowrap;color:#b7c8a5}.spectator-page #score{font-size:18px;line-height:1.4;text-align:center;padding:22px 12px;color:#c3ff62}.spectator-page #boards{gap:14px}.spectator-page .player{background:#101b12d4;border:1px solid #4c603b;padding:18px;position:relative;border-radius:5px}.spectator-page .player h2{font-size:20px;margin-bottom:6px}.spectator-page .player.moving{background:linear-gradient(140deg,#2d422055,#101b14ed);box-shadow:inset 0 3px #c3ff62}.spectator-page .meta{font-size:9px;letter-spacing:.2px;line-height:1.8}.spectator-page .zones{justify-content:center;gap:24px;margin:22px 0}.spectator-page .active:first-child .card{width:140px;flex-basis:140px}.spectator-page .active:last-child .card{width:85px;flex-basis:85px}.spectator-page .card{border:0;background:transparent;padding:0;text-align:center;color:#bcd3a9;cursor:zoom-in}.spectator-page .card img{border:1px solid #687c4e;box-shadow:0 4px 16px #0008}.spectator-page .card small{font-size:9px;padding:5px 0}.spectator-page .cards{scrollbar-width:thin;scrollbar-color:#536741 transparent;padding-bottom:4px}.spectator-page .cards>span{font:10px monospace;color:#889c7a;padding:20px 0}.spectator-page .privacy{text-align:center;font-size:9px;margin:0;padding:22px 0 0}.spectator-page .out{opacity:.45}#watchEmpty{text-align:center;padding:85px 25px}#watchEmpty p{font-size:13px;color:#9eb18e;line-height:1.7}.empty-crest{font:bold italic 45px Arial;color:#af83d1;opacity:.65}#cardDetail{background:#121d15;border:1px solid #b4e16e;color:#eef4df;max-width:min(400px,92vw);padding:16px;text-align:center}#cardDetail::backdrop{background:#020a08dd;backdrop-filter:blur(5px)}#cardDetail img{display:block;max-width:100%;max-height:70dvh;margin:15px auto}#closeCard{background:#263c1d;border:1px solid #829e5c;color:#d7efbc;padding:12px 20px;cursor:pointer}.spectator-page [hidden]{display:none!important}
@media(min-width:1500px){.spectator-page .active:first-child .card{width:170px;flex-basis:170px}.spectator-page .card{width:90px;flex-basis:90px}}
@media(max-width:1000px){.watch-layout{grid-template-columns:210px minmax(0,1fr)}.broadcast-rail{padding:14px}.spectator-page .active:first-child .card{width:110px;flex-basis:110px}.spectator-page .active:last-child .card{width:64px;flex-basis:64px}.spectator-page .zones{gap:12px}.spectator-page .player{padding:14px}.watch-intro>p{display:none}}
@media(max-width:700px){.spectator-page header{padding:15px 16px}.spectator-page main{padding:20px 12px}.watch-intro{padding:0 4px;margin-bottom:18px}.watch-intro h1{font-size:31px}.watch-intro .eyebrow{font-size:8px}.watch-layout{grid-template-columns:1fr;gap:14px}.broadcast-rail{position:static;padding:14px}#broadcasts{display:flex;overflow-x:auto;gap:10px;scrollbar-width:thin;scrollbar-color:#536741 transparent}.broadcast-choice{min-width:220px;flex:1;padding:12px;margin-bottom:5px}.broadcast-choice strong{font-size:12px}.rail-note{font-size:10px;margin:10px 0}.tournament-link{display:none}.watch-stage{padding:14px}.spectator-page #boards{grid-template-columns:1fr}.spectator-page .player h2{font-size:20px}.spectator-page .zones{gap:30px}.spectator-page .active:first-child .card{width:140px;flex-basis:140px}.spectator-page .active:last-child .card{width:90px;flex-basis:90px}.spectator-page #score{font-size:15px;padding:16px 5px}.stage-heading #status{font-size:12px}.delay-label{font-size:8px}#watchEmpty{padding:45px 15px}}

.broadcast-rail{min-width:0}.stage-heading>div{min-width:0}.rail-note{overflow-wrap:anywhere}

:root{color-scheme:dark;scrollbar-width:thin;scrollbar-color:#46563b #101810}*{scrollbar-width:thin;scrollbar-color:#46563b #101810}::-webkit-scrollbar{width:7px;height:7px}::-webkit-scrollbar-track{background:#101810}::-webkit-scrollbar-thumb{background:#46563b;border-radius:8px;border:2px solid #101810}::-webkit-scrollbar-button{display:none}

.spectator-bench summary{padding:12px 0;color:#c3ff62;font:11px monospace;cursor:pointer}
@media(max-width:700px){.watching .watch-intro,.watching .rail-note{display:none}.watching .broadcast-rail{padding:8px 12px}.watching .rail-head{padding-bottom:6px}.watching .broadcast-choice{margin-top:6px;padding:8px;min-width:190px}.watching .broadcast-choice strong{font-size:10px}.watching .broadcast-choice>span{margin-top:4px}.spectator-page #boards{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.spectator-page .player{padding:10px}.spectator-page .player h2{font-size:14px}.spectator-page .meta{font-size:8px;line-height:1.5}.spectator-page .zones{gap:6px;margin:10px 0;justify-content:space-between}.spectator-page .active:first-child .card{width:76px;flex-basis:76px}.spectator-page .active:last-child .card{width:36px;flex-basis:36px}.spectator-page .active:last-child .cards>span{font-size:8px;max-width:38px}.spectator-page .zone-label{font-size:8px}.spectator-page .watch-stage{padding:8px}.spectator-page #score{font-size:13px;padding:12px 0}.spectator-page .card small{font-size:8px}.spectator-bench .cards{flex-wrap:wrap}.spectator-bench .card{width:68px;flex-basis:68px}}

.spectator-identity{display:flex;align-items:center;gap:14px;margin-bottom:14px}.spectator-identity h2{margin:0;min-width:0}.card{position:relative}.card .card-owner-badge{position:absolute;right:3px;top:3px;width:16px;height:16px}

.cards{padding-top:11px;padding-right:11px}.card.has-owner-badge{overflow:visible}

/* Printed NFT cards share the same frame as the playable cards. */
.spectator-page .card>.rip-preview{width:100%;border-radius:4px;box-shadow:none;text-align:initial;pointer-events:none}
.spectator-page .player .rip-preview h2{margin:0;font:700 8cqw/1 'RAD Stencil',Georgia,serif;letter-spacing:.15cqw;overflow-wrap:normal}
.spectator-page .player .rip-preview h2.long-name{font-size:5.5cqw}
.spectator-page .card .rip-preview>img{width:71.5%;border:1.5px solid #8d36cb;border-radius:0;box-shadow:none}
#detailArt{width:min(340px,75vw,44dvh);margin:15px auto}
#detailArt>.rip-preview{width:100%;border-radius:8px;text-align:initial}
#cardDetail .rip-preview>img{margin:0;max-height:none;max-width:none}
