:root{color-scheme:dark;--bg:#090b0f;--card:#12161d;--line:#29303b;--txt:#f6f7f8;--muted:#9ba6b5;--red:#ff334f;--green:#22c55e}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 20% -10%,#202836 0,transparent 34%),var(--bg);font-family:Inter,system-ui,Segoe UI,Arial,sans-serif;color:var(--txt)}.app{max-width:1320px;margin:auto;padding:18px}header{display:flex;justify-content:space-between;gap:16px;align-items:center;margin-bottom:15px}h1{margin:2px 0 4px;font-size:clamp(30px,5vw,52px)}p{margin:0;color:var(--muted)}.eyebrow{font-size:12px;letter-spacing:.15em;font-weight:900;color:#c8d0db}.layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:14px}.card{background:rgba(18,22,29,.95);border:1px solid var(--line);border-radius:17px;padding:14px}.stage{position:relative;aspect-ratio:1/1;max-width:780px;margin:auto;background:#020304;border-radius:13px;overflow:hidden}.stage video,.stage canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.stage video{z-index:1;transform-origin:center center;transition:transform .12s ease}.stage canvas{z-index:2}.stage #placeholder{position:absolute;z-index:3;inset:0;display:grid;place-items:center;color:var(--muted)}.controls{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}button{border:1px solid #36404d;background:#1a2029;color:white;border-radius:10px;padding:10px 13px;font-weight:800;cursor:pointer}.primary{background:var(--red);border-color:var(--red)}.good{background:#123c24;border-color:#236f3e}.bad{background:#4b171c;border-color:#8b2931}.pill{border-radius:999px;padding:9px 12px;border:1px solid var(--line);font-size:13px;font-weight:900}.pill.on{background:#12381f;color:#a7f3c1}.pill.off{background:#35161a;color:#fecaca}.side{display:grid;gap:14px}.total{font-size:52px;font-weight:950;margin:8px 0}.darts{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.darts span{min-height:46px;border-radius:10px;border:1px solid var(--line);display:grid;place-items:center;font-weight:900;background:#0b0f14}.last{font-size:58px;font-weight:950;line-height:1;margin:10px 0}.muted{color:var(--muted);font-size:13px}.row{display:flex;gap:8px;margin-top:12px}.wide{width:100%;margin-top:10px}.stats{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--line)}.debuggrid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:10px}.debuggrid>div{background:#0c1117;border:1px solid var(--line);border-radius:10px;padding:9px}.debuggrid span{display:block;color:var(--muted);font-size:11px}.debuggrid b{font-size:14px}.hint{margin-top:10px;color:#cbd4df;font-size:13px;line-height:1.45}.instructions{margin-top:14px}.instructions li{margin:6px 0;color:#dbe1e8}.dialog{background:#12161d;color:#fff;border:1px solid var(--line);border-radius:16px;max-width:680px;width:calc(100% - 30px)}.score-buttons{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;margin:12px 0}.score-buttons button{padding:8px 4px}@media(max-width:900px){.layout{grid-template-columns:1fr}.side{grid-template-columns:repeat(2,1fr)}.side .card:last-child{grid-column:1/-1}.debuggrid{grid-template-columns:repeat(2,1fr)}}@media(max-width:560px){.app{padding:8px}.side{grid-template-columns:1fr}.side .card:last-child{grid-column:auto}header{align-items:flex-start;flex-direction:column}.controls button{flex:1 1 42%}.debuggrid{grid-template-columns:1fr 1fr}.score-buttons{grid-template-columns:repeat(5,1fr)}}
