@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:500;src:url(./rajdhani-devanagari-500-normal-B_DH_jja.woff2) format("woff2"),url(./rajdhani-devanagari-500-normal-BPH8g_s8.woff) format("woff");unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:500;src:url(./rajdhani-latin-ext-500-normal-DiyUS11w.woff2) format("woff2"),url(./rajdhani-latin-ext-500-normal-CyRWJZ5B.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:Rajdhani;font-style:normal;font-display:swap;font-weight:500;src:url(./rajdhani-latin-500-normal-ByNUCHrt.woff2) format("woff2"),url(./rajdhani-latin-500-normal-DfvNI-Td.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:Rajdhani;font-style:normal;font-display:swap;font-weight:600;src:url(./rajdhani-devanagari-600-normal-DhS7ScYx.woff2) format("woff2"),url(./rajdhani-devanagari-600-normal-BtY48IV_.woff) format("woff");unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:600;src:url(./rajdhani-latin-ext-600-normal-C9ZjJQAt.woff2) format("woff2"),url(./rajdhani-latin-ext-600-normal-BleIgkPp.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:Rajdhani;font-style:normal;font-display:swap;font-weight:600;src:url(./rajdhani-latin-600-normal-CXCVEoA9.woff2) format("woff2"),url(./rajdhani-latin-600-normal-Dx02qI2_.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:Rajdhani;font-style:normal;font-display:swap;font-weight:700;src:url(./rajdhani-devanagari-700-normal-BQQOj9BB.woff2) format("woff2"),url(./rajdhani-devanagari-700-normal-DBRwWuxA.woff) format("woff");unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:700;src:url(./rajdhani-latin-ext-700-normal-S6aYESQK.woff2) format("woff2"),url(./rajdhani-latin-ext-700-normal-BPaQ7tlD.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:Rajdhani;font-style:normal;font-display:swap;font-weight:700;src:url(./rajdhani-latin-700-normal-BPDUZo87.woff2) format("woff2"),url(./rajdhani-latin-700-normal-e0Uj8ZlN.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:Architects Daughter;font-style:normal;font-display:swap;font-weight:400;src:url(./architects-daughter-latin-ext-400-normal-BsHeVfRr.woff2) format("woff2"),url(./architects-daughter-latin-ext-400-normal-FqHtA13I.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:Architects Daughter;font-style:normal;font-display:swap;font-weight:400;src:url(./architects-daughter-latin-400-normal-DOGE_9Aw.woff2) format("woff2"),url(./architects-daughter-latin-400-normal-Ze4cbGW2.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:Caveat;font-style:normal;font-display:swap;font-weight:500;src:url(./caveat-cyrillic-ext-500-normal-DcrB4vVx.woff2) format("woff2"),url(./caveat-cyrillic-ext-500-normal-DqTXtm5N.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:Caveat;font-style:normal;font-display:swap;font-weight:500;src:url(./caveat-cyrillic-500-normal-DpMZbbjM.woff2) format("woff2"),url(./caveat-cyrillic-500-normal-DLSfp5IU.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Caveat;font-style:normal;font-display:swap;font-weight:500;src:url(./caveat-latin-ext-500-normal-jKqJW7bC.woff2) format("woff2"),url(./caveat-latin-ext-500-normal-wUUXxlbS.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:Caveat;font-style:normal;font-display:swap;font-weight:500;src:url(./caveat-latin-500-normal-B9SDL8cy.woff2) format("woff2"),url(./caveat-latin-500-normal-Do9veZfZ.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:Homemade Apple;font-style:normal;font-display:swap;font-weight:400;src:url(./homemade-apple-latin-400-normal-BTOiQ2xw.woff2) format("woff2"),url(./homemade-apple-latin-400-normal-BBARCPg0.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:Indie Flower;font-style:normal;font-display:swap;font-weight:400;src:url(./indie-flower-latin-ext-400-normal-CMHEUXE6.woff2) format("woff2"),url(./indie-flower-latin-ext-400-normal-B8wL109X.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:Indie Flower;font-style:normal;font-display:swap;font-weight:400;src:url(./indie-flower-latin-400-normal-DFHVYtpv.woff2) format("woff2"),url(./indie-flower-latin-400-normal-BinrgpLs.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:Just Another Hand;font-style:normal;font-display:swap;font-weight:400;src:url(./just-another-hand-latin-ext-400-normal-ByU11rW1.woff2) format("woff2"),url(./just-another-hand-latin-ext-400-normal-gY63lWxY.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:Just Another Hand;font-style:normal;font-display:swap;font-weight:400;src:url(./just-another-hand-latin-400-normal-DT0qUbXr.woff2) format("woff2"),url(./just-another-hand-latin-400-normal-D4IF-823.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:Kalam;font-style:normal;font-display:swap;font-weight:400;src:url(./kalam-devanagari-400-normal-Dy6c0U2e.woff2) format("woff2"),url(./kalam-devanagari-400-normal-Dyzod-UE.woff) format("woff");unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Kalam;font-style:normal;font-display:swap;font-weight:400;src:url(./kalam-latin-ext-400-normal-DtcdGa4L.woff2) format("woff2"),url(./kalam-latin-ext-400-normal-AcQmRO9z.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:Kalam;font-style:normal;font-display:swap;font-weight:400;src:url(./kalam-latin-400-normal-BthBl_aR.woff2) format("woff2"),url(./kalam-latin-400-normal-Bl-H2BUA.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:Sue Ellen Francisco;font-style:normal;font-display:swap;font-weight:400;src:url(./sue-ellen-francisco-latin-400-normal-BiY6ILBe.woff2) format("woff2"),url(./sue-ellen-francisco-latin-400-normal-CpJuH7to.woff) format("woff")}@font-face{font-family:Covered By Your Grace;font-style:normal;font-display:swap;font-weight:400;src:url(./covered-by-your-grace-latin-400-normal-otpn24hA.woff2) format("woff2"),url(./covered-by-your-grace-latin-400-normal-CgK0HgSs.woff) format("woff")}@font-face{font-family:Patrick Hand SC;font-style:normal;font-display:swap;font-weight:400;src:url(./patrick-hand-sc-vietnamese-400-normal-TK4ku8rS.woff2) format("woff2"),url(./patrick-hand-sc-vietnamese-400-normal-DVDeIivH.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:Patrick Hand SC;font-style:normal;font-display:swap;font-weight:400;src:url(./patrick-hand-sc-latin-ext-400-normal-l3-Qz68M.woff2) format("woff2"),url(./patrick-hand-sc-latin-ext-400-normal-C78V92mL.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:Patrick Hand SC;font-style:normal;font-display:swap;font-weight:400;src:url(./patrick-hand-sc-latin-400-normal-6x4ooQdm.woff2) format("woff2"),url(./patrick-hand-sc-latin-400-normal-CNIyA2XY.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:Reenie Beanie;font-style:normal;font-display:swap;font-weight:400;src:url(./reenie-beanie-latin-400-normal-4a-HEdeI.woff2) format("woff2"),url(./reenie-beanie-latin-400-normal-vYxg_nup.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:Rock Salt;font-style:normal;font-display:swap;font-weight:400;src:url(./rock-salt-latin-400-normal-ATTG4WQR.woff2) format("woff2"),url(./rock-salt-latin-400-normal-1xRqa3fS.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:Shadows Into Light;font-style:normal;font-display:swap;font-weight:400;src:url(./shadows-into-light-latin-ext-400-normal-DvTWCOp9.woff2) format("woff2"),url(./shadows-into-light-latin-ext-400-normal-DUnxq3T3.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:Shadows Into Light;font-style:normal;font-display:swap;font-weight:400;src:url(./shadows-into-light-latin-400-normal-DLUEKdH9.woff2) format("woff2"),url(./shadows-into-light-latin-400-normal-C6MG6Ljx.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:300;src:url(./ibm-plex-sans-latin-300-normal-b4i7YzLG.woff2) format("woff2"),url(./ibm-plex-sans-latin-300-normal-C9Of02-5.woff) format("woff")}@font-face{font-family:IBM Plex Sans;font-style:italic;font-display:swap;font-weight:300;src:url(./ibm-plex-sans-latin-300-italic-CgWa6vcm.woff2) format("woff2"),url(./ibm-plex-sans-latin-300-italic-R4tTyIxl.woff) format("woff")}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(./ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2) format("woff2"),url(./ibm-plex-mono-latin-400-normal-CvHOgSBP.woff) format("woff")}@font-face{font-family:Orbitron;font-style:normal;font-display:swap;font-weight:400 900;src:url(./orbitron-latin-wght-normal-Du7j2Vp2.woff2) format("woff2-variations");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: #050308;--panel: rgba(10, 6, 18, .86);--line: rgba(180, 140, 255, .25);--text: #e8e2f4;--muted: #9a90b0;--accent: #b45cff;--red: #ff3b2f;--orange: #ff9a1f;--yellow: #ffe01f;--green: #5cff3a;--blue: #3ec7ff;--violet: #a35cff;--rainbow: linear-gradient(90deg, var(--red), var(--orange), var(--yellow), var(--green), var(--blue), var(--violet));--room: var(--accent);--ui-scale: 1;--ui-scale-title: 1;--ui-floor: 0px;--safe: 0px}*{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;height:100%;overflow:hidden;background:var(--bg);color:var(--text);font-family:Rajdhani,system-ui,sans-serif}canvas#game{position:fixed;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block}#hud,.overlay,#finale,#screens,#songbook,#paintbox,#shipmap{zoom:var(--ui, 1)}body.text-large{--ui-scale: 1.4;--ui-scale-title: 1.2;--ui-floor: 16px;--safe: 5vh 5vw}body.text-large #hud{inset:var(--safe)}body.text-large #screen-pause .panel{max-width:min(1040px,94vw)}body.text-large #screen-pause .settings-tabs{max-width:720px}body.text-large #screen-pause .settings:not(.hidden){display:block;columns:2;column-gap:48px;max-width:960px}body.text-large #screen-pause .settings>*{break-inside:avoid;margin-bottom:10px}body.text-large #screen-pause .settings>.setting-note{margin-top:-6px;break-before:avoid}body.text-large #screen-pause .controls{grid-template-columns:repeat(4,auto)}.hidden{display:none!important}h1,h2,.btn,.eyebrow,#objective span,kbd,.pad-display,.pad-keys button{font-family:Orbitron,sans-serif}#screens{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none}.screen{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:safe center;gap:18px;padding:24px;pointer-events:auto;overflow-y:auto;background:radial-gradient(ellipse at center,#14082873,#030106e6)}.screen h2,.overlay h2{font-size:calc(clamp(20px,2.6vw,30px) * var(--ui-scale-title));letter-spacing:.12em;text-transform:uppercase;text-align:center}.sub{color:var(--muted);text-align:center;font-size:max(calc(18px * var(--ui-scale)),var(--ui-floor))}.row{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}.row.col{flex-direction:column;align-items:stretch}.eyebrow{color:var(--muted);letter-spacing:.3em;text-transform:uppercase;font-size:max(calc(12px * var(--ui-scale)),var(--ui-floor))}.btn{border:1px solid var(--line);background:#ffffff0a;color:var(--text);padding:12px 26px;font-size:max(calc(14px * var(--ui-scale)),var(--ui-floor));letter-spacing:.18em;text-transform:uppercase;cursor:pointer;clip-path:polygon(10px 0,100% 0,calc(100% - 10px) 100%,0 100%);transition:background .15s,transform .1s,box-shadow .15s}.btn:hover{background:#b45cff2e}.btn:active{transform:scale(.97)}.btn.primary{background:linear-gradient(90deg,#6a1fd0,#b45cff);border-color:transparent;font-weight:700}.btn.primary:hover{box-shadow:0 0 24px #b45cffb3}#screen-title{background:linear-gradient(90deg,#030106f0,#030106b8 34%,#03010614 46%);align-items:flex-start;padding-left:clamp(24px,4.5vw,84px);overflow:hidden}#title-blueprint{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block;z-index:0;pointer-events:auto}.title-content{position:relative;z-index:1;display:flex;flex-direction:column;align-items:flex-start;gap:16px;max-width:420px}.title-content h1{font-size:clamp(36px,5.2vw,76px);font-weight:900;letter-spacing:.16em;line-height:1.02;white-space:nowrap;filter:drop-shadow(0 0 18px rgba(255,80,200,.35))}.title-content h1 span,.title-grad{background:var(--rainbow);-webkit-background-clip:text;background-clip:text;color:transparent}.tagline{font-size:max(calc(20px * var(--ui-scale)),var(--ui-floor));color:var(--muted);letter-spacing:.04em;max-width:390px}.title-buttons{min-width:240px;margin-top:6px}#btn-new[data-sure]{padding:4px 12px;line-height:1.15;white-space:nowrap}#btn-new[data-sure] small{display:block;font-size:.72em;font-weight:400;letter-spacing:.04em;text-transform:none}.hint{color:var(--muted);font-size:max(calc(14px * var(--ui-scale)),var(--ui-floor));opacity:.75}.panel{background:var(--panel);border:1px solid var(--line);padding:32px 36px;max-width:640px;width:100%;display:flex;flex-direction:column;gap:14px;align-items:center;text-align:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);clip-path:polygon(0 0,calc(100% - 22px) 0,100% 22px,100% 100%,22px 100%,0 calc(100% - 22px))}.briefing-text{font-size:max(calc(19px * var(--ui-scale)),var(--ui-floor));line-height:1.45}.controls{display:grid;grid-template-columns:repeat(2,auto);gap:8px 28px;font-size:max(calc(15px * var(--ui-scale)),var(--ui-floor));color:var(--muted);margin:6px 0;text-align:left}kbd{display:inline-block;min-width:40px;padding:3px 6px;margin-right:6px;border:1px solid var(--line);font-size:max(calc(10px * var(--ui-scale)),var(--ui-floor));color:var(--text);text-align:center}.settings{display:flex;flex-direction:column;gap:12px;width:100%;max-width:360px;text-align:left;min-height:150px}.settings-tabs{display:flex;width:100%;max-width:360px;border-bottom:1px solid var(--line)}.settings-tabs button{flex:1;padding:8px 4px;background:none;border:0;border-bottom:2px solid transparent;margin-bottom:-1px;color:var(--muted);font:700 max(calc(12px * var(--ui-scale)),var(--ui-floor)) "Orbitron",sans-serif;letter-spacing:.15em;text-transform:uppercase;cursor:pointer}.settings-tabs button:hover{color:var(--text)}.settings-tabs button.on{color:var(--text);border-bottom-color:var(--accent)}.settings label{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:max(calc(15px * var(--ui-scale)),var(--ui-floor))}.settings input{width:160px;accent-color:var(--accent)}.settings select{width:160px;padding:4px 6px;background:var(--panel);color:var(--text);border:1px solid var(--line);font:600 max(calc(14px * var(--ui-scale)),var(--ui-floor)) "Rajdhani",sans-serif}.settings .setting-note{margin:-6px 0 0;font-size:max(calc(13px * var(--ui-scale)),var(--ui-floor));line-height:1.3;color:var(--muted);text-align:right}.settings .setting-value{margin-left:auto;color:var(--muted);font-size:max(calc(13px * var(--ui-scale)),var(--ui-floor))}#controls-settings:empty{display:none}#progress-title:empty{display:none}#btn-shipmap kbd{margin:0 0 0 10px;min-width:0;padding:1px 6px;vertical-align:1px}@media (min-width: 761px){#screen-pause .panel{max-width:720px}#screen-pause .row.col{flex-direction:row;gap:10px}#screen-pause .row.col .btn{flex:1 0 auto;padding-inline:12px;font-size:max(calc(12px * var(--ui-scale)),var(--ui-floor));letter-spacing:.1em;white-space:nowrap}}@media (min-width: 761px) and (max-height: 860px){#screen-pause .panel{padding:22px 32px;gap:10px}#screen-pause .settings{gap:9px}}#hud{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;-webkit-user-select:none;user-select:none}#crosshair{position:absolute;left:50%;top:50%;width:0;height:0}#crosshair .dot{position:absolute;width:4px;height:4px;left:-2px;top:-2px;background:#fff;border-radius:50%;box-shadow:0 0 6px #fff;transition:transform .15s,background .15s}#crosshair.on .dot{transform:scale(2.6);background:transparent;border:1px solid var(--room);box-shadow:0 0 8px var(--room)}#prompt{position:absolute;left:50%;bottom:12.5%;transform:translate(-50%);white-space:nowrap;font-size:max(calc(17px * var(--ui-scale)),var(--ui-floor));font-weight:600;letter-spacing:.06em;text-shadow:0 0 8px rgba(0,0,0,.9);opacity:0;transition:opacity .12s}#prompt.on{opacity:1}#prompt kbd{border-color:var(--room);color:var(--room)}#relock{position:absolute;left:50%;top:calc(50% + 28px);transform:translate(-50%);white-space:nowrap;font-size:max(calc(15px * var(--ui-scale)),var(--ui-floor));font-weight:600;letter-spacing:.06em;color:var(--muted);text-shadow:0 0 8px rgba(0,0,0,.9);opacity:0;transition:opacity .2s}#relock.on{opacity:1}#objective{position:absolute;left:24px;top:20px;max-width:min(420px,60vw);border-left:2px solid var(--accent);padding:4px 12px;background:linear-gradient(90deg,rgba(10,6,18,.6),transparent)}#objective span{font-size:max(calc(10px * var(--ui-scale)),var(--ui-floor));letter-spacing:.3em;text-transform:uppercase;color:var(--accent)}#objective p{font-size:max(calc(17px * var(--ui-scale)),var(--ui-floor));font-weight:600;margin-top:2px}#objective.flash{animation:obj-flash 1.4s ease-out}@keyframes obj-flash{0%,30%{box-shadow:0 0 24px #b45cffb3;background-color:#b45cff40}}#room-label{position:absolute;top:20px;left:50%;transform:translate(-50%);text-align:center;white-space:nowrap;padding:6px 28px 0;background:radial-gradient(ellipse at center,rgba(10,6,18,.7),transparent 80%);font:600 max(calc(22px * var(--ui-scale)),var(--ui-floor)) "Rajdhani",sans-serif;letter-spacing:.18em;text-transform:uppercase;opacity:0}#room-label:after{content:"";display:block;height:2px;margin:5px auto 0;background:linear-gradient(90deg,transparent,var(--room),transparent)}#room-label.show{animation:room-in 3.2s ease-out forwards}#room-label small{display:block;font:400 max(calc(10px * var(--ui-scale)),var(--ui-floor)) "Orbitron",sans-serif;letter-spacing:.3em;color:var(--muted);margin-bottom:2px}@keyframes room-in{0%{opacity:0}12%,72%{opacity:1}to{opacity:0}}@media (max-width: 1100px){#room-label{top:120px}}#messages{position:absolute;bottom:18%;left:50%;transform:translate(-50%);width:min(640px,90vw);display:flex;flex-direction:column;gap:8px;align-items:center}#messages .msg{padding:8px 16px;background:var(--panel);border:1px solid var(--line);font-size:max(calc(17px * var(--ui-scale)),var(--ui-floor));font-weight:600;text-align:center;animation:msg-in .3s ease-out,msg-out .5s ease-in 3.5s forwards}@keyframes msg-in{0%{transform:translateY(10px);opacity:0}}@keyframes msg-out{to{opacity:0}}#whispers{position:absolute;right:28px;bottom:26%;display:flex;flex-direction:column;align-items:flex-end;gap:6px}#encore-reveal{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:24px}.encore{position:relative;padding:4px 12px;background:radial-gradient(ellipse at center,rgba(8,2,14,.75),transparent 80%);font:600 max(calc(21px * var(--ui-scale)),var(--ui-floor)) "Rajdhani",sans-serif;letter-spacing:.12em;color:#ff4fa0;text-shadow:0 0 12px rgba(255,60,160,.8);animation:encore-in .8s steps(8) both,encore-jitter 2.4s steps(1) infinite,msg-out .8s ease-in 4.4s forwards}.encore.big{background:none;font-size:calc(clamp(22px,3.4vw,40px) * var(--ui-scale-title));text-align:center;max-width:900px;animation:encore-in 1s steps(10) both,encore-jitter 1.8s steps(1) infinite}.encore:before,.encore:after{content:attr(data-text);position:absolute;top:4px;right:12px;bottom:4px;left:12px;opacity:.6;pointer-events:none}.encore:before{color:#3ec7ff;transform:translate(-2px);clip-path:inset(0 0 55% 0);animation:encore-slice 1.3s steps(2) infinite}.encore:after{color:#5cff3a;transform:translate(2px);clip-path:inset(60% 0 0 0);animation:encore-slice 1.7s steps(2) infinite reverse}@keyframes encore-in{0%{opacity:0;filter:blur(6px);letter-spacing:.6em}}@keyframes encore-jitter{0%,92%{transform:none}94%{transform:translate(3px,-1px) skew(-8deg)}97%{transform:translate(-2px,1px)}}@keyframes encore-slice{50%{transform:translate(3px)}}.encore.bean{color:#b98cff;text-shadow:0 0 12px rgba(163,92,255,.9)}.content-note{font-size:max(calc(14px * var(--ui-scale)),var(--ui-floor));color:var(--muted);border:1px solid var(--line);padding:8px 12px}#room-label .sym{color:inherit;width:1.1em;height:1.1em;vertical-align:-.18em}#objective .sym{color:#5cff3a;width:1.32em;height:1.32em;vertical-align:-.26em;margin:0 .06em;filter:drop-shadow(0 0 5px rgba(92,255,58,.78))}#finale{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;background:#010302;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:28px;padding:24px;overflow-y:auto}#finale canvas{width:min(1100px,94vw);height:auto;aspect-ratio:1280 / 480;transition:opacity 2s,transform 2s}#finale .credits{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;opacity:0;transition:opacity 3s}#finale.credits .credits{opacity:1}#finale.credits canvas{transform:scale(.8)}#finale .credits h1{font:900 clamp(28px,4vw,48px) "Orbitron",sans-serif;letter-spacing:.2em;background:var(--rainbow);-webkit-background-clip:text;background-clip:text;color:transparent}#finale .credits .sub{color:var(--muted);letter-spacing:.15em;font-size:max(calc(15px * var(--ui-scale)),var(--ui-floor))}#finale .credits .head{font:700 max(calc(12px * var(--ui-scale)),var(--ui-floor)) "Orbitron",sans-serif;letter-spacing:.3em;color:var(--green);margin-top:10px}#finale .credits .line{font-size:max(calc(17px * var(--ui-scale)),var(--ui-floor))}#finale .credits .care{max-width:560px;font-size:max(calc(14px * var(--ui-scale)),var(--ui-floor));color:var(--muted);margin-top:14px}#finale .after{display:none;flex-direction:column;gap:16px;align-items:center}#finale.after canvas,#finale.after .credits,#finale.bare canvas{display:none}#finale.after .after{display:flex}#finale .after-text{font:500 max(calc(20px * var(--ui-scale)),var(--ui-floor)) "Rajdhani",monospace;color:#5cff3a;white-space:pre-wrap;max-width:620px;min-height:9em;text-shadow:0 0 8px rgba(92,255,58,.6)}#fade,#whiteout{position:fixed;top:0;right:0;bottom:0;left:0;pointer-events:none;opacity:0;z-index:20;transition:opacity .8s}#fade{background:#000}#fade.on{opacity:1}#whiteout{background:#fff;transition:opacity 1.2s}#whiteout.on{opacity:1}body.in-sim #objective,body.in-sim #room-label,body.in-sim #whispers,body.in-sim #pocket{display:none}body.with-crow #objective,body.with-crow #room-label{opacity:0}#objective{transition:opacity .8s}body.in-sim #crosshair .dot{background:#ffc21f;box-shadow:0 0 8px #ffc21f}#sim-hud{position:absolute;top:0;right:0;bottom:0;left:0}#sim-hud:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:repeating-linear-gradient(0deg,rgba(255,160,60,.05) 0 2px,transparent 2px 4px)}.sim-title{position:absolute;top:18px;left:24px;font:700 max(calc(12px * var(--ui-scale)),var(--ui-floor)) "Orbitron",sans-serif;letter-spacing:.3em;color:#ffc21f;opacity:.8}.sim-boss{position:absolute;top:60px;left:50%;transform:translate(-50%);width:min(560px,70vw);text-align:center}.sim-boss .name{font:700 max(calc(14px * var(--ui-scale)),var(--ui-floor)) "Orbitron",sans-serif;letter-spacing:.35em;color:#ff6a50;margin-bottom:6px}.sim-boss .bar{height:8px;background:#ffffff14;border:1px solid rgba(255,106,80,.4)}.sim-boss .fill{height:100%;background:linear-gradient(90deg,#ff3b2f,#ffc21f);transition:width .15s}#sim-lines{position:absolute;left:50%;top:62%;transform:translate(-50%)}.sim-line{position:relative;font:600 max(calc(26px * var(--ui-scale)),var(--ui-floor)) "Rajdhani",sans-serif;letter-spacing:.2em;color:#39ff14;text-shadow:0 0 14px rgba(57,255,20,.8);animation:encore-in .3s steps(4) both,encore-jitter .9s steps(1) infinite,msg-out .6s ease-in 1.8s forwards;white-space:nowrap}#glitch{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;pointer-events:none;background:linear-gradient(transparent 40%,rgba(255,40,80,.35) 41%,transparent 43%,transparent 70%,rgba(60,200,255,.3) 71%,transparent 72%)}#glitch.on{animation:glitch .35s steps(3)}@keyframes glitch{0%{opacity:1;transform:translate(-12px)}50%{opacity:1;transform:translate(10px) scaleY(1.2)}to{opacity:0}}#glitch.on.soft{animation:glitch-soft .9s ease-in-out}@keyframes glitch-soft{0%{opacity:0}40%{opacity:.35}to{opacity:0}}.sym{display:inline-block;width:1.5em;height:1.5em;vertical-align:-.38em;margin:0 .12em;background:currentColor;filter:drop-shadow(0 0 4px currentColor)}.log-text .sym,.spectro-caption .sym{color:var(--c);width:2.2em;height:2.2em;vertical-align:-.75em}.title-glyphs{display:flex;gap:10px;color:var(--green);opacity:.85;font-size:max(calc(22px * var(--ui-scale)),var(--ui-floor))}.title-glyphs .sym{margin:0;animation:glyph-flicker 6s steps(1) infinite}.title-glyphs .sym:nth-child(3n){animation-delay:-2s}.title-glyphs .sym:nth-child(3n+1){animation-delay:-4.1s}@keyframes glyph-flicker{0%,88%,to{opacity:1}90%{opacity:.2}93%{opacity:.9}95%{opacity:.35}}.overlay .spectro-panel{--c: #5cff3a;border-color:#5cff3a73;max-width:1020px;align-items:stretch;text-align:left}.spectro-panel h2{text-align:left;color:var(--c);text-shadow:0 0 14px rgba(92,255,58,.5)}.spectro-screen{position:relative;border:1px solid rgba(92,255,58,.35);background:#020803;box-shadow:0 0 30px #5cff3a26 inset}.spectro-screen canvas{display:block;width:100%;height:auto;aspect-ratio:960 / 360;image-rendering:pixelated}.spectro-axis{position:absolute;left:8px;font:600 max(calc(11px * var(--ui-scale)),var(--ui-floor)) "Orbitron",sans-serif;color:#5cff3a99;letter-spacing:.1em}.spectro-axis.top{top:6px}.spectro-axis.bottom{bottom:6px}.spectro-time{position:absolute;right:10px;top:6px;font:700 max(calc(13px * var(--ui-scale)),var(--ui-floor)) "Orbitron",sans-serif;color:var(--c);letter-spacing:.15em}.spectro-loop{position:absolute;right:10px;bottom:12px;font:700 max(calc(11px * var(--ui-scale)),var(--ui-floor)) "Orbitron",sans-serif;letter-spacing:.15em;text-transform:uppercase;color:#ffc21f;text-shadow:0 0 8px rgba(255,194,31,.6);transition:color .2s}.spectro-loop.restart{color:#fff;animation:loop-blink .35s steps(2) infinite}@keyframes loop-blink{50%{opacity:.3}}.spectro-progress{position:absolute;left:0;right:0;bottom:0;height:3px;background:#ffc21f1f}.spectro-progress i{display:block;height:100%;width:0;background:#ffc21f;box-shadow:0 0 8px #ffc21f}.spectro-caption{font-size:max(calc(18px * var(--ui-scale)),var(--ui-floor));line-height:1.45;white-space:pre-wrap;min-height:2em}.spectro-panel .hint{display:flex;justify-content:space-between;align-items:center;gap:12px}.spectro-replay{padding:8px 18px;font-size:max(calc(11px * var(--ui-scale)),var(--ui-floor))}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;padding:24px;z-index:10;background:radial-gradient(ellipse at center,#0804108c,#030106cc)}.overlay .panel{--c: var(--room);border-color:color-mix(in srgb,var(--c) 45%,transparent);box-shadow:0 0 40px color-mix(in srgb,var(--c) 18%,transparent)}.overlay .eyebrow{color:var(--c)}.log{max-width:620px;align-items:stretch;text-align:left;max-height:calc((100vh - 48px) / var(--ui, 1));overflow-y:auto}.log h2{text-align:left;color:var(--c);text-shadow:0 0 14px color-mix(in srgb,var(--c) 50%,transparent)}.log-text{font-size:max(calc(19px * var(--ui-scale)),var(--ui-floor));line-height:1.5;white-space:pre-wrap;min-height:4em}.log-text:after{content:"▍";color:var(--c);animation:blink 1s steps(2) infinite}.log-text.done:after{content:""}@keyframes blink{50%{opacity:0}}.log .hint{text-align:right}.log-body{display:flex;flex-direction:column;gap:14px;min-width:0}.log-sheet{display:none}.log.with-sheet{max-width:1080px;flex-direction:row;align-items:safe center;gap:30px}.log.with-sheet .log-sheet{position:sticky;top:0}.log.with-sheet .log-sheet{display:block;flex:0 0 44%;perspective:1400px}.log.photo.with-sheet .log-sheet{flex-basis:52%}.log.with-sheet .log-body{flex:1 1 0}.log-card{position:relative;transform:rotate(-1.5deg);transform-style:preserve-3d;transition:transform .6s ease}.log-card.flipped{transform:rotate(1.5deg) rotateY(180deg)}.log-card img{display:block;width:100%;height:auto;max-height:calc(100vh - 120px);object-fit:contain;backface-visibility:hidden;filter:drop-shadow(0 14px 22px rgba(0,0,0,.65))}.log-card .back{display:none;position:absolute;top:0;right:0;bottom:0;left:0;transform:rotateY(180deg)}.log.turns .log-card .back{display:block}.log-turn{display:none}.log.turns .log-turn{display:inline}.log-text.hand{font-family:var(--hand-font);font-weight:var(--hand-weight);font-size:max(calc(17px * var(--hand-scale) * var(--ui-scale)),var(--ui-floor));line-height:1.38;color:var(--hand-ink)}.log-text.hand .w{display:inline-block}#reader .eyebrow,#reader h2{text-transform:none}#reader.overlay.docked{align-items:flex-end;justify-content:flex-end;background:none;pointer-events:none}#reader.docked .panel.log{pointer-events:auto;max-width:min(calc(420px * var(--ui-scale)),calc(40vw / var(--ui, 1)));max-height:calc(48vh / var(--ui, 1));background:#0a090ed1}#reader.docked .log-sheet{display:none}.log-after{color:var(--muted);font-style:italic;font-size:max(calc(17px * var(--ui-scale)),var(--ui-floor));line-height:1.5;white-space:pre-wrap;transition:opacity .5s}.log-after:empty{display:none}.log-after.pending{opacity:0}@media (max-width: 760px),(orientation: portrait){.log.with-sheet{flex-direction:column;align-items:stretch;gap:16px}.log.with-sheet .log-sheet{flex-basis:auto;width:min(100%,420px);align-self:center;position:static}.log-card img{max-height:42vh}}.pad{max-width:340px}.pad-display{width:100%;padding:14px;background:#04060a;border:1px solid var(--line);font-size:max(calc(30px * var(--ui-scale)),var(--ui-floor));letter-spacing:.5em;text-indent:.5em;color:var(--c);text-shadow:0 0 12px var(--c);min-height:66px}.pad-display.bad{color:var(--red);text-shadow:0 0 12px var(--red);animation:shake .35s}.pad-display.good{color:var(--green);text-shadow:0 0 12px var(--green)}@keyframes shake{25%{transform:translate(-6px)}75%{transform:translate(6px)}}.pad-keys{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;width:100%}.pad-keys button{aspect-ratio:1.5;font-size:max(calc(22px * var(--ui-scale)),var(--ui-floor));font-weight:700;color:var(--text);background:#ffffff0a;border:1px solid var(--line);cursor:pointer;transition:background .1s,box-shadow .1s}.pad-keys button:hover{background:color-mix(in srgb,var(--c) 18%,transparent)}.pad-keys button:active,.pad-keys button.down{background:color-mix(in srgb,var(--c) 40%,transparent);box-shadow:0 0 14px var(--c)}.pad-keys .fn{font-size:max(calc(13px * var(--ui-scale)),var(--ui-floor));letter-spacing:.15em;color:var(--muted)}.pad-keys .go{color:var(--green)}body:not(.touch) .touch-only,body.touch .desktop-only{display:none!important}body.touch{-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent}#touch{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:auto;touch-action:none}#touch .zone{position:absolute;top:0;right:0;bottom:0;left:0}#touch .stick{position:absolute;left:0;top:0;width:112px;height:112px;margin:-56px 0 0 -56px;border-radius:50%;border:2px solid rgba(255,255,255,.25);background:#ffffff0f;opacity:0;pointer-events:none;transition:opacity .1s}#touch .stick.on{opacity:1}#touch .stick i{position:absolute;left:50%;top:50%;width:48px;height:48px;margin:-24px 0 0 -24px;border-radius:50%;background:color-mix(in srgb,var(--accent) 70%,transparent);box-shadow:0 0 14px var(--accent)}.tbtn{--size: 60px;position:absolute;width:var(--size);height:var(--size);border-radius:50%;padding:0;border:2px solid rgba(255,255,255,.3);color:var(--text);font:700 max(calc(12px * var(--ui-scale)),var(--ui-floor)) "Orbitron",sans-serif;letter-spacing:.08em;background:#00000059;touch-action:none;-webkit-tap-highlight-color:transparent}.tbtn.down{transform:scale(.92);border-color:#fff}.tbtn.use{--size: 86px;right:calc(32px + env(safe-area-inset-right));bottom:calc(40px + env(safe-area-inset-bottom));border-color:var(--room);background:color-mix(in srgb,var(--room) 22%,rgba(0,0,0,.35))}.tbtn.pause{--size: 42px;right:calc(14px + env(safe-area-inset-right));top:calc(12px + env(safe-area-inset-top));font-size:max(calc(12px * var(--ui-scale)),var(--ui-floor))}body.touch #objective{left:calc(16px + env(safe-area-inset-left));top:calc(12px + env(safe-area-inset-top))}body.touch #prompt{bottom:calc(14% + env(safe-area-inset-bottom));font-size:max(calc(15px * var(--ui-scale)),var(--ui-floor))}#rotate{display:none}@media (orientation: portrait){body.touch #rotate{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;align-items:center;justify-content:center;padding:32px;background:var(--bg);text-align:center;font:700 max(calc(18px * var(--ui-scale)),var(--ui-floor)) "Orbitron",sans-serif;letter-spacing:.12em}}@media (max-height: 520px){.screen{gap:10px;padding:12px}.panel{padding:16px 20px;gap:8px}.briefing-text,.log-text{font-size:max(calc(15px * var(--ui-scale)),var(--ui-floor))}.log-text.hand{font-size:max(calc(16px * var(--hand-scale) * var(--ui-scale)),var(--ui-floor))}.log-after{font-size:max(calc(14px * var(--ui-scale)),var(--ui-floor))}.log-card img{max-height:calc(100vh - 60px)}.title-content{gap:8px}.tagline{font-size:max(calc(15px * var(--ui-scale)),var(--ui-floor))}.pad{max-width:300px}.pad-keys{gap:6px}.pad-keys button{aspect-ratio:2.4;font-size:max(calc(18px * var(--ui-scale)),var(--ui-floor))}.pad-display{padding:6px;min-height:0;font-size:max(calc(22px * var(--ui-scale)),var(--ui-floor))}}#screen-credits .credits-panel{width:min(760px,calc(92vw / var(--ui, 1)));max-width:none;max-height:calc(90vh / var(--ui, 1));display:flex;flex-direction:column;gap:14px}#screen-credits .credits-page,#screen-credits .credits-notices{overflow-y:auto;text-align:center;padding:0 8px;scrollbar-width:thin;scrollbar-color:var(--line) transparent}#screen-credits .credits-page{-webkit-mask-image:linear-gradient(transparent,#000 28px,#000 calc(100% - 36px),transparent);mask-image:linear-gradient(transparent,#000 28px,#000 calc(100% - 36px),transparent);padding:22px 8px 40px}#screen-credits .cr-sec{padding:22px 0}#screen-credits .cr-sec+.cr-sec{border-top:1px solid;border-image:linear-gradient(90deg,transparent,var(--line),transparent) 1}#screen-credits h3{font:700 max(calc(13px * var(--ui-scale)),var(--ui-floor)) "Orbitron",sans-serif;letter-spacing:.24em;text-transform:uppercase;color:var(--accent);margin:0 0 12px}#screen-credits p{font-size:max(calc(16px * var(--ui-scale)),var(--ui-floor));margin:4px 0;line-height:1.45;text-wrap:balance}#screen-credits .cr-title{padding:6px 0 26px}#screen-credits .cr-title h2{font:900 calc(clamp(26px,3.4vw,40px) * var(--ui-scale-title)) "Orbitron",sans-serif;letter-spacing:.18em;filter:drop-shadow(0 0 14px rgba(255,80,200,.3))}#screen-credits .cr-by{color:var(--muted);letter-spacing:.12em;margin-top:10px}#screen-credits .cr-list{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:4px 28px;max-width:600px;margin:0 auto 10px;font-size:max(calc(17px * var(--ui-scale)),var(--ui-floor));font-weight:600}#screen-credits .cr-list li{white-space:nowrap}#screen-credits .cr-list.cr-cols{display:block;columns:2;column-gap:40px;max-width:480px;line-height:1.6}#screen-credits .cr-prose{max-width:58ch;margin:8px auto;text-align:left;text-wrap:pretty}#screen-credits .cr-role{display:grid;grid-template-columns:11em 1fr;gap:0 18px;max-width:640px;margin:10px auto;text-align:left;text-wrap:pretty}#screen-credits .cr-k{text-align:right;color:var(--muted);font-weight:600;letter-spacing:.06em}#screen-credits .cr-care{margin:10px auto 0;max-width:560px}#screen-credits .cr-care p{color:var(--muted);text-align:center;text-wrap:balance}body.text-large #screen-credits .cr-role{grid-template-columns:1fr;text-align:center}body.text-large #screen-credits .cr-k{text-align:center;color:var(--accent)}#screen-credits pre{white-space:pre-wrap;text-align:left;font:400 max(calc(12px * var(--ui-scale)),var(--ui-floor)) monospace;color:var(--muted)}#screen-credits .row{justify-content:center;gap:12px}#shipmap .sm-panel{width:min(880px,calc(94vw / var(--ui, 1)));max-width:none;max-height:calc(90vh / var(--ui, 1));display:flex;flex-direction:column;gap:12px;padding:24px 28px;align-items:stretch;text-align:left;overflow-y:auto}#shipmap .sm-header{display:flex;align-items:center;justify-content:space-between;gap:16px;border-bottom:1px solid var(--line);padding-bottom:10px}#shipmap .sm-header h2{text-align:left;margin-top:2px}#shipmap .sm-body{display:grid;grid-template-columns:1.15fr 1fr;gap:20px;min-height:0}#shipmap .sm-map-col,#shipmap .sm-stash-col{display:flex;flex-direction:column;gap:8px;min-width:0}#shipmap .sm-map-head,#shipmap .sm-stash-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;font:600 max(calc(13px * var(--ui-scale)),var(--ui-floor)) "Orbitron",sans-serif;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}#shipmap .sm-deck-name,#shipmap .sm-stash-pct{color:var(--accent);font-weight:700}#shipmap .sm-canvas-wrap{position:relative;border:1px solid var(--line);background:#07050c;overflow:hidden}#shipmap .sm-canvas{display:block;width:100%;height:auto;aspect-ratio:440 / 320}#shipmap .sm-falsified-note{margin:0;font:italic 500 max(calc(14px * var(--ui-scale)),var(--ui-floor)) "Rajdhani",sans-serif;color:#ff4fa0;letter-spacing:.06em}#shipmap .sm-room-list{list-style:none;display:flex;flex-wrap:wrap;gap:6px 10px;max-height:110px;overflow-y:auto;padding:2px 0}#shipmap .sm-room{padding:3px 9px;border:1px solid rgba(180,140,255,.22);background:#ffffff08;font-size:max(calc(14px * var(--ui-scale)),var(--ui-floor));color:var(--muted)}#shipmap .sm-room.current{border-color:#5cff3a;color:#5cff3a;font-weight:700}#shipmap .sm-room.falsified{border-color:#ff4fa080;color:#ff8cc6}#shipmap .sm-room.phantom{border-style:dashed;border-color:#ff4fa0;color:#ff4fa0}#shipmap .sm-stash-sub{font-size:max(calc(14px * var(--ui-scale)),var(--ui-floor));color:var(--muted)}#shipmap .sm-stash-list{display:flex;flex-direction:column;gap:6px;max-height:310px;overflow-y:auto;padding-right:4px}#shipmap .sm-item{display:grid;grid-template-columns:auto 1fr auto;gap:8px;align-items:center;padding:7px 10px;border:1px solid var(--line);background:#ffffff08;color:var(--text);text-align:left;font:600 max(calc(14px * var(--ui-scale)),var(--ui-floor)) "Rajdhani",sans-serif;cursor:pointer}#shipmap .sm-item:hover:not(:disabled){border-color:var(--accent);background:#b45cff24}#shipmap .sm-item.locked{opacity:.45;cursor:default}#shipmap .sm-item-kind{font:700 max(calc(10px * var(--ui-scale)),var(--ui-floor)) "Orbitron",sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);padding:2px 6px;border:1px solid rgba(180,92,255,.35)}#shipmap .sm-item-deck{font-size:max(calc(12px * var(--ui-scale)),var(--ui-floor));color:var(--muted)}@media (max-width: 760px){#shipmap .sm-body{grid-template-columns:1fr}}.izar-badge{font:700 max(calc(11px * var(--ui-scale)),var(--ui-floor)) "Orbitron",sans-serif;letter-spacing:.2em;text-transform:uppercase;color:#5cff3a;border:1px solid rgba(92,255,58,.45);background:#5cff3a14;padding:5px 12px;text-shadow:0 0 10px rgba(92,255,58,.45)}.izar-panel{border-color:#5cff3a73;box-shadow:0 0 36px #5cff3a24}.izar-panel h2{color:#5cff3a;text-shadow:0 0 14px rgba(92,255,58,.45)}.izar-meta{font:700 max(calc(11px * var(--ui-scale)),var(--ui-floor)) "Orbitron",sans-serif;letter-spacing:.18em;color:#5cff3a;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:8px 12px;width:100%}body.house-lights #objective,body.house-lights #room-label,body.house-lights #crosshair,body.house-lights #prompt{visibility:hidden}#keypad .pad-note{max-width:320px;margin:0 auto 8px;text-align:center;font:400 max(calc(19px * var(--ui-scale)),var(--ui-floor)) "Reenie Beanie",cursive;color:#d8c8ff}#keypad .pad-says{display:block;max-width:320px;margin:2px auto 10px;font-size:max(calc(17px * var(--ui-scale)),var(--ui-floor));line-height:1.3;text-align:center;background:none}#pocket{position:absolute;left:50%;bottom:calc(18px + env(safe-area-inset-bottom));transform:translate(-50%);display:flex;align-items:center;gap:6px;padding:6px 10px;border:1px solid rgba(163,92,255,.35);border-radius:18px;background:#0a06128c;font:700 max(calc(14px * var(--ui-scale)),var(--ui-floor)) "Rajdhani",sans-serif;color:#c9a8ff;letter-spacing:.08em}#pocket.hidden{display:none}#pocket .pick{width:16px;height:18px;background:#a35cff;box-shadow:0 0 10px #a35cffcc;clip-path:path("M8 18 C4 15 0 9 1 5 C2 1 5 0 8 0 C11 0 14 1 15 5 C16 9 12 15 8 18 Z")}#pocket.flash{animation:pocket-in 1.2s ease-out}@keyframes pocket-in{0%{transform:translate(-50%) scale(1.6);box-shadow:0 0 30px #a35cff}to{transform:translate(-50%) scale(1)}}#songbook{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:flex;align-items:center;justify-content:center;padding:16px;background:radial-gradient(ellipse at center,#0e0a08d1,#020104f0)}#songbook.hidden{display:none}#btn-songbook kbd{margin:0 0 0 10px;min-width:0;padding:1px 6px;vertical-align:1px}#songbook .sb-book{position:relative;width:min(calc(860px * var(--ui-scale)),100%);height:min(calc(640px * var(--ui-scale)),100%);display:flex;flex-direction:column;gap:10px;padding:26px 26px 18px 58px;color:#22222c;transform:rotate(-.5deg);border-radius:7px 12px 10px 6px;background:radial-gradient(circle at 84% 78%,transparent 46px,rgba(120,78,40,.16) 48px,rgba(120,78,40,.07) 53px,transparent 56px) padding-box,radial-gradient(ellipse at 20% 10%,rgba(255,252,238,.5),transparent 60%) padding-box,radial-gradient(ellipse at 90% 100%,rgba(150,120,80,.22),transparent 55%) padding-box,linear-gradient(#ebe1c8,#e4d8bb) padding-box,radial-gradient(circle at 0 0,#4a4846 0,transparent 26px) border-box,radial-gradient(circle at 100% 100%,#48464a 0,transparent 30px) border-box,radial-gradient(circle at 100% 0,#3c3a3c 0,transparent 20px) border-box,linear-gradient(160deg,#1d1c1f,#121114 60%,#1a191c) border-box;border:9px solid transparent;box-shadow:0 18px 50px #000000b3,0 2px #ffffff0a inset}#songbook .sb-book:before{content:"";position:absolute;left:-9px;top:-14px;bottom:-12px;width:40px;border-radius:2px;background:repeating-linear-gradient(90deg,rgba(255,255,255,.035) 0 1px,transparent 1px 3px),linear-gradient(90deg,#2b2a2e,#222125 50%,#2d2c30);clip-path:polygon(0 3%,12% 0,30% 2%,52% 0,74% 2.5%,100% .5%,100% 99%,80% 97.5%,58% 100%,36% 98%,14% 100%,0 97%);box-shadow:2px 0 6px #00000080;pointer-events:none}#songbook .sb-book:after{content:"";position:absolute;right:-9px;bottom:-9px;width:34px;height:34px;pointer-events:none;background:linear-gradient(135deg,#cdbf9e 0 50%,transparent 50%);filter:drop-shadow(-2px -2px 2px rgba(0,0,0,.25))}#songbook .sb-setlist{position:absolute;right:-172px;top:30%;width:176px;padding:8px 12px 30px 30px;z-index:-1;transform:rotate(5deg);background:#f4f1ea;box-shadow:0 2px 8px #00000080;font:400 13px/1.5 Rock Salt,cursive;color:#1a1a20;pointer-events:none}@media (max-width: 1239px){#songbook .sb-setlist{display:none}}@media (max-width: 1579px),(max-aspect-ratio: 1580/900){body.text-large #songbook .sb-setlist{display:none}}#songbook .sb-setlist b{display:block;font:400 11px Rock Salt,cursive;color:#a01818;margin-bottom:2px}#songbook .sb-setlist i{display:block;font-style:normal;padding-left:.8em;text-indent:-.8em;line-height:1.25;margin-bottom:.25em}#songbook .sb-cover{display:flex;align-items:center;justify-content:space-between;gap:12px}#songbook .sb-title{margin:0 0 0 -6px;padding:2px 22px 0 16px;transform:rotate(-1.2deg);background:linear-gradient(180deg,#e8d8a8f2,#dcca96f2);clip-path:polygon(0 8%,3% 0,97% 4%,100% 0,98% 92%,100% 100%,2% 96%,0 100%);box-shadow:0 1px 2px #0003;font:400 max(calc(36px * var(--ui-scale)),var(--ui-floor)) "Shadows Into Light",cursive;color:#18181f;text-shadow:none}#songbook .sb-close{color:#22222c;border-color:#22222c73;background:#ffffff40}#songbook .sb-close:focus{outline:none;background:linear-gradient(transparent 18%,rgba(255,226,60,.7) 18% 86%,transparent 86%)}#songbook .sb-tabs{display:flex;gap:10px;border-bottom:2px solid rgba(34,34,44,.3)}#songbook .sb-tab{padding:4px 18px 2px;border:0;border-radius:3px 3px 0 0;cursor:pointer;color:#22222c9e;background:#d6c4968c;transform:translateY(2px);font:400 max(calc(27px * var(--ui-scale)),var(--ui-floor)) "Shadows Into Light",cursive}#songbook .sb-tab[data-part=covers].on{background:#f0d566}#songbook .sb-tab[data-part=originals].on{background:#9ed2f0}#songbook .sb-tab.on{color:#18181f;transform:none;box-shadow:0 -1px 3px #0000002e}#songbook .sb-tab:focus{outline:none;text-decoration:underline 3px rgba(34,34,44,.6);text-underline-offset:4px}#songbook .sb-part{flex:1;min-height:0;display:flex}#songbook .sb-originals{flex-direction:row;gap:18px}#songbook .sb-page:after{content:"";flex:none;height:calc(120px * var(--ui-scale));margin:4px 14px 0;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 60'%3E%3Cpath d='M16.5 39C14 39.5 13 36.5 15 35C18.5 33 21.5 37 20 40.5C18.5 44 12 44.5 9.5 41C7 37 9 32.5 13 29C17 25.5 21 21 20.5 14C20 8 16.5 3 15 5C13 7.5 13.5 14 14.5 22L17 50C17.5 55 14 57.5 11.5 55.5C10 54 11 51.5 13 52.5' fill='none' stroke='%2324242e' stroke-opacity='0.8' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") calc(2px * var(--ui-scale)) calc(4px * var(--ui-scale)) / calc(30px * var(--ui-scale)) calc(60px * var(--ui-scale)) no-repeat,url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 60'%3E%3Cpath d='M16 38.5C13.8 39.2 12.8 36.2 14.8 34.8C18.8 32.6 22 37.2 20.3 40.8C18.6 44.4 11.8 44.2 9.6 40.6C7.4 36.6 9.4 32.2 13.4 28.8C17.4 25.4 21.2 20.6 20.6 13.6C20.1 7.6 16.8 2.8 15.2 5.2C13.3 7.8 13.8 14.4 14.8 22.4L16.6 50.4C17 55.4 13.6 57.4 11.2 55.2C9.9 53.8 11.2 51.4 13.1 52.6' fill='none' stroke='%2324242e' stroke-opacity='0.8' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") calc(3px * var(--ui-scale)) calc(60px * var(--ui-scale)) / calc(30px * var(--ui-scale)) calc(60px * var(--ui-scale)) no-repeat,url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 40' preserveAspectRatio='none'%3E%3Cpath d='M0 7.5H100M0 15.5H100M0 23.5H100M0 31.5H100M0 39.5H100' stroke='%23282838' stroke-opacity='0.5' stroke-width='1'/%3E%3C/svg%3E") 0 calc(10px * var(--ui-scale)) / 100% calc(40px * var(--ui-scale)) no-repeat,url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 40' preserveAspectRatio='none'%3E%3Cpath d='M0 7.5H100M0 15.5H100M0 23.5H100M0 31.5H100M0 39.5H100' stroke='%23282838' stroke-opacity='0.5' stroke-width='1'/%3E%3C/svg%3E") 0 calc(66px * var(--ui-scale)) / 100% calc(40px * var(--ui-scale)) no-repeat}#songbook .sb-part.hidden{display:none}#songbook .sb-list{--rule: calc(max(calc(20px * var(--ui-scale)), var(--ui-floor))*2.1) ;flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:0;padding:0 8px 0 18px;background:linear-gradient(90deg,transparent 8px,rgba(200,70,70,.35) 8px 10px,transparent 10px),repeating-linear-gradient(transparent 0 calc(var(--rule) - 1px),rgba(70,110,180,.22) calc(var(--rule) - 1px) var(--rule)) local}#songbook .sb-list h4{flex:none;display:flex;align-items:flex-end;height:var(--rule);margin:0;padding:0 0 .12em;font:400 max(calc(24px * var(--ui-scale)),var(--ui-floor))/1 "Shadows Into Light",cursive;color:#7a3a2a}#songbook .sb-list h4:not(:first-child){margin-top:var(--rule)}#songbook .sb-list button{flex:none;display:flex;align-items:flex-end;text-align:left;padding:0 10px .18em;height:var(--rule);border:0;border-radius:0;background:none;color:#1e1e28;cursor:pointer;font:600 max(calc(20px * var(--ui-scale)),var(--ui-floor))/1 "Rajdhani",sans-serif;letter-spacing:.01em}#songbook .sb-list button:hover,#songbook .sb-list button:focus{outline:none;background:linear-gradient(transparent 16%,rgba(255,226,60,.72) 16% 84%,transparent 84%) no-repeat 0 0 / 100% 100%;clip-path:polygon(0 12%,100% 6%,99% 90%,1% 96%)}#songbook .sb-list button.again small{color:#8a3a2a;font:400 .95em Shadows Into Light,cursive}#songbook .sb-empty{margin:1em 0 0 18px;font:400 max(calc(24px * var(--ui-scale)),var(--ui-floor)) "Shadows Into Light",cursive;color:#6a5a4a}#songbook .sb-notes{flex:1;resize:none;padding:6px 14px;border:0;outline:none;color:#1e1e28;background:repeating-linear-gradient(transparent 0 calc(3.2em - 1px),#1e1e2800 calc(3.2em - 1px),#1e1e2800 3.2em) local,repeating-linear-gradient(transparent 0,transparent calc(1.6em - 1px),rgba(40,40,60,.28) calc(1.6em - 1px),rgba(40,40,60,.28) 1.6em) local 0 6px;font:400 max(calc(23px * var(--ui-scale)),var(--ui-floor))/1.6 "Kalam",cursive}#songbook .sb-notes:focus{box-shadow:inset 3px 0 #ffd228cc}#songbook .sb-notes::placeholder{color:#22222c6b}#songbook .hint{margin:0;color:#5a4a3a}#songbook .hint kbd{color:#22222c;border-color:#22222c66;background:#fff6}#paintbox{position:fixed;top:0;right:0;bottom:0;left:0;z-index:25;display:flex;align-items:center;justify-content:center;padding:16px;background:radial-gradient(ellipse at center,#040c14d1,#020206f0)}#paintbox.hidden{display:none}#paintbox .pb-panel{width:min(900px,100%);max-height:100%;overflow:auto;padding:22px 24px;border:1px solid rgba(62,199,255,.45);border-radius:10px;background:var(--panel);box-shadow:0 0 40px #3ec7ff2e;display:flex;flex-direction:column;gap:14px}#paintbox .eyebrow{color:var(--blue)}#paintbox .pb-says{align-self:flex-start;background:none;font-size:max(calc(18px * var(--ui-scale)),var(--ui-floor))}#paintbox .pb-says.hidden{display:none}#paintbox .pb-main{display:flex;gap:20px;align-items:flex-start}#paintbox .pb-pad{width:min(300px,40vw);aspect-ratio:1;border:1px solid rgba(62,199,255,.35);border-radius:8px;touch-action:none;cursor:crosshair;flex:none}#paintbox .pb-side{flex:1;min-width:0;display:flex;flex-direction:column;gap:12px}#paintbox .pb-spectro{width:100%;aspect-ratio:480 / 220;border:1px solid rgba(92,255,58,.35);border-radius:6px;background:#020803}#paintbox .pb-slots{display:flex;align-items:center;gap:8px;font:600 max(calc(15px * var(--ui-scale)),var(--ui-floor)) "Rajdhani",sans-serif;color:var(--muted);letter-spacing:.08em}#paintbox .pb-slots i{width:40px;height:40px;border:2px solid #2a3a4a;border-radius:4px;display:grid;place-items:center}#paintbox .pb-slots i.on{border-color:var(--green);box-shadow:0 0 12px #5cff3a66}#paintbox .pb-slots canvas{width:34px;height:34px}#paintbox .pb-ref{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font:600 max(calc(14px * var(--ui-scale)),var(--ui-floor)) "Rajdhani",sans-serif;color:var(--muted)}#paintbox .pb-ref.hidden{display:none}#paintbox .pb-ref canvas{width:44px;height:44px;border:1px solid rgba(62,199,255,.3);border-radius:4px;background:#03070c}#paintbox .pb-note{margin:0;white-space:pre-line;font:400 max(calc(19px * var(--ui-scale)),var(--ui-floor)) "Indie Flower",cursive;line-height:1.35;color:#1f56b8;background:#f3efe0;padding:12px 14px;border-radius:2px;transform:rotate(-.6deg);box-shadow:0 4px 16px #00000080}#paintbox .pb-help{margin:0;color:var(--muted);font-size:max(calc(15px * var(--ui-scale)),var(--ui-floor))}#paintbox .row{display:flex;gap:10px;flex-wrap:wrap}@media (max-width: 640px){#paintbox .pb-main{flex-direction:column;align-items:stretch}#paintbox .pb-pad{width:min(300px,100%);align-self:center}}.title-says{display:inline-block;margin:18px auto 0;font-size:max(calc(18px * var(--ui-scale)),var(--ui-floor));animation:title-says 6s ease both}@keyframes title-says{0%{opacity:0}15%{opacity:1}75%{opacity:1}to{opacity:0}}#objective{transition:opacity 1.5s}#hud.quiet #objective{opacity:.35}#hud.waking>*{visibility:hidden}.spectro-words{min-height:1.6em;margin:10px 0 0;font:italic 500 max(calc(22px * var(--ui-scale)),var(--ui-floor)) "Rajdhani",sans-serif;color:#ffb38a;text-shadow:0 0 12px rgba(255,140,110,.45);letter-spacing:.02em}.spectro-cursor{position:absolute;top:0;bottom:3px;width:2px;margin-left:-1px;background:#ffb38a;box-shadow:0 0 8px #ffb38a;pointer-events:none}.spectro-cursor:after{content:attr(data-time);position:absolute;top:4px;left:6px;white-space:nowrap;font:700 max(calc(11px * var(--ui-scale)),var(--ui-floor)) "Orbitron",sans-serif;color:#ffb38a;letter-spacing:.1em}.spectro-cursor.hidden,.spectro-words.hidden{display:none}#paintbox .pb-sing:disabled,#paintbox .pb-clear:disabled{opacity:.5;cursor:wait}body.house-lights #encore-reveal{align-items:flex-end;padding-bottom:14vh}#prompt .hold-bar{display:block;height:3px;margin-top:6px;background:#ffffff26}#prompt .hold-bar i{display:block;height:100%;width:0;background:var(--room)}#objective .hint{display:block;margin-top:4px;max-width:34em;font:500 max(calc(13px * var(--ui-scale)),var(--ui-floor))/1.35 "Rajdhani",sans-serif;letter-spacing:.01em;color:var(--muted, rgba(230, 230, 240, .7));white-space:normal}.spectro-range{position:absolute;left:50%;top:6px;transform:translate(-50%);font:700 max(calc(11px * var(--ui-scale)),var(--ui-floor)) "Orbitron",sans-serif;letter-spacing:.12em;color:#5cff3abf;white-space:nowrap}.spectro-range.locked{color:#d8ffc8;text-shadow:0 0 10px rgba(92,255,58,.8)}.spectro-range.hidden,.spectro-tune.hidden{display:none}.spectro-range.nudge{color:#d8ffc8}.spectro-tune{position:absolute;left:8px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;align-items:center;gap:4px;font:700 max(calc(10px * var(--ui-scale)),var(--ui-floor)) "Orbitron",sans-serif;letter-spacing:.12em;color:#5cff3abf}.spectro-tune button{width:calc(40px * var(--ui-scale));height:calc(34px * var(--ui-scale));min-width:34px;min-height:30px;padding:0;cursor:pointer;font:700 max(calc(16px * var(--ui-scale)),var(--ui-floor)) sans-serif;color:#5cff3a;background:#020803d9;border:1px solid rgba(92,255,58,.6);border-radius:4px}.spectro-tune button:hover{background:#5cff3a2e}.spectro-tune.nudge .tune-up{animation:tune-wake 1.1s ease-in-out infinite}@keyframes tune-wake{50%{background:#5cff3a59;box-shadow:0 0 14px #5cff3ab3}}@media (prefers-reduced-motion: reduce){.spectro-tune.nudge .tune-up{animation:none;background:#5cff3a4d}}#dial .dl-panel{align-items:center;text-align:center;max-width:440px}#dial .dl-face{width:260px;height:260px}#dial .dl-face.nope{animation:dl-nope .35s}@keyframes dl-nope{25%{transform:translate(-6px)}75%{transform:translate(6px)}}#dial .dl-time{font:700 max(calc(22px * var(--ui-scale)),var(--ui-floor)) "Orbitron",sans-serif;letter-spacing:.15em;margin:6px 0 10px}#dial .dl-row{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin:6px 0}#whispers .caption{color:var(--c);font:500 max(calc(18px * var(--ui-scale)),var(--ui-floor)) "Rajdhani",sans-serif;letter-spacing:.02em;margin:6px 0;text-shadow:0 0 10px rgba(0,0,0,.8);animation:caption-in .6s ease-out}#whispers .caption small{display:block;font:700 max(calc(10px * var(--ui-scale)),var(--ui-floor)) "Orbitron",sans-serif;letter-spacing:.18em;text-transform:uppercase;opacity:.7;margin-bottom:2px}@keyframes caption-in{0%{opacity:0}to{opacity:1}}#patch.overlay.docked{align-items:flex-end;background:none;pointer-events:none;padding-bottom:0}body:has(#patch:not(.hidden)) #whispers{bottom:54%}#patch .pt-panel{pointer-events:auto;margin-bottom:3vh;padding:14px 18px;width:min(calc(660px * var(--ui-scale)),calc(94vw / var(--ui, 1)));max-width:none;background:#0a090ee6}#patch .pt-row{display:grid;grid-template-columns:repeat(6,1fr);gap:8px;margin:6px 0;width:100%;align-self:stretch}#patch button{width:100%;min-width:0;box-sizing:border-box;font:600 max(calc(13px * var(--ui-scale)),var(--ui-floor)) "Rajdhani",sans-serif;letter-spacing:.08em;color:#e8e2d4;background:#1c1a24;border:1px solid #3a3648;border-radius:4px;padding:7px 4px;cursor:pointer}#patch .pt-plug{background:#2a2210;border-color:#ffb21f;color:#ffe0a0}#patch .pt-plug.in{opacity:.75}#patch .pt-plug.picked{transform:translateY(-4px);box-shadow:0 4px 10px #ffb21f66;opacity:1}#patch .pt-socket.in{border-color:#6a6680}#patch .pt-fader{height:46px;position:relative}#patch .pt-fader span{position:absolute;left:30%;right:30%;height:10px;bottom:6px;background:#8a8698;border-radius:2px;transition:bottom .12s}#patch .pt-fader.up span{bottom:28px;background:#ffe0a0}#patch .pt-cables{width:100%;height:40px;display:block}#patch .pt-cue{grid-template-columns:1fr auto auto;align-items:center}#patch .pt-cue button{width:auto;padding:7px 12px}#patch .pt-screen{font:600 max(calc(14px * var(--ui-scale)),var(--ui-floor)) "Orbitron",monospace;color:#ff5a4a;letter-spacing:.1em}#patch .pt-screen.ready,#patch .pt-screen .go{color:#5cff3a}#patch .btn:disabled{opacity:.4;cursor:default}#pocket .camera{width:22px;height:15px;border-radius:3px;background:#2a2620;border:2px solid #c8b890;position:relative}#pocket .camera:after{content:"";position:absolute;left:6px;top:2px;width:7px;height:7px;border-radius:50%;border:2px solid #c8b890}#pocket .hidden{display:none}#stash .st-panel{width:min(1200px,calc(96vw / var(--ui, 1)));max-width:none;max-height:calc(94vh / var(--ui, 1));overflow:auto}#stash canvas{display:block;max-width:100%;height:auto}#stash .st-near{min-height:1.4em;font:600 max(calc(18px * var(--ui-scale)),var(--ui-floor)) "Rajdhani",sans-serif;color:#ffe0a0;text-align:center;margin:6px 0}#stash .st-row{display:flex;gap:18px;justify-content:center;align-items:center;width:100%}#stash .st-card{width:100%}#stash .st-pass{display:flex;flex-direction:column;align-items:center;gap:8px}#stash .st-buttons{margin-top:10px}#stash .st-tray{width:auto;max-width:100%;max-height:calc(29vh / var(--ui, 1) - (var(--ui-scale, 1) - 1) * 110px);margin:0 auto}#stash .st-cards{display:flex;flex-direction:column;align-items:center;gap:6px;width:52%}#stash .st-panel{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(0,1fr);grid-template-areas:"eye eye" "tray side" "near side" "buttons buttons" "hint hint";column-gap:18px;align-items:start}#stash .st-panel>.eyebrow{grid-area:eye}#stash .st-panel>.st-tray{grid-area:tray;width:100%;max-height:none}#stash .st-panel>.st-near{grid-area:near}#stash .st-panel>.st-row:not(.st-buttons){grid-area:side;flex-direction:column;gap:10px}#stash .st-panel>.st-buttons{grid-area:buttons}#stash .st-panel>.hint{grid-area:hint}#stash .st-row .st-cards{width:100%}#stash .st-row .st-cards .st-card{max-height:calc(24vh / var(--ui, 1))}#stash .st-row .st-pass canvas{height:calc(17vh / var(--ui, 1))}#stash .st-cards .st-card{width:auto;max-width:100%;max-height:calc(26vh / var(--ui, 1))}#stash .st-pass canvas{width:auto;height:calc(20vh / var(--ui, 1))}#stash .st-yours{position:relative;margin:4px 0 0;padding:10px 18px 8px;background:#ebe5d5;color:#2a2620;border-radius:2px;box-shadow:0 3px 10px #0000008c;font:max(calc(22px * var(--ui-scale)),var(--ui-floor)) "Shadows Into Light",cursive;transform:rotate(-1.5deg)}#stash .st-yours:before{content:"";position:absolute;left:50%;top:-7px;width:54px;height:14px;transform:translate(-50%) rotate(2deg);background:#e6e2cd99;box-shadow:0 1px 2px #0003}@media (max-height: 820px){#patch .pt-panel{padding:8px 12px;margin-bottom:1vh}#patch .pt-fader{height:34px}#patch .pt-fader.up span{bottom:18px}#patch .pt-cables{height:22px}#patch .pt-row{margin:3px 0}#patch .hint,#stash .hint{margin:2px 0 0;font-size:.85em}}#mapboard .mb-panel{width:min(calc(860px * var(--ui-scale)),calc(96vw / var(--ui, 1)));max-width:none}#mapboard .mb-sheet{position:relative;margin:8px 0 12px}#mapboard .mb-sheet canvas{display:block;width:100%;aspect-ratio:768 / 544}#mapboard .mb-slot{position:absolute;border:3px dashed transparent;background:none;cursor:pointer;font:700 max(calc(26px * var(--ui-scale)),var(--ui-floor)) "Rajdhani",sans-serif;letter-spacing:.08em;color:#8a1c14}#mapboard .mb-slot:hover,#mapboard .mb-slot:focus{outline:none;border-color:#8a1c1499}#mapboard .mb-slot.tagged{color:#1a1a20;background:#f0e6c866}#mapboard .mb-sheet.pinned:after{content:"";position:absolute;left:49%;top:46%;width:22px;height:22px;border-radius:50%;background:radial-gradient(circle at 35% 35%,#ff8a7a,#c21a10 60%,#6a0a06);box-shadow:0 3px 6px #00000080}#mapboard .mb-tray{display:flex;gap:10px;align-items:center;flex-wrap:wrap}#mapboard .mb-tag{padding:6px 16px;border:0;background:#f4f0e4;color:#1a1a20;cursor:pointer;box-shadow:0 2px 4px #0006;font:700 max(calc(20px * var(--ui-scale)),var(--ui-floor)) "Rajdhani",sans-serif;letter-spacing:.1em}#mapboard .mb-tag.held{transform:translateY(-5px);box-shadow:0 6px 12px #ffb21f80}#mapboard .mb-tag.placed{opacity:.4}#mapboard .mb-tag:disabled,#mapboard .mb-slot:disabled,#mapboard .btn:disabled{cursor:default}#mapboard .mb-pin{margin-left:auto}#songbook .sb-padnote{margin:6px 0 0;font:600 max(calc(16px * var(--ui-scale)),var(--ui-floor)) "Rajdhani",sans-serif;color:#5a4a3a}#songbook .sb-page{flex:1;min-width:0;display:flex;flex-direction:column}#songbook .sb-snaps{width:42%;min-width:0;display:flex;flex-direction:column;gap:8px}#songbook .sb-snaps-head{display:flex;align-items:center;justify-content:space-between;gap:8px}#songbook .sb-take{color:#22222c;border-color:#22222c66;background:#ffffff40}#songbook .sb-take:focus{outline:none;background:linear-gradient(transparent 18%,rgba(255,226,60,.7) 18% 86%,transparent 86%)}#songbook .sb-snaps-count{font:400 max(calc(20px * var(--ui-scale)),var(--ui-floor)) "Shadows Into Light",cursive;color:#5a4a3a}#songbook .sb-snap-list{flex:1;min-height:0;overflow-y:auto;display:grid;grid-template-columns:1fr 1fr;gap:18px 12px;align-content:start;align-items:start;padding:14px 6px 10px}#songbook .sb-snap{position:relative;display:flex;flex-direction:column;gap:2px;padding:5px 5px 7px;border:0;border-radius:1px;background:linear-gradient(#fdfcf8,#f4f2ec);cursor:pointer;text-align:left;transform:rotate(-1.3deg);box-shadow:0 1px 1px #281e1440,0 3px 8px #281e1438;transition:transform .12s,box-shadow .12s}#songbook .sb-snap:nth-child(2n){transform:rotate(1deg)}#songbook .sb-snap:nth-child(3n){transform:rotate(-.4deg)}#songbook .sb-snap:nth-child(5n){transform:rotate(1.6deg)}#songbook .sb-snap:before{content:"";position:absolute;left:50%;top:-9px;width:34%;height:16px;transform:translate(-50%) rotate(-3deg);background:#e2d2a0d1;clip-path:polygon(0 10%,4% 0,96% 8%,100% 0,97% 92%,100% 100%,3% 94%,0 100%);box-shadow:0 1px 1px #00000014;pointer-events:none}#songbook .sb-snap:nth-child(2n):before{left:44%;transform:translate(-50%) rotate(4deg)}#songbook .sb-snap:focus,#songbook .sb-snap:hover{outline:4px solid #e8a900;outline-offset:3px;z-index:1;transform:rotate(0) translateY(-3px) scale(1.03);box-shadow:0 2px 2px #281e1433,0 10px 22px #281e1459}#songbook .sb-snap img{display:block;width:100%;aspect-ratio:16 / 9;object-fit:cover;background:#1b1a1e;box-shadow:inset 0 0 0 1px #0000004d}#songbook .sb-snap-meta{margin-top:3px;font:600 max(calc(14px * var(--ui-scale)),var(--ui-floor))/1.1 "Rajdhani",sans-serif;color:#7a7064;text-wrap:balance}#songbook .sb-snap-caption{font:400 max(calc(18px * var(--ui-scale)),var(--ui-floor))/1.15 "Kalam",cursive;color:#1e1e28}#songbook .sb-snap-caption:empty{display:none}#songbook .sb-snap-list .sb-empty{grid-column:1 / -1;margin:.2em 0 0 4px}#songbook .sb-view{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;display:flex;align-items:center;gap:22px;padding:26px 26px 26px 58px;border-radius:3px 8px 6px 3px;background:radial-gradient(ellipse at 30% 20%,#232226,transparent 70%),linear-gradient(160deg,#1b1a1d,#111013 60%,#18171a)}#songbook .sb-view.hidden{display:none}#songbook .sb-view-img{flex:1;min-width:0;max-height:100%;height:auto;object-fit:contain;align-self:center;padding:10px 10px 34px;background:linear-gradient(#fdfcf8,#f2f0ea);transform:rotate(-.6deg);box-shadow:0 2px 3px #00000080,0 14px 34px #0009}#songbook .sb-view-side{width:30%;align-self:stretch;display:flex;flex-direction:column;gap:14px;color:#d6d2ca}#songbook .sb-view-meta{margin:0;font:600 max(calc(18px * var(--ui-scale)),var(--ui-floor)) "Rajdhani",sans-serif;letter-spacing:.02em;color:#a8a49c}#songbook .sb-caption{padding:4px 2px;border:0;border-bottom:2px solid rgba(214,210,202,.35);border-radius:0;background:none;color:#e4e2de;font:400 max(calc(23px * var(--ui-scale)),var(--ui-floor)) "Kalam",cursive;text-shadow:0 0 1px rgba(255,255,255,.25)}#songbook .sb-caption::placeholder{color:#d6d2ca73}#songbook .sb-caption:focus{outline:none;border-bottom-color:#ffd228f2;box-shadow:0 3px #ffd22880}#songbook .sb-view-buttons{display:flex;gap:8px;flex-wrap:wrap;margin-top:auto}#songbook .sb-book{position:relative}#snap-flash{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;pointer-events:none;opacity:0;box-shadow:inset 0 0 0 10px #ffffffe6,inset 0 0 60px #ffffff80}#snap-flash.on{animation:snap-flash .35s ease-out}@keyframes snap-flash{0%{opacity:1}to{opacity:0}}#cassette-deck .cd-panel{align-items:center;text-align:center;max-width:500px}#cassette-deck .cd-note{font:italic 400 max(calc(15px * var(--ui-scale)),var(--ui-floor)) "Patrick Hand SC",cursive;color:#ffc21f;margin:4px 0 10px}#cassette-deck .cd-tapes{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;width:100%;margin:8px 0}#cassette-deck .cd-tape{padding:10px 4px;text-align:center;border:1px solid #3a4250;background:#121620;border-radius:4px;color:#d0d6e2;cursor:pointer}#cassette-deck .cd-tape.active{border-color:#3ec7ff;background:#1c2b3e;color:#fff;box-shadow:0 0 10px #3ec7ff66}#cassette-deck .cd-info{background:#080d14;border:1px solid #202a3a;border-radius:4px;padding:14px;margin:10px 0;min-height:85px;width:100%;box-sizing:border-box;text-align:left;font:500 max(calc(15px * var(--ui-scale)),var(--ui-floor))/1.3 "Rajdhani",sans-serif;color:#b8c4d8}#cassette-deck .cd-row{display:flex;gap:8px;justify-content:center;margin:8px 0}#dampener .dp-panel{align-items:center;text-align:center;max-width:520px}#dampener .dp-clue{font:italic 400 max(calc(15px * var(--ui-scale)),var(--ui-floor)) "Caveat",cursive;color:#ffd8a0;margin:4px 0 8px}#dampener .dp-scope{width:440px;height:130px;display:block;border-radius:4px;border:1px solid #1a2c3e;margin:8px 0}#dampener .dp-controls{width:100%;display:flex;flex-direction:column;gap:8px;margin:8px 0}#dampener .dp-row{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%}#dampener .dp-row label{font:600 max(calc(14px * var(--ui-scale)),var(--ui-floor)) "Rajdhani",sans-serif;color:#9ab4cc;min-width:140px;text-align:left}#dampener .dp-row input[type=range]{flex:1;accent-color:#3ec7ff}#dampener .dp-status{font:700 max(calc(13px * var(--ui-scale)),var(--ui-floor)) "Orbitron",monospace;margin:8px 0;letter-spacing:.05em}
