/* League scoreboard: red, blue and yellow, with a trading-card frame. */
:root{--bg:#0b1740;--panel:#101f4b;--line:#3f5483;--text:#fffef5;--muted:#b9c7e8;--yellow:#ffda38;--accent:var(--yellow)}
body{background:linear-gradient(125deg,#0d2258 0%,#08102c 75%)}
.app{padding:20px 4vw 18px;gap:18px;max-width:1680px}
.brand{gap:14px;letter-spacing:1.4px}
.brand-mark{background:#ec3345;color:white;transform:none;border-radius:5px;letter-spacing:1px;font-size:12px;padding:11px 12px}
.scoreboard{border:6px solid var(--yellow);border-radius:22px;padding:0 32px 22px;background:linear-gradient(135deg,#172f68 0%,#101e46 52%,#0c1735 100%);box-shadow:0 12px 40px #0004,inset 0 0 0 2px #ffffff20}
.board-heading{background:#ca243a;margin:0 -32px;padding:18px 28px;border-bottom:4px solid #080f24;gap:20px}
.league-identity{display:flex;align-items:center;gap:24px;min-width:0}
.pokemon-logo{width:230px;height:60px;object-fit:contain;flex-shrink:0;filter:drop-shadow(0 3px 0 #0003)}
.league-copy{border-left:1px solid #ffffff55;padding-left:24px;min-width:0}
.eyebrow{color:#ffe9eb;font-size:12px;font-weight:700;letter-spacing:1.6px;margin-bottom:5px}
.eyebrow span{color:#ffb5bc}
h1{font-weight:800;font-size:clamp(22px,2.5vw,36px);line-height:1.12}
.board-heading .quiet{color:white;flex-shrink:0}
.timer-area{position:relative;padding:22px 0 26px;isolation:isolate}
.round-label{background:var(--yellow);color:#142654;padding:7px 22px;border-radius:6px;font-size:clamp(18px,2vw,28px);font-weight:800;letter-spacing:2px;box-shadow:0 4px 0 #0003;gap:10px;z-index:1}
.round-line{display:none}
.digits{font-weight:800;text-shadow:0 7px 0 #050c2599;position:relative;z-index:1;font-size:clamp(100px,22vw,310px);line-height:1.08}
.status-line,#time-note{position:relative;z-index:1}
#status{background:#07163288;border-color:#7592d055;color:#d1dcf5;border-radius:30px;padding:7px 20px}
.mascot{position:absolute;width:clamp(100px,15vw,215px);height:auto;right:0;bottom:18px;z-index:0;pointer-events:none;filter:drop-shadow(0 7px 0 #0003)}
.track{height:9px;border:1px solid #ffffff1c;background:#070e23;border-radius:20px}
#progress{background:var(--accent);border-radius:20px}
.timeline-labels{font-size:13px;letter-spacing:1px;font-weight:700}
.controls{margin-top:20px}
.primary{box-shadow:0 3px 0 #a87809;border:1px solid #ffe576;border-radius:8px;font-weight:800}
.outline{border-color:#6783b2;border-radius:8px}
footer{font-size:13px}
.footer-accent{background:#ed3549}
dialog{background:#10204a;border:2px solid var(--yellow)}
input{background:#0a1737;border-color:#536b9d}
body.tv .app{padding:3vh 3vw;background:transparent}
body.tv .scoreboard{padding:0 3vw 2.5vh;border:6px solid var(--yellow);background:linear-gradient(135deg,#172f68 0%,#101e46 52%,#0c1735 100%)}
body.tv .board-heading{margin:0 -3vw;padding:1.7vh 2.5vw}
body.tv .pokemon-logo{width:clamp(160px,19vw,330px);height:8vh;min-height:40px}
body.tv h1{font-size:clamp(22px,2.8vw,52px)}
body.tv .timer-area{padding:2vh 0}
body.tv .digits{font-size:min(29vw,43vh)}
body.tv .round-label{font-size:clamp(20px,2.4vw,45px)}
body.tv .mascot{width:clamp(110px,16vw,310px);right:0;bottom:2vh}
body.tv .timeline-labels{font-size:clamp(13px,1.1vw,22px)}
@media(max-width:900px){.mascot{width:110px;right:-12px;bottom:55px;opacity:.85}.digits{font-size:24vw}.pokemon-logo{width:130px;height:58px}.league-identity{gap:16px}.league-copy{padding-left:16px}.board-heading{padding:16px 20px}.board-heading button span{display:none}}
@media(max-width:680px){.app{padding:14px 12px}.scoreboard{border-width:4px;border-radius:16px;padding:0 16px 18px}.board-heading{margin:0 -16px;padding:15px 14px;gap:6px}.league-identity{gap:12px}.pokemon-logo{width:98px;height:48px}.league-copy{padding-left:12px}.eyebrow{font-size:12px;line-height:1.4;letter-spacing:.4px}.eyebrow span{padding:0 2px}h1{font-size:22px}.timer-area{padding:32px 0}.digits{font-size:25vw}.mascot{display:none}.round-label{font-size:18px}.timeline-labels{font-size:12px;letter-spacing:.3px}.toolbar{gap:12px}.brand{font-size:12px}.brand-mark{font-size:12px;padding:8px}.controls{margin-top:18px}body.tv .scoreboard{border-width:4px}body.tv .pokemon-logo{width:98px;height:48px;min-height:0}body.tv .league-identity{gap:10px}body.tv h1{font-size:22px}body.tv .digits{font-size:min(26vw,43vh)}}
@media(max-height:650px) and (min-width:900px){.app{padding-top:12px;padding-bottom:12px;gap:12px}.board-heading{padding-top:10px;padding-bottom:10px}.pokemon-logo{height:52px}.timer-area{padding:14px 0}.digits{font-size:34vh}.controls{margin-top:14px}body.tv .digits{font-size:40vh}body.tv .mascot{width:12vw}}
.round-label{flex-wrap:wrap;justify-content:center;max-width:100%;letter-spacing:1px}.round-of{font-size:.68em;opacity:.8}.round-label #total-rounds{font-weight:800}
