#app>.arcade-bar{margin-bottom:14px}:root[data-theme=light]{color:#26343d;background:#edf1ee;--gold: #775113;--muted: #526671;--line: #a6b6bb;--blue: #126274;--panel: #e0e9e8;--heist-surface: #f7faf6}:root[data-theme=light] body{background:radial-gradient(ellipse at 50% 0,#d3e1df 0,transparent 65%)}:root[data-theme=light] button{background:#dce6e8}:root[data-theme=light] button:hover:not(:disabled){filter:brightness(.96)}:root[data-theme=light] .game-card{background:var(--heist-surface);border-color:var(--line)}:root[data-theme=light] #objective,:root[data-theme=light] .message,:root[data-theme=light] .utility button,:root[data-theme=light] .lab p,:root[data-theme=light] dialog p,:root[data-theme=light] dialog li,:root[data-theme=light] footer{color:var(--muted)}:root[data-theme=light] .inventory{border-color:var(--line)}:root[data-theme=light] .move{background:#dce6e8;border-color:#8b9fa7;box-shadow:0 3px #a6b6bb}:root[data-theme=light] .move.center{background:#e9f0ec}:root[data-theme=light] .primary{background:#795916;color:#fff8e3}:root[data-theme=light] .secondary{background:#d1e6e8;color:#205565;border-color:#8b9fa7}:root[data-theme=light] .quiet,:root[data-theme=light] .utility button,:root[data-theme=light] .icon-button{background:transparent}:root[data-theme=light] .outcome{background:#f7faf6f5}:root[data-theme=light] select,:root[data-theme=light] .lab pre,:root[data-theme=light] textarea{color:#264650;background:#f7faf6;border-color:#8b9fa7}:root[data-theme=light] dialog{color:#26343d;background:var(--heist-surface);border-color:#8b9fa7}:root[data-theme=light] #save-error{color:#9c2936}:root{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#e9ede8;background:#111820;font-synthesis:none;--gold: #f3c77b;--muted: #9aadb5;--line: #30404a;--blue: #8cd5e8;--panel: #1a252e}*{box-sizing:border-box}body{margin:0;background:radial-gradient(ellipse at 50% 0,#25333b 0,transparent 65%);min-height:100svh}button,select,textarea,input{font:inherit}button,.file-button{cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}button{min-height:44px;border:1px solid var(--line);border-radius:12px;background:#25343e;color:inherit;padding:10px 14px;font-weight:650}button:hover:not(:disabled){filter:brightness(1.15)}button:active:not(:disabled){transform:translateY(1px)}button:disabled{opacity:.4;cursor:default}button:focus-visible,select:focus-visible,textarea:focus-visible,input:focus-visible,pre:focus-visible{outline:3px solid var(--blue);outline-offset:3px}#app{width:min(100%,540px);margin:0 auto;padding:22px 18px max(18px,env(safe-area-inset-bottom))}.masthead{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px}.eyebrow{font-size:10px;letter-spacing:.18em;font-weight:750;color:var(--muted)}h1{font-size:30px;letter-spacing:-1.1px;margin:3px 0 0;font-weight:750}.spark{color:var(--gold);font-size:23px;margin-left:8px}.icon-button{width:44px;height:44px;padding:0;font-size:23px;color:var(--muted);background:transparent}.game-card{border:1px solid #3c4a50;border-radius:20px;overflow:hidden;background:#17222a;position:relative;box-shadow:0 18px 60px #0003}.level-heading{padding:16px 18px 10px;display:flex;justify-content:space-between;align-items:center;gap:12px}.level-heading .eyebrow{color:var(--gold)}#objective{font-size:13px;margin:6px 0;color:#c5d1d4;min-height:32px;max-width:270px}.turn-chip{text-align:center;border:1px solid var(--line);border-radius:10px;padding:6px 10px}.turn-chip span{font-size:9px;letter-spacing:.12em;display:block;color:var(--muted)}.turn-chip strong{font-size:23px;font-variant-numeric:tabular-nums;font-weight:500}.map-wrap{padding:0 9px}#map{display:block;width:100%;height:auto;max-height:490px}.inventory{display:flex;gap:4px;justify-content:space-between;padding:12px 14px 15px;font-size:11px;font-weight:650;color:var(--muted);border-top:1px solid #2a363e}.inventory .acquired{color:var(--gold)}.message{min-height:36px;font-size:13px;line-height:1.45;color:#c0ced1;margin:13px 4px 10px}.controls{display:flex;justify-content:center;gap:25px;align-items:center;margin:8px 0 20px}.dpad{display:grid;grid-template:repeat(3,49px) / repeat(3,52px);gap:5px}.move{font-size:27px;padding:0;min-height:49px;background:#23323c;border-color:#41525d;box-shadow:0 3px #0c1217}.move.up{grid-area:1/2}.move.left{grid-area:2/1}.move.center{grid-area:2/2;font-size:10px;letter-spacing:.04em;color:var(--muted);background:#18232c}.move.right{grid-area:2/3}.move.down{grid-area:3/2}.action-stack{display:grid;gap:8px;flex:1;max-width:195px}.primary{background:var(--gold);border-color:var(--gold);color:#28251e}.secondary{background:#293b46;border-color:#465864;color:#c5e8ef}.action-stack button{font-size:13px;padding:9px 7px}.action-stack button span{display:block;font-size:9px;font-weight:500;opacity:.75;margin-top:3px}.quiet{background:transparent;color:var(--muted);border-color:transparent;font-size:12px}.utility{display:flex;border-top:1px solid var(--line);padding-top:13px;gap:6px;justify-content:space-between}.utility button{background:transparent;font-size:11px;padding:8px 10px;color:#bfccd0}.footnote{font-size:10px;line-height:1.6;color:var(--muted);text-align:center}.outcome{position:absolute;inset:75px 20px 65px;background:#14212af5;border:1px solid var(--gold);border-radius:15px;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:20px;text-align:center;box-shadow:0 0 50px #0008}.outcome[hidden]{display:none}.outcome h2{color:var(--gold);font-size:28px;letter-spacing:-1px;margin:0 0 10px}.outcome p{color:var(--muted);line-height:1.6;font-size:13px;margin:0 0 20px}.lab{padding:16px;background:var(--panel);border:1px solid var(--line);border-radius:14px;margin-top:20px;overflow:hidden}.lab-heading{display:flex;align-items:center;justify-content:space-between;gap:8px}h2{font-size:19px;margin:0}.badge{font-size:8px;color:var(--blue);letter-spacing:.1em;white-space:nowrap}.lab p,dialog p,dialog li{font-size:13px;color:#b3c4ca;line-height:1.65}.lab label:not(.toggle),dialog label:not(.file-button){display:block;font-size:12px;color:var(--muted);margin:14px 0 6px}select{color:#e9ede8;background:#111e27;border:1px solid #435661;border-radius:8px;padding:10px;min-height:44px;max-width:100%;width:100%}.toggle{display:flex;gap:10px;align-items:center;font-size:12px;min-height:44px}.toggle input{width:20px;height:20px;accent-color:var(--gold)}.phase-row{display:flex;align-items:center;justify-content:space-between;gap:8px;color:var(--gold);font-family:monospace;font-size:13px}.phase-row button{font-family:inherit;font-size:11px}.lab pre{white-space:pre-wrap;overflow-wrap:anywhere;max-height:280px;overflow:auto;font-size:11px;line-height:1.5;background:#101a22;border:1px solid #2b3b45;padding:12px;border-radius:8px;color:#c5dce5}.lab h3{font-size:13px}#trace{padding-left:18px;max-height:280px;overflow:auto;font-size:10px;color:var(--muted);line-height:1.7}#trace strong{color:var(--blue)}footer{display:flex;justify-content:space-between;gap:8px;font-size:9px;color:#748a95;margin:20px 2px 0}dialog{background:#192630;color:#e9ede8;border:1px solid #546773;border-radius:18px;width:min(540px,calc(100% - 20px));max-height:calc(100svh - 24px);padding:20px;overflow:auto;box-shadow:0 30px 100px #0008}dialog::backdrop{background:#070e14bc;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.dialog-heading{display:flex;justify-content:space-between;align-items:center;gap:12px}.dialog-heading h2{font-size:21px;color:var(--gold)}textarea{display:block;width:100%;min-height:230px;resize:vertical;background:#0d1720;border:1px solid #4a626d;color:#bde0ea;border-radius:8px;padding:12px;line-height:1.5;font-size:12px;tab-size:2}.dialog-actions{display:flex;gap:8px;flex-wrap:wrap}.dialog-actions button,.file-button{font-size:12px;flex:1;white-space:nowrap}.file-button{min-height:44px;display:flex;justify-content:center;align-items:center;border:1px solid var(--line);border-radius:12px;padding:10px}.file-button input{display:none}#save-error{color:#faa;font-size:12px;min-height:18px}.cell-label{fill:#7c909b;font-size:6px;font-family:monospace}@media(max-width:370px){#app{padding:15px 10px}.controls{gap:14px}.dpad{grid-template:repeat(3,46px) / repeat(3,46px)}.move{min-height:46px}.inventory{font-size:10px}.utility button{padding:8px;font-size:10px}h1{font-size:27px}}@media(min-width:720px){#app{padding-top:36px}.masthead{margin-bottom:24px}}@media(prefers-reduced-motion:no-preference){button{transition:filter .12s,transform .12s}.prism{animation:shimmer 2.5s ease-in-out infinite}@keyframes shimmer{50%{opacity:.65}}}.case-file{margin:0 0 18px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--panel)}.case-file summary{cursor:pointer;font-size:12px;font-weight:650;min-height:44px;display:flex;align-items:center;gap:8px}.case-file summary:before{content:"◇";color:var(--gold)}.case-file[open] summary:before{content:"◆"}.case-file summary:focus-visible,#map:focus-visible{outline:3px solid var(--blue);outline-offset:3px}.case-file label{display:block;font-size:10px;font-weight:750;letter-spacing:.12em;color:var(--muted);margin-bottom:9px}.case-controls{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}.case-controls button{font-size:12px}#mission-preview{font-size:12px;line-height:1.65;color:var(--muted);margin:12px 0 0}#mission-title{font-size:19px;margin-top:7px}#level-name{font-size:9px;letter-spacing:.1em}.perception{font-size:11px;line-height:1.6;color:var(--muted);min-height:18px;margin:0 4px 15px}.field-notes{font-size:12px;line-height:1.7;color:var(--muted);padding:0 4px 16px}.field-notes p{margin:8px 0}.terrain-key{display:grid;gap:3px}.terrain-key span{border-left:2px solid var(--line);padding-left:9px}#ambience{margin-top:8px;font-size:12px}#ambience[aria-pressed=true]{border-color:var(--blue)}#sound-note{text-align:left}.outcome{inset:96px 15px 60px;padding:14px}.outcome h2{font-size:25px}#next-heist{margin-bottom:8px}#next-heist[hidden]{display:none}@media(min-width:450px){.case-controls{grid-template-columns:minmax(0,1fr) auto}}
