:root{--bg:#ECEFE9;--surface:#FAFBF8;--ink:#15201A;--muted:#5A685F;--line:#D2DACF;--accent:#2348C8;--accent-ink:#FFFFFF;--accent-soft:#E2E8FA;--good:#157A3A;--good-soft:#E0F1E5;--bad:#B4261C;--bad-soft:#F8E2DF;--stage:#0D1411;--chip:rgba(9,13,11,.74);--chip-ink:#F1F5F2;--f-display:"Barlow Condensed","Arial Narrow",sans-serif;--f-body:"Source Sans 3",system-ui,-apple-system,"Segoe UI",sans-serif;--f-mono:"JetBrains Mono",ui-monospace,Menlo,monospace}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg:#0E1411;--surface:#151D19;--ink:#E4ECE6;--muted:#93A398;--line:#28332D;--accent:#88A4FF;--accent-ink:#0B1230;--accent-soft:#1C2645;--good:#5CD38B;--good-soft:#132E1E;--bad:#FF8A7E;--bad-soft:#3A1915;color-scheme:dark}}:root[data-theme=dark]{--bg:#0E1411;--surface:#151D19;--ink:#E4ECE6;--muted:#93A398;--line:#28332D;--accent:#88A4FF;--accent-ink:#0B1230;--accent-soft:#1C2645;--good:#5CD38B;--good-soft:#132E1E;--bad:#FF8A7E;--bad-soft:#3A1915;color-scheme:dark}*{box-sizing:border-box}[hidden]{display:none!important}body{background:var(--bg);color:var(--ink);font-family:var(--f-body);font-size:15px;line-height:1.5}button{font:inherit;color:inherit}button:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app{max-width:1280px;margin:0 auto;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));padding-block:18px 40px;display:grid;gap:16px}.lbl{font-family:var(--f-display);font-weight:600;font-size:12px;letter-spacing:.09em;text-transform:uppercase;color:var(--muted)}.top{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:12px 24px;border-bottom:1px solid var(--line);padding-bottom:14px}.brand{display:flex;gap:12px;align-items:center;min-width:0}.mark{width:34px;height:34px;flex:none;border-radius:8px;background:var(--ink);position:relative}.mark:before,.mark:after{content:"";position:absolute;background:var(--bg);border-radius:1px}.mark:before{left:9px;right:9px;top:16px;height:2px}.mark:after{left:12px;width:2px;top:8px;bottom:8px;box-shadow:4px 0 0 var(--bg),8px 0 0 var(--bg)}.kicker{font-family:var(--f-display);font-weight:600;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}h1{margin:0;font-family:var(--f-display);font-weight:700;font-size:30px;line-height:1.05;letter-spacing:.01em;text-wrap:balance}.demo{font-size:13px;vertical-align:middle;letter-spacing:.08em;text-transform:uppercase;border:1px solid var(--line);border-radius:4px;padding:2px 6px;color:var(--muted);margin-left:6px}.meta{display:flex;gap:22px}.meta div{display:grid}.meta b{font-family:var(--f-display);font-size:24px;font-weight:600;font-variant-numeric:tabular-nums;line-height:1.1}.modebar{display:grid;gap:10px}.moderow{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;justify-content:space-between}.cats{display:flex;flex-wrap:wrap;gap:6px}.cats button{border:1px solid var(--line);background:var(--surface);border-radius:999px;padding:4px 11px;font-size:13px;cursor:pointer;color:var(--muted);font-weight:600}.cats button span{font-family:var(--f-mono);font-size:11px;margin-left:5px;opacity:.75}.cats button[aria-pressed=true]{background:var(--ink);color:var(--bg);border-color:var(--ink)}.examnote{margin:0;color:var(--muted);font-size:14px}.layout{display:grid;grid-template-columns:minmax(0,1.75fr) minmax(300px,1fr);gap:20px;align-items:start}@media(max-width:960px){.layout{grid-template-columns:minmax(0,1fr)}}.stagecol{display:grid;gap:10px;min-width:0}.screen{position:relative;aspect-ratio:16/9;max-width:100%;background:var(--stage);border-radius:10px;overflow:hidden;isolation:isolate}.screen canvas{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block}.chip{position:absolute;z-index:2;background:var(--chip);color:var(--chip-ink);border-radius:5px;padding:4px 9px;pointer-events:none}.chip.cam{top:10px;left:10px;font-family:var(--f-display);font-weight:600;font-size:14px;letter-spacing:.08em;text-transform:uppercase}.chip.cam:before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:#e5483b;margin-right:7px;vertical-align:1px}.chip.time{right:10px;bottom:10px;font-family:var(--f-mono);font-size:12px;font-variant-numeric:tabular-nums}.legend{background:var(--stage);color:var(--chip-ink);border-radius:8px;padding:8px 12px;font-size:13.5px;line-height:1.4}.legend b{color:#ffb4a8;font-weight:600}.bigplay{position:absolute;z-index:3;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;align-items:center;gap:10px;border:0;border-radius:999px;padding:12px 20px 12px 14px;background:#fffffff0;color:#0d1411;font-family:var(--f-display);font-weight:700;font-size:18px;letter-spacing:.05em;text-transform:uppercase;cursor:pointer;box-shadow:0 6px 24px #00000059}.bigplay svg{width:30px;height:30px}.bigplay:hover{background:#fff}.bigplay[disabled]{cursor:not-allowed;background:#ffffffbf}.stagemsg{position:absolute;top:0;right:0;bottom:0;left:0;display:grid;place-items:center;color:#e8eeea;padding:24px;text-align:center}.controls{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.ctl{border:1px solid var(--line);background:var(--surface);border-radius:7px;padding:7px 14px;font-weight:600;cursor:pointer;min-width:84px}.ctl[disabled]{opacity:.45;cursor:not-allowed}.seg{display:inline-flex;border:1px solid var(--line);border-radius:7px;overflow:hidden;background:var(--surface);flex-wrap:wrap}.seg button{border:0;background:transparent;padding:7px 12px;cursor:pointer;font-weight:600;font-size:14px;color:var(--muted)}.seg button+button{border-left:1px solid var(--line)}.seg button[aria-pressed=true]{background:var(--ink);color:var(--bg)}.seg button[disabled]{opacity:.45;cursor:not-allowed}#scrub{flex:1 1 160px;min-width:0;accent-color:var(--accent)}#scrub:disabled{opacity:.4}.views{font-family:var(--f-display);font-weight:600;font-size:15px;letter-spacing:.04em;color:var(--muted);font-variant-numeric:tabular-nums}.views.out{color:var(--bad)}.camrow{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.howto{margin:2px 0 0;color:var(--muted);font-size:14px;max-width:70ch}.sheet{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:18px;display:grid;gap:12px;min-width:0}.eyebrow{font-family:var(--f-display);font-weight:600;font-size:14px;letter-spacing:.09em;text-transform:uppercase;color:var(--accent)}.situ{margin:0;color:var(--muted);font-size:14px}.situ b{color:var(--ink);font-weight:600}h2{margin:2px 0 0;font-family:var(--f-display);font-weight:700;font-size:26px;line-height:1.1}.opts{display:grid;grid-template-columns:1fr 1fr;gap:8px}.opts.one{grid-template-columns:1fr}.opt{display:grid;gap:2px;text-align:left;border:1.5px solid var(--line);background:var(--bg);border-radius:9px;padding:10px 12px;cursor:pointer;min-width:0}.opt .k{font-family:var(--f-mono);font-size:11px;color:var(--muted)}.opt .n{font-family:var(--f-display);font-weight:700;font-size:21px;line-height:1.1}.opt .s{font-size:12.5px;color:var(--muted);line-height:1.3}.opt:hover{border-color:var(--muted)}.opt[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft)}.opt.right{border-color:var(--good);background:var(--good-soft)}.opt.wrong{border-color:var(--bad);background:var(--bad-soft)}.opt[disabled]{cursor:default}.lock{border:0;border-radius:9px;padding:11px 14px;background:var(--accent);color:var(--accent-ink);font-weight:700;font-size:16px;cursor:pointer}.lock[disabled]{opacity:.4;cursor:not-allowed}.result{display:grid;gap:8px;border-top:1px solid var(--line);padding-top:12px}.verdict{font-family:var(--f-display);font-weight:700;font-size:22px;line-height:1.15}.verdict.ok{color:var(--good)}.verdict.no{color:var(--bad)}.result p{margin:0}.rule{font-size:13px;color:var(--muted)}.rule b{font-weight:600;color:var(--ink)}.flag{font-size:13px;border-left:3px solid var(--accent);padding:4px 0 4px 10px;color:var(--ink)}.rbtns{display:flex;flex-wrap:wrap;gap:8px;margin-top:4px}.ghost,.primary{border-radius:8px;padding:9px 14px;font-weight:600;cursor:pointer}.ghost{border:1px solid var(--line);background:var(--bg)}.primary{border:0;background:var(--ink);color:var(--bg)}.strip{display:grid;grid-template-columns:repeat(auto-fill,minmax(42px,1fr));gap:6px}.strip button{border:1px solid var(--line);background:var(--surface);border-radius:6px;padding:6px 0;font-family:var(--f-mono);font-size:12px;cursor:pointer;color:var(--muted)}.strip button.cur{border-color:var(--ink);color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}.strip button.ok{background:var(--good-soft);border-color:var(--good);color:var(--good)}.strip button.no{background:var(--bad-soft);border-color:var(--bad);color:var(--bad)}.summary{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:20px;display:grid;gap:14px}.summary h2{font-size:30px}.sumhead{display:flex;flex-wrap:wrap;gap:12px 28px;align-items:baseline}.big{font-family:var(--f-display);font-weight:700;font-size:52px;line-height:1;font-variant-numeric:tabular-nums}.pill{display:inline-block;border-radius:999px;padding:3px 10px;font-weight:700;font-size:13px;letter-spacing:.04em;text-transform:uppercase}.pill.ok{background:var(--good-soft);color:var(--good)}.pill.no{background:var(--bad-soft);color:var(--bad)}.tablewrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:14px;min-width:560px}th,td{text-align:left;padding:7px 8px;border-bottom:1px solid var(--line)}th{font-family:var(--f-display);font-weight:600;letter-spacing:.06em;text-transform:uppercase;font-size:12px;color:var(--muted)}td.c-ok{color:var(--good);font-weight:600}td.c-no{color:var(--bad);font-weight:600}@media(max-width:520px){.opts{grid-template-columns:1fr}.meta{gap:14px}h1{font-size:26px}}html,body{margin:0}body{min-height:100vh}.app{padding-top:max(18px,env(safe-area-inset-top,0px))}.card{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:22px;display:grid;gap:14px}.card.narrow{max-width:440px;width:100%;justify-self:center}.muted{margin:0;color:var(--muted)}.form{display:grid;gap:10px}.form label{font-weight:600;font-size:14px}.form input{font:inherit;font-size:18px;padding:10px 12px;border:1.5px solid var(--line);border-radius:9px;background:var(--bg);color:var(--ink);min-width:0;width:100%}.form input:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.phonebox{display:flex;align-items:stretch;gap:8px}.phonebox span{display:grid;place-items:center;padding:0 12px;border:1.5px solid var(--line);border-radius:9px;font-weight:600;color:var(--muted)}.primary{border:0;border-radius:9px;padding:11px 16px;background:var(--accent);color:var(--accent-ink);font-weight:700;font-size:16px;cursor:pointer}.primary[disabled]{opacity:.45;cursor:not-allowed}.ghost{border:1px solid var(--line);background:var(--bg);border-radius:9px;padding:10px 16px;font-weight:600;cursor:pointer}.link{border:0;background:none;color:var(--accent);font-weight:600;cursor:pointer;padding:4px 0;justify-self:start}.error{margin:0;color:var(--bad);font-weight:600}.rules{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.rule{border:1px solid var(--line);border-radius:10px;padding:12px;display:grid;gap:4px;align-content:start;background:var(--bg)}.rule b{font-family:var(--f-display);font-size:20px;line-height:1.1}.rule p{margin:0;color:var(--muted);font-size:14px}.actions{display:flex;flex-wrap:wrap;gap:10px;align-items:center}.status{border-radius:10px;padding:12px 14px;display:grid;gap:4px}.status b{font-family:var(--f-display);font-size:22px;line-height:1.15}.status p{margin:0}.status.ok{background:var(--good-soft);color:var(--good)}.status.no{background:var(--bad-soft);color:var(--bad)}.status.info{background:var(--accent-soft);color:var(--ink)}.after{display:grid;gap:8px;border-top:1px solid var(--line);padding-top:12px}.locked{margin:0;color:var(--muted)}.strip button.done{background:var(--accent-soft);border-color:var(--accent);color:var(--ink)}.finishbar{display:flex;flex-wrap:wrap;gap:10px 16px;align-items:center;justify-content:space-between;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:12px 16px}.finishbar p{margin:0;color:var(--muted)}.meta .link{align-self:end}.field{display:grid;gap:6px}.form select{font:inherit;font-size:16px;padding:10px 12px;border:1.5px solid var(--line);border-radius:9px;background:var(--bg);color:var(--ink);min-width:0;width:100%}.row2{display:grid;grid-template-columns:1fr 1fr;gap:10px}@media(max-width:420px){.row2{grid-template-columns:1fr}}.opt-l{font-weight:400;color:var(--muted)}.form .check{display:flex;gap:10px;align-items:flex-start;font-size:15px;font-weight:400}.check input{width:20px;height:20px;margin-top:2px;flex:none;accent-color:var(--accent)}.link.inline{padding:0;font:inherit;font-weight:600;display:inline}.legal{border:1px solid var(--line);border-radius:10px;background:var(--bg);padding:12px 14px;display:grid;gap:8px;max-height:360px;overflow:auto}.legalhead{display:flex;justify-content:space-between;align-items:center;gap:10px;position:sticky;top:-12px;background:var(--bg);padding-block:4px}.legal h3{font-family:var(--f-display);font-size:18px;margin:8px 0 0}.legal p{margin:0;font-size:14px;color:var(--ink)}
