@import "https://fonts.googleapis.com/css2?family=Press+Start+2P&family=IBM+Plex+Mono:wght@400;600&display=swap";:root{--ink:#f7f8fb;--ink-soft:#a8b0c0;--panel:#0e101aeb;--panel-border:#3a3f58;--panel-border-glow:#5ef0b0;--accent:#5ef0b0;--accent-press:#3ebd83;--focus:#fff;--pixel-shadow:#0a0b12;--shadow-purple:#9d4edd}*{box-sizing:border-box}html,body,#app{touch-action:none;-webkit-user-select:none;user-select:none;width:100%;height:100%;margin:0;overflow:hidden}body{color:var(--ink);background:#090a10;font-family:"Press Start 2P",monospace;overflow:hidden}#game-root{width:100%;height:100%;image-rendering:pixelated;image-rendering:crisp-edges;touch-action:none;position:relative}#scene-host,#scene-host canvas{width:100%;height:100%;image-rendering:pixelated;image-rendering:crisp-edges;touch-action:none;display:block}.hud-panel{pointer-events:none;box-sizing:border-box;position:absolute}#objective-hud{background:var(--panel);border:3px solid var(--panel-border);box-shadow:4px 4px 0 var(--pixel-shadow);pointer-events:none;z-index:10;width:fit-content;max-width:26rem;height:fit-content;padding:.85rem 1.1rem;position:absolute;inset:1.25rem auto auto 1.25rem}#objective-hud .title{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.5rem;font-size:.65rem}#objective-hud ul{flex-direction:column;gap:.4rem;margin:0;padding:0;list-style:none;display:flex}#objective-hud li{color:var(--ink-soft);align-items:center;gap:.5rem;font-family:IBM Plex Mono,monospace;font-size:.75rem;display:flex}#objective-hud li.done{color:#6c757d;text-decoration:line-through}#objective-hud li.done:before{content:"✓";color:var(--accent);font-weight:700}#objective-hud li:not(.done):before{content:"○";color:#fc0}#shadow-pocket-hud{box-shadow:4px 4px 0 var(--pixel-shadow);z-index:10;pointer-events:none;background:#0a0814f0;border:3px solid #6b21a8;min-width:16rem;padding:.85rem 1.1rem;transition:border-color .3s,box-shadow .3s;position:absolute;bottom:1.25rem;right:1.25rem}#shadow-pocket-hud.pulse{border-color:var(--shadow-purple);box-shadow:0 0 16px #9d4edd99, 4px 4px 0 var(--pixel-shadow)}#shadow-pocket-hud .pocket-header{color:#c084fc;letter-spacing:.06em;align-items:center;gap:.5rem;margin-bottom:.4rem;font-size:.62rem;display:flex}#shadow-pocket-hud .pocket-icon{background:#3b0764;border:1px solid #c084fc;width:10px;height:10px;display:inline-block;box-shadow:0 0 4px #a855f7}#shadow-pocket-hud .mass-meter{color:var(--ink);margin-bottom:.25rem;font-family:IBM Plex Mono,monospace;font-size:.75rem}#shadow-pocket-hud .pocket-status{color:var(--ink-soft);font-family:IBM Plex Mono,monospace;font-size:.65rem}#interaction-prompt{border:2px solid var(--accent);box-shadow:3px 3px 0 var(--pixel-shadow);color:var(--accent);letter-spacing:.05em;z-index:20;pointer-events:none;background:#000;padding:.5rem 1rem;font-size:.7rem;animation:1.2s ease-in-out infinite alternate prompt-float;position:absolute;bottom:5.5rem;left:50%;transform:translate(-50%)}@keyframes prompt-float{0%{transform:translate(-50%)translateY(0)}to{transform:translate(-50%)translateY(-4px)}}#dialogue-box{background:var(--panel);border:4px solid var(--panel-border);width:min(44rem,92vw);box-shadow:6px 6px 0 var(--pixel-shadow);z-index:30;pointer-events:auto;cursor:pointer;padding:1.25rem 1.5rem;position:absolute;bottom:1.5rem;left:50%;transform:translate(-50%)}#dialogue-box .speaker{color:var(--accent);letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:.4rem;margin-bottom:.6rem;font-size:.72rem;display:flex}#dialogue-box .text-content{color:var(--ink);min-height:2.8rem;font-family:IBM Plex Mono,monospace;font-size:.95rem;line-height:1.55}#dialogue-box .next-indicator{color:var(--accent);font-size:.6rem;animation:.8s infinite blink;position:absolute;bottom:.6rem;right:1rem}@keyframes blink{0%,49%{opacity:1}50%,to{opacity:0}}#chase-hud{background:var(--panel);border:3px solid var(--panel-border);box-shadow:4px 4px 0 var(--pixel-shadow);z-index:10;pointer-events:none;flex-direction:column;gap:.4rem;min-width:16rem;padding:.85rem 1.2rem;display:flex;position:absolute;top:1.25rem;right:1.25rem}#chase-hud .thief-bar-wrap{background:#1e2230;border:2px solid #000;width:100%;height:14px;position:relative;overflow:hidden}#chase-hud .thief-bar-fill{background:linear-gradient(90deg,#ef4444,#f59e0b,#10b981);width:30%;height:100%;transition:width .1s linear}#chase-hud .stat-row{justify-content:space-between;font-size:.65rem;display:flex}#combat-hud{background:var(--panel);width:min(32rem,90vw);box-shadow:6px 6px 0 var(--pixel-shadow);z-index:25;text-align:center;pointer-events:auto;cursor:pointer;border:4px solid #ef4444;padding:1.2rem;position:absolute;bottom:3.5rem;left:50%;transform:translate(-50%)}#combat-hud .timing-bar-container{background:#111421;border:3px solid #000;width:100%;height:24px;margin:.8rem 0;position:relative;overflow:hidden}#combat-hud .target-zone{border-left:2px solid var(--accent);border-right:2px solid var(--accent);background:#5ef0b073;width:15%;position:absolute;top:0;bottom:0;left:45%}#combat-hud .cursor-needle{background:#fff;width:6px;position:absolute;top:0;bottom:0;left:0%;box-shadow:0 0 8px #fff}#combat-hud .prompt-text{color:#ffdd57;letter-spacing:.08em;font-size:.72rem}#virtual-controls{pointer-events:none;z-index:22;position:absolute;inset:0}#virtual-dpad{pointer-events:auto;touch-action:none;grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(3,1fr);gap:3px;width:135px;height:135px;display:grid;position:absolute;bottom:1.25rem;left:1.25rem}.dpad-btn{border:2px solid var(--panel-border);box-shadow:2px 2px 0 var(--pixel-shadow);color:var(--accent);touch-action:none;-webkit-user-select:none;user-select:none;cursor:pointer;background:#0e101ad1;justify-content:center;align-items:center;font-family:"Press Start 2P",monospace;font-size:.75rem;display:flex}.dpad-btn:active,.dpad-btn.active{background:var(--accent-press);color:#05121d;transform:translate(1px,1px)}.dpad-btn.up{grid-area:1/2}.dpad-btn.left{grid-area:2/1}.dpad-btn.right{grid-area:2/3}.dpad-btn.down{grid-area:3/2}#virtual-actions{pointer-events:auto;touch-action:none;gap:.8rem;display:flex;position:absolute;bottom:1.5rem;right:1.5rem}.virtual-btn{width:62px;height:62px;box-shadow:3px 3px 0 var(--pixel-shadow);color:#05121d;touch-action:none;-webkit-user-select:none;user-select:none;cursor:pointer;background:#5ef0b0e0;border:3px solid #000;border-radius:50%;justify-content:center;align-items:center;font-family:"Press Start 2P",monospace;font-size:.95rem;display:flex}.virtual-btn:active,.virtual-btn.active{background:var(--accent-press);transform:translate(2px,2px);box-shadow:1px 1px #000}.panel{text-align:center;background:var(--panel);border:4px solid var(--panel-border);box-shadow:6px 6px 0 var(--pixel-shadow);z-index:40;flex-direction:column;justify-content:center;align-items:center;gap:1.25rem;max-width:min(34rem,90vw);margin:auto;padding:2.5rem 2rem;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.panel h1,.panel h2{text-transform:uppercase;letter-spacing:.08em;color:#fff;text-shadow:3px 3px #000;margin:0;font-size:clamp(1.3rem,3.8vw,2.1rem);line-height:1.3}.panel p{color:var(--ink-soft);max-width:28rem;margin:0;font-family:IBM Plex Mono,monospace;font-size:clamp(.82rem,2.3vw,.95rem);line-height:1.6}.panel button{letter-spacing:.06em;text-transform:uppercase;color:#05121d;background:var(--accent);pointer-events:auto;cursor:pointer;border:3px solid #000;border-radius:0;margin-top:.5rem;padding:.85rem 1.6rem;font-family:"Press Start 2P",monospace;font-size:.78rem;transition:transform 60ms step-start,box-shadow 60ms step-start;box-shadow:4px 4px #000}.panel button:hover{transform:translate(-2px,-2px);box-shadow:6px 6px #000}.panel button:active{background:var(--accent-press);transform:translate(2px,2px);box-shadow:2px 2px #000}.hidden{display:none!important}#game-root.crt-active:after{content:"";pointer-events:none;z-index:100;background:linear-gradient(#12101000 50%,#00000047 50%) 0 0/100% 4px,radial-gradient(circle,#0000 60%,#0006 100%) 0 0/100% 100%;position:absolute;inset:0}#settings-btn{z-index:35;background:var(--panel);border:2px solid var(--panel-border);color:var(--ink);cursor:pointer;box-shadow:3px 3px 0 var(--pixel-shadow);pointer-events:auto;-webkit-user-select:none;user-select:none;padding:.5rem .75rem;font-family:"Press Start 2P",monospace;font-size:.7rem;position:absolute;top:1.25rem;right:1.25rem}#settings-btn:hover{border-color:var(--accent);background:#1e2238}#settings-btn:active{transform:translate(2px,2px);box-shadow:1px 1px #000}.settings-panel{z-index:50;gap:1rem;width:100%;max-width:min(36rem,92vw);padding:2rem 1.8rem}.settings-group{text-align:left;flex-direction:column;gap:.75rem;width:100%;display:flex}.setting-row{color:var(--ink);justify-content:space-between;align-items:center;gap:1rem;padding:.2rem 0;font-size:.65rem;display:flex}.setting-row label{text-transform:uppercase;letter-spacing:.05em}.setting-control{align-items:center;gap:.6rem;display:flex}.setting-slider{width:110px;accent-color:var(--accent);cursor:pointer}.setting-val{color:var(--accent);text-align:right;min-width:2.8rem;font-family:IBM Plex Mono,monospace;font-size:.75rem}.setting-checkbox{width:1.1rem;height:1.1rem;accent-color:var(--accent);cursor:pointer}.scale-btn-group{gap:.4rem;display:flex}.scale-btn{cursor:pointer;border:2px solid var(--panel-border)!important;color:var(--ink-soft)!important;background:#141724!important;margin:0!important;padding:.35rem .6rem!important;font-size:.62rem!important;box-shadow:2px 2px #000!important}.scale-btn.active{border-color:var(--accent)!important;color:#05121d!important;background:var(--accent)!important}.stats-card{border:2px dashed var(--panel-border);width:100%;color:var(--ink-soft);text-align:left;background:#080a10d9;flex-direction:column;gap:.4rem;padding:.75rem 1rem;font-family:IBM Plex Mono,monospace;font-size:.72rem;display:flex}.stats-card .stats-title{color:var(--accent);text-transform:uppercase;margin-bottom:.2rem;font-family:"Press Start 2P",monospace;font-size:.58rem}.settings-actions{justify-content:center;gap:1rem;width:100%;margin-top:.5rem;display:flex}.btn-secondary{color:var(--ink)!important;background:#27273a!important;border-color:#3f3f58!important}@media (width<=680px),(orientation:portrait) and (width<=900px){#settings-btn{z-index:40;padding:.4rem .55rem;font-size:.55rem;top:.6rem;right:.6rem}#objective-hud{max-width:calc(100vw - 4.8rem);box-shadow:3px 3px 0 var(--pixel-shadow);padding:.45rem .65rem;font-size:.55rem;inset:.6rem auto auto .6rem}#objective-hud .title{margin-bottom:.3rem;font-size:.5rem}#objective-hud ul{gap:.25rem}#objective-hud li{gap:.35rem;font-size:.6rem}#shadow-pocket-hud{min-width:auto;max-width:14rem;box-shadow:3px 3px 0 var(--pixel-shadow);padding:.45rem .65rem;inset:auto .6rem 6.8rem auto}#shadow-pocket-hud .pocket-header{margin-bottom:.25rem;font-size:.52rem}#shadow-pocket-hud .mass-meter{margin-bottom:.15rem;font-size:.65rem}#shadow-pocket-hud .pocket-status{font-size:.55rem}#chase-hud{gap:.3rem;min-width:auto;padding:.45rem .65rem;inset:.6rem 4.8rem auto .6rem}#chase-hud .stat-row{font-size:.55rem}#chase-hud .thief-bar-wrap{height:10px}#combat-hud{width:92vw;padding:.8rem;bottom:5.5rem}#combat-hud .prompt-text{font-size:.62rem}#interaction-prompt{white-space:nowrap;padding:.4rem .75rem;font-size:.62rem;bottom:6rem}#dialogue-box{width:94vw;box-shadow:4px 4px 0 var(--pixel-shadow);padding:.8rem 1rem;bottom:5.2rem}#dialogue-box .speaker{margin-bottom:.4rem;font-size:.62rem}#dialogue-box .text-content{min-height:2.2rem;font-size:.78rem;line-height:1.45}#dialogue-box .next-indicator{font-size:.52rem;bottom:.45rem;right:.75rem}#virtual-dpad{width:110px;height:110px;bottom:.8rem;left:.8rem}.dpad-btn{width:36px;height:36px;font-size:.75rem}#virtual-actions{bottom:1rem;right:1rem}.virtual-btn{width:56px;height:56px;font-size:.88rem}.panel{gap:.8rem;width:92vw;max-width:92vw;padding:1.4rem 1rem}.panel h1,.panel h2{font-size:1.15rem}.panel p{font-size:.72rem;line-height:1.45}.panel button{padding:.65rem 1rem;font-size:.65rem}.setting-row{font-size:.55rem}.setting-slider{width:80px}.stats-card{padding:.5rem .7rem;font-size:.62rem}}@media (height<=520px) and (orientation:landscape){#settings-btn{padding:.35rem .5rem;font-size:.5rem;top:.4rem;right:.4rem}#objective-hud{max-width:18rem;padding:.4rem .6rem;font-size:.5rem;inset:.4rem auto auto .4rem}#shadow-pocket-hud{min-width:auto;max-width:13rem;padding:.4rem .6rem;inset:.4rem 4.8rem auto auto}#chase-hud{padding:.4rem .6rem;top:.4rem;left:.4rem;right:4.8rem}#dialogue-box{width:72vw;padding:.6rem .85rem;bottom:.6rem}#virtual-dpad{width:100px;height:100px;bottom:.4rem;left:.4rem}.dpad-btn{width:32px;height:32px;font-size:.7rem}#virtual-actions{bottom:.6rem;right:.6rem}.virtual-btn{width:48px;height:48px;font-size:.78rem}.panel{gap:.5rem;max-height:92vh;padding:1rem 1.2rem;overflow-y:auto}}
