:root{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#e6e3d7;background:#111716;color-scheme:dark;--accent:#eebc68;--line:#313b36;--muted:#8b9690;--mono:"SFMono-Regular",Consolas,monospace;font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-width:320px}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer;border:0;border-radius:0;background:none}button:hover:not(:disabled){color:#fff}button:disabled{cursor:default;opacity:.35}button:focus-visible,a:focus-visible,canvas:focus-visible{outline:2px solid var(--accent);outline-offset:3px}button:active:not(:disabled){transform:translateY(1px)}a{color:inherit;text-decoration:none}[hidden]{display:none!important}.arcade-shell{height:100dvh;min-height:500px;display:grid;grid-template-rows:60px minmax(0,1fr) 87px}.topbar{display:flex;align-items:center;gap:25px;padding:0 27px;border-bottom:1px solid var(--line);background:#141b18}.back{font-size:25px;color:#8b9690}h1{display:flex;align-items:center;gap:9px;font-size:19px;letter-spacing:-.9px;margin:0;font-weight:850}h1>span{font:10px var(--mono);letter-spacing:0;color:#181c16;background:var(--accent);padding:3px 4px}.level-button{display:flex;gap:11px;align-items:center;font:12px var(--mono)}.level-button>span:first-child{font-size:9px;color:var(--muted)}.level-button b{font-weight:500;color:var(--accent)}.score{margin-left:auto;display:flex;gap:12px;align-items:center}.score>span{font-size:9px;letter-spacing:1px;color:var(--muted)}.score strong{font:19px var(--mono);letter-spacing:1px}.lives{display:flex;gap:8px;align-items:center}.lives>span{color:#dd886f;font-size:19px}.lives strong{font:16px var(--mono)}.top-actions{display:flex;gap:4px}.top-actions>button{width:32px;height:32px;color:#aeb6a9;font-size:20px}.top-actions>button:hover{background:#27322b}.top-actions #help{font:16px var(--mono)}.game-area{display:flex;justify-content:center;align-items:center;min-height:0;min-width:0;padding:14px;container-type:size;background:#101615}.playfield{height:min(100cqh,calc(100cqw * 7 / 9));aspect-ratio:9/7;max-width:100%;outline:1px solid #39443c;box-shadow:0 8px 35px #0003}canvas{display:block;width:100%;height:100%;touch-action:none;cursor:crosshair}.game-footer{display:flex;align-items:center;gap:28px;padding:12px 27px;border-top:1px solid var(--line);background:#19211c}.level-status{width:340px;min-width:0}.level-status>div:first-child{display:flex;gap:15px;align-items:center;justify-content:space-between;margin-bottom:8px;font-size:11px}.level-status strong{font:11px var(--mono);white-space:nowrap;color:#9fab9e}.completion-track{height:3px;background:#354034}.completion-track i{display:block;height:100%;background:var(--accent);transition:width .1s}.effects{display:block;font-size:9px;color:#929c90;margin-top:8px;white-space:nowrap}.controls-note{display:flex;flex-direction:column;gap:6px;color:#768474;font-size:10px;margin-left:auto}.controls-note>span:first-child{color:#a9b3a1;font:9px var(--mono);letter-spacing:.2px}.restart{font-size:18px;display:flex;align-items:center;gap:8px;color:#91a08d}.restart>span{font-size:10px}.primary{display:flex;justify-content:space-between;align-items:center;gap:25px;min-height:43px;min-width:174px;padding:12px 15px;background:var(--accent);color:#1c241a;font-size:12px;font-weight:650}.primary:hover:not(:disabled){background:#f7cd89;color:#162014}.primary>span{font-size:18px;font-weight:400}.sr-only{position:absolute;top:0;left:0;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}dialog{border:1px solid #4c5847;border-top:3px solid var(--accent);padding:28px;background:#1b241d;color:#e6e3d7;width:min(610px,calc(100% - 28px));max-height:calc(100dvh - 32px);overflow:auto}dialog::backdrop{background:#080e0dcc;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.dialog-head{display:flex;justify-content:space-between;align-items:start;gap:20px;margin-bottom:24px}.eyebrow{font:10px var(--mono);letter-spacing:1px;color:var(--accent)}h2{font-size:28px;letter-spacing:-.6px;margin:10px 0 0;font-weight:650}.close{font:25px var(--mono);color:#8b9b86;padding:0 4px}.progress-summary{display:flex;justify-content:space-between;gap:15px;font:12px var(--mono);margin-bottom:25px}.progress-summary>span{color:var(--accent)}.level-grid{max-height:48vh;overflow-y:auto;padding-right:8px;scrollbar-color:#5c6b52 transparent;scrollbar-width:thin}.level-series{margin:0 0 18px}.level-series h3{font-size:11px;font-weight:500;letter-spacing:.3px;color:#a2b09a;margin:0 0 9px}.level-series h3 span{font:10px var(--mono);color:#61715b;margin-right:8px}.level-series>div{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:4px}.level-series button{height:51px;background:#242e24;border:1px solid #394634;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px}.level-series b{font:13px var(--mono)}.level-series small{font:9px var(--mono);letter-spacing:1px;color:#9bac8f}.level-series .current{border-color:var(--accent);color:var(--accent)}.level-series .complete small{color:var(--accent)}.level-series button:hover:not(:disabled){background:#36432e}.save-note{font-size:10px;color:#99a78f;line-height:1.6;margin:18px 0}dialog>.primary{width:100%}#help-dialog>p{font-size:13px;line-height:1.7;color:#b8c1b1}#help-dialog>p b{color:#f0e8cf}.bonus-guide{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:#35412f;margin:22px 0}.bonus-guide>div{display:flex;align-items:center;gap:10px;padding:12px;background:#222d22}.bonus-guide span{font:20px var(--mono);width:28px;text-align:center}.bonus-guide b{font-size:11px;font-weight:500}.result-stars{font-size:38px;letter-spacing:9px;color:var(--accent);margin:25px 0}#result-dialog>p{font-size:13px;line-height:1.7;color:#b2bea8}.result-numbers{display:flex;gap:32px;padding:20px 0;margin:20px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.result-numbers>div{display:flex;flex-direction:column;gap:8px}.result-numbers b{font:25px var(--mono);color:#f2e5c6}.result-numbers span{font:9px var(--mono);color:#8b9c7e}.result-actions{display:flex;justify-content:space-between;gap:12px;margin-top:15px}.result-actions button{padding:10px 0;font-size:12px;color:#b0bd9f}@media(min-width:1600px){.topbar,.game-footer{padding-left:40px;padding-right:40px}.game-area{padding:20px}}@media(max-width:900px){.topbar{gap:15px;padding:0 18px}.level-button>span:first-child,.score>span{display:none}.game-footer{padding:12px 18px;gap:16px}.controls-note{display:none}.level-status{flex:1}.primary{min-width:160px}.game-area{padding:10px}}@media(max-width:600px){.arcade-shell{grid-template-rows:52px minmax(0,1fr) 110px;min-height:510px}.topbar{padding:0 12px;gap:11px}.back{font-size:20px}h1{font-size:15px;gap:5px}h1>span{display:none}.level-button{gap:4px;font-size:10px;padding:0}.score strong{font-size:14px;letter-spacing:0}.lives{gap:3px}.lives strong{font-size:12px}.lives>span{font-size:14px}.top-actions{gap:0}.top-actions>button{width:25px;height:30px;font-size:18px}.top-actions #pause{display:none}.game-area{padding:8px}.game-footer{padding:10px 12px;gap:10px;flex-wrap:wrap;align-content:center}.level-status{flex-basis:100%;width:100%;margin-bottom:1px}.level-status>div:first-child{font-size:10px;margin-bottom:6px}.level-status .effects{display:none}.game-footer>.primary{margin-left:auto;width:60%;min-height:35px;padding:8px 12px;font-size:11px}.restart{font-size:20px}.restart>span{font-size:11px}dialog{padding:22px 18px}.level-series>div{grid-template-columns:repeat(5,minmax(0,1fr))}.level-grid{max-height:50vh}.bonus-guide{grid-template-columns:1fr}.result-numbers{gap:24px}.result-numbers b{font-size:22px}.result-numbers span{font-size:8px}}@media(max-width:360px){.topbar{gap:8px}h1{font-size:13px}.score strong{font-size:12px}.top-actions>button{width:22px}}@media(max-height:550px)and (min-width:601px){.arcade-shell{min-height:360px;grid-template-rows:40px minmax(0,1fr) 65px}.topbar{gap:18px}.game-footer{padding-top:8px;padding-bottom:8px}.effects{display:none}.game-area{padding:7px}}
