:root{--frost:#e8f1f8;--frost-dim:#e8f1f88c;--panel:#121e2c8c;--stamina:#f0d78a;--stamina-locked:#d9735f;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}*{box-sizing:border-box}html,body{height:100%;color:var(--frost);background:#a7bccf;margin:0;overflow:hidden}canvas{display:block}.hud{pointer-events:none;-webkit-user-select:none;user-select:none;position:fixed;inset:0}.crosshair{background:var(--frost);border-radius:50%;width:4px;height:4px;margin:-2px 0 0 -2px;position:absolute;top:50%;left:50%;box-shadow:0 0 0 1px #00000059}.hud-corner{position:absolute}.hud-top-left{color:var(--frost-dim);text-shadow:0 1px 2px #0006;font-size:12px;top:12px;left:16px}.hud-bottom-left{flex-direction:column;gap:8px;display:flex;bottom:20px;left:20px}.status-label{letter-spacing:.12em;text-transform:uppercase;text-shadow:0 1px 2px #00000080;min-height:16px;font-size:12px}.stat{align-items:center;gap:10px;display:flex}.stat-name{letter-spacing:.08em;text-transform:uppercase;text-shadow:0 1px 2px #00000080;width:64px;font-size:11px}.stat-bar{background:var(--panel);border-radius:4px;width:180px;height:8px;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff26}.stat-fill{width:100%;height:100%;transition:width 80ms linear}.stamina-fill{background:var(--stamina)}.stamina-fill.is-locked{background:var(--stamina-locked)}.overlay{-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#14223273;place-items:center;display:grid;position:fixed;inset:0}.overlay.is-hidden{display:none}.overlay-panel{background:var(--panel);text-align:center;border-radius:12px;width:min(360px,100vw - 32px);padding:28px 28px 22px;box-shadow:0 10px 40px #0000004d}.overlay-panel h1{letter-spacing:.14em;text-transform:uppercase;margin:0 0 4px;padding-left:.14em;font-size:30px;font-weight:700}.overlay-seed{color:var(--frost-dim);margin:0 0 20px;font-size:12px}.overlay-button{background:var(--frost);color:#1b2a3a;cursor:pointer;border:0;border-radius:8px;width:100%;padding:12px;font-size:15px;font-weight:600}.overlay-button:hover{background:#fff}.overlay-link{color:var(--frost-dim);cursor:pointer;background:0 0;border:0;margin-top:10px;font-size:12px;text-decoration:underline}.controls{text-align:left;grid-template-columns:auto 1fr;gap:4px 14px;margin:22px 0 0;font-size:12px;display:grid}.controls dt{text-align:right;font-weight:600}.controls dd{color:var(--frost-dim);margin:0}.crosshair.is-hidden{display:none}.interaction-prompt{text-shadow:0 1px 3px #0009;white-space:nowrap;font-size:14px;font-weight:600;position:absolute;top:calc(50% + 36px);left:50%;transform:translate(-50%)}.notifications{flex-direction:column;align-items:center;gap:6px;display:flex;position:absolute;top:18%;left:50%;transform:translate(-50%)}.notification{background:var(--panel);border-radius:6px;padding:6px 14px;font-size:13px;animation:.18s ease-out notification-in}@keyframes notification-in{0%{opacity:0;transform:translateY(-6px)}}.inventory{color:var(--frost-dim);text-shadow:0 1px 2px #00000080;font-size:12px}.hud-bottom-right{text-align:right;text-shadow:0 1px 3px #00000080;bottom:20px;right:24px}.weapon-name{letter-spacing:.1em;text-transform:uppercase;color:var(--frost-dim);font-size:12px}.ammo-count{font-variant-numeric:tabular-nums;font-size:34px;font-weight:700}.ammo-count .is-empty{color:var(--stamina-locked)}.ammo-reserve{color:var(--frost-dim);font-size:18px;font-weight:500}.xp-fill{background:#9fd3f0;width:0}.crosshair.is-hit{animation:.22s ease-out hit-marker}@keyframes hit-marker{0%{background:#ff5a4a;box-shadow:0 0 0 5px #ff5a4a8c}}.level-up{background:var(--panel);text-align:center;opacity:0;pointer-events:none;border-radius:10px;padding:16px 28px;position:absolute;top:30%;left:50%;transform:translate(-50%)}.level-up.is-visible{animation:4.5s ease-out forwards level-up-show}@keyframes level-up-show{0%{opacity:0;transform:translate(-50%,10px)}8%,80%{opacity:1;transform:translate(-50%)}to{opacity:0}}.level-up-title{letter-spacing:.14em;text-transform:uppercase;font-size:26px;font-weight:700}.level-up-details{color:var(--frost-dim);margin-top:4px;font-size:13px}.health-fill{background:#d9665a}.warmth-fill{background:#7fc7e8}.hunger-fill{background:#d9a55a}.stat-fill.is-low{animation:.9s ease-in-out infinite stat-pulse}@keyframes stat-pulse{50%{opacity:.35}}.frost-overlay,.damage-vignette{pointer-events:none;position:fixed;inset:0}.frost-overlay{opacity:0;background:radial-gradient(#0000 45%,#d6ecfa8c 78%,#f0fafff2 100%);transition:opacity .4s linear}.damage-vignette{opacity:0;background:radial-gradient(#0000 50%,#aa141499 100%)}.damage-vignette.is-flashing{animation:.5s ease-out damage-flash}@keyframes damage-flash{0%{opacity:1}}.death-screen{text-align:center;pointer-events:none;background:#0c121cb8;place-content:center;display:none;position:fixed;inset:0}.death-screen.is-visible{animation:.8s ease-out death-fade;display:grid}@keyframes death-fade{0%{opacity:0}}.death-title{letter-spacing:.08em;font-size:32px;font-weight:700}.death-details{color:var(--frost-dim);margin-top:8px;font-size:14px}.scope-overlay{pointer-events:none;place-items:center;display:none;position:fixed;inset:0;overflow:hidden}.scope-overlay.is-visible{display:grid}.scope-lens{border-radius:50%;width:86vmin;height:86vmin;position:relative;box-shadow:0 0 0 100vmax #000,inset 0 0 6vmin 2vmin #000000d9}.scope-line,.scope-post{background:#0a0a0a;position:absolute}.scope-line-horizontal{height:1px;top:50%;left:0;right:0}.scope-line-vertical{width:1px;top:0;bottom:0;left:50%}.scope-post-left,.scope-post-right{width:30%;height:6px;top:calc(50% - 3px)}.scope-post-left{left:0}.scope-post-right{right:0}.scope-post-bottom{width:6px;height:30%;bottom:0;left:calc(50% - 3px)}.minimap{pointer-events:none;border-radius:50%;width:180px;height:180px;position:fixed;top:16px;right:16px;box-shadow:0 0 0 3px #e8f1f8bf,0 4px 18px #00000059}.minimap canvas{border-radius:50%;display:block}.full-map{pointer-events:none;background:#0c141e8c;place-content:center;justify-items:center;gap:8px;display:none;position:fixed;inset:0}.full-map.is-visible{display:grid}.full-map-canvas{border-radius:8px;box-shadow:0 10px 40px #00000073;width:min(80vmin,640px)!important;height:min(80vmin,640px)!important}.full-map-hint{color:var(--frost-dim);font-size:12px}.overlay{z-index:10}.crosshair.is-on-target{background:#ff3b30;width:6px;height:6px;margin:-3px 0 0 -3px}.scope-overlay.is-on-target .scope-line{background:#e0241a}.clock{text-align:center;font-variant-numeric:tabular-nums;letter-spacing:.04em;text-shadow:0 1px 2px #00000080;width:180px;font-size:12px;position:fixed;top:204px;right:16px}.clock.is-night{color:#b9c8e6}.sleep-fade{opacity:0;pointer-events:none;background:#05080d;position:fixed;inset:0}.sleep-fade.is-sleeping{animation:2.6s ease-in-out sleep-fade}@keyframes sleep-fade{0%{opacity:1}45%{opacity:1}to{opacity:0}}.overlay-panel.is-hidden{display:none}.overlay-panel h2{letter-spacing:.1em;text-transform:uppercase;margin:0 0 18px;font-size:18px;font-weight:700}.overlay-secondary{border:1px solid var(--frost-dim);width:100%;color:var(--frost);cursor:pointer;background:0 0;border-radius:8px;margin-top:8px;padding:10px;font-size:14px}.overlay-secondary:hover{background:#e8f1f81f}.volume-row{text-align:left;grid-template-columns:76px 1fr 40px;align-items:center;gap:10px;margin-bottom:14px;font-size:13px;display:grid}.volume-slider{width:100%;accent-color:var(--frost);cursor:pointer}.volume-value{color:var(--frost-dim);font-variant-numeric:tabular-nums;text-align:right}#sound-back-button{margin-top:8px}.inventory-screen{pointer-events:none;background:#0c141e8c;place-content:center;justify-items:center;gap:8px;display:none;position:fixed;inset:0}.inventory-screen.is-visible{display:grid}.inventory-panel{background:#121e2cd9;border-radius:12px;width:min(420px,100vw - 32px);padding:22px 24px 18px;box-shadow:0 10px 40px #00000073}.inventory-panel h2{letter-spacing:.1em;text-align:center;text-transform:uppercase;margin:0 0 14px;font-size:18px;font-weight:700}.inventory-panel section+section{margin-top:14px}.inventory-panel h3{letter-spacing:.12em;color:var(--frost-dim);text-transform:uppercase;margin:0 0 6px;font-size:11px;font-weight:600}.inventory-row{border-radius:6px;grid-template-columns:22px 1fr auto;align-items:center;gap:10px;padding:5px 8px;font-size:13px;display:grid}.inventory-row:has(.inventory-bar){grid-template-columns:1fr 110px 56px}.inventory-row.is-equipped{background:#e8f1f81f}.inventory-row.is-missing{color:var(--frost-dim)}.inventory-key{border:1px solid var(--frost-dim);border-radius:4px;place-items:center;width:20px;height:20px;font-size:11px;font-weight:600;display:grid}.inventory-name em{color:var(--frost-dim);margin-left:6px;font-size:11px;font-style:normal}.inventory-detail{font-variant-numeric:tabular-nums;text-align:right}.inventory-bar{background:#e8f1f826;border-radius:3px;height:6px;overflow:hidden}.inventory-bar-fill{background:var(--frost);height:100%}.inventory-footer{color:var(--frost-dim);text-align:center;margin-top:16px;font-size:12px}
