.help{--fs:12px;--lh:16px;--rows:40;--col:calc(var(--fs) * .6);z-index:2;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);font-family:var(--font-ui,"Meritous UI", ui-monospace, monospace);pointer-events:auto;background:#05040a9e;place-items:center;animation:.12s ease-out help-in;display:grid;position:fixed;inset:0}@keyframes help-in{0%{opacity:0}}.help-box{background:#070a12f2;border:1px solid #94a3b840;border-radius:14px;outline:none;gap:8px;padding:12px 10px 10px;display:grid;box-shadow:0 12px 36px #000000a6}.help-body{width:calc(var(--col) * 76);height:calc(var(--lh) * var(--rows));overscroll-behavior:contain;touch-action:pan-y;scrollbar-width:none;font-size:var(--fs);line-height:var(--lh);color:#cbd5e1;overflow:hidden auto}.help-body::-webkit-scrollbar{display:none}#ui .help-line{height:var(--lh);padding:0 calc(var(--col) * 3);white-space:pre;font-variant-ligatures:none;margin:0;position:relative}.help-line.centre{text-align:center;font:700 calc(var(--fs) * 1.32) / var(--lh) var(--font-display,"Meritous Display", Georgia, serif);letter-spacing:.03em;color:#f1f5f9}.help-line.rule{color:#0000;background:linear-gradient(90deg, transparent, #94a3b866 12% 88%, transparent) center / calc(var(--col) * var(--len)) 1px no-repeat}.help-line.link{color:#e4d4ff;text-underline-offset:.25em;cursor:pointer;-webkit-text-decoration:underline dotted #e4d4ff59;text-decoration:underline dotted #e4d4ff59}.help-line.link:hover{color:#fff}.help-line.link.cur{color:#fff;animation:.48s steps(16,jump-none) infinite help-link}@keyframes help-link{0%{color:#cfc3ea}to{color:#fff}}.help-line.cur:before,.help-line.cur:after{font:700 var(--fs) / var(--lh) var(--font-ui,"Meritous UI", ui-monospace, monospace);letter-spacing:0;color:#b388ff;text-shadow:0 0 8px #b388ff8c;font-variant-ligatures:normal;position:absolute;top:0}.help-line.cur:before{content:"->";left:calc(var(--col) * .7)}.help-line.cur:after{content:"<-";right:calc(var(--col) * .7)}.help-foot{box-sizing:border-box;width:calc(var(--col) * 76);padding:6px calc(var(--col) * 3) 0;border-top:1px solid #94a3b824;justify-content:space-between;align-items:center;gap:12px;display:flex}#ui .help-keys{min-width:0;font-size:calc(var(--fs) * .9);letter-spacing:.02em;color:#64748b}.help-close{color:#94a3b8;min-height:28px;font:600 12px/1 var(--font-ui,"Meritous UI", ui-monospace, monospace);letter-spacing:.06em;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:1px solid #94a3b84d;border-radius:99px;flex:none;padding:0 14px}.help-close:hover,.help-close:focus-visible{color:#fff;border-color:#b388ff;outline:none}@media (pointer:coarse){.help-close{min-height:40px;padding:0 18px;font-size:13px}}@media (prefers-reduced-motion:reduce){.help,.help-line.link.cur{animation:none}}.title,.loading{--t-display:"Meritous Display", "Cormorant Garamond", "Palatino Linotype", "Book Antiqua", Palatino, Georgia, serif;--t-ui:"Meritous UI", "JetBrains Mono", ui-monospace, "Cascadia Mono", Consolas, Menlo, monospace}.title-veil{z-index:3;pointer-events:none;background:#fff;position:fixed;inset:0}.title-veil.out{animation:.8s ease-out forwards title-unveil}@keyframes title-unveil{to{opacity:0}}.title{position:fixed;inset:0}.title:before{content:"";pointer-events:none;background:linear-gradient(#05040acc,#05040a4d 30%,#0000 48%),linear-gradient(90deg,#05040a99,#05040a40 30%,#0000 45%);position:absolute;inset:0}.title-logo{top:max(13vh, env(safe-area-inset-top) + 8px);text-align:center;font:700 clamp(48px, min(11vh, 15vw), 92px)/1.05 var(--t-display);letter-spacing:.16em;text-indent:.16em;background:linear-gradient(#fff 18%,#7df9ff 55%,#2563eb 95%);color:#0000;filter:drop-shadow(0 0 20px #7df9ff59);-webkit-background-clip:text;background-clip:text;margin:0;transition:opacity .2s;position:absolute;left:0;right:0}.title-menu{left:max(8vw, env(safe-area-inset-left) + 24px);pointer-events:auto;gap:clamp(4px,1.1vh,8px);width:clamp(11.5rem,21vw,15rem);transition:opacity .2s;display:grid;position:absolute;top:52%;transform:translateY(-50%)}.title-item{box-sizing:border-box;color:#94a3b8;height:clamp(30px,7.4vh,42px);font:600 clamp(13px, 2.2vh, 16px)/1 var(--t-ui);letter-spacing:.06em;text-align:left;white-space:nowrap;cursor:pointer;-webkit-tap-highlight-color:transparent;background:#090d16eb;border:1px solid #94a3b873;border-radius:10px;outline:none;padding:0 1em 0 2.3em;transition:background .15s,border-color .15s,box-shadow .15s,color .15s;position:relative}.title-item.on{color:#fff;background:linear-gradient(#b388ff2e,#b388ff2e),#090d16eb;border-color:#b388ff;box-shadow:inset 0 0 0 .5px #b388ff,0 0 16px #b388ff59}.title-item.on:before{content:">";color:#e4d4ff;animation:.314s ease-in-out infinite alternate title-cursor;position:absolute;left:.95em}@keyframes title-cursor{to{opacity:.7}}.title-item:disabled{color:#475569;opacity:.38;cursor:default;background:0 0}.title-sub{font:italic 600 .34em/1 var(--t-display);letter-spacing:.32em;text-indent:.32em;color:#ffd98a;margin-top:.08em;display:block}.title.away :is(.title-logo,.title-menu,.title-note){opacity:0}.title-note{left:0;right:0;bottom:max(7vh, env(safe-area-inset-bottom) + 12px);text-align:center;max-width:30em;font:.85em/1.4 var(--t-ui);color:#ffd27a;margin:0 auto;padding-inline:16px;transition:opacity .2s;position:absolute}@media (orientation:landscape) and (height<=460px){.title-logo{top:max(9vh, env(safe-area-inset-top) + 6px)}.title-menu{gap:3px;top:56%}.title-item{height:26px}}@media (orientation:portrait) and (width<=700px){.title-logo{top:max(6vh, env(safe-area-inset-top) + 8px)}.title-item{height:clamp(30px,4vh,36px)}.title-menu{top:auto;left:50%;bottom:max(7vh, env(safe-area-inset-bottom) + 16px);gap:5px;width:min(17rem,84vw);transform:translate(-50%)}}.loading{z-index:2;background:#05040a;place-items:center;display:grid;position:fixed;inset:0}.loading.out{animation:linear forwards title-unveil}.loading-box{box-sizing:border-box;background:#090d16e6;border:1px solid #94a3b840;border-radius:14px;gap:12px;width:clamp(260px,34vw,340px);padding:18px 22px;display:grid;box-shadow:0 12px 36px #000000a6}.loading-text{font:600 13px/1.3 var(--t-ui);letter-spacing:.02em;color:#cbd5e1;margin:0}.loading-bar{background:#ffffff14;border-radius:99px;height:8px}.loading-bar i{border-radius:inherit;background:linear-gradient(90deg,#b388ff calc(100% - 14px),#e4d4ff);width:0;height:100%;transition:width .18s ease-out;display:block;box-shadow:0 0 10px #b388ffa6}@media (prefers-reduced-motion:reduce){.title-item.on:before{animation:none}.loading-bar i{transition:none}}.options{z-index:2;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);font-family:var(--font-ui,"Meritous UI", ui-monospace, monospace);pointer-events:auto;background:#05040a8c;place-items:center;animation:.12s ease-out options-in;display:grid;position:fixed;inset:0}@keyframes options-in{0%{opacity:0}}.options-card{box-sizing:border-box;touch-action:pan-y;color:#cbd5e1;scrollbar-width:thin;background:#090d16f2;border:1px solid #94a3b840;border-radius:16px;outline:none;gap:10px;width:clamp(320px,44vw,440px);max-width:calc(100vw - 24px);max-height:86vh;padding:18px 18px 16px;display:grid;overflow:auto;box-shadow:0 12px 36px #000000a6}.options-title{text-align:center;font:700 clamp(18px, 2.8vh, 24px) / 1.1 var(--font-display,"Meritous Display", Georgia, serif);letter-spacing:.22em;text-indent:.22em;text-transform:uppercase;color:#f8fafc;margin:0 0 4px}.options-list{gap:6px;display:grid}.opt-row,.opt-back{box-sizing:border-box;border:1.5px solid #0000;border-radius:10px;min-height:44px;transition:background .12s,border-color .12s;position:relative}.opt-row{flex-wrap:wrap;align-items:center;gap:6px 12px;padding:6px 12px 6px 28px;display:flex}.opt-label{letter-spacing:.04em;color:#94a3b8;flex:1 0 7.5em;font-size:13px;font-weight:600}.opt-ctl{align-items:center;gap:10px;display:flex}.opt-row.on,.opt-back.on{background:#b388ff1f;border-color:#b388ff;box-shadow:0 0 16px #b388ff33}.opt-row.on .opt-label{color:#fff}.opt-row.on:before,.opt-back.on:before{content:">";color:#e4d4ff;font-weight:700;animation:1s ease-in-out infinite alternate options-cursor;position:absolute;top:50%;left:11px;translate:0 -50%}@keyframes options-cursor{to{opacity:.35}}.opt-range{--fill:calc(8px + (100% - 16px) * var(--v,1));cursor:pointer;touch-action:none;appearance:none;background:0 0;width:clamp(110px,16vw,150px);height:22px;margin:0}.opt-range:focus{outline:none}.opt-range::-webkit-slider-runnable-track{background:linear-gradient(90deg, #b388ff var(--fill), #1e293b var(--fill));border-radius:99px;height:6px}.opt-range::-webkit-slider-thumb{appearance:none;background:#fff;border:0;border-radius:50%;width:16px;height:16px;margin-top:-5px;box-shadow:0 1px 4px #00000080,0 0 0 3px #b388ff40}.opt-range::-moz-range-track{background:#1e293b;border-radius:99px;height:6px}.opt-range::-moz-range-progress{background:#b388ff;border-radius:99px;height:6px}.opt-range::-moz-range-thumb{background:#fff;border:0;border-radius:50%;width:16px;height:16px}.opt-value{text-align:right;font-variant-numeric:tabular-nums;color:#cbd5e1;min-width:3ch;font-size:13px;font-weight:600}.opt-pills{background:#1e293b;border-radius:99px;gap:2px;padding:3px}.opt-pill{color:#94a3b8;min-height:28px;font:600 12px/1 var(--font-ui,"Meritous UI", ui-monospace, monospace);letter-spacing:.03em;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:0 0;border:0;border-radius:99px;padding:0 11px}.opt-pill:hover{color:#fff}.opt-pill[aria-checked=true]{color:#0b0614;background:#b388ff}.options-note{text-align:center;color:#94a3b8;margin:0;padding:0 4px;font-size:11.5px;line-height:1.4}.opt-back{color:#cbd5e1;width:100%;font:600 13px/1 var(--font-ui,"Meritous UI", ui-monospace, monospace);letter-spacing:.08em;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:#0b0f19b8;border-color:#94a3b840;margin-top:2px;padding:0 28px}.opt-back.on{color:#fff}@media (pointer:coarse){.opt-pill{min-height:36px;padding:0 13px}}@media (prefers-reduced-motion:reduce){.options,.opt-row.on:before,.opt-back.on:before{animation:none}}.opt-code{font:700 13px/1 var(--font-ui,"Meritous UI", ui-monospace, monospace);letter-spacing:.06em;color:#f8fafc;-webkit-user-select:all;user-select:all;-webkit-touch-callout:default}.opt-btn{color:#cbd5e1;background:#1e293b}.opt-input{box-sizing:border-box;color:#f8fafc;width:15.5em;max-width:52vw;height:30px;font:600 12.5px/1 var(--font-ui,"Meritous UI", ui-monospace, monospace);letter-spacing:.04em;text-transform:uppercase;-webkit-user-select:text;user-select:text;background:#0b0f19;border:1px solid #94a3b859;border-radius:8px;padding:0 8px}.opt-input::placeholder{color:#475569}.opt-input:focus{border-color:#b388ff;outline:none}.options-cloud{color:#cbd5e1}.choice{z-index:4;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);font-family:var(--font-ui,"Meritous UI", ui-monospace, monospace);pointer-events:auto;background:#05040a99;place-items:center;display:grid;position:fixed;inset:0}.choice-card{box-sizing:border-box;touch-action:pan-y;color:#cbd5e1;background:#090d16f5;border:1px solid #94a3b840;border-radius:16px;gap:10px;width:min(560px,100vw - 24px);max-height:94vh;padding:16px;display:grid;overflow:auto;box-shadow:0 12px 36px #000000a6}.choice-title{text-align:center;font:700 clamp(17px, 2.6vh, 22px) / 1.1 var(--font-display,"Meritous Display", Georgia, serif);letter-spacing:.12em;color:#f8fafc;margin:0}.choice-text{text-align:center;color:#94a3b8;margin:0;font-size:12.5px;line-height:1.4}.choice-row{grid-template-columns:1fr 1fr;gap:10px;display:grid}.choice-save,.choice-later{box-sizing:border-box;color:#cbd5e1;font:600 12.5px/1.45 var(--font-ui,"Meritous UI", ui-monospace, monospace);cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:#0b0f19cc;border:1.5px solid #94a3b84d;border-radius:12px;outline:none}.choice-save{text-align:left;gap:2px;padding:10px 12px;display:grid}.choice-where{letter-spacing:.04em;color:#f8fafc;margin-bottom:4px;font-size:13.5px}.choice-keep{color:#b388ff;margin-top:6px}.choice-later{color:#94a3b8;min-height:40px}.choice-save.on,.choice-later.on{color:#fff;background:#b388ff1f;border-color:#b388ff;box-shadow:0 0 16px #b388ff33}@media (width<=480px){.choice-row{grid-template-columns:1fr}}@font-face{font-family:Meritous Display;font-style:normal;font-weight:300 700;font-display:swap;src:url(/assets/fonts/cormorant-garamond-latin.woff2)format("woff2");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:Meritous UI;font-style:normal;font-weight:100 800;font-display:swap;src:url(/assets/fonts/jetbrains-mono-latin.woff2)format("woff2");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}#ui{--font-ui:"Meritous UI", ui-monospace, "Cascadia Mono", Consolas, Menlo, monospace;--font-display:"Meritous Display", "Palatino Linotype", "Book Antiqua", Palatino, Georgia, serif;--ink:#eef0ff;--glass:#090a20db;--rim:color-mix(in srgb, var(--pal-230) 38%, transparent);--glow:0 0 0 1px #00000080, 0 10px 40px #0000008c, 0 0 24px color-mix(in srgb, var(--pal-230) 14%, transparent);font-family:var(--font-ui);color:var(--ink);-webkit-font-smoothing:antialiased}#ui [hidden]{display:none!important}#ui p{margin:0}.prompt{top:max(13vh, var(--hud-h,0px) + 10px, env(safe-area-inset-top) + 8px);border:1px solid var(--rim);background:var(--glass);width:max-content;max-width:min(92vw,46rem);box-shadow:var(--glow);letter-spacing:.01em;text-align:center;border-radius:12px;padding:.65em 1.4em;font-size:clamp(13px,.6vw + 9px,18px);font-weight:600;line-height:1.35;position:fixed;left:50%;transform:translate(-50%)}.prompt.dim{color:#eef0ffbf}@media (prefers-reduced-motion:reduce){.prompt.dim{color:var(--ink)}}.card{border:1px solid var(--rim);background:var(--glass);min-width:min(20rem,86vw);max-width:92vw;box-shadow:var(--glow);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);text-align:center;border-radius:16px;gap:.35em;padding:1.3em 2em;font-size:clamp(13px,.5vw + 10px,17px);display:grid;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.card-title{font-family:var(--font-display);letter-spacing:.04em;text-shadow:0 0 18px color-mix(in srgb, var(--pal-230) 45%, transparent);font-size:1.7em;font-weight:700}.pause-time{font-variant-numeric:tabular-nums;color:var(--pal-230);font-size:1.15em}.pause-seed{opacity:.6;font-variant-numeric:tabular-nums;font-size:.85em}.quit{border-color:color-mix(in srgb, var(--pal-120) 55%, transparent)}.map{--s:min(100dvh - 5.5rem, (100vw - 3rem) * .68, 760px);padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:radial-gradient(#0a0c28c7,#03030ceb);flex-direction:column;justify-content:center;align-items:center;gap:.6rem;display:flex;position:fixed;inset:0}.map-head{max-width:calc(var(--s) * 632 / 432);text-align:center;color:var(--pal-230);text-shadow:0 0 12px color-mix(in srgb, var(--pal-230) 40%, transparent);font-size:clamp(11px,1.1vh + 5px,15px);line-height:1.35}.map-body{gap:calc(var(--s) * 3 / 432);padding:calc(var(--s) * 3 / 432);border:1px solid var(--rim);background:color-mix(in srgb, var(--pal-230) 22%, var(--pal-255));box-shadow:var(--glow);border-radius:10px;display:flex}.map-body canvas{background:var(--pal-255);border-radius:4px;display:block}.map-grid{width:var(--s);height:var(--s)}.map-pane{border-radius:4px;position:relative;overflow:hidden}.map-pane canvas{width:100%;height:100%;image-rendering:pixelated}.map-win{box-sizing:border-box;border:1px solid var(--pal-50);box-shadow:0 0 6px color-mix(in srgb, var(--pal-230) 60%, transparent);position:absolute}.map-side{width:calc(var(--s) * 200 / 432);flex-direction:column;justify-content:space-between;display:flex}.map-overview{aspect-ratio:1}.map-mini{aspect-ratio:200/229}@media (height<=520px){.map-pane canvas{image-rendering:auto}}#debug{white-space:pre;background:#00000080;border-radius:6px;padding:4px 7px;line-height:1.4}#ui #debug{top:auto;bottom:calc(max(10px, env(safe-area-inset-bottom)) + 3.4rem)}.hud{--gap:12px;--fs:clamp(12px, .28vw + 9.5px, 15px);--panel:#08091e8f;--heart:#ff4f79;--gold:var(--pal-240);font-size:var(--fs);font-variant-numeric:tabular-nums;text-shadow:0 1px 2px #000000bf;line-height:1.4;position:fixed;inset:0}.hud svg{fill:currentColor;flex:none;width:1.15em;height:1.15em;display:block}.hud-top{top:max(var(--gap), env(safe-area-inset-top));left:max(var(--gap), env(safe-area-inset-left));right:max(var(--gap), env(safe-area-inset-right));align-items:start;gap:var(--gap);grid-template-columns:1fr auto 1fr;display:grid;position:absolute}.hud-panel{border:1px solid color-mix(in srgb, var(--pal-230) 20%, transparent);background:var(--panel);-webkit-backdrop-filter:blur(10px)saturate(1.2);backdrop-filter:blur(10px)saturate(1.2);border-radius:12px;padding:.5em .85em;box-shadow:0 8px 28px #00000052,inset 0 1px #ffffff12}.hud-stats{justify-self:start}.hud-stats .hud-more{color:#e2e6ffbd;font-size:.93em}.hud-crystals{align-items:center;gap:.45em;font-weight:650;display:flex}.hud-crystals svg{color:var(--pal-230);filter:drop-shadow(0 0 4px color-mix(in srgb, var(--pal-230) 60%, transparent))}.hud-crystals .facet{fill:none;stroke:#05142873;stroke-width:1px}.hud-meters{grid-template-columns:auto 9.5em 1.4em;justify-self:center;align-items:center;gap:.28em .75em;font-size:.93em;display:grid}.meter-label{color:#e2e6ffdb}.meter-label.glow{color:#fff;animation:.429s linear infinite glow}@keyframes glow{0%{color:var(--pal-230);text-shadow:0 0 4px color-mix(in srgb, var(--pal-230) 45%, transparent)}to{color:#fff;text-shadow:0 0 10px var(--pal-230), 0 0 2px #fff}}.meter-level{text-align:right;color:var(--pal-230);font-weight:650}.meter,.hud-part,.hud-psi-track,.hud-boss-track,.hud-vital-track{background:#ffffff17;border-radius:99px;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff0d}.meter{height:.56em}.meter i,.hud-part i,.hud-psi-track i,.hud-boss-track i,.hud-vital-track i{clip-path:inset(0 calc(100% - var(--f,0) * 100%) 0 0 round 99px);position:absolute;inset:0}.meter i{background:linear-gradient(90deg, #3a8ee8, var(--pal-100) 40%, var(--pal-230));box-shadow:0 0 8px var(--pal-100)}.meter:after{content:"";background:repeating-linear-gradient(90deg,#0000 0 calc(3.33333% - 1px),#0607188c calc(3.33333% - 1px) 3.33333%);position:absolute;inset:0}.hud-life{justify-self:end;justify-items:end;gap:.3em;display:grid}.hud-lives{align-items:center;gap:.4em;font-weight:700;display:flex}.hud-lives svg{color:var(--gold);width:1.1em;height:1.1em}.hud-lives-n{min-width:1.4em}.hud-part{width:2.8em;height:.34em}.hud-part i{background:linear-gradient(90deg, #f59e2b, var(--gold))}.hud-artifacts{--a:clamp(22px, 4.2vh, 34px);top:calc(max(var(--gap), env(safe-area-inset-top)) + 6em);right:max(var(--gap), env(safe-area-inset-right));gap:calc(var(--a) * .17);display:grid;position:absolute}.hud-art{width:var(--a);height:var(--a);box-sizing:border-box;border:1px solid color-mix(in srgb, currentColor 30%, transparent);background:radial-gradient(circle, color-mix(in srgb, currentColor 16%, transparent), var(--panel) 72%);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:9px;place-items:center;display:grid;box-shadow:0 4px 14px #0000004d}.hud-art:not(.held){visibility:hidden}.hud .hud-art svg{fill:none;stroke:currentColor;stroke-width:1.7px;stroke-linecap:round;stroke-linejoin:round;width:74%;height:74%;filter:drop-shadow(0 0 3px color-mix(in srgb, currentColor 70%, transparent))}.art-ancient{color:var(--pal-230)}.art-key{color:var(--gold)}.art-seal{color:#ff6b93}.hud-boss{--boss:#ff3d6e;box-sizing:border-box;border-color:color-mix(in srgb, var(--boss) 45%, transparent);width:min(46rem,62vw);box-shadow:0 8px 28px #00000052, 0 0 22px color-mix(in srgb, var(--boss) 18%, transparent);grid-column:1/-1;grid-template-columns:auto auto 1fr;justify-self:center;align-items:center;gap:.7em;padding-block:.35em;display:grid}.hud .hud-boss svg{color:#ffe3ea;width:1.4em;height:1.4em;filter:drop-shadow(0 0 5px var(--boss))}.hud-boss-name{letter-spacing:.14em;color:#ffe3ea;font-weight:800}.hud-boss-track{height:.72em}.hud-boss-track i{background:linear-gradient(90deg, #7a0f30, var(--boss) 55%, #ffc2d2);filter:brightness(var(--c,1));box-shadow:0 0 10px var(--boss)}.hud-psi{left:50%;bottom:max(var(--gap), env(safe-area-inset-bottom));box-sizing:border-box;grid-template-columns:auto 1fr 3.2em;align-items:center;gap:.85em;width:min(46rem,62vw);padding-block:.4em;display:grid;position:absolute;transform:translate(-50%)}.hud-psi-label{letter-spacing:.03em;color:#e2e6ffdb;font-weight:650}.hud-psi-track{height:.62em}.hud-psi-track i{background:linear-gradient(90deg, #2aa6d6, var(--pal-230) 65%, #fff)}.hud-psi-n{text-align:right;color:var(--pal-230);font-weight:750}.hud-psi.live .hud-psi-track{box-shadow:0 0 14px color-mix(in srgb, var(--pal-230) 35%, transparent)}.hud-psi.recover .hud-psi-track i{background:linear-gradient(90deg, var(--pal-violet), var(--pal-120))}.hud-psi.recover .hud-psi-track{box-shadow:0 0 12px color-mix(in srgb, var(--pal-120) 25%, transparent)}.hud-psi.recover .hud-psi-n{color:#ff8fb0}.hud.normal .hud-life{display:none}.hud-vital-track{height:.62em}.hud-vital-track .life{background:linear-gradient(90deg, #e0153c, var(--heart) 55%, #ff9aab);box-shadow:0 0 10px var(--heart), inset 0 1px 0 #ffffff59;transition:clip-path .12s ease-out}.hud-vital-track .lost{background:#ffe0e5;transition:clip-path .35s ease-in .25s}.hud-vital-track .shield{background:linear-gradient(90deg, #3a8ee8, var(--pal-100) 60%, #fff);opacity:.7;transition:clip-path .12s ease-out}@media (pointer:coarse),(height<=540px){.hud{--gap:8px;--fs:11px}.hud-meters{grid-template-columns:auto 6.5em 1.4em}.hud-top{flex-wrap:wrap;max-width:calc(100% - 15rem);display:flex;right:auto}.hud-panel{border-radius:10px;padding:.35em .7em}.hud-life{order:-1;align-items:center;gap:.7em;display:flex}.hud:not(.expanded) .hud-more{display:none}.hud-artifacts{--a:26px;top:calc(max(8px, env(safe-area-inset-top)) + 50px);grid-template-columns:repeat(3, var(--a))}.hud-crystals{padding-block:.12em}.hud-boss{flex:1 0 100%;gap:.55em}.hud-psi{grid-template-columns:auto 1fr 2.9em;gap:.6em;width:min(26rem,46vw)}#ui #debug{top:calc(max(8px, env(safe-area-inset-top)) + 2.8rem);font-size:10px;bottom:auto}}.dlg{--speaker:#ff6f93;top:calc(var(--hud-h,0px) + 8px);box-sizing:border-box;border:1px solid color-mix(in srgb, var(--speaker) 45%, transparent);border-left:3px solid var(--speaker);background:var(--glass);width:max-content;max-width:calc(100vw - 24px);box-shadow:var(--glow);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:12px;padding:.7em 1.1em .55em;font-size:clamp(11px,2vw - 1.28px,15px);position:fixed;left:50%;transform:translate(-50%)}.dlg.bottom{--speaker:#b388ff;top:auto;bottom:calc(var(--psi-h,3.4rem) + 8px)}.dlg-name{letter-spacing:.12em;color:var(--speaker);padding-bottom:.4em;font-weight:800}.dlg-text{min-height:calc(var(--lines,1) * 1.4em);white-space:pre-wrap;font:1em/1.4 var(--font-ui)}.dlg-next{text-align:right;letter-spacing:.1em;color:var(--speaker);font-size:.8em;font-weight:700;animation:.8s ease-in-out infinite alternate cursor}@keyframes cursor{to{opacity:.35}}@media (pointer:coarse),(height<=540px){.dlg{padding:.5em .9em .4em;font-size:11px}}@media (pointer:coarse){.dlg.bottom{bottom:calc(max(18px, env(safe-area-inset-bottom)) + 2 * clamp(46px, 15vmin, 72px) + 8px)}}.seal p{text-align:center;font:700 clamp(17px, 1.4vw + 11px, 32px)/1 var(--font-display);letter-spacing:.3em;text-indent:.3em;color:#0a0710;text-shadow:0 0 2px #fffdf5,0 0 9px #fffdf5,0 0 22px #fffdf5bf;position:fixed;top:21.6667%;left:0;right:0;translate:0 -50%}.seal p+p{top:80%}.gameover{background:radial-gradient(#16060f 0%,#000 72%);place-items:center;animation:.5s ease-out fade-in;display:grid;position:fixed;inset:0}.gameover p{white-space:pre;letter-spacing:.08em;color:#fff;text-shadow:0 0 30px #e2557fbf,0 0 2px #fff;font-size:clamp(22px,3.6vw + 8px,60px);font-weight:800}@keyframes fade-in{0%{opacity:0}}.saving{z-index:1;pointer-events:auto;background:radial-gradient(#0a0c28f0,#000 70%);place-items:center;animation:.15s ease-out fade-in;display:grid;position:fixed;inset:0}.saving-box{border:1px solid var(--rim);background:var(--glass);min-width:min(20rem,80vw);box-shadow:var(--glow);letter-spacing:.02em;text-align:center;border-radius:14px;gap:.9em;padding:1.3em 1.8em 1.5em;font-size:clamp(14px,.5vw + 11px,18px);font-weight:650;display:grid}.saving-bar{height:.6em;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--pal-230) 30%, transparent);background:#ffffff14;border-radius:99px;overflow:hidden}.saving-bar i{transform-origin:0;background:linear-gradient(90deg, #2aa6d6, var(--pal-230) 70%, #fff);height:100%;box-shadow:0 0 12px var(--pal-230);display:block;transform:scaleX(0)}.saving.failed .saving-box{border-color:color-mix(in srgb, var(--pal-120) 60%, transparent)}.saving.failed .saving-text{color:#ff8fb0}.saving.failed .saving-bar i{background:var(--pal-120);box-shadow:none}#ui.ending-on>:not(.ending){display:none!important}.ending{position:fixed;inset:0}.ending:not([data-scene=ptext],[data-scene=stext]) :is(.end-bg,.end-text),.ending:not([data-scene=credits]) .end-credits{display:none}.end-bg{width:100%;height:100%;image-rendering:pixelated;position:absolute;inset:0}.end-text{padding:16px max(16px, env(safe-area-inset-right)) 16px max(16px, env(safe-area-inset-left));font:clamp(12px, min((100vw - 32px) / 39, 100dvh / 26), 20px)/1.5 var(--font-ui);white-space:pre-wrap;place-content:center;display:grid;position:absolute;inset:0}.end-text p{min-height:1.5em}@media (width<=600px){.end-text{white-space:normal;align-content:center;font-size:14px;display:block}.end-text p{display:inline}.end-text p:after{content:" "}.end-text p:empty{min-height:.8em;display:block}}.ending[data-scene=stext] .end-text{text-shadow:0 0 .6em color-mix(in srgb, currentColor 40%, transparent)}.end-credits{font-size:clamp(13px,3.1vh,26px);line-height:1.3;position:absolute;inset:0;overflow:hidden}.end-credit{left:max(16px, env(safe-area-inset-left));right:max(16px, env(safe-area-inset-right));text-shadow:0 1px 6px #000;grid-template-columns:1fr 1fr;align-items:baseline;column-gap:1.1em;display:grid;position:absolute}.end-credit span:first-child{text-align:right;letter-spacing:.08em;opacity:.72;font-size:.8em}.end-credit span:last-child{letter-spacing:.02em;font-weight:650}.end-logo{font:700 clamp(28px, 8vh, 74px)/1 var(--font-display);letter-spacing:.16em;background:linear-gradient(180deg, #fff 10%, var(--pal-230) 55%, #3a8ee8);color:#0000;filter:drop-shadow(0 0 18px color-mix(in srgb, var(--pal-230) 40%, transparent));-webkit-background-clip:text;background-clip:text;position:absolute;top:73.3333%;left:60%}.end-skip{display:none}@media (pointer:coarse){.end-skip{top:max(8px, env(safe-area-inset-top));right:max(8px, env(safe-area-inset-right));-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);min-width:4.4rem;height:40px;color:var(--ink);font:650 13px/1 var(--font-ui);letter-spacing:.06em;pointer-events:auto;touch-action:manipulation;-webkit-tap-highlight-color:transparent;background:#090a208c;border:1px solid #7df9ff59;border-radius:99px;padding:0 1.1rem;display:block;position:absolute}}.touch{pointer-events:auto;touch-action:none;-webkit-tap-highlight-color:transparent;position:fixed;inset:0}.touch-stick{--r:clamp(46px, 15vmin, 72px);left:calc(max(18px, env(safe-area-inset-left)) + var(--r));top:calc(100% - max(18px, env(safe-area-inset-bottom)) - var(--r));width:calc(2 * var(--r));height:calc(2 * var(--r));opacity:.5;background:radial-gradient(circle,#7df9ff1a 0 30%,#090a2047 31% 100%);border:1.5px solid #ffffff4d;border-radius:50%;transition:opacity .2s;position:absolute;translate:-50% -50%}.touch-stick.on{opacity:1;background:radial-gradient(circle,#7df9ff24 0 30%,#090a206b 31% 100%);border-color:#7df9ff8c;transition:none;box-shadow:0 0 24px #7df9ff33}.touch-knob{background:radial-gradient(circle at 35% 30%,#fff,#bfefff 40%,#5fb8d8);border-radius:50%;width:46%;height:46%;position:absolute;top:50%;left:50%;translate:-50% -50%;box-shadow:0 2px 10px #00000073,0 0 16px #7df9ff59}.touch-psi{--s:clamp(84px, 24vmin, 124px);right:max(22px, env(safe-area-inset-right));bottom:max(18px, env(safe-area-inset-bottom));width:var(--s);height:var(--s);color:#e1fcffe6;font-weight:800;font-size:calc(var(--s) * .18);letter-spacing:.14em;text-indent:.14em;opacity:.55;background:radial-gradient(circle,#7df9ff38,#090a204d 68%);border:1.5px solid #7df9ff73;border-radius:50%;place-items:center;transition:opacity .2s,transform .12s,box-shadow .2s;display:grid;position:absolute}.touch-psi.on{opacity:1;transition:none;transform:scale(.94);box-shadow:0 0 34px #7df9ff8c,inset 0 0 22px #7df9ff59}.touch-buttons{top:max(8px, env(safe-area-inset-top));right:max(8px, env(safe-area-inset-right));gap:6px;display:flex;position:absolute}.touch-buttons button{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);min-width:3.6rem;height:40px;color:var(--ink);font:650 12.5px/1 var(--font-ui);letter-spacing:.03em;opacity:.8;background:#090a2080;border:1px solid #7df9ff4d;border-radius:99px;padding:0 .9rem}.touch-buttons button.on{opacity:1;background:#7df9ff52}.touch-rotate{display:none}@media (orientation:portrait){.touch>*{display:none}.touch>.touch-rotate{text-align:center;background:radial-gradient(#121338,#05040a 75%);place-content:center;justify-items:center;gap:22px;padding:24px;font-size:17px;font-weight:600;line-height:1.4;display:grid;position:fixed;inset:0}}.touch-phone{border:3px solid var(--pal-230);width:42px;height:72px;box-shadow:0 0 22px color-mix(in srgb, var(--pal-230) 40%, transparent);border-radius:10px;animation:2.6s ease-in-out infinite turn}@keyframes turn{0%,25%{rotate:0deg}55%,85%{rotate:-90deg}to{rotate:0deg}}@media (prefers-reduced-motion:reduce){.touch-phone{animation:none;rotate:-90deg}.gameover,.saving,.dlg-next{animation:none}.meter-label.glow{text-shadow:0 0 10px var(--pal-230);animation:none}.hud-vital-track i{transition:none}}
