:root{--accent:#f2a6ad;--accent-deep:#e8848d;--ink:#fbeef0;--panel:#281a1ed1;--panel-soft:#281a1e80}*{box-sizing:border-box;margin:0;padding:0}body{background:#0c0709;font-family:-apple-system,PingFang SC,sans-serif;overflow:hidden}#game-container{position:fixed;inset:0}#start-screen{color:var(--ink);cursor:pointer;z-index:10;background:radial-gradient(circle at 50% 36%,#4a2f37,#1a0f13);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}#start-screen.hidden{display:none}.start-inner{text-align:center;padding:0 24px}.start-inner h1{letter-spacing:2px;color:#fff;text-shadow:0 2px 24px #f2a6ad8c;margin-bottom:18px;font-size:42px}.start-inner p{opacity:.85;max-width:30em;margin:8px 0;line-height:1.7}.start-inner .hint{opacity:.5;letter-spacing:.5px;margin-top:24px;font-size:13px}#hud{pointer-events:none;position:fixed;inset:0}#hud.hidden{display:none}#objective{z-index:8;color:var(--ink);background:var(--panel-soft);border-left:3px solid var(--accent);letter-spacing:.5px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-radius:12px;max-width:42vw;padding:8px 15px;font-size:14px;animation:.45s objective-in;position:fixed;top:20px;left:22px}#objective.hidden{display:none}@keyframes objective-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}#interact-prompt{color:#fff;background:var(--panel);z-index:8;border:1px solid #f2a6ad59;border-radius:999px;padding:9px 18px;font-size:15px;position:fixed;bottom:38%;left:50%;transform:translate(-50%);box-shadow:0 4px 18px #0000004d}#interact-prompt.hidden{display:none}.dialogue-bar{background:var(--panel);border-left:4px solid var(--accent);width:min(820px,88%);color:var(--ink);z-index:9;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:14px;padding:15px 22px;font-size:16px;line-height:1.6;position:fixed;bottom:6%;left:50%;transform:translate(-50%);box-shadow:0 8px 30px #00000059}.dialogue-bar.hidden{display:none}#dialogue-speaker{color:var(--accent);margin-right:12px;font-weight:600}#fade-overlay{opacity:0;pointer-events:none;z-index:7;background:#000;transition:opacity 1s;position:fixed;inset:0}#fade-overlay.active{opacity:1}#game-container canvas{filter:contrast(1.04)saturate(1.02)brightness(.96)}#vignette{pointer-events:none;z-index:6;background:radial-gradient(#0000 48%,#14080c80 100%);position:fixed;inset:0}
