:root{font-family:Inter,"PingFang SC","Microsoft YaHei",sans-serif;color:#e6eae7;background:#0c141a;font-synthesis:none;--muted:#8c9ba3;--line:#2b3a42;--green:#c5e78b}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 15% 0,#213530 0,transparent 55%),#0c141a}button,select,input{font:inherit}button,select{color:inherit;background:#1c2a32;border:1px solid #3b4a52;border-radius:7px}button{padding:10px 15px;cursor:pointer;transition:background .15s}button:hover{background:#30434a}button:disabled{opacity:.4;cursor:default}button:focus-visible,select:focus-visible,a:focus-visible,canvas:focus-visible{outline:2px solid var(--green);outline-offset:4px}.primary{background:var(--green);color:#172517;border-color:var(--green);font-weight:700}.primary:hover{background:#d7f6a6}select{padding:9px;max-width:100%}[hidden]{display:none!important}#arena{max-width:1680px;margin:auto;padding:0 40px}.topbar{height:100px;display:flex;align-items:center;gap:32px;border-bottom:1px solid var(--line)}.brand{display:flex;gap:12px;align-items:center;font-weight:750;font-size:22px;color:inherit;text-decoration:none;white-space:nowrap}.brand small{display:block;font-size:9px;letter-spacing:2.5px;color:var(--muted);margin-top:5px}.crest{font-family:serif;border:1px solid #6d8569;border-radius:5px 5px 18px 18px;padding:7px 12px;color:var(--green);font-size:30px}.edition{font-size:13px;color:#9caea5;flex:1}.toolbar{display:flex;gap:8px;font-size:12px}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:28px;padding:28px 0 20px}.stage{align-self:start;overflow:hidden;background:#080e12;border:1px solid #35433e;border-radius:12px;box-shadow:0 18px 55px #0005;display:flex;flex-direction:column}.stage-top,.stage-bottom{display:flex;align-items:center;gap:12px;padding:13px 18px;font-size:12px;color:#a8b7b6;background:#152125}.stage-top{justify-content:space-between;border-bottom:1px solid #2b393b;letter-spacing:1px}.live-dot{display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--green);margin-right:10px}.stage-bottom{border-top:1px solid #2b393b;min-height:56px}.stage-bottom>span{flex:1}.stage-bottom button{font-size:11px;padding:6px 10px}#screen-slot{position:relative;display:flex;align-items:center;justify-content:center;min-height:380px;height:calc(100vh - 260px);max-height:1050px;overflow:hidden;background:#05090b}#game{display:block;outline:none;flex:none;image-rendering:pixelated}.overlay{position:absolute;inset:0;display:grid;place-items:center;background:radial-gradient(ellipse at 100% 100%,#344d3460,transparent 70%),#101f21}.overlay:before{content:"";position:absolute;inset:24px;border:1px solid #65816a26;border-radius:2px;pointer-events:none}.intro{position:relative;padding:40px;max-width:560px;width:100%}.eyebrow{font-size:10px;letter-spacing:2px;color:#a8bf9a;font-weight:700}h1{font-size:clamp(46px,5vw,76px);letter-spacing:-3px;line-height:1.1;margin:22px 0}p{line-height:1.8}.intro p{color:#b3c2b9;font-size:15px}.intro small{display:block;font-size:11px;color:#82988a;margin-top:30px}.mode-buttons{display:grid;gap:12px;margin-top:34px}.mode-buttons button{display:flex;align-items:center;justify-content:space-between;padding:18px 20px;font-size:16px}.mode-buttons span{font-size:11px;letter-spacing:1px}.sidebar{display:flex;flex-direction:column;gap:14px}.side-title{padding:8px 0 4px}.side-title h2{font-size:23px;margin:10px 0}.player-card{padding:18px;border:1px solid #3c5146;border-radius:9px;background:linear-gradient(120deg,#253b30,#16242a)}.player-heading{display:flex;justify-content:space-between;align-items:center}.player-heading b{font-size:24px;color:var(--green)}.player-heading span{font-size:9px;letter-spacing:1.1px;color:#afc1b7;vertical-align:middle;margin-left:8px}.player-dot{width:7px;height:7px;background:#c5e78b;border-radius:50%}.player-card h3{font-size:15px;margin:18px 0 4px}.player-card p{font-size:11px;color:#a8b7b1;word-break:break-word;margin:4px 0 14px}.away{background:linear-gradient(120deg,#2a303d,#17222a);border-color:#424b61}.away .player-heading b{color:#a9b9ee}.away .player-dot{background:#a9b9ee}.key-summary{font-size:11px;color:#a8b7b1;line-height:2.5}kbd{font-family:inherit;background:#0c191d;border:1px solid #475652;border-bottom-width:2px;border-radius:4px;padding:3px 5px;color:#e8ede9;font-size:11px;white-space:nowrap}.playbook{padding:14px 4px 0}.playbook p{font-size:12px;margin:6px 0}.playbook b{display:inline-block;min-width:42px;color:var(--green)}.muted{color:var(--muted);font-size:12px}.playbook .muted{font-size:11px;margin-top:16px}.display-choice{margin-top:auto;font-size:11px;color:var(--muted)}.display-choice select{display:block;width:100%;margin-top:8px;font-size:12px}footer{border-top:1px solid var(--line);display:flex;justify-content:space-between;padding:17px 0;font-size:10px;color:#71838b;letter-spacing:1px}.notice{font-size:12px;color:var(--green);min-height:1em;margin:0 0 10px}#error{padding:14px;background:#482b2b;color:#ffcdcd}.pause-card{text-align:center;padding:32px}.pause-card h2{font-size:28px}.pause-card p{color:var(--muted)}#paused{background:#0b171be8;backdrop-filter:blur(5px)}dialog{color:#e6eae7;background:#17232c;border:1px solid #4c5f63;border-radius:14px;padding:26px;width:min(880px,94vw);max-height:90vh}dialog::backdrop{background:#020a0dde;backdrop-filter:blur(5px)}.dialog-heading{display:flex;justify-content:space-between;align-items:center;gap:20px}.dialog-heading h2{margin:8px 0;font-size:26px}#mapping-message{padding:10px 13px;background:#0d1b21;border-left:3px solid var(--green);font-size:12px;min-height:42px}#bindings{display:grid;grid-template-columns:1fr 1fr;gap:24px}.binding-player h3{margin:10px 0}.binding-player>label{display:flex;align-items:center;gap:10px;font-size:12px;margin-bottom:14px}.binding-player select{flex:1;min-width:0;font-size:11px}.binding-row{display:grid;grid-template-columns:minmax(80px,1fr) 90px 76px;gap:6px;align-items:center;margin:7px 0;font-size:11px}.binding-row button{font-size:11px;min-height:32px;padding:6px}.binding-row .waiting{outline:2px solid var(--green)}.deadzone{display:flex;align-items:center;gap:14px;margin-top:25px;font-size:12px}.deadzone input{flex:1;accent-color:var(--green)}.dialog-footer{display:flex;justify-content:space-between;padding-top:16px;border-top:1px solid var(--line)}#arena:fullscreen{background:#0c141a;width:100%;max-width:none;overflow:auto}#arena:fullscreen .topbar{height:74px}#arena:fullscreen #screen-slot{height:calc(100vh - 210px);max-height:none}@media(min-width:1500px){.workspace{grid-template-columns:minmax(0,1fr) 290px;gap:32px}}@media(max-width:900px){#arena{padding:0 18px}.topbar{height:82px;gap:12px}.edition{display:none}.toolbar{margin-left:auto}.toolbar button{padding:8px}.workspace{grid-template-columns:minmax(0,1fr);gap:20px}.sidebar{display:grid;grid-template-columns:1fr 1fr}.side-title,.playbook{display:none}.display-choice{grid-column:1/-1}#screen-slot{height:65vh;min-height:320px}.brand{font-size:17px}.crest{font-size:22px}#bindings{grid-template-columns:1fr}.stage-bottom{flex-wrap:wrap}.stage-bottom>span{min-width:60%}}@media(max-width:480px){#arena{padding:0 10px}.brand small{font-size:7px;letter-spacing:1px}.crest{display:none}.toolbar{gap:4px}.toolbar button{font-size:10px;padding:7px}.intro{padding:28px}.intro p{font-size:13px}.player-card{padding:12px}.player-heading span{font-size:8px}.stage-top{font-size:10px}.stage-bottom>span{font-size:10px}footer{font-size:8px}.workspace{padding-top:15px}#screen-slot{min-height:300px;height:52vh}}

#boot-retry{margin-left:8px;padding:4px 8px;font-size:11px}

#welcome{display:flex;flex-direction:column;overflow:auto}#welcome .intro{margin:auto}
#league-continue{margin-top:12px;width:100%}#league-save-status{font-size:12px;line-height:1.6;margin:12px 0}
