:root{--panel: rgba(18, 24, 18, .62);--panel-border: rgba(255, 255, 255, .12);--text: #f3efe4;--muted: #c9c2ad;--accent: #f0b04a;--good: #8fd37a;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:var(--text)}*{box-sizing:border-box}html,body,#root{margin:0;width:100%;height:100%;overflow:hidden;background:#1c2a1f;overscroll-behavior:none;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}canvas{display:block;touch-action:none}.loading{display:grid;place-items:center;height:100%;color:var(--muted);font-size:18px;letter-spacing:.04em}.hud{position:fixed;inset:0;pointer-events:none;padding:max(12px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left))}.hud button{pointer-events:auto;font:inherit;cursor:pointer}.panel{background:var(--panel);border:1px solid var(--panel-border);border-radius:12px;backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);padding:10px 12px}.top-left{position:absolute;top:max(12px,env(safe-area-inset-top));left:max(12px,env(safe-area-inset-left));max-width:min(320px,55vw)}.top-right{position:absolute;top:max(12px,env(safe-area-inset-top));right:max(12px,env(safe-area-inset-right));display:flex;flex-direction:column;align-items:flex-end;gap:8px}.panel-title{font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--accent);margin-bottom:6px}.objectives ul{list-style:none;margin:0;padding:0;display:grid;gap:4px;font-size:14px}.objectives li{display:flex;align-items:center;gap:6px}.objectives li.done{color:var(--good);text-decoration:line-through;text-decoration-color:#8fd37a80}.objectives .check{width:14px;text-align:center}.objectives .progress{margin-left:auto;color:var(--muted);font-variant-numeric:tabular-nums;padding-left:8px}.done-text{margin:0;font-size:14px;color:var(--good)}.inventory{display:flex;gap:14px;font-size:17px;font-weight:600;font-variant-numeric:tabular-nums}.inventory .item{display:flex;align-items:center;gap:5px}.inventory .item.dim{opacity:.45}.clock{display:flex;gap:8px;font-size:13px;padding:6px 10px;font-variant-numeric:tabular-nums}.menu-row{display:flex;align-items:center;gap:8px}.small-btn{background:var(--panel);color:var(--muted);border:1px solid var(--panel-border);border-radius:8px;padding:5px 10px;font-size:12px!important}.save-flash{font-size:12px;color:var(--good);opacity:0;transition:opacity .3s}.save-flash.show{opacity:1}.bottom-center{position:absolute;left:50%;bottom:max(28px,env(safe-area-inset-bottom));transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:10px;width:min(420px,calc(100vw - 32px))}.prompt{display:flex;align-items:center;gap:10px;background:var(--panel);border:1px solid var(--panel-border);border-radius:999px;padding:8px 16px;font-size:15px;white-space:nowrap}.prompt-label{font-weight:600}.prompt-hint{color:var(--muted);font-size:13px}kbd{display:inline-grid;place-items:center;min-width:24px;height:24px;padding:0 6px;border-radius:6px;background:#f3efe4;color:#1c2a1f;font-weight:700;font-size:13px;font-family:inherit}.craft-btn{display:flex;align-items:center;gap:10px;background:var(--accent);color:#2a1c08;border:none;border-radius:999px;padding:10px 18px;font-weight:700!important;box-shadow:0 4px 16px #0000004d;animation:pulse 1.6s ease-in-out infinite}@keyframes pulse{50%{transform:scale(1.04)}}.toasts{position:absolute;top:34%;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:6px;width:calc(100vw - 32px)}.toast{background:#0000008c;padding:6px 14px;border-radius:999px;font-size:15px;font-weight:600;text-align:center;animation:rise 1.9s ease-out forwards}@keyframes rise{0%{opacity:0;transform:translateY(8px)}12%{opacity:1;transform:translateY(0)}80%{opacity:1}to{opacity:0;transform:translateY(-14px)}}.help{position:absolute;left:50%;bottom:6px;transform:translate(-50%);font-size:12px;color:#f3efe4b3;white-space:nowrap;text-shadow:0 1px 2px rgba(0,0,0,.6)}.joystick{position:absolute;left:max(24px,env(safe-area-inset-left));bottom:max(28px,env(safe-area-inset-bottom));width:120px;height:120px;border-radius:50%;background:#ffffff1f;border:2px solid rgba(255,255,255,.25);display:grid;place-items:center;pointer-events:auto;touch-action:none}.joystick .knob{width:52px;height:52px;border-radius:50%;background:#f3efe4bf;pointer-events:none}.action-btn{position:absolute;right:max(24px,env(safe-area-inset-right));bottom:max(40px,env(safe-area-inset-bottom));width:84px;height:84px;border-radius:50%;border:2px solid rgba(255,255,255,.3);background:#f0b04ad9;font-size:34px;touch-action:none}.intro{position:fixed;inset:0;z-index:6;display:grid;place-items:center;background:radial-gradient(ellipse at center,#0a100a59,#0a100acc);padding:16px}.intro-card{max-width:440px;width:100%;background:#161e16e0;border:1px solid var(--panel-border);border-radius:18px;padding:28px 24px;text-align:center;line-height:1.5}.intro-card h1{margin:0 0 4px;font-size:32px;letter-spacing:.02em}.tagline{color:var(--accent);margin:0 0 16px;font-weight:600}.start-btn{margin-top:8px;background:var(--accent);color:#2a1c08;border:none;border-radius:999px;padding:12px 36px;font:inherit;font-weight:700;font-size:17px;cursor:pointer}@media (max-width: 600px){.objectives ul{font-size:12px}.panel{padding:8px 10px}.inventory{font-size:15px;gap:10px}.toasts{top:28%}.bottom-center{bottom:170px}}.loading.overlay{position:fixed;inset:0;background:#1c2a1f;z-index:5}.small-btn.update{background:var(--accent);color:#2a1c08;font-weight:700}.small-btn.danger{color:#ffb0a0}.settings-backdrop{position:fixed;inset:0;display:grid;place-items:center;background:#00000059;pointer-events:auto;padding:16px;z-index:4}.settings{width:min(360px,100%);display:grid;gap:12px;background:#161e16f0;font-size:14px}.settings .row{display:flex;align-items:center;justify-content:space-between;gap:12px}.settings select,.settings input[type=range]{font:inherit;max-width:55%}.settings .note{color:var(--muted);font-size:12px;margin-top:-6px}.settings-buttons{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.jump-btn{position:absolute;right:calc(max(24px,env(safe-area-inset-right)) + 96px);bottom:max(28px,env(safe-area-inset-bottom));width:62px;height:62px;border-radius:50%;border:2px solid rgba(255,255,255,.3);background:#ffffff2e;color:#fff;font-size:26px;touch-action:none}
