@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-cyrillic-ext-wght-normal-D4X5GqEv.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-cyrillic-wght-normal-CY6AOgYE.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-vietnamese-wght-normal-U01xdrZh.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-latin-ext-wght-normal-CXYtwYOx.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito Variable;font-style:normal;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-latin-wght-normal-BzFMHfZw.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Nunito Variable;font-style:italic;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-cyrillic-ext-wght-italic-C7FdRbwB.woff2)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Nunito Variable;font-style:italic;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-cyrillic-wght-italic-AGUkry7S.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Nunito Variable;font-style:italic;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-vietnamese-wght-italic-5K55R7rt.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Nunito Variable;font-style:italic;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-latin-ext-wght-italic-CmZo11nB.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Nunito Variable;font-style:italic;font-display:swap;font-weight:200 1000;src:url(/assets/nunito-latin-wght-italic-ZB3Aladm.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--surface-1:#0c110d94;--surface-2:#101611e6;--panel-bg:#101611f7;--surface-3:#ffffff0f;--surface-3-hover:#ffffff1a;--field:#0000004d;--scrim:#080c0859;--blur:blur(8px);--border:#ffffff1f;--border-strong:#ffffff3d;--text:#eef0e6;--text-soft:#d6dacb;--text-muted:#a8b29c;--text-shadow:0 1px 3px #000000d9;--accent:#c9d77a;--accent-hover:#d6e38a;--accent-press:#b6c566;--accent-soft:#c9d77a29;--accent-soft-hover:#c9d77a3d;--accent-border:#c9d77a80;--on-accent:#1c2416;--danger:#c4492f;--danger-text:#f2a395;--warn:#e0864a;--ok:#8fd16a;--gold:#ffd27a;--radius-xs:4px;--radius-s:8px;--radius-m:12px;--radius-l:16px;--radius-pill:999px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--font:"Nunito Variable", "Nunito", system-ui, -apple-system, "Segoe UI", sans-serif;--mono:ui-monospace, "SF Mono", Menlo, monospace;--fs-2xs:10px;--fs-xs:12px;--fs-s:14px;--fs-m:16px;--fs-l:20px;--fs-xl:28px;--fs-display:56px;--shadow-1:0 2px 10px #00000047;--shadow-2:0 14px 44px #00000080;--focus:0 0 0 2px #101611e6, 0 0 0 4px var(--accent);--z-hud:2;--z-hud-top:3;--z-toast:4;--z-fx:20;--z-panel:30;--z-death:40;--z-banner:50;--tap:44px;--bg:var(--surface-2);--fg:var(--text);--muted:var(--text-muted);font-family:var(--font);font-weight:500}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{height:100%;color:var(--text);overscroll-behavior:none;background:#1e2a1f;margin:0;overflow:hidden}body{-webkit-user-select:none;user-select:none;touch-action:none}canvas#game{width:100%;height:100%;transition:filter 1s;display:block;position:fixed;inset:0}.hidden{display:none!important}button{font:inherit;color:inherit;cursor:pointer}svg.i{flex-shrink:0;width:20px;height:20px}button svg{pointer-events:none}body:not(.touch) .touch-only,body.touch .desktop-only{display:none!important}:focus{outline:none}:focus-visible{box-shadow:var(--focus);outline:none}.btn{justify-content:center;align-items:center;gap:var(--space-2);min-height:40px;padding:0 var(--space-4);border-radius:var(--radius-m);border:1px solid var(--border-strong);background:var(--surface-3);color:var(--text);font-size:var(--fs-s);white-space:nowrap;font-weight:700;line-height:1.15;text-decoration:none;transition:background .15s,border-color .15s,color .15s,transform .12s,box-shadow .15s;display:inline-flex}.btn:hover{background:var(--surface-3-hover);border-color:#ffffff57}.btn:active{transform:translateY(1px)scale(.98)}.btn:disabled{opacity:.45;pointer-events:none}.btn svg.i{width:18px;height:18px}.btn--primary{background:linear-gradient(180deg, var(--accent-hover), var(--accent));color:var(--on-accent);border-color:#0000;font-weight:800;box-shadow:0 4px 14px #c9d77a33,inset 0 1px #ffffff59}.btn--primary:hover{background:linear-gradient(180deg, #e0ec9a, var(--accent-hover));border-color:#0000}.btn--primary:active{background:var(--accent-press)}.btn--ghost{color:var(--text-muted);background:0 0;border-color:#0000}.btn--ghost:hover{background:var(--surface-3);color:var(--text);border-color:#0000}.btn--danger{color:var(--danger-text);background:0 0;border-color:#c4492fa6}.btn--danger:hover{border-color:var(--danger);background:#c4492f24}.btn--danger.btn--fill{background:var(--danger);border-color:var(--danger);color:#fff}.btn--link{min-height:0;padding:var(--space-1) 0;color:var(--text-muted);text-underline-offset:3px;background:0 0;border:none;font-weight:600;text-decoration:underline}.btn--link:hover{color:var(--text);background:0 0}.btn--hud{background:var(--surface-2);border-color:var(--border);box-shadow:var(--shadow-1);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur)}.btn--hud:hover{background:var(--surface-2);border-color:var(--accent-border)}.btn--float{background:var(--surface-2);border-color:var(--border);box-shadow:var(--shadow-1)}.btn--sm{min-height:32px;padding:0 var(--space-3);border-radius:var(--radius-s)}.btn--lg{min-height:52px;padding:0 var(--space-6);border-radius:var(--radius-l);font-size:var(--fs-l)}.btn--icon{width:40px;padding:0}.btn--icon svg.i{width:22px;height:22px}.btn--icon.btn--sm{width:32px}body.touch .btn{min-height:var(--tap)}body.touch .btn--icon{width:var(--tap)}.chip{align-items:center;gap:var(--space-1);min-height:32px;padding:0 var(--space-3);border-radius:var(--radius-pill);background:var(--surface-3);border:1px solid var(--border);color:var(--text);font-size:var(--fs-s);white-space:nowrap;font-weight:600;transition:background .15s,border-color .15s;display:inline-flex}.chip:hover{border-color:var(--accent-border)}.chip.on,.chip[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent);font-weight:800}body.touch .chip{min-height:40px}kbd,.kbd,.hint b,.mp-keys b{text-align:center;min-width:20px;font:800 11px/1 var(--font);color:var(--text-muted);letter-spacing:.02em;border:1px solid var(--border);border-radius:var(--radius-xs);vertical-align:1px;background:#00000047;border-bottom-width:2px;padding:3px 6px;display:inline-block}.hint b,.mp-keys b{color:var(--text);margin:0 1px}.banner{width:max-content;z-index:var(--z-banner);justify-content:center;align-items:center;gap:var(--space-2) var(--space-3);max-width:calc(100vw - 24px);padding:var(--space-2) var(--space-2) var(--space-2) var(--space-4);background:var(--surface-2);border:1px solid var(--border-strong);border-radius:var(--radius-l);box-shadow:var(--shadow-2);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);font-size:var(--fs-s);pointer-events:auto;flex-wrap:wrap;margin:0 auto;display:flex;position:fixed;left:0;right:0}.banner>span:first-child{flex:220px;min-width:0}.banner--top{top:calc(108px + env(safe-area-inset-top))}.banner--bottom{bottom:calc(18px + env(safe-area-inset-bottom))}.field,.settings select,.tp-form input,#mp-name{background:var(--field);color:var(--text);border:1px solid var(--border-strong);border-radius:var(--radius-s);font:inherit;font-size:var(--fs-m);-webkit-user-select:text;user-select:text;padding:6px 10px}.field:focus,.tp-form input:focus,#mp-name:focus{border-color:var(--accent)}.fx-overlay{pointer-events:none;z-index:var(--z-fx);position:fixed;inset:0}.fx-whisk{opacity:0;background:#fffbe6;transition:opacity .8s}.fx-portal{opacity:0;background:radial-gradient(#963cff59 20%,#460096e6 100%);animation:1.6s ease-in-out infinite fx-portal-wobble}@keyframes fx-portal-wobble{50%{filter:hue-rotate(25deg);transform:scale(1.04)rotate(.6deg)}}@media (prefers-reduced-motion:reduce){.fx-portal{animation:none}}.fx-bite{opacity:1;background:radial-gradient(#0000 40%,#a000008c);transition:opacity 1.2s}.fx-sting{opacity:0;background:radial-gradient(#c8140a00 45%,#c8140a8c 100%)}#hud{pointer-events:none;position:fixed;inset:0}#hud button{pointer-events:auto}#hud-top{z-index:var(--z-hud);top:calc(12px + env(safe-area-inset-top));left:calc(16px + env(safe-area-inset-left));right:calc(12px + env(safe-area-inset-right));align-items:start;gap:var(--space-3);grid-template-columns:1fr auto 1fr;display:grid;position:absolute}.hud-zone{gap:var(--space-2);flex-direction:column;min-width:0;display:flex}#hud-tl{align-items:flex-start}#hud-tc{align-items:center}#hud-tr{align-items:flex-end}#hud-stack{flex-direction:column;align-items:flex-start;gap:6px;display:flex}#hud-stack>.hidden{display:none}body.touch .banner--top,body.touch .banner--bottom{top:auto;bottom:calc(320px + env(safe-area-inset-bottom))}body.touch .banner--top{bottom:calc(440px + env(safe-area-inset-bottom))}:is(body:has(#panel:not(.hidden)) #touch-controls,body:has(.overlay:not(.hidden):not(#start)) #touch-controls){visibility:hidden}#btn-chat{left:calc(16px + env(safe-area-inset-left));bottom:calc(24px + env(safe-area-inset-bottom))}#hunger{background:var(--surface-1);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);padding:var(--space-2) 10px 10px;border-radius:var(--radius-m);width:190px;box-shadow:var(--shadow-1);text-shadow:var(--text-shadow)}#hunger .label{font-size:var(--fs-xs);letter-spacing:.1em;text-transform:uppercase;color:var(--text-muted);margin-bottom:5px;font-weight:800}#hunger .bar{border-radius:var(--radius-xs);background:var(--field);border:1px solid var(--border);height:9px;overflow:hidden}#hunger .fill{background:linear-gradient(90deg,#b7c86a,#dfe7a2);width:100%;height:100%;transition:width .4s,background .4s}#hunger.low .fill{background:linear-gradient(90deg, #c4502e, var(--warn))}#hunger.low .label{color:var(--warn);animation:1.2s infinite pulse}.bag-hunger{align-items:center;gap:var(--space-3);margin:0 0 var(--space-4);padding:var(--space-2) var(--space-3);background:var(--surface-3);border:1px solid var(--border);border-radius:var(--radius-m);z-index:1;display:flex;position:sticky;top:0}.bag-hunger-label{font-weight:800;font-size:var(--fs-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--text-soft)}.bag-hunger .bar{border-radius:var(--radius-xs);background:var(--field);border:1px solid var(--border);flex:1;height:10px;overflow:hidden}.bag-hunger .fill{background:linear-gradient(90deg,#b7c86a,#dfe7a2);height:100%;transition:width .4s,background .4s}.bag-hunger.low .fill{background:linear-gradient(90deg, #c4502e, var(--warn))}.bag-hunger.low .bag-hunger-label{color:var(--warn)}.bag-hunger-val{font-variant-numeric:tabular-nums;text-align:right;min-width:3.2em;font-weight:700}@keyframes pulse{50%{opacity:.4}}#biome{text-align:center;font-size:var(--fs-xl);letter-spacing:.01em;text-shadow:0 2px 8px #000c;opacity:0;white-space:nowrap;font-weight:800;transition:opacity 1.2s}#biome.show{opacity:1}#biome small{text-align:center;font-size:var(--fs-xs);letter-spacing:.15em;text-transform:uppercase;color:var(--accent);font-weight:700;display:block}#counter{font-size:var(--fs-xs);color:var(--text-muted);margin-top:7px}#crosshair{background:#ffffffb3;border-radius:50%;width:5px;height:5px;margin:-2.5px;position:absolute;top:50%;left:50%;box-shadow:0 0 3px #0009}body.touch #crosshair{display:none}#prompt{background:var(--surface-2);padding:9px var(--space-4);border-radius:var(--radius-m);font-size:var(--fs-m);border:1px solid var(--border);white-space:nowrap;box-shadow:var(--shadow-1);position:absolute;bottom:22%;left:50%;transform:translate(-50%)}#prompt kbd{margin-right:var(--space-2)}#toasts{gap:var(--space-2);flex-direction:column;align-items:flex-end;display:flex}.toast{background:var(--surface-2);border:1px solid var(--border);border-left:3px solid var(--accent);padding:var(--space-2) 14px;border-radius:var(--radius-s);font-size:var(--fs-m);max-width:320px;box-shadow:var(--shadow-1);animation:.4s ease-out toastIn}.toast small{color:var(--text-muted);font-style:italic;font-size:var(--fs-xs);display:block}.toast.bad{border-left-color:var(--danger)}.toast.out{opacity:0;transition:all .5s;transform:translate(20px)}@keyframes toastIn{0%{opacity:0;transform:translate(20px)}}#vignette{pointer-events:none;opacity:0;background:radial-gradient(#0000 45%,#3c0a00a6 100%);transition:opacity 1.5s;position:absolute;inset:0}#vignette.on{opacity:1;animation:2.5s infinite pulse}#top-buttons{gap:var(--space-2);display:flex}body.locked:not(.touch) #top-buttons{display:none}#top-buttons .btn--hud{padding:0 var(--space-3) 0 10px;gap:6px}#top-buttons .btn--icon{padding:0}#top-buttons .btn--icon .lbl{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}@media (width<=1200px){#top-buttons .btn--hud{width:var(--tap);padding:0}#top-buttons .btn--hud .lbl{clip-path:inset(50%);width:1px;height:1px;position:absolute;overflow:hidden}}#potion-fx,#jet-fx{align-items:center;gap:var(--space-2);padding:6px var(--space-3) 6px 9px;border-radius:var(--radius-pill);background:var(--surface-1);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);font-size:var(--fs-xs);pointer-events:none;box-shadow:var(--shadow-1);text-shadow:var(--text-shadow);font-weight:700;transition:opacity .4s;display:flex}#potion-fx .pf-dot{background:currentColor;border-radius:50%;width:12px;height:12px;box-shadow:0 0 8px}#potion-fx .pf-bar{background:#ffffff2e;border-radius:2px;width:64px;height:4px;overflow:hidden}#potion-fx .pf-bar i{transform-origin:0;background:currentColor;height:100%;display:block}#jet-fx{color:#ff9a3c}#jet-fx .jf-icon{display:inline-flex}#jet-fx .jf-icon svg.i{width:16px;height:16px}#jet-fx .jf-bar{background:#ffffff2e;border-radius:3px;width:72px;height:5px;overflow:hidden}#jet-fx .jf-bar i{transform-origin:0;background:linear-gradient(90deg,#ff5a1f,#ffc23c);height:100%;display:block}#jet-fx.low .jf-bar i{animation:.5s steps(2,end) infinite jetlow}@keyframes jetlow{50%{opacity:.25}}#jet-fx .jf-hint{opacity:.75;font-weight:600}#joystick{border:2px solid var(--border-strong);opacity:0;background:#00000026;border-radius:50%;width:120px;height:120px;margin:-60px 0 0 -60px;transition:opacity .2s;position:absolute;top:calc(100% - 110px);left:90px}#joystick.active{opacity:1}#joystick-knob{background:#ffffff73;border-radius:50%;width:50px;height:50px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.round-btn{background:var(--surface-2);border:1px solid var(--border-strong);font-weight:700;font-size:var(--fs-s);width:86px;height:86px;box-shadow:var(--shadow-1);border-radius:50%;position:absolute}.round-btn.small{width:64px;height:64px;font-size:var(--fs-xs)}.round-btn.on{background:var(--accent-border)}#btn-collect{right:calc(24px + env(safe-area-inset-right));bottom:calc(120px + env(safe-area-inset-bottom));background:var(--accent-border);font-weight:800}#btn-jump{right:calc(24px + env(safe-area-inset-right));bottom:calc(30px + env(safe-area-inset-bottom))}#btn-sprint{right:calc(100px + env(safe-area-inset-right));bottom:calc(30px + env(safe-area-inset-bottom))}.overlay{z-index:var(--z-panel);background:var(--scrim);padding:var(--space-4);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}#start{background:radial-gradient(#0a100a4d,#050805d9)}.card{background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-l);box-shadow:var(--shadow-2);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);padding:28px 30px}.start-card{text-align:center;max-width:540px}.start-card h1{font-size:var(--fs-display);letter-spacing:-.01em;margin:0;font-weight:800}.start-card .sub{color:var(--text-muted);margin:6px 0 20px}.start-card #btn-start{margin-top:10px}.hint{font-size:var(--fs-s);color:var(--text-muted);line-height:1.9}.settings{justify-content:space-between;align-items:center;gap:var(--space-3);font-size:var(--fs-s);color:var(--text-muted);margin-top:22px;display:flex}.settings select{font-size:var(--fs-s);margin-left:6px;padding:3px 6px}#loading{color:var(--text-muted);margin-top:14px;font-style:italic}.panel-card{background:var(--panel-bg);outline:none;flex-direction:column;width:min(720px,100%);max-height:min(82vh,100%);padding:18px 22px 20px;display:flex}.panel-head{align-items:center;gap:var(--space-3);padding-bottom:var(--space-3);border-bottom:1px solid var(--border);flex:none;display:flex}.panel-head h2{min-width:0;font-weight:800;font-size:var(--fs-xl);text-overflow:ellipsis;white-space:nowrap;flex:1;margin:0;overflow:hidden}.panel-icon{background:var(--accent-soft);width:38px;height:38px;color:var(--accent);border-radius:50%;flex:none;place-items:center;display:grid}.panel-icon svg.i{width:20px;height:20px}.panel-head .close{flex:none;margin-right:-8px}#panel-tabs{margin:var(--space-3) 0 0;flex-wrap:wrap;flex:none;gap:6px;display:flex}#panel-tabs[hidden]{display:none}#panel-body{-webkit-overflow-scrolling:touch;touch-action:pan-y;overscroll-behavior:contain;min-height:0;padding-top:var(--space-3);flex:1;overflow-y:auto}@media (width<=640px){#panel.overlay{align-items:stretch;padding:0}#panel .panel-card{width:100%;height:100%;max-height:none;padding:calc(var(--space-3) + env(safe-area-inset-top)) calc(var(--space-4) + env(safe-area-inset-right)) calc(var(--space-3) + env(safe-area-inset-bottom)) calc(var(--space-4) + env(safe-area-inset-left));border:none;border-radius:0}#panel .panel-head h2{font-size:var(--fs-l)}}body.touch #panel.overlay{align-items:stretch;padding:0}body.touch #panel .panel-card{width:100%;height:100%;max-height:none;padding:calc(var(--space-3) + env(safe-area-inset-top)) calc(var(--space-4) + env(safe-area-inset-right)) calc(var(--space-3) + env(safe-area-inset-bottom)) calc(var(--space-4) + env(safe-area-inset-left));border:none;border-radius:0}@media (width>=900px){body.touch #panel.overlay{padding:var(--space-6);align-items:center}body.touch #panel .panel-card{border-radius:var(--radius-l);border:1px solid var(--border);width:min(760px,100%);height:auto;max-height:min(86vh,100%)}}.help{gap:var(--space-4);flex-direction:column;display:flex}.help h3{margin:0 0 var(--space-2);font-size:var(--fs-xs);letter-spacing:.08em;text-transform:uppercase;color:var(--accent);font-weight:800}.help h3 small{margin-left:var(--space-2);font-size:var(--fs-xs);letter-spacing:0;text-transform:none;color:var(--text-muted);font-weight:600}.help-cmds{gap:6px;display:grid}.help-cmd{gap:var(--space-3);text-align:left;min-height:var(--tap);padding:6px var(--space-3);border-radius:var(--radius-m);background:var(--surface-3);border:1px solid var(--border);color:var(--text);font:inherit;font-size:var(--fs-s);cursor:pointer;grid-template-columns:minmax(130px,max-content) 1fr;align-items:center;display:grid}.help-cmd:hover{border-color:var(--accent-border);background:var(--surface-3-hover)}.help-cmd code{font-family:var(--mono);font-size:var(--fs-xs);color:var(--accent);white-space:nowrap}.help-cmd span{color:var(--text-soft)}.help-keys{gap:var(--space-2) var(--space-4);font-size:var(--fs-s);color:var(--text-soft);flex-wrap:wrap;display:flex}@media (width<=480px){.help-cmd{grid-template-columns:1fr;gap:2px}}.grid{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px;display:grid}.entry{background:var(--surface-3);border:1px solid var(--border);border-radius:var(--radius-m);padding:11px 13px}.entry h3{font-size:var(--fs-m);margin:0;font-weight:700}.entry .latin{color:var(--text-muted);font-style:italic;font-size:var(--fs-xs)}.entry p{font-size:var(--fs-s);color:var(--text-soft);margin:7px 0 0;line-height:1.45}.entry.unknown{opacity:.5}.entry.unknown h3{color:var(--text-muted)}.entry .row{margin-top:var(--space-2);justify-content:space-between;align-items:center;display:flex}.entry .count{font-size:var(--fs-l)}.entry .food{font-size:var(--fs-xs);color:var(--text-muted)}.entry .food.bad{color:var(--danger-text)}.bag-item{gap:var(--space-3);align-items:center;padding:10px 12px 10px 10px;display:flex}.bag-item .thumb-box{border-radius:var(--radius-m);background:radial-gradient(circle at 50% 40%,#ffffff1f,#ffffff05 70%);flex:none;width:60px;height:60px;position:relative}.bag-item .thumb-ph{color:var(--text-muted);place-items:center;transition:opacity .25s;animation:1.4s ease-in-out infinite thumb-wait;display:grid;position:absolute;inset:0}.bag-item .thumb-ph svg.i{width:26px;height:26px}.bag-item .thumb-box:has(.thumb.ready) .thumb-ph{opacity:0;animation:none}@keyframes thumb-wait{0%,to{opacity:.35}50%{opacity:.8}}.bag-item .thumb{object-fit:contain;filter:drop-shadow(0 3px 4px #00000073);opacity:0;width:100%;height:100%;transition:opacity .25s;position:absolute;inset:0}.bag-item .thumb.ready{opacity:1}.bag-item .bag-main{flex:1;min-width:0}.bag-item h3{font-size:var(--fs-m);overflow-wrap:anywhere;-webkit-hyphens:auto;hyphens:auto}.bag-item .row{gap:var(--space-1) var(--space-2);flex-wrap:wrap;margin-top:6px}.bag-item .eat{margin-left:auto}.empty{color:var(--text-muted);text-align:center;padding:20px 0;font-style:italic}@media (width<=600px){.start-card h1{font-size:40px}#biome{font-size:var(--fs-l)}}#starve{pointer-events:none;opacity:0;background:radial-gradient(#0000 25%,#0000008c 70%,#140000eb 100%);transition:opacity .6s;animation:1.1s infinite heartbeat;position:absolute;inset:0}@keyframes heartbeat{0%,to{filter:brightness()}12%{filter:brightness(1.35)}24%{filter:brightness()}36%{filter:brightness(1.2)}}#hunger.starving .label{color:#ff7a5c;animation:.8s infinite pulse}#hunger.starving .bar{border-color:#ff5a3cb3}#death{z-index:var(--z-death);opacity:0;pointer-events:none;background:#000;justify-content:center;align-items:center;transition:opacity 2s ease-in;display:flex;position:fixed;inset:0}#death.show{opacity:1;pointer-events:auto;transition:opacity 1.2s ease-in}#death .death-text{text-align:center;opacity:0;transition:opacity 1.5s 1s}#death.show .death-text{opacity:1}#death h2{font-size:var(--fs-xl);color:#e9dccb;margin:0 0 10px;font-weight:800}#death p{color:#a59a8c;font-size:var(--fs-m);margin:0}#prompt{z-index:var(--z-hud)}#hud-tr{z-index:var(--z-toast)}#coords{white-space:pre;font-family:var(--mono);font-size:var(--fs-xs);color:var(--text);background:var(--surface-1);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);border-radius:var(--radius-s);pointer-events:auto;cursor:copy;text-shadow:var(--text-shadow);box-shadow:var(--shadow-1);padding:6px 10px;line-height:1.5}.tp-form{flex-direction:column;gap:10px;max-width:320px;margin:6px auto;display:flex}.tp-form label{align-items:center;gap:10px;font-weight:800;display:flex}.tp-form input{padding:var(--space-2) 10px;flex:1}.tp-form .tp-hint{font-size:var(--fs-s);color:var(--text-muted);margin:0}#compass{pointer-events:none;background:var(--surface-1);width:min(340px,30vw);height:30px;-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);border-radius:var(--radius-s);box-shadow:0 0 0 1px var(--border);flex:none;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 18% 82%,#0000);mask-image:linear-gradient(90deg,#0000,#000 18% 82%,#0000)}.cmp-strip{will-change:transform;position:absolute;top:0;bottom:0;left:0}.cmp-strip span{position:absolute;transform:translate(-50%)}.cmp-tick{background:#ffffff8c;width:1px;height:6px;top:4px}.cmp-label{font-size:var(--fs-xs);color:#f2f4ead9;text-shadow:var(--text-shadow);letter-spacing:.02em;font-weight:700;top:3px}.cmp-label.major{font-size:var(--fs-s);color:#f2f4ea;font-weight:800;top:1px}.cmp-label.north{color:#ff8a6a}.cmp-needle{border-left:4px solid #0000;border-right:4px solid #0000;border-top:5px solid var(--gold);width:0;height:0;margin-left:-4px;position:absolute;top:0;left:50%}.cmp-deg{text-align:center;font-size:var(--fs-2xs);color:#f2f4eabf;letter-spacing:.05em;font-variant-numeric:tabular-nums;text-shadow:var(--text-shadow);font-weight:700;position:absolute;bottom:1px;left:0;right:0}.cmp-home{background:var(--gold);width:7px;height:7px;box-shadow:0 0 5px var(--gold);border-radius:50%;margin-left:-3.5px;position:absolute;top:19px}body.photo-mode #compass{display:none}#panel.map-mode .panel-card{width:min(1100px,100%);height:min(88vh,100%);max-height:none;padding:14px var(--space-4)}#panel.map-mode #panel-tabs{display:none}#panel.map-mode #panel-body{touch-action:none;flex:1;min-height:0;overflow:hidden}.map-wrap{border-radius:var(--radius-m);background:#d9cfb4;width:100%;height:100%;position:relative;overflow:hidden}.map-canvas{cursor:grab;touch-action:none;width:100%;height:100%;display:block;position:absolute;inset:0}.map-canvas:active{cursor:grabbing}.map-ui{pointer-events:none;font-size:var(--fs-xs);position:absolute;inset:0}.map-zoom{pointer-events:auto;flex-direction:column;gap:6px;display:flex;position:absolute;top:54px;right:10px}.map-scale{font-weight:800;font-size:var(--fs-xs);margin-right:var(--space-2);flex-direction:column;justify-content:flex-end;display:inline-flex}.map-scale .bar{border:2px solid var(--text);border-top:none;height:6px;margin-bottom:2px}.map-info{background:var(--surface-2);border-radius:var(--radius-s);font-variant-numeric:tabular-nums;max-width:calc(100% - 80px);padding:5px 10px;position:absolute;top:10px;left:12px}.map-legend{gap:var(--space-1) var(--space-3);padding:7px var(--space-3);background:var(--surface-2);font-size:var(--fs-xs);flex-wrap:wrap;display:flex;position:absolute;bottom:0;left:0;right:0}.map-legend span{align-items:center;gap:5px;display:inline-flex}.map-legend i{border:1px solid var(--border-strong);border-radius:3px;width:11px;height:11px;display:inline-block}body.touch #panel.map-mode .panel-card{height:100%}#panel.menu-mode .panel-card{background:radial-gradient(120% 70% at 50% 0%, var(--accent-soft), transparent 60%), var(--panel-bg);width:min(560px,100%);padding:22px 22px 18px}#panel.menu-mode .panel-head h2{font-size:var(--fs-xl);letter-spacing:.01em}#panel.menu-mode #panel-tabs{display:none}.pause{padding-top:var(--space-1);flex-direction:column;gap:14px;display:flex}.pause svg.i{width:22px;height:22px}.pause-facts{font-size:var(--fs-s);color:var(--text-muted);flex-wrap:wrap;gap:6px 14px;margin-top:-2px;display:flex}.pause-facts>span{align-items:center;gap:6px;display:inline-flex}.pause-facts svg.i{opacity:.85;width:16px;height:16px}.pause-resume{border-radius:var(--radius-l);background:linear-gradient(180deg, var(--accent-hover), var(--accent));min-height:52px;color:var(--on-accent);font-size:var(--fs-l);box-shadow:0 6px 18px var(--accent-soft-hover), inset 0 1px 0 #fff6;border:none;justify-content:center;align-items:center;gap:10px;padding:0 18px;font-weight:800;transition:transform .12s,box-shadow .12s;display:flex}.pause-resume:hover{transform:translateY(-1px);box-shadow:0 6px 18px #c9d77a3d,inset 0 1px #fff6}.pause-resume:active{transform:translateY(1px)}.pause-resume kbd{color:#2c3820;margin-left:var(--space-1);background:#1c241624;border-color:#1c241640}.pause-grid{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}@media (width<=560px){.pause-grid{grid-template-columns:repeat(3,1fr)}}body:has(#panel.menu-mode:not(.hidden)) #toasts{visibility:hidden}.pause-tile{align-items:center;gap:var(--space-2);padding:14px var(--space-2) var(--space-3);border-radius:var(--radius-l);background:var(--surface-3);border:1px solid var(--border);font-size:var(--fs-s);flex-direction:column;font-weight:700;transition:background .15s,border-color .15s,transform .12s;display:flex;position:relative}.pause-tile:hover{background:var(--surface-3-hover);border-color:var(--accent-border);transform:translateY(-1px)}.pause-tile:active{transform:translateY(1px)}.pause-tile .ic{width:var(--tap);height:var(--tap);background:var(--accent-soft);color:var(--accent);border-radius:50%;place-items:center;transition:background .15s;display:grid}.pause-tile:hover .ic{background:var(--accent-soft-hover)}.pause-tile .lb{text-align:center;line-height:1.2}.pause-tile kbd{position:absolute;top:7px;right:7px}.pause-exit{justify-content:center;align-items:center;gap:var(--space-2);border-radius:var(--radius-m);min-height:40px;color:var(--text-muted);font-size:var(--fs-s);background:0 0;border:1px solid #0000;align-self:center;margin-top:2px;padding:0 14px;font-weight:700;transition:color .15s,border-color .15s;display:flex}.pause-exit svg.i{width:18px;height:18px}.pause-exit:hover{color:var(--warn);border-color:#e0864a59}body.touch .pause-grid{gap:var(--space-2);grid-template-columns:repeat(3,1fr)}body.touch .pause-tile{padding:var(--space-3) var(--space-1) 10px}@media (width<=380px){body.touch .pause-grid{grid-template-columns:repeat(2,1fr)}}#underwater{pointer-events:none;opacity:0;z-index:0;background:radial-gradient(at 50% 30%,#5abeb41a 0%,#1e6e6e2e 55%,#082d3280 100%);position:fixed;inset:0}#air-meter{align-items:center;gap:var(--space-2);padding:5px var(--space-3);border-radius:var(--radius-m);font-size:var(--fs-xs);color:#dff6f7;box-shadow:var(--shadow-1);background:#0a1e2299;font-weight:700;display:flex}#air-meter .air-bar{border-radius:var(--radius-xs);background:#ffffff26;width:140px;height:7px;overflow:hidden}#air-meter .air-bar i{transform-origin:0;background:linear-gradient(90deg,#7fd8e6,#c7f3ff);height:100%;transition:transform .2s linear;display:block}#air-meter.low .air-bar i{background:#ff7a59;animation:.6s steps(2,end) infinite air-blink}@keyframes air-blink{50%{opacity:.35}}@media (width<=600px){#hud-top{column-gap:var(--space-2);grid-template-columns:auto minmax(0,1fr);grid-template-areas:"tl btns""tl tc""tl toasts";row-gap:6px}#hud-tl{grid-area:tl}#hud-tc{grid-area:tc;align-items:stretch}#hud-tr{display:contents}#top-buttons{grid-area:btns;justify-self:end;gap:6px}#toasts{grid-area:toasts}#hud-tl{width:150px}#hud-stack{align-self:stretch}#hud-stack>*{box-sizing:border-box;min-width:0;max-width:100%}#potion-fx .pf-name,#jet-fx>span:nth-child(2){text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}#potion-fx .pf-bar,#jet-fx .jf-bar,#air-meter .air-bar{flex:40px;min-width:24px}#hunger{width:100%}#coords{white-space:pre-wrap}#jet-fx .jf-hint{display:none}#compass{width:100%}.toast{max-width:100%}}#resume-hint{z-index:var(--z-hud-top);pointer-events:none;align-items:center;gap:var(--space-1);padding:var(--space-3) var(--space-5);background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-l);box-shadow:var(--shadow-2);color:var(--text);font-size:var(--fs-m);text-shadow:var(--text-shadow);flex-direction:column;font-weight:700;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}#resume-hint small{font-size:var(--fs-s);color:var(--text-soft);font-weight:400}#resume-hint.hidden{display:none}.hud-badge{filter:drop-shadow(0 1px 1px #00000080);margin-right:5px;font-size:13px}.badge-toast{z-index:var(--z-banner);gap:var(--space-4);max-width:min(460px,100vw - 32px);padding:var(--space-4) var(--space-5);background:var(--panel-bg,var(--surface-2));border:1px solid var(--accent-border);border-radius:var(--radius-l);box-shadow:var(--shadow-2);pointer-events:none;align-items:center;animation:.6s cubic-bezier(.2,1.4,.4,1) badge-in;display:flex;position:absolute;top:22%;left:50%;transform:translate(-50%)}.badge-toast.out{opacity:0;transition:opacity .6s,transform .6s;transform:translate(-50%)translateY(-12px)}.badge-toast .bt-icon{filter:drop-shadow(0 2px 6px #0006);font-size:56px;line-height:1}.badge-toast small{font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.1em;color:var(--accent);font-weight:800;display:block}.badge-toast b{font-size:var(--fs-l);display:block}.badge-toast p{font-size:var(--fs-s);color:var(--text-soft);margin:2px 0 0}.badge-toast ul{margin:var(--space-2) 0 0;font-size:var(--fs-s);padding:0;list-style:none}.badge-toast li:before{content:"✦ ";color:var(--gold)}@keyframes badge-in{0%{opacity:0;transform:translate(-50%)scale(.6)}to{opacity:1;transform:translate(-50%)scale(1)}}.leaf-confetti{pointer-events:none;z-index:var(--z-banner);position:fixed;inset:0;overflow:hidden}.leaf-confetti span{animation-name:leaf-fall;animation-timing-function:cubic-bezier(.3,.1,.5,1);animation-fill-mode:forwards;position:absolute;top:-40px}@keyframes leaf-fall{to{transform:translate(var(--dx), 110vh) rotate(var(--rot));opacity:.9}}.ach-head{gap:var(--space-4);padding:var(--space-3) var(--space-4);background:var(--surface-3);border-radius:var(--radius-m);margin-bottom:var(--space-4);align-items:center;display:flex}.ach-cur{font-size:44px;line-height:1}.ach-cur-text{flex:1;min-width:0}.ach-cur-text b{font-size:var(--fs-l);display:block}.ach-cur-text span{font-size:var(--fs-s);color:var(--text-soft)}.ach-bar{border-radius:var(--radius-pill);background:var(--field);border:1px solid var(--border);height:8px;margin-top:6px;overflow:hidden}.ach-bar i{background:linear-gradient(90deg, var(--accent), var(--gold));height:100%;display:block}.ach-path{gap:var(--space-2);display:grid}.ach-step{gap:var(--space-3);padding:var(--space-3);border-radius:var(--radius-m);border:1px solid var(--border);opacity:.75;display:flex}.ach-step.got{opacity:1;border-color:var(--accent-border);background:var(--accent-soft)}.ach-step.next{opacity:1;border-style:dashed;border-color:var(--accent-border)}.ach-icon{background:var(--field);width:44px;height:44px;color:var(--text-muted);border-radius:50%;flex:none;place-items:center;font-size:30px;font-weight:800;display:grid}.ach-step h3{font-size:var(--fs-m);margin:0}.ach-step h3 small{color:var(--text-muted);font-weight:600;font-size:var(--fs-xs);margin-left:6px}.ach-step p{font-size:var(--fs-s);color:var(--text-soft);margin:2px 0 4px}.ach-step ul{font-size:var(--fs-s);gap:2px;margin:4px 0 0;padding:0;list-style:none;display:grid}.ach-step li.locked{color:var(--text-muted);align-items:center;gap:6px;display:flex}.ach-step .sil{background:var(--text-muted);opacity:.45;border-radius:4px;width:14px;height:14px;display:inline-block}.ach-title{margin:var(--space-5) 0 var(--space-2);font-size:var(--fs-l)}.ach-title small{font-size:var(--fs-s);color:var(--text-muted);margin-left:6px;font-weight:600}.ach-group h4{margin:var(--space-3) 0 var(--space-2);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted)}.ach-grid{gap:var(--space-2);grid-template-columns:repeat(auto-fill,minmax(210px,1fr));display:grid}.ach-card{gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-m);border:1px solid var(--border);background:var(--surface-3);opacity:.8;align-items:flex-start;display:flex}.ach-card.got{opacity:1;border-color:var(--accent-border);background:var(--accent-soft)}.ach-card.secret{border-style:dashed}.ach-card .ai{text-align:center;flex:none;width:28px;font-size:22px;line-height:1.2}.ach-card.secret .ai{color:var(--text-muted);font-weight:800}.ach-card.got .ai{filter:none}.ach-card:not(.got):not(.secret) .ai{filter:grayscale();opacity:.6}.ach-card b{font-size:var(--fs-s)}.ach-card p{font-size:var(--fs-xs);color:var(--text-soft);margin:1px 0 3px}.ach-card small{font-size:var(--fs-2xs,10px);color:var(--text-muted)}.ach-bar.sm{height:5px;margin:2px 0 1px}#cave-fade{opacity:0;pointer-events:none;z-index:var(--z-fx,20);background:#000;transition:opacity .35s;position:fixed;inset:0}#cave-fade.on{opacity:1}#mp-start{border-top:1px solid var(--border);font-size:var(--fs-s);color:var(--text-muted);text-align:left;flex-direction:column;gap:9px;margin-top:18px;padding-top:14px;display:flex}.mp-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.mp-label{font-weight:700}#mp-name{flex:140px;min-width:0;padding:6px 9px}.mp-swatches{gap:6px;display:flex}.mp-swatch{border:2px solid var(--border-strong);border-radius:50%;width:24px;height:24px;padding:0;position:relative}.mp-swatch:after{content:"";border-radius:50%;position:absolute;inset:-6px}body.touch .mp-swatch{width:30px;height:30px}body.touch .mp-swatch:after{inset:-7px}.mp-swatch.on{border-color:#fff;box-shadow:0 0 0 2px #ffffff40}.mp-figs{align-items:center}.mp-fig{border-radius:var(--radius-m);border:2px solid var(--border);font-size:var(--fs-s);color:var(--text);opacity:.75;background:#00000040;flex-direction:column;align-items:center;gap:1px;padding:3px 10px 5px;font-weight:700;transition:opacity .15s,border-color .15s;display:flex}.mp-fig img{object-fit:contain;width:64px;height:64px}.mp-fig img:not([src]){visibility:hidden}.mp-fig:hover{opacity:1}.mp-fig.on{opacity:1;border-color:var(--accent);background:#0006}.mp-fig-hint{font-size:var(--fs-xs);opacity:.65;flex:120px}.mp-where{justify-content:space-between}.mp-world{color:var(--text);font-weight:700}.mp-links{flex-wrap:wrap;gap:14px;display:flex}.mp-status{font-size:var(--fs-s);font-style:italic}.mp-keys{font-size:var(--fs-s)}.mp-keys b{color:var(--text)}#mp-online{margin-top:var(--space-1);font-size:var(--fs-xs);color:var(--text-muted)}#mp-online:before{content:"";vertical-align:1px;background:#8a8f84;border-radius:50%;width:7px;height:7px;margin-right:6px;display:inline-block}#mp-online.on{color:var(--text)}#mp-online.on:before{background:var(--ok);box-shadow:0 0 5px var(--ok)}#mp-online.off:before{background:#6c6c6c}#chat-dock{left:calc(16px + env(safe-area-inset-left));bottom:calc(50px + env(safe-area-inset-bottom));width:min(520px,100vw - 32px);max-height:calc(100% - 340px - env(safe-area-inset-top));z-index:var(--z-hud-top);pointer-events:none;flex-direction:column;justify-content:flex-end;gap:6px;display:flex;position:absolute}#mp-chat-log{width:min(460px,100%);min-height:0;max-height:200px;z-index:var(--z-hud);pointer-events:none;padding:var(--space-2);border-radius:var(--radius-l);scrollbar-width:thin;scrollbar-color:#ffffff40 transparent;flex-direction:column;flex:0 auto;gap:3px;transition:background .2s;display:flex;overflow:hidden}#mp-chat-log>:first-child{margin-top:auto}#mp-chat-log.open{pointer-events:auto;background:var(--surface-2);max-height:min(55vh,480px);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);box-shadow:var(--shadow-2);overscroll-behavior:contain;overflow-y:auto}#mp-chat-log:not(:has(*)).open:before{content:"Noch keine Nachrichten. /hilfe zeigt alle Befehle.";opacity:.6;font-size:var(--fs-s);margin-top:auto;padding:3px 9px}.mp-line{font-size:var(--fs-s);border-radius:var(--radius-s);background:var(--surface-1);text-shadow:var(--text-shadow);overflow-wrap:anywhere;flex-shrink:0;align-self:flex-start;max-width:100%;padding:3px 9px;line-height:1.35;transition:opacity 1.5s}#mp-chat-log.open .mp-line{text-shadow:none;background:0 0;padding:2px 6px}.mp-line.old{opacity:0}#mp-chat-log.open .mp-line.old{opacity:1}.mp-time{font-size:var(--fs-xs);opacity:.5;font-variant-numeric:tabular-nums;margin-right:6px;display:none}#mp-chat-log.open .mp-time{display:inline}.mp-sys{font-size:var(--fs-s);opacity:.75;font-style:italic}.mp-cmd{font-size:var(--fs-s);opacity:.6;font-family:var(--mono)}.mp-cmd:before{content:"› "}#mp-chat{pointer-events:auto;flex:none;gap:6px;display:flex}#mp-chat-input{background:var(--surface-2);min-width:0;min-height:40px;color:var(--text);border:1px solid var(--accent);border-radius:var(--radius-m);padding:var(--space-2) 11px;font:inherit;font-size:var(--fs-m);-webkit-user-select:text;user-select:text;flex:1}#mp-chat-input:focus-visible{box-shadow:0 0 0 3px var(--accent-soft)}#mp-chat .btn:not(.btn--primary){background:var(--surface-2)}body.touch #chat-dock{bottom:calc(110px + env(safe-area-inset-bottom));width:min(360px,60vw)}body.touch #chat-dock:has(#mp-chat-log.open){top:calc(12px + env(safe-area-inset-top));width:min(520px,100vw - 24px);max-height:calc(100% - 24px);z-index:calc(var(--z-panel) + 1);flex-direction:column-reverse;justify-content:flex-start;bottom:auto;left:50%;transform:translate(-50%)}body.touch:has(#mp-chat-log.open) #hud-top{visibility:hidden}body.touch #mp-chat-input{min-height:var(--tap)}body.touch #mp-chat-log.open{width:100%;max-height:50vh}.mp-board-head{color:var(--text-muted);margin-bottom:var(--space-2)}.mp-board-head b{color:var(--text)}.mp-board{flex-direction:column;gap:6px;margin:0;padding:0;list-style:none;display:flex}.mp-board li{background:var(--surface-3);border:1px solid var(--border);border-radius:var(--radius-m);padding:9px var(--space-3);align-items:center;gap:10px;display:flex}.mp-board li.me{border-color:var(--accent-border)}.mp-rank{width:22px;color:var(--text-muted);font-weight:700}.mp-dot{border-radius:50%;flex:none;width:12px;height:12px}.mp-name{text-overflow:ellipsis;white-space:nowrap;flex:1;font-weight:700;overflow:hidden}.mp-dist{color:var(--text-muted);font-size:var(--fs-s)}.mp-score{font-size:var(--fs-s);color:var(--accent);white-space:nowrap}.mp-board-foot{margin-top:var(--space-3);font-size:var(--fs-s);color:var(--text-muted);font-style:italic}.mp-board .mp-tp{margin-left:var(--space-2);flex-shrink:0}#locator{left:50%;bottom:calc(16px + env(safe-area-inset-bottom));pointer-events:none;opacity:0;width:min(520px,56vw);height:26px;transition:opacity .4s;position:absolute;transform:translate(-50%)}#locator.on{opacity:1}.loc-track{background:var(--surface-1);height:4px;box-shadow:0 0 0 1px var(--border);border-radius:3px;position:absolute;top:12px;left:0;right:0}.loc-center{background:#ffffff8c;border-radius:1px;width:2px;height:12px;margin-left:-1px;position:absolute;top:-4px;left:50%}.loc-mark{flex-direction:column;align-items:center;transition:left .12s linear;display:flex;position:absolute;top:2px;transform:translate(-50%)}.loc-dot{border:1.5px solid #ffffffd9;border-radius:50%;margin-top:-50%;display:block}.loc-arrow{font-size:var(--fs-2xs);color:#fff;text-shadow:var(--text-shadow);line-height:1;position:absolute;top:-13px}.loc-mark.behind{opacity:.55}.loc-mark.behind .loc-arrow{font-size:var(--fs-xs);top:50%;transform:translateY(-50%)}.loc-label{white-space:nowrap;font-size:var(--fs-xs);color:#fff;background:var(--surface-2);border-radius:var(--radius-s);opacity:0;padding:2px 7px;font-weight:700;transition:opacity .2s;position:absolute;bottom:22px}.loc-mark.focus .loc-label{opacity:1}body.touch #locator{width:40vw;bottom:calc(2px + env(safe-area-inset-bottom))}#btn-crumb{right:calc(24px + env(safe-area-inset-right));bottom:calc(216px + env(safe-area-inset-bottom))}#btn-crumb.on{color:#2a1d0e;background:#d9b07ad9}#mp-suggest{pointer-events:auto;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-m);width:min(460px,100%);box-shadow:var(--shadow-2);-webkit-backdrop-filter:var(--blur);backdrop-filter:var(--blur);z-index:5;font-size:var(--fs-s);flex:none;padding:5px}#mp-suggest.hidden{display:none}.mp-sug{align-items:baseline;gap:var(--space-3);padding:5px var(--space-2);border-radius:var(--radius-s);cursor:pointer;display:flex}.mp-sug code{font-family:var(--mono);font-size:var(--fs-s);white-space:nowrap;color:#fff}.mp-sug-args{opacity:.55}.mp-sug-desc{opacity:.7;text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.mp-sug.sel{background:var(--surface-3-hover);box-shadow:inset 3px 0 0 var(--accent)}.mp-sug.current code{color:var(--accent)}.mp-sug.hint{cursor:default}.mp-sug.hint code{color:#ffffffbf}.mp-sug-tip{font-size:var(--fs-xs);opacity:.45;padding:var(--space-1) var(--space-2) 2px;border-top:1px solid var(--border);margin-top:3px}#mp-update{border-color:var(--accent)}#mp-update .mp-update-esc{opacity:.7;font-size:var(--fs-xs);white-space:nowrap;display:none}#mp-update.locked .mp-update-esc{display:inline}#mp-update{max-width:min(640px,100vw - 24px)}.mp-update-notes{border-top:1px solid var(--border);padding:var(--space-2) var(--space-2) var(--space-1) 0;text-align:left;flex:1 0 100%}.mp-update-head{font-size:var(--fs-xs);letter-spacing:.06em;text-transform:uppercase;color:var(--accent);margin-bottom:var(--space-1);font-weight:800}.mp-update-notes ul{gap:4px;max-height:30vh;margin:0;padding:0 0 0 1.1em;display:grid;overflow-y:auto}.mp-update-notes li{font-size:var(--fs-xs);color:var(--text-soft);-webkit-line-clamp:2;-webkit-box-orient:vertical;line-height:1.4;display:-webkit-box;overflow:hidden}.mp-update-notes li b{color:var(--text)}.mp-update-more{margin-top:var(--space-1);font-size:var(--fs-xs);color:var(--accent);display:inline-block}#photo-vf{pointer-events:none;z-index:1;position:absolute;inset:0}#photo-vf .c{filter:drop-shadow(0 0 2px #0009);border:0 solid #ffffffd9;width:46px;height:46px;position:absolute}#photo-vf .tl{border-top-left-radius:var(--radius-s);border-top-width:3px;border-left-width:3px;top:9%;left:7%}#photo-vf .tr{border-top-right-radius:var(--radius-s);border-top-width:3px;border-right-width:3px;top:9%;right:7%}#photo-vf .bl{border-bottom-left-radius:var(--radius-s);border-bottom-width:3px;border-left-width:3px;bottom:9%;left:7%}#photo-vf .br{border-bottom-right-radius:var(--radius-s);border-bottom-width:3px;border-right-width:3px;bottom:9%;right:7%}#photo-vf .ph-focus{border-radius:var(--radius-xs);border:2px solid #ffffffbf;width:64px;height:44px;transition:border-color .2s,width .2s,height .2s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 3px #00000080}#photo-vf .ph-focus:after{content:"";background:#ffffffd9;border-radius:50%;width:4px;height:4px;margin:-2px;position:absolute;top:50%;left:50%}#photo-vf.has-subject .ph-focus{border-color:#9fe07a;width:56px;height:38px}#photo-vf .ph-zoom{font-weight:800;font-size:var(--fs-m);text-shadow:var(--text-shadow);align-items:center;gap:10px;display:flex;position:absolute;bottom:calc(9% + 8px);left:50%;transform:translate(-50%)}#photo-vf .ph-zoom-bar{background:#0006;border:1px solid #ffffff59;border-radius:3px;width:140px;height:5px;overflow:hidden}#photo-vf .ph-zoom-fill{background:#fff;width:0;height:100%}#photo-vf .ph-zoom-val{min-width:42px}#photo-vf .ph-subject{font-size:var(--fs-m);text-shadow:var(--text-shadow);white-space:nowrap;font-weight:700;position:absolute;top:calc(9% + 6px);left:50%;transform:translate(-50%)}#photo-vf .ph-hint{font-size:var(--fs-s);color:#fffc;text-shadow:var(--text-shadow);white-space:nowrap;position:absolute;bottom:calc(9% - 30px);left:50%;transform:translate(-50%)}#photo-vf .ph-hint b{color:#fff}#photo-vf.snap .c{animation:.25s ease-out phSnap}@keyframes phSnap{50%{transform:scale(.92)}}#photo-flash{opacity:0;pointer-events:none;z-index:3;background:#fff;position:absolute;inset:0}#photo-flash.on{animation:.45s ease-out phFlash}@keyframes phFlash{0%{opacity:.85}to{opacity:0}}.ph-stars{color:#f3d36b;letter-spacing:1px;white-space:nowrap}.ph-stars i{color:#ffffff38;font-style:normal}body.photo-mode #crosshair,body.photo-mode #prompt,body.photo-mode #biome,body.photo-mode #top-buttons,body.photo-mode #btn-collect,body.photo-mode #btn-jump,body.photo-mode #btn-sprint,body.photo-mode #btn-camera,body.photo-mode #btn-crumb{display:none!important}body.photo-mode #hunger{opacity:.55}#btn-camera{right:calc(176px + env(safe-area-inset-right));bottom:calc(30px + env(safe-area-inset-bottom))}#btn-shutter,#btn-cam-exit,#photo-slider{display:none}body.touch.photo-mode #btn-shutter,body.touch.photo-mode #btn-cam-exit{display:block}body.touch.photo-mode #photo-slider{display:flex}#btn-shutter{right:calc(24px + env(safe-area-inset-right));bottom:calc(40px + env(safe-area-inset-bottom));background:#ffffff2e;border:3px solid #ffffffd9;width:92px;height:92px;padding:0}#btn-shutter span{background:#ffffffe6;border-radius:50%;width:68px;height:68px;margin:auto;display:block}#btn-shutter:active span{background:#fff;transform:scale(.9)}#btn-cam-exit{right:calc(130px + env(safe-area-inset-right));bottom:calc(52px + env(safe-area-inset-bottom))}#photo-slider{right:calc(44px + env(safe-area-inset-right));padding:var(--space-2) 10px;touch-action:none;pointer-events:auto;font-weight:800;font-size:var(--fs-l);text-shadow:var(--text-shadow);flex-direction:column;align-items:center;gap:6px;position:absolute;top:50%;transform:translateY(-62%)}#photo-slider .track{background:#00000059;border:1px solid #ffffff80;border-radius:3px;width:6px;height:170px;position:relative}#photo-slider .knob{background:#ffffffe6;border-radius:50%;width:28px;height:28px;margin-left:-14px;position:absolute;bottom:-14px;left:50%;box-shadow:0 1px 4px #00000080}.ph-bar{flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:10px;display:flex}.ph-select{border-radius:var(--radius-pill);padding:0 var(--space-3);min-height:32px;font-size:var(--fs-s)}body.touch .ph-select{min-height:40px}.ph-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;display:grid}.ph-card{text-align:left;background:var(--surface-3);border:1px solid var(--border);border-radius:var(--radius-m);flex-direction:column;padding:0;display:flex;overflow:hidden}.ph-card:hover{border-color:#ffffff4d}.ph-card img{aspect-ratio:16/10;object-fit:cover;background:#0c120c;width:100%;display:block}.ph-card .cap{font-size:var(--fs-s);padding:6px var(--space-2) 0;font-weight:700;line-height:1.3}.ph-card .meta{padding:2px var(--space-2) 7px;font-size:var(--fs-s);justify-content:space-between;align-items:center;gap:6px;display:flex}.ph-card .meta small{color:var(--text-muted);font-size:var(--fs-xs)}.ph-tasks{flex-direction:column;gap:6px;display:flex}.ph-task{background:var(--surface-3);border:1px solid var(--border);border-radius:var(--radius-m);padding:9px var(--space-3);font-size:var(--fs-s);align-items:center;gap:10px;display:flex}.ph-task .t{flex:1}.ph-task .n{color:var(--text-muted);font-size:var(--fs-s)}.ph-task .ph-check{border:2px solid #ffffff4d;border-radius:50%;flex:none;justify-content:center;align-items:center;width:22px;height:22px;display:inline-flex}.ph-task .ph-check svg.i{stroke-width:3px;width:14px;height:14px}.ph-task.done .ph-check{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.ph-task.done .t{color:var(--text-muted)}.ph-jthumb{float:right;object-fit:cover;border-radius:var(--radius-s);border:1px solid var(--border-strong);cursor:pointer;width:74px;height:50px;margin:0 0 4px 8px}#photo-viewer{z-index:var(--z-panel);background:#040604c7;justify-content:center;align-items:center;padding:14px;display:flex;position:fixed;inset:0}#photo-viewer .ph-view{width:min(1100px,100%);max-height:100%;padding:var(--space-4);-webkit-overflow-scrolling:touch;touch-action:pan-y;gap:18px;display:flex;position:relative;overflow:auto}#photo-viewer .ph-x{z-index:2;position:absolute;top:6px;right:8px}#photo-viewer .ph-imgwrap{flex:auto;justify-content:center;align-items:center;min-width:0;display:flex;position:relative}#photo-viewer .ph-big{border-radius:var(--radius-s);background:#000;max-width:100%;max-height:calc(100vh - 80px);display:block}#photo-viewer .ph-nav{position:absolute;top:50%;transform:translateY(-50%)}#photo-viewer .ph-nav:active{transform:translateY(-50%)scale(.96)}#photo-viewer .ph-nav.prev{left:6px}#photo-viewer .ph-nav.next{right:6px}#photo-viewer .ph-side{gap:var(--space-2);flex-direction:column;flex:0 0 280px;padding-top:18px;display:flex}#photo-viewer h3{font-size:var(--fs-l);margin:0;font-weight:800;line-height:1.25}#photo-viewer .ph-line{font-size:var(--fs-m)}#photo-viewer .ph-line small{color:var(--text-muted);margin-left:6px}#photo-viewer .muted{color:var(--text-muted);font-size:var(--fs-s)}#photo-viewer .ph-info{background:var(--surface-3);border-radius:var(--radius-m);padding:10px var(--space-3);font-size:var(--fs-s)}#photo-viewer .ph-info i{color:var(--text-muted);font-size:var(--fs-s)}#photo-viewer .ph-info p{font-size:var(--fs-s);color:var(--text-soft);margin:6px 0 0;line-height:1.45}#photo-viewer .ph-actions,#photo-viewer .ph-confirm{gap:var(--space-2);flex-wrap:wrap;align-items:center;margin-top:6px;display:flex}#photo-viewer .ph-confirm span{width:100%;font-weight:700}@media (width<=760px),(height<=520px){#photo-viewer .ph-view{padding:var(--space-3);flex-direction:column;gap:10px}#photo-viewer .ph-side{flex:none;padding-top:0}#photo-viewer .ph-big{max-height:62vh}#photo-vf .c{width:34px;height:34px}#photo-vf .ph-zoom-bar{width:90px}}@media (height<=520px) and (orientation:landscape){#photo-viewer .ph-view{flex-direction:row}#photo-viewer .ph-side{flex:0 0 220px}#photo-viewer .ph-big{max-height:calc(100vh - 60px)}}
