@font-face{font-family:IM Fell English;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/im-fell-english-latin-400-normal-BhowGHCQ.woff2) format("woff2"),url(/assets/im-fell-english-latin-400-normal-CxhBQSzl.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IM Fell English;font-style:italic;font-display:swap;font-weight:400;src:url(/assets/im-fell-english-latin-400-italic-DD_ylKHZ.woff2) format("woff2"),url(/assets/im-fell-english-latin-400-italic-hN89MLGX.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-ext-400-normal-g30qAdWV.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-400-normal-Dsrv2Tcn.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-400-normal-DZqxrq2p.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-400-normal-BTotfTJu.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-greek-400-normal-_efipK4i.woff2) format("woff2"),url(/assets/ibm-plex-sans-greek-400-normal-D9ESIMu3.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-vietnamese-400-normal-DG4YqDda.woff2) format("woff2"),url(/assets/ibm-plex-sans-vietnamese-400-normal-fK1oJ5dG.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-ext-400-normal-C5H60-Va.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-ext-400-normal-RBey6euL.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-cyrillic-ext-500-normal-Cs5J6C77.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-500-normal-DB5PtV2g.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-cyrillic-500-normal-CocWQlwt.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-500-normal-ByOcLdNv.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-greek-500-normal-JMMifIXV.woff2) format("woff2"),url(/assets/ibm-plex-sans-greek-500-normal-CuWXN6rf.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-vietnamese-500-normal-e4dixQRQ.woff2) format("woff2"),url(/assets/ibm-plex-sans-vietnamese-500-normal-BEb3_waV.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-ext-500-normal-DakdToA3.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-ext-500-normal-D0aIdm-b.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-cyrillic-ext-600-normal-DUMzJB7m.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-600-normal-Bz0x94Yp.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-cyrillic-600-normal-71GNu3SW.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-600-normal-BGq0mW3O.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-greek-600-normal-DzTrcv_p.woff2) format("woff2"),url(/assets/ibm-plex-sans-greek-600-normal-D-CqTdkO.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-vietnamese-600-normal-DpPYBSTl.woff2) format("woff2"),url(/assets/ibm-plex-sans-vietnamese-600-normal-DgdngZtN.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-ext-600-normal-DOrvGEcy.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-ext-600-normal-DIrixKbi.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-xuaO2J-f.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-DMdlQ8Kv.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-400-normal-BSMlKf0J.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-400-normal-CEL4l2ZJ.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-vietnamese-400-normal-BulugwFq.woff2) format("woff2"),url(/assets/ibm-plex-mono-vietnamese-400-normal-DDuiU_S-.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-ext-400-normal-D3D2R8hC.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BqneJy0T.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-500-normal-BIfNGwUT.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-cyrillic-500-normal-Bq9vWWag.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-500-normal-Ael50iVv.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-vietnamese-500-normal-DZ4AoWbu.woff2) format("woff2"),url(/assets/ibm-plex-mono-vietnamese-500-normal-C8zxqsMH.woff) format("woff");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-ext-500-normal-CAhNIIs5.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-ext-500-normal-CZ70TYgx.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-mono-latin-500-normal-DSY6xOcd.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-500-normal-CB9ihrfo.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg: #0B1020;--surface: #172033;--surface-2: #1f2a42;--edge: #2c3a58;--cyan: #4DE0DC;--violet: #A78BFA;--amber: #F4B860;--red: #F06B73;--text: #E8ECF4;--muted: #98A4B8;--font-title: "IM Fell English", Georgia, serif;--font-ui: "IBM Plex Sans", system-ui, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, Menlo, monospace;--ease-out: cubic-bezier(.16, 1, .3, 1)}html,body,#root{height:100%;margin:0;background:var(--bg);color:var(--text);font-family:var(--font-ui)}::selection{background:color-mix(in srgb,var(--cyan) 35%,transparent)}:focus-visible{outline:2px solid var(--amber);outline-offset:2px}.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums}@media (prefers-reduced-motion: reduce){*{animation-duration:.001ms!important;transition-duration:.001ms!important}}.sle{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden}.sle button{font:inherit;color:inherit;cursor:pointer}.btn{background:var(--surface);border:1px solid var(--edge);color:var(--text);padding:9px 16px;border-radius:6px;font-weight:500;transition:transform .18s var(--ease-out),border-color .18s,background .18s,box-shadow .18s}.btn:hover:not(:disabled){border-color:var(--amber);background:var(--surface-2);transform:translateY(-1px);box-shadow:0 6px 16px -8px #000000b3}.btn:active:not(:disabled){transform:translateY(0)}.btn:disabled{opacity:.45;cursor:not-allowed}.btn.primary{background:var(--amber);color:#1a1205;border-color:var(--amber);font-weight:600}.btn.primary:hover:not(:disabled){background:#ffca78}.btn.ghost{background:transparent}.btn.small{padding:5px 11px;font-size:13px}.panel{background:linear-gradient(180deg,#1f2a42eb,#172033f0);border:1px solid var(--edge);border-radius:10px;box-shadow:0 18px 40px -18px #000c,inset 0 1px #ffffff0a;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.muted{color:var(--muted)}.chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border:1px solid var(--edge);border-radius:99px;font-size:13px;background:#0b102099}.fade-in{animation:fade .5s var(--ease-out) both}@keyframes fade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.menu{display:grid;place-items:center;text-align:center;background:radial-gradient(ellipse at 50% 60%,#0b102033,#0b1020d9)}.menu h1{font-family:var(--font-title);font-weight:400;font-size:clamp(2.2rem,7vw,5.2rem);line-height:1;margin:0;position:relative;letter-spacing:-.01em;text-wrap:balance}.menu h1 span{display:block}.menu h1:before,.menu h1:after{content:attr(data-t);position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;mix-blend-mode:screen}.menu h1:before{color:var(--cyan);opacity:.45;animation:ghostA 5s ease-in-out infinite}.menu h1:after{color:var(--violet);opacity:.4;animation:ghostB 5s ease-in-out infinite}@keyframes ghostA{0%,to{transform:translate(-5px)}50%{transform:translate(-1px)}}@keyframes ghostB{0%,to{transform:translate(5px)}50%{transform:translate(1px)}}.menu .sub{font-family:var(--font-title);font-style:italic;color:var(--muted);font-size:clamp(1rem,2.2vw,1.35rem);margin:18px 0 34px}.menu nav{display:grid;gap:10px;width:min(300px,80vw);margin:0 auto}.menu nav .btn{padding:12px 18px;font-size:16px}.menu .cat{position:absolute;right:4vw;bottom:3vh;cursor:pointer;transition:transform .3s var(--ease-out)}.menu .cat:hover{transform:scale(1.06) rotate(-3deg)}.dlg{position:absolute;left:0;right:0;margin:0 auto;bottom:22px;width:min(820px,calc(100vw - 32px));display:grid;grid-template-columns:auto 1fr;gap:16px;padding:14px 18px 14px 14px;align-items:center;z-index:20}.dlg .who{font-family:var(--font-title);color:var(--amber);font-size:1.05rem;margin-bottom:2px}.dlg .txt{font-size:1.05rem;line-height:1.5;min-height:3em;max-width:62ch}.dlg .txt.note{font-family:var(--font-title);font-style:italic;font-size:1.15rem}.dlg .acts{grid-column:2;display:flex;justify-content:space-between;align-items:center;font-size:13px}.hud-top{position:absolute;top:14px;left:14px;right:14px;display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;pointer-events:none}.hud-top>*{pointer-events:auto}.hud-row{display:flex;gap:8px;flex-wrap:wrap}.reticle{position:absolute;left:50%;top:50%;width:8px;height:8px;margin:-4px;border-radius:50%;border:1.5px solid rgba(232,236,244,.8);transition:transform .2s var(--ease-out),border-color .2s,background .2s}.reticle.on{transform:scale(2.2);border-color:var(--cyan);background:#4de0dc40}.prompt{position:absolute;left:0;right:0;margin:0 auto;width:fit-content;max-width:calc(100vw - 32px);bottom:14%;padding:10px 16px;text-align:center}kbd{font-family:var(--font-mono);font-size:12px;background:var(--bg);border:1px solid var(--edge);border-bottom-width:2px;padding:1px 6px;border-radius:4px}.scrim{position:absolute;top:0;right:0;bottom:0;left:0;background:#050812b8;display:grid;place-items:center;z-index:30;padding:16px;animation:fade .3s both}.sheet{width:min(980px,100%);max-height:calc(100vh - 32px);overflow:auto;padding:24px}.sheet h2{font-family:var(--font-title);font-weight:400;font-size:1.9rem;margin:0 0 4px}.blueprint{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;margin-top:16px}.bp{text-align:left;padding:12px 14px;border:1px dashed rgba(77,224,220,.35);border-radius:8px;background:#4de0dc0a;display:grid;grid-template-columns:38px 1fr;gap:4px 12px;align-items:center;transition:border-color .2s,background .2s,transform .18s var(--ease-out)}.bp:hover:not(:disabled){border-color:var(--cyan);background:#4de0dc1a;transform:translateY(-2px)}.bp:disabled{cursor:not-allowed;opacity:.55;border-color:#98a4b840}.bp .n{grid-row:span 2;font-family:var(--font-mono);font-size:1.5rem;color:var(--cyan)}.bp.done .n{color:var(--amber)}.bp b{font-weight:600}.bp small{color:var(--muted)}.nb{display:grid;grid-template-columns:200px 1fr;gap:20px}.nb ul{list-style:none;margin:0;padding:0;display:grid;gap:4px;align-content:start}.nb li button{width:100%;text-align:left;background:none;border:0;padding:7px 10px;border-radius:6px;color:var(--muted)}.nb li button[aria-current=true]{background:var(--surface-2);color:var(--text)}.nb li button:disabled{opacity:.4;cursor:not-allowed}.page{background:#e9dfc8;color:#2a2116;border-radius:4px;padding:26px 30px;box-shadow:inset 0 0 40px #785a2840,0 10px 30px -10px #000;transform:rotate(-.4deg);font-family:var(--font-title)}.page h3{margin:0 0 8px;font-weight:400;font-size:1.7rem}.page .clue{font-style:italic;font-size:1.2rem;margin-bottom:14px}.page .eq{font-family:var(--font-mono);font-size:.95rem;background:#3c280a14;padding:6px 10px;border-radius:4px;margin:6px 0}.page p{font-family:var(--font-ui);line-height:1.55;margin:8px 0;max-width:62ch}@media (max-width: 700px){.nb{grid-template-columns:1fr}}.lvl{display:grid;grid-template-rows:auto 1fr;padding:14px;gap:10px}.lvl-head{display:flex;align-items:center;gap:12px;flex-wrap:wrap;padding:10px 14px}.lvl-head h2{font-family:var(--font-title);font-weight:400;font-size:1.4rem;margin:0}.lvl-head .obj{flex:1 1 260px;color:var(--muted);font-size:14px}.lvl-head .obj b{color:var(--text);font-weight:500}.lvl-body{min-height:0;overflow:auto;padding:14px}.hint{color:var(--amber);font-size:14px;padding:8px 12px;border:1px solid rgba(244,184,96,.35);border-radius:8px;background:#f4b86012}.win{text-align:center;max-width:520px;padding:28px}.win h2{color:var(--amber)}.toggle{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid var(--edge)}.bench{display:grid;gap:16px;align-items:start}.bench-col{display:grid;gap:12px;align-content:start}@media (max-width: 900px){.bench{grid-template-columns:minmax(0,1fr)!important}}.lvl{background:radial-gradient(ellipse at 50% 45%,#080a1240,#06070cb3)}.lvl-body{background:#121826b8;-webkit-backdrop-filter:blur(8px) saturate(.85);backdrop-filter:blur(8px) saturate(.85)}select,input[type=range]{font:inherit}select{background:var(--surface-2);color:var(--text);border:1px solid var(--edge);border-radius:6px;padding:6px 8px}.portrait{position:relative;flex:none;border-radius:50%/46%;padding:5%;background:linear-gradient(145deg,#e6c27a,#8a6a2c 45%,#d9b266 70%,#6e5220);box-shadow:0 2px 8px #0000008c,inset 0 0 0 1px #ffebb459}.portrait-in{position:relative;width:100%;height:100%;border-radius:50%/46%;overflow:hidden;background:#2a1a10;box-shadow:0 0 0 3px #3b2414,inset 0 0 6px #000}.portrait-in img{width:100%;height:100%;object-fit:cover;object-position:50% 12%;display:block}.portrait-schrodinger img{filter:grayscale(1) sepia(.35) contrast(1.05) brightness(1.05);object-position:50% 28%}.portrait-heisenberg img{filter:sepia(.55) saturate(.8) contrast(1.05) brightness(.95);transform:scale(1.15);transform-origin:50% 25%;object-position:50% 8%}.portrait-in:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:radial-gradient(ellipse at 50% 45%,transparent 55%,rgba(20,10,0,.55) 100%)}.portrait-narrator .portrait-in{background:#1a1410}.portrait-pulse{position:absolute;top:2%;right:2%;width:10px;height:10px;border-radius:50%;animation:portrait-pulse 1.2s ease-in-out infinite}@keyframes portrait-pulse{0%,to{opacity:.35;transform:scale(.8)}50%{opacity:1;transform:scale(1.25)}}@media (prefers-reduced-motion: reduce){.portrait-pulse{animation:none}}.hud-col{display:grid;gap:8px;justify-items:start;align-content:start}.checklist{padding:10px 14px;max-width:min(340px,calc(100vw - 32px));font-size:13px}.checklist .cl-head{font-family:var(--font-title);font-size:15px;color:var(--amber);margin-bottom:6px}.checklist ul{list-style:none;margin:0;padding:0;display:grid;gap:6px}.checklist li{display:grid;grid-template-columns:16px 1fr;gap:6px}.checklist li>span{color:var(--muted)}.checklist li.have{color:var(--muted)}.checklist li.have>span{color:var(--amber)}.checklist small{display:block;color:var(--muted);font-style:italic;font-size:12px;margin-top:1px}.checklist .cl-foot{margin-top:8px;color:var(--cyan);font-size:12px}.toast{position:absolute;left:0;right:0;margin:0 auto;width:fit-content;top:18%;padding:10px 18px;text-align:center;max-width:min(520px,calc(100vw - 32px));border-color:#f4b86080}.toast b{color:var(--amber);font-weight:500}.toast-sub{margin-top:4px;font-size:14px;color:var(--text);font-style:italic}.cut{position:absolute;top:0;right:0;bottom:0;left:0;z-index:18;pointer-events:none}.cut>.btn,.cut>.dlg{pointer-events:auto}.cut-bars:before,.cut-bars:after{content:"";position:absolute;left:0;right:0;height:7vh;background:#050302;animation:cut-bar .9s var(--ease-out) both}.cut-bars:before{top:0;transform-origin:top}.cut-bars:after{bottom:0;transform-origin:bottom}@keyframes cut-bar{0%{transform:scaleY(0)}}.cut-fade{position:absolute;top:0;right:0;bottom:0;left:0;background:#000;animation:cut-fade 1.6s ease-out .2s both}@keyframes cut-fade{0%{opacity:1}to{opacity:0}}.cut-panic{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;transition:opacity .6s;background:radial-gradient(ellipse at center,transparent 45%,rgba(150,14,10,.55) 100%)}.cut-panic.on{opacity:1;animation:cut-pulse .72s ease-in-out infinite}@keyframes cut-pulse{0%,to{opacity:.55}18%{opacity:1}40%{opacity:.7}52%{opacity:.95}}.cut-skip{position:absolute;top:calc(7vh + 12px);right:16px}.cut-cap{bottom:calc(7vh + 14px);cursor:pointer}.cut-cap.narr .txt{color:#e9dcc0}@media (prefers-reduced-motion: reduce){.cut-panic.on{animation:none;opacity:.8}.cut-bars:before,.cut-bars:after,.cut-fade{animation-duration:.01s}}.bubble{position:relative;transform:translateY(-50%);width:max-content;max-width:min(300px,70vw);padding:8px 12px 9px;border-radius:10px;font-size:14px;line-height:1.4;color:var(--text);background:#140d08e0;border:1px solid rgba(244,184,96,.45);box-shadow:0 8px 24px -10px #000c;animation:bubble-in .28s var(--ease-out) both}.bubble b{display:block;font-family:var(--font-title);font-weight:400;font-size:13px;color:var(--amber);margin-bottom:1px}.bubble-heisenberg{border-color:#f06b7380}.bubble-heisenberg b{color:var(--red)}.bubble:after{content:"";position:absolute;left:50%;bottom:-7px;width:12px;height:12px;background:inherit;border:inherit;border-top:0;border-left:0;transform:translate(-50%) rotate(45deg)}@keyframes bubble-in{0%{opacity:0;transform:translateY(-40%) scale(.96)}}.hud-top{align-items:flex-start}.tutor-open{position:absolute;left:16px;bottom:16px;z-index:25}.tutor{position:absolute;right:16px;bottom:16px;z-index:40;width:min(380px,calc(100vw - 32px));height:min(560px,calc(100vh - 32px));display:flex;flex-direction:column;padding:12px;gap:10px}.tutor header{display:grid;grid-template-columns:auto 1fr auto auto;gap:10px;align-items:center}.tutor .who{font-family:var(--font-title);font-size:20px}.tutor-sub{font-size:12px}.tutor-log{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:8px;padding-right:4px}.tutor-log p{margin:0;padding:8px 11px;border-radius:9px;line-height:1.45;font-size:14px}.tutor-log .him{background:var(--surface-2);border:1px solid var(--edge);align-self:flex-start;max-width:92%}.tutor-log .me{background:color-mix(in srgb,var(--amber) 22%,var(--surface));align-self:flex-end;max-width:85%}.tutor-err{color:var(--red)}.tutor form{display:flex;gap:6px}.tutor input{flex:1;min-width:0;background:var(--bg);color:var(--text);border:1px solid var(--edge);border-radius:7px;padding:8px 10px;font:inherit;font-size:14px}
