#scene{image-rendering:pixelated}.vignette{box-shadow:inset 0 0 130px #0b24312a;background:linear-gradient(180deg,#112b3a70,transparent 22%,transparent 80%,#10263380)}.identity .mark{background:#955646;border-color:#f5cc9b55}.objective{top:122px;width:240px;padding:14px 17px;backdrop-filter:none;background:#152e35cc}.objective-distance{display:none}.objective p{font-size:10px}.map-panel{width:140px;top:115px;backdrop-filter:none}.intro{bottom:16%}.data-credits{font-size:8px;max-width:90vw;flex-wrap:wrap}.provisional{color:#dfc59b}.intro-note{color:#e1e2ceba}.bottom-bar{z-index:2}.data-credits{z-index:2}.touch-controls{z-index:3}#toast{z-index:4}.playing #reticle{display:none}@media(max-width:700px){.map-panel{display:none}.objective{top:102px;width:210px;padding:11px 13px}.objective p{font-size:9px}.objective h2{font-size:13px;margin:8px 0 4px}.intro h2{font-size:46px}.data-credits{bottom:60px;font-size:6px;gap:4px}.data-credits span:first-child{display:none}.touch-controls>.touch-look-hint{font-size:9px;max-width:110px}.touch-stick{width:116px;height:116px}.stick-ring{width:80px;height:80px}}@media(max-height:500px){.objective{top:85px;width:195px}.objective p{display:none}.map-panel{display:none}.intro{bottom:18%;max-width:390px}.intro h2{font-size:37px;margin-bottom:12px}.intro p{font-size:11px;margin-bottom:12px}.intro-kicker{margin-bottom:10px}.intro-note{display:none}.touch-controls{bottom:76px}.touch-stick{width:92px;height:92px}.stick-ring{width:66px;height:66px}}
/* 0.5.0 — approved B palette, compact overlay so the street stays visible. */
.vignette{box-shadow:inset 0 0 100px #070d2538;background:linear-gradient(180deg,#080f2560,transparent 20%,transparent 80%,#080f2550)}.identity .mark{background:#56374d;border-color:#e38bb755}.objective{background:#111b30d9;border-color:#a692c42b}.identity h1 span,.intro-kicker,.provisional{color:#dfa8c4}.primary-button{background:#e1adbc;color:#231f32}.location-dot,.live-dot{background:#d78bb7}.intro h2{font-size:clamp(42px,5vw,72px)}.playing .objective p{max-width:215px}.data-credits a{color:#b8c6e6}@media(max-width:700px){.playing .objective{width:190px}.playing .objective p{display:none}.location{font-size:9px}.intro h2{font-size:46px}.intro{max-width:310px}.intro p{font-size:12px}}

/* 0.6.0 — compact mission HUD and separate touch actions. */
.player-stats{position:absolute;left:38px;bottom:100px;width:230px;padding:12px 14px;background:#10182bdc;border:1px solid #bb92ae38;border-radius:9px;opacity:0;pointer-events:none}.playing .player-stats{opacity:1}.stats-heading,.gear-row,.enemy-panel>div{display:flex;justify-content:space-between;gap:12px;font-size:10px}.stats-heading{letter-spacing:1px}.gear-row{color:#ddc3b0;margin-top:7px;font-size:9px}#parcelLabel{font-size:9px;color:#a9b7d1;display:block;margin-top:6px}progress{appearance:none;width:100%;height:5px;border:0;display:block;margin-top:8px;background:#ffffff20;border-radius:3px;overflow:hidden}progress::-webkit-progress-bar{background:#ffffff20}progress::-webkit-progress-value{background:#c0cebe}progress::-moz-progress-bar{background:#c0cebe}.enemy-panel{position:absolute;left:50%;top:95px;transform:translateX(-50%);width:min(300px,44vw);background:#11192be8;border:1px solid #e69b5d55;border-radius:8px;padding:12px 14px;pointer-events:none}.enemy-panel progress::-webkit-progress-value{background:#e39564}.enemy-panel progress::-moz-progress-bar{background:#e39564}#enemyCue{font-size:10px;color:#f4bb8d}#enemyHealthText{font-size:10px;color:#d5c0af;white-space:nowrap}.actions{position:absolute;right:30px;bottom:100px;z-index:4;display:flex;align-items:end;flex-direction:column;gap:12px;pointer-events:none}.fight-buttons{display:flex;gap:14px;align-items:end}.fight-buttons button{width:76px;height:76px;border-radius:50%;border:1px solid #e1abbd77;background:#201c32db;color:#f0d3db;font-size:29px;pointer-events:auto;touch-action:none;user-select:none}.fight-buttons button small{display:block;font-size:7px;letter-spacing:.4px;margin-top:2px}.fight-buttons #attackButton{width:88px;height:88px;background:#6b3b51df;border-color:#ebb5c8}.fight-buttons button:disabled{opacity:.42;cursor:default}.interact-action{pointer-events:auto;background:#dfadbd;color:#241e30;padding:13px 17px;border-radius:6px;font-size:11px;min-height:44px;max-width:220px;box-shadow:0 3px 18px #0005}.quest-backdrop{z-index:8;background:#090e20d9;backdrop-filter:blur(5px)}.quest-card{width:min(440px,100%);padding:30px;border-radius:12px;background:linear-gradient(140deg,#252238,#141e31);border:1px solid #e9bdcb55;box-shadow:0 25px 80px #0008;max-height:90dvh;overflow:auto}.quest-card h2{font:32px Georgia,serif;margin:16px 0 22px}.quest-card p{font-size:14px;line-height:1.75;color:#e6dee4;white-space:pre-line}.quest-card .primary-button{width:100%;margin-top:26px;justify-content:center}.secondary-button{padding:13px;margin-top:9px;border:1px solid #ddd2e244;background:transparent;border-radius:5px;width:100%;font-size:12px}#damageNumber{position:absolute;top:43%;left:52%;color:#ffc59b;font-size:27px;font-weight:bold;pointer-events:none;opacity:0;z-index:3;text-shadow:0 2px 7px #000}#damageNumber.pop{animation:damage .55s ease-out}.hurt .vignette{box-shadow:inset 0 0 130px #d5405666}@keyframes damage{0%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(-45px)}}.objective{max-width:220px}.data-credits{display:none}#toast{top:auto;bottom:210px;max-width:430px;font-size:11px}.playing .touch-controls{pointer-events:none}.map-panel{width:125px}
@media(max-width:700px),(any-pointer:coarse){.player-stats{left:20px;bottom:245px;width:185px;padding:9px 11px}.actions{right:20px;bottom:92px}.fight-buttons{gap:10px}.fight-buttons button{width:66px;height:66px;font-size:25px}.fight-buttons #attackButton{width:77px;height:77px}.fight-buttons button small{font-size:6px}.enemy-panel{top:101px;left:auto;right:18px;transform:none;width:158px;padding:9px}.enemy-panel>div{flex-wrap:wrap;gap:4px}.quest-card{padding:23px}.quest-card h2{font-size:27px}.quest-card p{font-size:13px}.playing .objective{width:180px}#toast{bottom:330px;width:calc(100% - 40px);max-width:360px;padding:10px 14px;font-size:10px}.touch-controls{right:auto}.touch-stick{width:110px;height:110px}.gear-row{font-size:8px}}
@media(max-height:520px){.topbar{top:10px}.location{display:none}.objective,.playing .objective{top:70px;width:180px;padding:8px 11px}.objective h2{margin:4px 0;font-size:12px}.objective p{display:none}.player-stats{bottom:185px;left:22px;width:175px;padding:7px 9px}.player-stats #parcelLabel{display:none}.actions{bottom:63px;right:22px}.fight-buttons button{width:60px;height:60px}.fight-buttons #attackButton{width:68px;height:68px}.touch-controls{bottom:67px}.enemy-panel{top:65px;right:22px;left:auto;transform:none;width:180px;padding:8px}.map-panel{display:none}#toast{bottom:155px;font-size:10px;max-width:290px}.quest-card{max-height:94dvh;padding:20px}.quest-card h2{font-size:23px;margin:9px 0}.quest-card p{font-size:12px;line-height:1.5;margin:8px 0}.quest-card .primary-button{margin-top:15px}.intro{bottom:22%}.intro-note{display:none}}
@media(prefers-reduced-motion:reduce){#damageNumber.pop{animation:none;opacity:0}}
