.shift-home-card,.shift-scene,.shift-result{background:#18191de8;border:2px solid #c3944d;padding:clamp(18px,3vw,32px);box-shadow:6px 6px #08090b;margin:24px 0;color:#f2e4c9}.shift-home-card{display:grid;grid-template-columns:1.1fr 1fr;gap:32px;align-items:center}.shift-result{text-align:left}.shift-home-card h2,.shift-scene h2,.shift-result h2{margin:5px 0 14px;line-height:1.15;font-size:clamp(1.65rem,3vw,2.2rem)}.shift-home-card p,.shift-scene p,.shift-result p{line-height:1.6}.shift-home-card .btn{margin-top:10px}.shift-circuit{padding:0;margin:22px 0;list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.shift-circuit li{display:flex;align-items:center;flex-wrap:wrap;gap:10px;padding:14px;background:#111317;border:1px solid #4f535b;color:#c6c8ce;min-width:0}.shift-circuit li.current{border-color:#efbc65}.shift-circuit li.restored{border-color:#74cba3;background:#152a25;color:#b4f3d1}.shift-node-number{font-size:1.2rem;font-weight:800;color:#efbc65}.restored .shift-node-number{color:#b4f3d1}.shift-circuit strong,.shift-circuit small{display:block}.shift-circuit strong{font-size:.95rem}.shift-circuit small{margin-top:4px;font-size:.8rem}.shift-node-state{font-size:.72rem;letter-spacing:.04em;text-transform:uppercase;flex-basis:100%}.shift-home-circuit .shift-circuit{grid-template-columns:1fr;gap:8px;margin:0}.shift-home-circuit .shift-circuit li{padding:10px 14px}.shift-home-circuit .shift-node-state{flex-basis:auto;margin-left:auto}.shift-dialogue{display:grid;gap:16px;margin:22px 0}.shift-line{display:grid;grid-template-columns:74px minmax(0,1fr);gap:18px;margin:0}.shift-line strong{color:#f2b065;font-size:.77rem;letter-spacing:.06em;padding-top:4px}.shift-line.voice-atlas strong{color:#8fb6f6}.shift-line.voice-torque strong{color:#85dab2}.shift-line span{max-width:72ch}.shift-setup{color:#c6c8ce;max-width:72ch}.shift-play-card{border-top:1px solid #61523f;margin-top:28px;padding-top:22px;display:flex;align-items:center;gap:24px}.shift-play-card>div{flex:1}.shift-play-card h3{margin:5px 0;font-size:1.3rem}.shift-play-card .btn{flex-shrink:0}.shift-play-card p{margin:5px 0}.shift-signal-path{display:grid;grid-template-columns:minmax(0,1fr) 28px minmax(0,1fr);align-items:stretch;gap:8px;width:min(680px,100%);margin:12px 0 0!important;color:#f5efe1;line-height:1.2!important}.shift-link-from,.shift-link-to{display:flex;flex-direction:column;justify-content:center;gap:3px;min-width:0;min-height:44px;padding:7px 10px;border:1px solid #50545b;background:#171a20;overflow-wrap:anywhere}.shift-link-from small,.shift-link-to small{color:#b7b5ad;font:750 .62rem/1 IBM Plex Mono,monospace;letter-spacing:.12em;text-transform:uppercase}.shift-link-from strong,.shift-link-to strong{font:750 .78rem/1.25 IBM Plex Sans,sans-serif}.shift-link-from{border-left:3px solid var(--accent);background:color-mix(in srgb,var(--accent) 7%,#171a20)}.shift-link-to{border-left:3px solid #74cba3;background:#152a25;color:#b4f3d1}.shift-link-arrow{display:grid;place-items:center;min-width:28px;color:#efbc65;font:900 1.15rem/1 IBM Plex Mono,monospace}.shift-link-change{margin-bottom:14px!important}.shift-result .shift-signal-path{gap:6px;margin:4px 0 3px!important}.shift-result .shift-link-from,.shift-result .shift-link-to{min-height:28px;padding:2px 8px}.shift-result .shift-link-from small,.shift-result .shift-link-to small{display:none}.shift-result .shift-link-from strong,.shift-result .shift-link-to strong{min-width:0;font-size:clamp(.55rem,2.4vw,.6rem);white-space:nowrap}.shift-storage-note{font-size:.8rem;color:#b7b5ad;line-height:1.5}.shift-change{border-left:3px solid #74cba3;padding:8px 16px;color:#b4f3d1;background:#16302a}.shift-next{margin:18px 0;padding:12px 16px 16px;border:2px solid #efbc65;background:#201a14;box-shadow:4px 4px #08090b}.shift-next .eyebrow{margin:0 0 8px}.shift-next .shift-dialogue{margin:8px 0 14px}.shift-next .shift-line{grid-template-columns:64px minmax(0,1fr);gap:12px}.shift-next .btn{min-height:48px}.shift-next-complete>p:not(.eyebrow){margin:8px 0 14px}.shift-result-details{margin:18px 0 8px;border:1px solid #50545b;background:#111317}.shift-result-details>summary{min-height:48px;padding:10px 14px;display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer;font-weight:700}.shift-result-details>summary small{color:#b7b5ad;font-weight:400;text-align:right}.shift-result-details[open]>summary{border-bottom:1px solid #50545b}.shift-result-details>.shift-dialogue,.shift-result-details>.shift-circuit{margin-left:14px;margin-right:14px}.shift-journal{margin:40px 0}.shift-journal details{border:1px solid #50545b;padding:18px;margin:12px 0;background:#171a20}.shift-journal summary{cursor:pointer;font-weight:700;line-height:1.6}.shift-journal summary span{display:inline-block;margin-left:16px;color:#85dab2;font-size:.8rem;font-weight:400}.shift-journal details[open] summary{margin-bottom:20px}.shift-exit{margin:30px 0}.first-shift-page .tagline{max-width:70ch}.shift-story-link{margin-top:14px}@media(max-width:760px){.results.shift-results .results-stats{margin-bottom:8px}.results.shift-results>.shift-result{margin-top:8px}.results.shift-results .shift-next{margin-top:10px;padding-top:10px}.shift-home-card{grid-template-columns:1fr;gap:20px}.shift-circuit{grid-template-columns:1fr;gap:8px}.shift-circuit li{padding:10px 12px}.shift-node-state{flex-basis:auto;margin-left:auto}.shift-line{grid-template-columns:1fr;gap:3px}.shift-play-card{flex-direction:column;align-items:stretch;gap:14px}.shift-result .cta-row .btn{white-space:normal;text-align:center}.shift-result-details>summary{align-items:flex-start;flex-direction:column;gap:3px}.shift-result-details>summary small{text-align:left}.shift-journal summary span{display:block;margin-left:0}}.exit-game-dialog{width:min(460px,calc(100vw - 40px));max-height:calc(100dvh - 40px);margin:auto;padding:clamp(22px,5vw,32px);overflow-y:auto;color:var(--text);background:var(--bg2);border:2px solid var(--ink);border-top:5px solid var(--accent);border-radius:var(--radius-md);box-shadow:8px 8px 0 var(--ink);text-align:left}.exit-game-dialog::backdrop{background:#090706c7;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.exit-game-heading{display:flex;align-items:center;gap:12px}.exit-game-mark{display:grid;place-items:center;flex:0 0 34px;height:34px;background:var(--accent);color:var(--scape-accent-2);border:2px solid var(--ink);border-radius:4px;font-size:22px;font-weight:700}.exit-game-kicker{margin:0;color:var(--scape-accent-2);font-size:10px;font-weight:600;line-height:1.6;letter-spacing:.12em;text-transform:uppercase}.exit-game-kicker span{display:block;color:var(--muted)}.exit-game-dialog h2{margin:24px 0 12px;font-size:clamp(30px,7vw,40px);line-height:1.12}.exit-game-description{margin:0;max-width:30ch;font-size:15px;line-height:1.6;color:var(--muted)}.exit-game-track{display:flex;flex-direction:column;gap:5px;margin:24px 0;padding:14px 16px;border-left:3px solid var(--accent);background:var(--bg)}.exit-game-track span{font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.exit-game-track strong{font-size:14px;overflow-wrap:anywhere}.exit-game-actions{display:grid;grid-template-columns:1fr auto;gap:12px}.exit-game-actions .btn{min-height:48px;margin:0;padding:12px 16px}.exit-game-actions .exit-game-keep{display:flex;justify-content:space-between;gap:12px;background:var(--scape-accent-2);color:var(--bg)}.exit-game-actions .exit-game-keep:hover{background:var(--text)}.exit-game-actions .exit-game-leave{background:transparent;color:var(--muted);box-shadow:none}.exit-game-actions .exit-game-leave:hover{color:var(--text);background:var(--bg)}.exit-game-resume-error{margin:14px 0 0;color:var(--danger, #ff5f57);font-size:13px;line-height:1.45}.exit-game-dialog .gamepad-dialog-hint{margin-top:14px}@media(max-width:360px){.exit-game-actions{grid-template-columns:1fr}}.language-switcher{display:flex;align-items:center;gap:.65rem;max-width:100%;font-size:.8rem}.language-switcher select{min-height:44px;min-width:0;max-width:100%;padding:.45rem .6rem;color:var(--text, #f2e4c9);background:var(--bg, #151314);border:1px solid var(--line, #655653);border-radius:6px;font:inherit}.language-switcher select:focus-visible{outline:2px solid var(--accent, #e23d3d);outline-offset:3px}.language-switcher-compact>span{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.site-header .language-switcher{flex:0 0 auto}@media(max-width:700px){.site-header .language-switcher select{max-width:105px;font-size:.75rem;padding:.4rem}}@font-face{font-family:Anton;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/anton-latin-ext-SyiqE2Jt.woff2) format("woff2");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:Anton;font-style:normal;font-weight:400;font-display:swap;src:url(/assets/anton-latin-Byf51wtH.woff2) format("woff2");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:Sora;font-style:normal;font-weight:600 800;font-display:swap;src:url(/assets/sora-latin-ext-rqDZ1P7Z.woff2) format("woff2");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:Sora;font-style:normal;font-weight:600 800;font-display:swap;src:url(/assets/sora-latin-BUlRykrX.woff2) format("woff2");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-weight:400 700;font-display:swap;src:url(/assets/ibm-plex-sans-latin-ext-CIII54If.woff2) format("woff2");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-weight:400 700;font-display:swap;src:url(/assets/ibm-plex-sans-latin-IvpUvPa2.woff2) format("woff2");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:italic;font-weight:400;font-display:swap;src:url(/assets/ibm-plex-sans-italic-latin-ext-Du9zzoL2.woff2) format("woff2");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:italic;font-weight:400;font-display:swap;src:url(/assets/ibm-plex-sans-italic-latin-CZTNEAuW.woff2) format("woff2");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-weight:600;font-display:swap;src:url(/assets/ibm-plex-mono-600-latin-ext-D38SheWl.woff2) format("woff2");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-weight:600;font-display:swap;src:url(/assets/ibm-plex-mono-600-latin-BgSNZQsw.woff2) format("woff2");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-weight:700;font-display:swap;src:url(/assets/ibm-plex-mono-700-latin-ext-Dhimjc7-.woff2) format("woff2");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-weight:700;font-display:swap;src:url(/assets/ibm-plex-mono-700-latin-7sUh57Bg.woff2) format("woff2");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{--scape-bg-0: #12100f;--scape-bg-1: #1c1717;--scape-line: #000000;--scape-text: #f5efe6;--scape-muted: #a8928b;--scape-accent: #e23d3d;--accent-deep: #ba3030;--accent-text: #eb4e4e;--scape-accent-2: #f2e4c9;--scape-warn: #ffb020;--scape-gold: #ffb020;--bg: var(--scape-bg-0);--bg2: var(--scape-bg-1);--bg-elevated: #221b19;--text: var(--scape-text);--muted: var(--scape-muted);--accent: var(--scape-accent);--accent2: var(--scape-warn);--lime: var(--scape-accent-2);--lane0: #e23d3d;--lane1: #f2e4c9;--lane2: #ffb020;--lane3: #5b8def;--ok: #7ed49b;--ink: #000000;--stroke-w: 2px;--radius-lg: 14px;--radius-md: 10px;--radius-sm: 6px;--gradient-cta: linear-gradient(135deg, #e23d3d 0%, #ffb020 100%);--glass: rgba(28, 23, 23, .86);--border: #000000;--shadow-card: 0 8px 0 rgba(0, 0, 0, .55);--shadow-glow: none;--glow-accent: none;--glow-mint: none;--halftone: radial-gradient(circle at center, rgba(226, 61, 61, .16) 1px, transparent 1.4px)}*{box-sizing:border-box}a:focus-visible,button:focus-visible,[tabindex]:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.skip-link{position:fixed;top:calc(8px + env(safe-area-inset-top));left:-10000px;z-index:1000;min-height:44px;max-width:calc(100vw - 16px - env(safe-area-inset-left) - env(safe-area-inset-right));display:inline-flex;align-items:center;padding:9px 14px;border:2px solid var(--ink);background:var(--scape-accent-2);box-shadow:4px 4px 0 var(--ink);color:#12100f;font:800 13px/1.2 IBM Plex Sans,system-ui,sans-serif;letter-spacing:.04em;text-decoration:none;text-transform:uppercase}.skip-link:focus,.skip-link:focus-visible{left:calc(8px + env(safe-area-inset-left))}main:focus-visible,[tabindex="-1"]:focus-visible{outline:none}body{margin:0;font-family:IBM Plex Sans,system-ui,sans-serif;background:var(--bg);color:var(--text);min-height:100vh;min-height:100dvh;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left)}.site-main a:not([class]){color:var(--muted);text-decoration:none;font-weight:500;transition:color .15s ease}.site-main a:not([class]):hover{color:var(--text)}h1,h2,.logo{font-family:Anton,Sora,IBM Plex Sans,system-ui,sans-serif;font-weight:400;letter-spacing:.01em}.app-shell{max-width:1140px;margin:0 auto;padding:0 20px 48px;position:relative}.site-header{display:flex;align-items:center;gap:16px;padding:18px 0;border-bottom:1px solid var(--border)}.network-status-notice{display:flex;align-items:center;gap:10px;margin:10px 0 0;padding:9px 12px;border:2px solid var(--ink);border-left:5px solid var(--scape-warn);background:#241d16;box-shadow:3px 3px 0 var(--ink);color:var(--muted);font-size:12px}.network-status-notice strong{flex:0 0 auto;color:var(--scape-warn);font-size:11px;letter-spacing:.09em;text-transform:uppercase}@media(max-width:600px){.network-status-notice{align-items:flex-start;flex-direction:column;gap:3px}}.bg-fx{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;overflow:hidden;background-color:var(--bg);background-image:var(--halftone);background-size:8px 8px}.bg-fx:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;opacity:.5;background-image:repeating-conic-gradient(from 0deg at 50% -12%,rgba(226,61,61,.13) 0deg 1.2deg,transparent 1.2deg 5deg)}.bg-fx:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(620px 420px at 82% 8%,rgba(226,61,61,.1),transparent 68%)}.logo{font-weight:800;font-size:1.15rem;color:var(--text);text-decoration:none;letter-spacing:-.02em;display:inline-flex;align-items:center;gap:8px;min-height:44px}.logo-mark{width:30px;height:30px;border-radius:7px;background:var(--bg);border:var(--stroke-w) solid var(--accent);display:grid;place-items:center;color:var(--accent)}.site-nav{display:flex;align-items:center;gap:4px;margin-left:auto}.site-header nav a{color:var(--muted);padding:8px 12px;border-radius:999px;text-decoration:none;font-size:14px;font-weight:500;transition:color .15s ease,background .15s ease}.site-header nav a:hover,.site-header nav a.active{color:var(--text);background:#ffffff0f}.header-avatar{width:44px;height:44px;display:grid;place-items:center;flex-shrink:0;margin-left:8px;padding:0;border:none;background:transparent;text-decoration:none}.header-avatar-visual{width:36px;height:36px;display:grid;place-items:center;background:var(--accent-deep);color:var(--scape-accent-2);font-family:Anton,Sora,sans-serif;font-size:13px;font-weight:400;letter-spacing:.04em;line-height:1;clip-path:polygon(6px 0,100% 0,calc(100% - 6px) 100%,0 100%);filter:drop-shadow(3px 3px 0 var(--ink))}a.header-avatar:hover .header-avatar-visual{background:var(--scape-accent-2);color:#12100f}.mobile-tabbar{display:none}.gamepad-site-hint{position:fixed;right:16px;bottom:16px;z-index:60;max-width:min(520px,calc(100vw - 32px));display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:4px 11px;padding:8px 12px;border:2px solid var(--ink);border-radius:999px;background:color-mix(in srgb,var(--lime) 14%,rgba(18,16,15,.96));box-shadow:3px 3px 0 var(--ink);color:var(--lime);font:750 9px/1.25 IBM Plex Mono,monospace;letter-spacing:.045em;text-transform:uppercase;pointer-events:none}.gamepad-site-hint span{color:var(--muted)}body.gamepad-ui-active :is(a,button,input,select,textarea,summary,[tabindex]):focus{outline:3px solid var(--lime)!important;outline-offset:3px!important}.site-footer{margin-top:48px;font-size:12px;color:var(--muted);text-align:center}.home{padding-top:8px}.hero-split{display:grid;grid-template-columns:1fr minmax(260px,380px);gap:clamp(24px,4vw,48px);align-items:center;margin:12px 0 48px;min-height:min(72vh,560px)}.hero-copy{position:relative;z-index:6}.hero-copy h1{font-size:clamp(2.35rem,5.5vw,3.75rem);line-height:1.08;margin:0 0 16px;font-weight:800;letter-spacing:.015em;word-spacing:.08em}.eyebrow{margin:0 0 12px;font-size:13px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--accent-text)}.hero-copy .tagline{font-size:clamp(1rem,2vw,1.125rem);color:var(--muted);max-width:28rem;line-height:1.55;margin:0 0 20px}.hero-quote{display:flex;align-items:flex-start;gap:12px;max-width:28rem;margin:0 0 18px;padding-left:14px;border-left:3px solid var(--accent)}.hero-quote-speaker{flex:0 0 auto;color:var(--accent-text);font:700 11px/1.5 IBM Plex Mono,monospace;letter-spacing:.08em}.hero-quote p{margin:0;color:var(--text);font-size:15px;font-style:italic;line-height:1.45}.key-chips{display:flex;gap:8px;margin-bottom:28px;filter:drop-shadow(3px 3px 0 var(--ink))}.key-chip{min-width:48px;padding:9px 14px;text-align:center;font-size:16px;line-height:1.2;font-weight:700;color:#000;background:var(--accent);clip-path:polygon(7px 0,100% 0,calc(100% - 7px) 100%,0 100%)}.hero-visual{position:relative;height:min(420px,52vw);min-height:280px}.curated-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:16px}.curated-subtitle{margin:0 0 14px;color:var(--muted);font-size:.95rem}.curated-card{display:grid;grid-template-columns:96px 1fr;gap:14px;padding:14px;background:var(--bg-elevated);border:var(--stroke-w) solid var(--ink);border-radius:var(--radius-md);box-shadow:4px 4px 0 var(--ink)}.curated-cover{width:96px;height:96px;object-fit:cover;border:2px solid var(--ink);align-self:start}.curated-body{min-width:0;display:flex;flex-direction:column;gap:6px}.curated-body h3{margin:0;font-size:1.05rem;letter-spacing:-.01em}.curated-meta{margin:0;font-size:12px;font-weight:600;letter-spacing:.03em;color:var(--muted)}.curated-why{margin:0;font-size:13px;line-height:1.5;color:var(--text)}.curated-line{margin:0;font-size:12.5px;line-height:1.5;color:var(--muted)}.curated-line strong{color:var(--accent-text)}.curated-actions{display:flex;gap:10px;margin-top:4px}.curated-preview{margin-top:2px}@media(max-width:640px){.curated-card{grid-template-columns:72px 1fr;gap:12px;padding:12px}.curated-cover{width:72px;height:72px}.curated-line{display:none}}@media(max-width:360px){.hero-copy .tagline{margin-bottom:12px}.hero-quote{gap:8px;margin-bottom:12px;padding-left:10px}.hero-quote p{line-height:1.4}.hero-entry-meta{margin:6px 0 0;color:var(--muted);font-size:13px;line-height:1.35}.curated-grid{grid-template-columns:minmax(0,1fr)}.curated-card{min-width:0;grid-template-columns:64px minmax(0,1fr);gap:10px;padding:10px}.curated-cover{width:64px;height:64px}.curated-actions{gap:8px}.curated-actions .btn{flex:1 1 0;min-width:0;min-height:44px;padding-inline:8px;white-space:normal}.library-more-filters>summary small{display:none}}.trending-section{margin-bottom:32px}.section-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:16px}.section-head h2{margin:0;font-size:1.35rem;font-weight:700;letter-spacing:-.02em}.section-link{display:inline-flex;align-items:center;min-width:44px;min-height:44px;color:var(--accent-text);text-decoration:none;font-size:14px;font-weight:600;padding:0 4px}.back-link{display:inline-flex;align-items:center;min-height:44px;gap:6px;margin:0 0 20px;padding:0 4px;color:var(--muted);text-decoration:none;font-size:14px;font-weight:500;letter-spacing:.01em;transition:color .15s ease}.back-link:hover{color:var(--text)}.back-link:before{content:"←";font-size:15px;line-height:1;opacity:.85}.trending-scroll{display:flex;gap:16px;overflow-x:auto;padding-bottom:8px;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;scrollbar-width:thin}.trend-card{flex:0 0 200px;display:flex;flex-direction:column;scroll-snap-align:start;text-decoration:none;color:inherit;background:var(--bg-elevated);border:var(--stroke-w) solid var(--ink);border-radius:var(--radius-md);overflow:hidden;box-shadow:4px 4px 0 var(--ink);transition:transform .12s ease,box-shadow .12s ease}.trend-card:hover{transform:translate(-2px,-2px);box-shadow:7px 7px 0 var(--ink)}.trend-cover{aspect-ratio:1;background-size:cover;background-position:center;position:relative;overflow:hidden}.trend-cover-img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover}.trend-bpm{position:absolute;top:10px;left:10px;font-size:11px;font-weight:700;padding:4px 8px;border-radius:999px;background:#0b0b0fbf;border:1px solid var(--border)}.trend-meta{padding:12px 14px 14px}.trend-meta strong{display:block;font-size:15px;margin-bottom:2px}.trend-meta span{font-size:13px;color:var(--muted)}.tier-chips{display:flex;gap:6px;margin-top:10px}.chip{--chip-ink: var(--muted);display:inline-flex;align-items:center;gap:5px;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:3px 8px;border-radius:var(--radius-sm);border:1px solid color-mix(in srgb,var(--chip-ink) 40%,transparent);background:color-mix(in srgb,var(--chip-ink) 10%,transparent);color:var(--chip-ink)}.chip-beginner{--chip-ink: var(--ok)}.chip-vocals{--chip-ink: var(--lane3)}.chip-tier,.chip-warn{--chip-ink: var(--accent2)}.tagline{color:var(--muted)}.cta-row{display:flex;gap:12px;flex-wrap:wrap}.stream-cta{display:flex;align-items:center;gap:16px;margin:20px auto;max-width:520px;padding:16px 18px;border-radius:var(--radius-lg);border:1px solid rgba(226,61,61,.35);background:linear-gradient(135deg,#e23d3d1f,#f2e4c914);text-align:left}.stream-cta-icon{font-size:28px;line-height:1;color:var(--accent);flex-shrink:0}.stream-cta-body strong{display:block;font-size:15px;margin-bottom:4px}.stream-cta-body{min-width:0;flex:1 1 0}.stream-cta-body p{margin:0;font-size:13px;color:var(--muted);line-height:1.45}.stream-cta-btn{flex-shrink:0;white-space:nowrap}@media(max-width:360px){.stream-cta{flex-wrap:wrap;gap:10px 12px;padding:14px}.stream-cta-btn{flex-basis:100%;width:100%;min-height:44px}}.stream-cta-soon{font-size:12px;color:var(--muted)}.stream-cta-inline{margin:12px 0;font-size:14px;color:var(--muted);line-height:1.5}.stream-cta-link{color:var(--accent);margin-left:8px;font-weight:600}.btn{display:inline-flex;align-items:center;justify-content:center;padding:12px 22px;border-radius:var(--radius-sm);border:var(--stroke-w) solid var(--ink);background:var(--bg-elevated);color:var(--text);text-decoration:none;cursor:pointer;font:inherit;font-weight:600;font-size:15px;box-shadow:3px 3px 0 var(--ink);transition:transform .08s ease,box-shadow .08s ease,border-color .15s ease}.btn:hover{box-shadow:5px 5px 0 var(--ink)}.btn:active{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink)}.btn.primary{background:var(--accent-deep);border:var(--stroke-w) solid var(--ink);color:var(--lime);font-weight:700;letter-spacing:.02em;box-shadow:4px 4px 0 var(--ink)}.btn.primary:hover{box-shadow:6px 6px 0 var(--ink)}.btn.primary:active{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--ink)}.btn.ghost{background:transparent;border-color:#ffffff24}.btn.linkish{background:transparent;border:none;color:var(--muted);margin-top:12px}.track-grid{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}.track-card{position:relative;display:flex;flex-direction:column;padding:0;background:var(--bg-elevated);border:var(--stroke-w) solid var(--ink);border-radius:var(--radius-md);color:inherit;box-shadow:4px 4px 0 var(--ink);transition:transform .1s ease,box-shadow .1s ease}.track-card-link{display:flex;flex:1 1 auto;min-height:0;gap:14px;padding:14px 62px 14px 14px;border-radius:calc(var(--radius-md) - var(--stroke-w));color:inherit;text-decoration:none}.track-card-link:focus-visible{outline:3px solid var(--accent-text);outline-offset:-5px}.track-card-copy{min-width:0}.track-card-favorite{position:absolute;z-index:3;top:12px;right:12px;display:grid;width:44px;height:44px;padding:0;place-items:center;border:1px solid rgba(242,228,201,.24);border-radius:var(--radius-sm);color:var(--text);background:#12100feb;box-shadow:2px 2px 0 var(--ink);cursor:pointer;font:700 23px/1 IBM Plex Sans,sans-serif}.track-card-favorite:hover{color:var(--accent-text);border-color:var(--accent-text)}.track-card-favorite[aria-pressed=true]{color:var(--ink);border-color:var(--accent-text);background:var(--accent-text)}.track-card-favorite:focus-visible{outline:3px solid var(--text);outline-offset:3px}.track-card .track-card-favorite>span{color:inherit;font-size:inherit;line-height:1}.track-card:hover{transform:translate(-2px,-2px);box-shadow:7px 7px 0 var(--ink)}.track-card img{width:72px;height:72px;border-radius:var(--radius-sm);object-fit:cover}.track-card strong{display:block;color:var(--text);font-weight:600}.track-card span{font-size:13px;color:var(--muted)}.settings input,.settings select{background:var(--bg2);border:1px solid rgba(255,255,255,.12);color:var(--text);padding:8px 10px;border-radius:8px}.track-detail{display:grid;gap:24px;grid-template-columns:200px 1fr}.track-detail>.back-link{align-self:start}.artist{color:var(--muted)}.rights{font-size:13px;color:var(--muted)}.track-preview{display:flex;flex-direction:column;gap:6px;margin:12px 0 4px}.track-preview-label{font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.audiobar{display:flex;align-items:center;gap:8px;width:100%;padding:0 8px;background:#1c1717;border:1.5px solid #000;border-radius:6px;box-shadow:2px 2px #0006}.audiobar-toggle{flex:0 0 auto;width:44px;height:44px;position:relative;display:flex;align-items:center;justify-content:center;border:0;background:transparent;cursor:pointer;padding:0}.audiobar-toggle:before{content:"";position:absolute;width:26px;height:24px;border:1.5px solid #000;background:#e23d3d;border-radius:4px;transform:skew(-6deg)}.audiobar-toggle:disabled{opacity:.45;cursor:default}.audiobar-compact{padding:0;border:0;background:transparent;box-shadow:none}.audiobar-compact .audiobar-toggle{width:100%;min-height:44px;height:44px;gap:10px;padding:0 14px;color:var(--text);font:750 12px/1 IBM Plex Sans,sans-serif;letter-spacing:.025em}.audiobar-compact .audiobar-toggle:before{top:0;right:0;bottom:0;left:0;width:auto;height:auto;border:1px solid rgba(242,228,201,.22);border-radius:var(--radius-sm);background:#e23d3d1a;transform:none;transition:border-color .12s ease,background .12s ease}.audiobar-compact .audiobar-toggle:hover:before,.audiobar-compact .audiobar-toggle:focus-visible:before{border-color:var(--accent-text);background:#e23d3d33}.audiobar-compact .audiobar-toggle:focus-visible{outline:3px solid var(--accent-text);outline-offset:3px}.audiobar-compact[data-playing=true] .audiobar-toggle:before{border-color:var(--accent-text);background:var(--accent-deep)}.audiobar-compact-label{position:relative;z-index:1}.audiobar-ic{position:relative;z-index:1;display:block}.audiobar-ic-play{width:0;height:0;border-left:9px solid #f5efe6;border-top:6px solid transparent;border-bottom:6px solid transparent;margin-left:2px}.audiobar-ic-pause{width:8px;height:11px;border-left:3px solid #f5efe6;border-right:3px solid #f5efe6}.audiobar-track{position:relative;flex:1 1 auto;height:8px;background:#f5efe61f;border:1px solid rgba(0,0,0,.9);border-radius:2px;cursor:pointer;touch-action:none}.audiobar-track:after{content:"";position:absolute;left:0;right:0;top:-18px;bottom:-18px}.audiobar-track:focus-visible{outline:2px solid #ffb020;outline-offset:3px}.audiobar-buffer{position:absolute;inset:0 auto 0 0;width:0%;background:#f5efe638}.audiobar-fill{position:absolute;inset:0 auto 0 0;width:0%;background:#ffb020}.audiobar-thumb{position:absolute;top:-2px;left:calc(0% - 4px);width:8px;height:10px;background:#f5efe6;border:1px solid #000;transition:transform 90ms ease-out}.audiobar-track:hover .audiobar-thumb,.audiobar.is-dragging .audiobar-thumb{transform:scale(1.25)}.audiobar-bubble{position:absolute;top:-22px;left:0;transform:translate(-50%);padding:1px 5px;font:600 10px IBM Plex Mono,IBM Plex Sans,monospace;font-variant-numeric:tabular-nums;color:#f5efe6;background:#000;border:1px solid #ffb020;border-radius:2px;white-space:nowrap;pointer-events:none;opacity:0;transition:opacity 90ms linear}.audiobar-track:hover .audiobar-bubble,.audiobar.is-dragging .audiobar-bubble,.audiobar-track:focus-visible .audiobar-bubble{opacity:1}.audiobar-time{flex:0 0 auto;font:600 11px IBM Plex Mono,IBM Plex Sans,monospace;color:#a8928b;white-space:nowrap;font-variant-numeric:tabular-nums}.track-card-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(102px,auto);gap:8px;margin:0 14px 14px}.track-card-preview.audiobar{width:100%;margin:0}.track-card-actions .audiobar-toggle,.track-card-play{min-height:48px}.track-card-play{flex-direction:column;gap:1px;min-width:0;margin:0;padding:5px 10px;font-size:14px;line-height:1.05;white-space:nowrap}.track-card-play>span{color:inherit;font-size:inherit}.track-card-play>small{color:inherit;font:700 9px/1.2 IBM Plex Mono,monospace;letter-spacing:.02em;opacity:.78}.district-badge{display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--district-color, var(--accent));padding:4px 10px;border-radius:999px;border:1px solid color-mix(in srgb,var(--district-color, var(--accent)) 45%,transparent);background:color-mix(in srgb,var(--district-color, var(--accent)) 12%,transparent)}.artist-bio{margin:8px 0 0;font-size:14px;line-height:1.5;color:var(--muted);max-width:42ch}.showcase-chips{display:flex;flex-wrap:wrap;gap:8px;align-items:center;margin-bottom:16px}.chip-link{display:inline-flex;align-items:center;min-width:44px;min-height:44px;text-decoration:none;color:var(--accent-text);border:1px solid rgba(226,61,61,.35);padding:0 10px;border-radius:999px;font-size:12px}.chip-link:hover{background:#e23d3d1a}.library-empty{grid-column:1 / -1;padding:32px 16px;text-align:center;color:var(--muted);border:1px dashed var(--border);border-radius:var(--radius-md)}.library-empty p{margin:0}.library-empty .btn{min-height:44px;margin-top:14px}.track-card .district-badge{margin-top:6px}.track-card-cover-wrap{position:relative;border-radius:var(--radius-sm);overflow:hidden;border-bottom:2px solid var(--district-color, var(--accent))}.pickers{display:flex;gap:16px;margin:16px 0}.pickers label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--muted)}.play-page{max-width:560px;margin:0 auto}body.play-immersive .site-header,body.play-immersive .site-footer{display:none}html.play-immersive,body.play-immersive{overscroll-behavior:none}body.play-running .network-status-notice{display:none}body.play-immersive .app-shell{max-width:none;padding-left:max(8px,env(safe-area-inset-left));padding-right:max(8px,env(safe-area-inset-right));padding-bottom:env(safe-area-inset-bottom)}body.play-immersive .play-page{max-width:none;margin:0}.play-meta{display:flex;gap:12px;align-items:center;margin-bottom:10px;font-size:14px;flex-wrap:wrap;padding:10px 14px;border-radius:var(--radius-md);background:#1c1717bf;border:1px solid var(--border);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);position:relative;z-index:31}.play-meta-heading{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0}.play-meta-tier{color:var(--muted)}.play-meta-tier-compact{display:none}.btn.compact{min-height:44px;padding:6px 10px;font-size:12px;margin-left:auto}.play-fullscreen-icon{display:none}.play-exit{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;width:44px;height:44px;padding:0;border:0;background:transparent;cursor:pointer}.play-exit-visual{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:var(--radius-sm);border:2px solid var(--ink);background:var(--bg-elevated);color:var(--text);font-size:15px;font-weight:800;line-height:1;box-shadow:3px 3px 0 var(--ink);transition:background .12s ease,color .12s ease,transform .12s ease,box-shadow .12s ease}.play-exit-visual svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2.5;stroke-linecap:square}.play-exit:hover .play-exit-visual,.play-exit:focus-visible .play-exit-visual{background:var(--accent);color:#12100f}.play-exit:active .play-exit-visual{transform:translate(3px,3px);box-shadow:0 0 0 var(--ink)}.play-wrap{-webkit-user-select:none;user-select:none}.play-wrap{position:relative;-webkit-user-select:none;user-select:none;height:calc(100dvh - 88px);min-height:420px;max-width:min(96vw,600px);margin:0 auto;border:3px solid var(--ink);border-radius:var(--radius-md);overflow:hidden;background:var(--bg);box-shadow:8px 8px #0000008c}.play-bg{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;background-size:cover;background-position:center;filter:blur(30px) brightness(.32) saturate(1.25);transform:scale(1.12)}.play-canvas{display:block;width:100%;height:100%;touch-action:none;-webkit-touch-callout:none}.play-failure{position:absolute;top:0;right:0;bottom:0;left:0;z-index:20;display:grid;place-items:center;padding:20px;background:linear-gradient(#12100fd6,#540a16e6),var(--halftone);background-size:auto,10px 10px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity 80ms linear}.play-failure[data-show="1"]{opacity:1;visibility:visible;pointer-events:auto}.play-failure-card{display:grid;justify-items:center;gap:6px;width:min(360px,88%);padding:22px 28px 24px;border:4px solid var(--ink);background:var(--accent);color:#12100f;box-shadow:8px 8px 0 var(--ink);transform:skew(-4deg);text-align:center}.play-failure-card strong{font:400 clamp(2.2rem,9vw,4.4rem)/.95 Anton,"Sora",sans-serif;letter-spacing:.035em}.play-failure-card span{font:800 .72rem/1 IBM Plex Mono,monospace;letter-spacing:.18em}.drill-recap{position:absolute;top:72px;left:50%;z-index:9;display:grid;justify-items:center;gap:2px;width:min(250px,calc(100% - 32px));padding:8px 12px 9px;border:2px solid var(--ink);border-left:5px solid var(--scape-gold);background:#12100ff0;box-shadow:4px 4px 0 var(--ink);color:var(--text);pointer-events:none;transform:translate(-50%) skew(-3deg);text-align:center}.drill-recap>*{transform:skew(3deg)}.drill-recap span,.drill-recap small{font:800 9px/1.15 IBM Plex Mono,monospace;letter-spacing:.1em;text-transform:uppercase}.drill-recap span{color:var(--scape-gold)}.drill-recap strong{font:750 14px/1.2 Sora,IBM Plex Sans,sans-serif}.drill-recap small{color:var(--muted)}@media(orientation:portrait)and (max-width:520px){.drill-recap{top:66px;width:min(218px,calc(100% - 24px));padding:7px 9px 8px}}.pause-btn{position:absolute;top:11px;right:11px;z-index:12;display:grid;place-items:center;width:44px;height:44px;padding:0;border:0;background:transparent;cursor:pointer}.pause-btn-visual{display:grid;place-items:center;width:38px;height:38px;border-radius:var(--radius-sm);border:2px solid var(--ink);background:var(--scape-accent-2);color:#12100f;font-size:16px;font-weight:800;line-height:1;box-shadow:3px 3px 0 var(--ink);transition:background .12s ease,color .12s ease,box-shadow .12s ease}.pause-btn-visual svg{width:20px;height:20px;fill:currentColor}.pause-btn:hover .pause-btn-visual,.pause-btn:focus-visible .pause-btn-visual{background:var(--accent);color:var(--scape-accent-2);box-shadow:4px 4px 0 var(--ink)}.overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;background:#12100f;background-image:var(--halftone);background-size:10px 10px;z-index:10;text-align:center;padding:20px 16px}.overlay:before{content:"";position:absolute;top:10px;right:10px;bottom:10px;left:10px;border:2px solid var(--ink);pointer-events:none;box-shadow:inset 0 0 0 2px #f2e4c91f}.overlay>*{position:relative;z-index:1}.overlay .unlock-btn,.overlay .btn.primary.unlock-btn{font-family:Anton,Sora,sans-serif;font-size:clamp(1.35rem,4vw,1.75rem);font-weight:400;letter-spacing:.06em;text-transform:uppercase;padding:14px 28px;background:var(--accent-deep);color:var(--scape-accent-2);border:3px solid var(--ink);border-radius:var(--radius-sm);box-shadow:5px 5px 0 var(--ink);cursor:pointer}.overlay .unlock-btn:hover,.overlay .btn.primary.unlock-btn:hover{transform:translate(-1px,-1px);box-shadow:7px 7px 0 var(--ink)}.overlay .unlock-btn:active,.overlay .btn.primary.unlock-btn:active{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--ink)}.overlay .unlock-btn:disabled,.overlay .btn.primary.unlock-btn:disabled,.overlay .unlock-btn:disabled:hover,.overlay .btn.primary.unlock-btn:disabled:hover{cursor:wait;opacity:.72;transform:none;box-shadow:5px 5px 0 var(--ink)}.overlay .unlock-btn[data-loading=true],.overlay .btn.primary.unlock-btn[data-loading=true]{background:#29221f;color:var(--scape-accent-2);border-color:var(--accent);opacity:1;cursor:progress}.start-run-error{max-width:32rem;margin:0;color:var(--accent2);font:700 12px/1.45 IBM Plex Mono,monospace}.overlay-kicker{margin:0;font-family:Sora,IBM Plex Sans,sans-serif;font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-text)}.overlay-title{margin:0;font-family:Anton,Sora,sans-serif;font-size:clamp(1.5rem,4.5vw,2rem);letter-spacing:.02em;line-height:1;color:var(--scape-accent-2);-webkit-text-stroke:3px var(--ink);paint-order:stroke fill}.overlay.load-error p{margin:0 16px 12px;text-align:center;color:var(--scape-warn)}.load-error-detail{max-width:min(30rem,100%);overflow-wrap:anywhere;color:var(--muted);font:600 11px/1.4 IBM Plex Mono,monospace;text-align:center}.play-hud{position:absolute;top:0;right:0;bottom:0;left:0;z-index:6;pointer-events:none;font-family:Sora,IBM Plex Sans,sans-serif}.hud-chip{position:absolute;top:14px;left:14px;display:flex;flex-direction:column;gap:4px;width:clamp(132px,34%,158px);padding:7px 11px;background:var(--scape-accent-2);color:#12100f;border:3px solid var(--ink);box-shadow:4px 4px 0 var(--ink);transform:skew(-3deg)}.hud-chip>*{transform:skew(3deg)}.hud-performance-head,.hud-performance-meta{display:flex;align-items:center;justify-content:space-between;gap:8px}.hud-performance-head{min-height:13px}.hud-track-score{display:block;font-variant-numeric:tabular-nums}.hud-track-score-label{font:700 9px/1 IBM Plex Mono,monospace;letter-spacing:.16em;opacity:.7}.hud-score-target{min-width:0;margin-left:auto;overflow:hidden;color:#12100fc2;font:900 8px/1 IBM Plex Mono,monospace;font-variant-numeric:tabular-nums;letter-spacing:.02em;text-overflow:ellipsis;white-space:nowrap}.hud-score-target[data-state=tied]{color:#67460c}.hud-score-target[data-state=ahead]{color:#155332}.hud-track-score>span:last-child{font-family:Anton,Sora,sans-serif;font-size:1.4rem;line-height:1;letter-spacing:.02em}.hud-performance-meta{font:700 8px/1 IBM Plex Mono,monospace;letter-spacing:.05em;font-variant-numeric:tabular-nums}.hud-track-accuracy b{margin-right:3px;font-size:7px;letter-spacing:.1em;opacity:.62}.hud-progress-count{opacity:.7}.hud-progress-rail{position:relative;display:block;height:4px;overflow:hidden;border:1px solid rgba(18,16,15,.62);background:#12100f2e}.hud-progress-fill{position:absolute;inset:0 auto 0 0;display:block;width:0;background:var(--accent)}.hud-hp{position:relative;display:grid;grid-template-columns:auto minmax(30px,1fr) 3ch;align-items:center;gap:5px;min-height:8px;font:800 7px/1 IBM Plex Mono,monospace;font-variant-numeric:tabular-nums;letter-spacing:.08em}.hud-hp-label{opacity:.7}.hud-hp-rail{position:relative;display:block;height:6px;overflow:hidden;border:1px solid rgba(18,16,15,.72);background:#12100f33}.hud-hp-fill{position:absolute;inset:0 auto 0 0;display:block;width:100%;background:var(--scape-gold)}.hud-hp-value{text-align:right}.hud-hp-damage{position:absolute;top:calc(100% + 4px);right:-1px;padding:2px 4px;border:1px solid #12100f;background:var(--accent);color:#12100f;font:900 8px/1 IBM Plex Mono,monospace;font-variant-numeric:tabular-nums;letter-spacing:0;opacity:0;transform:translateY(-2px);transition:opacity 80ms linear,transform 80ms ease-out}.hud-hp-damage[data-show="1"]{opacity:1;transform:translateY(0)}.hud-hp[data-critical="1"]{color:#9f1515}.hud-hp[data-critical="1"] .hud-hp-fill{background:var(--accent)}.hud-signal{position:absolute;top:14px;left:50%;transform:translate(-50%) skew(-6deg);padding:6px 16px;font:800 12px/1 IBM Plex Mono,monospace;letter-spacing:.2em;text-transform:uppercase;color:#12100f;background:var(--muted);border:3px solid var(--ink);box-shadow:4px 4px 0 var(--ink);transition:opacity .1s linear,visibility .1s linear}.hud-signal>*{transform:skew(6deg)}.hud-signal[data-tier="1"]{background:var(--lane2)}.hud-signal[data-tier="2"]{background:var(--accent)}.hud-signal[data-tier="3"]{background:var(--scape-gold, #ffb020);color:#12100f}.hud-signal[data-assist="1"]{opacity:0;visibility:hidden}@media(orientation:portrait)and (max-width:520px){.play-wrap:not(.play-wrap-duo) .hud-chip{top:10px;left:10px;width:min(118px,30%);gap:2px;padding:5px 8px;box-shadow:3px 3px 0 var(--ink)}.play-wrap:not(.play-wrap-duo) .hud-performance-head{gap:3px;min-height:11px}.play-wrap:not(.play-wrap-duo) .hud-track-score-label{font-size:8px;letter-spacing:.08em}.play-wrap:not(.play-wrap-duo) .hud-score-target{font-size:7px;letter-spacing:0}.play-wrap:not(.play-wrap-duo) .hud-track-score>span:last-child{font-size:1.15rem}.play-wrap:not(.play-wrap-duo) .hud-performance-meta{gap:5px;font-size:7px}.play-wrap:not(.play-wrap-duo) .hud-track-accuracy b{font-size:6px}.play-wrap:not(.play-wrap-duo) .hud-signal{top:10px;padding:5px 10px;font-size:10px;letter-spacing:.14em;box-shadow:3px 3px 0 var(--ink)}.play-wrap:not(.play-wrap-duo) .pause-btn{top:5px;right:5px}}.hud-practice-assist,.hud-opening-coach{position:absolute;top:102px;left:50%;z-index:7;max-width:calc(100% - 28px);display:flex;align-items:center;gap:8px;padding:7px 10px;color:#12100f;background:var(--scape-gold);border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink);transform:translate(-50%,-5px) skew(-4deg);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .12s ease,transform .12s ease,visibility .12s;white-space:nowrap}.hud-practice-assist[data-show="1"],.hud-opening-coach[data-show="1"]{opacity:1;visibility:visible;transform:translate(-50%) skew(-4deg)}.hud-practice-assist>*,.hud-opening-coach>*{transform:skew(4deg)}.hud-practice-assist strong,.hud-opening-coach strong{font:800 9px/1 IBM Plex Mono,monospace;letter-spacing:.1em;text-transform:uppercase}.hud-practice-assist span{font:800 11px/1 IBM Plex Mono,monospace;font-variant-numeric:tabular-nums}.hud-practice-assist{top:14px;min-width:104px;flex-direction:column;justify-content:center;gap:2px;padding:4px 9px;text-align:center}.hud-practice-assist strong{font-size:8px;letter-spacing:.08em}.hud-practice-assist span{font-size:9px}.hud-practice-assist:before{display:none}.hud-opening-coach{top:14px;left:14px;width:clamp(132px,34%,158px);min-height:80px;max-width:calc(100% - 28px);flex-direction:column;justify-content:center;gap:3px;background:var(--lane3);text-align:center;transform:translateY(-5px) skew(-3deg);white-space:normal}.hud-opening-coach[data-show="1"]{transform:skew(-3deg)}.hud-opening-coach>*{transform:skew(3deg)}.hud-opening-coach strong{font-size:10px}.hud-opening-coach span{font:750 12px/1.25 IBM Plex Sans,sans-serif;letter-spacing:.02em}.hud-opening-progress{color:#12100fb8;font:800 9px/1 IBM Plex Mono,monospace;letter-spacing:.06em;text-transform:uppercase}@media(max-width:420px){.hud-chip,.hud-opening-coach{width:128px}}@media(orientation:portrait)and (max-width:520px){.play-wrap:not(.play-wrap-duo) .hud-opening-coach{top:10px;left:10px;width:min(118px,30%);min-height:68px;padding:5px 7px}.play-wrap:not(.play-wrap-duo) .hud-practice-assist{top:10px;min-width:88px;padding:4px 7px;box-shadow:3px 3px 0 var(--ink)}}@media(orientation:portrait)and (max-width:360px){.play-wrap:not(.play-wrap-duo) .hud-opening-coach{width:min(118px,36%)}.play-wrap:not(.play-wrap-duo) .hud-opening-coach strong{font-size:9px}.play-wrap:not(.play-wrap-duo) .hud-practice-assist strong{display:none}.play-wrap:not(.play-wrap-duo) .hud-practice-assist:before{display:block;content:attr(data-short-label);font:800 8px/1 IBM Plex Mono,monospace;letter-spacing:.08em;transform:skew(4deg)}}.unlock-hint{margin:0;max-width:240px;color:var(--scape-accent-2);font-family:Sora,IBM Plex Sans,sans-serif;font-size:.78rem;font-weight:600;letter-spacing:.04em;line-height:1.45;text-transform:uppercase;opacity:.88}.challenge-target,.personal-best-target,.daily-run-context{width:min(390px,calc(100vw - 104px));display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:3px 14px;padding:10px 12px;border:2px solid var(--scape-gold);background:#ffb0201a;box-shadow:3px 3px 0 var(--ink);text-align:left}.challenge-target span,.challenge-target strong,.personal-best-target span,.personal-best-target strong,.daily-run-context span,.daily-run-context strong{grid-column:1}.challenge-target span,.personal-best-target span,.daily-run-context span{color:var(--scape-gold);font:800 9px/1 IBM Plex Mono,monospace;letter-spacing:.12em;text-transform:uppercase}.challenge-target strong,.personal-best-target strong,.daily-run-context strong{color:var(--text);font-size:15px;line-height:1.2}.challenge-target small,.personal-best-target small,.daily-run-context small{grid-column:2;grid-row:1 / 3;color:var(--muted);font-size:10px;line-height:1.35;text-align:right}.daily-run-context{border-color:var(--ok);background:color-mix(in srgb,var(--ok) 10%,transparent)}.daily-run-context span{color:var(--ok)}.personal-best-target{border-color:var(--lime);background:color-mix(in srgb,var(--lime) 9%,transparent)}.personal-best-target span{color:var(--lime)}.unlock-note-speed{display:flex;align-items:baseline;justify-content:center;gap:7px;margin:-2px 0 0;color:var(--muted);font:700 10px/1.2 IBM Plex Mono,monospace;letter-spacing:.05em;text-transform:uppercase}.unlock-note-speed strong{color:var(--lime);font-size:12px}.unlock-note-speed span:before{content:"· "}.unlock-note-speed-control{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;width:min(250px,100%);min-height:52px;margin:-5px 0 0;overflow:hidden;border:2px solid color-mix(in srgb,var(--muted) 52%,transparent);background:color-mix(in srgb,var(--bg) 90%,transparent);box-shadow:3px 3px 0 var(--ink)}.unlock-note-speed-control button{display:grid;place-items:center;width:44px;min-width:44px;min-height:44px;padding:0;border:0;background:var(--bg-elevated);color:var(--text);cursor:pointer;font:900 22px/1 IBM Plex Mono,monospace}.unlock-note-speed-control button:first-child{border-right:2px solid var(--ink)}.unlock-note-speed-control button:last-child{border-left:2px solid var(--ink)}.unlock-note-speed-control button:hover:not(:disabled){background:var(--accent-deep);color:var(--lime)}.unlock-note-speed-control button:active:not(:disabled){transform:translateY(1px)}.unlock-note-speed-control button:focus-visible{position:relative;z-index:1}.unlock-note-speed-control button:disabled{opacity:.35;cursor:not-allowed}.unlock-note-speed-control output{min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1px;padding:3px 8px;text-align:center;font-family:IBM Plex Mono,monospace;text-transform:uppercase}.unlock-note-speed-control output span{color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.04em;white-space:nowrap}.unlock-note-speed-control output strong{color:var(--lime);font-size:13px}.unlock-note-speed-control output small{color:var(--muted);font-size:8px;font-weight:700;letter-spacing:.06em}.unlock-practice-tempo{display:grid;gap:5px;width:min(280px,calc(100vw - 104px));margin:-7px 0 0;padding:0;border:0}.unlock-practice-tempo legend{margin:0 auto;padding:0;color:var(--scape-gold);font:850 10px/1 IBM Plex Mono,monospace;letter-spacing:.1em;text-transform:uppercase}.unlock-practice-tempo>p{margin:0;color:var(--muted);font:650 8px/1.1 IBM Plex Mono,monospace;letter-spacing:.035em;text-transform:uppercase}.unlock-practice-tempo .practice-tempo-options{gap:5px}.unlock-practice-tempo .practice-tempo-options label{min-height:44px}.unlock-mechanics{width:min(390px,calc(100vw - 104px));padding:9px;border:2px solid var(--ink);background:#f2e4c90f;box-shadow:3px 3px 0 var(--ink);text-align:left}.unlock-mechanics-label{display:block;margin:0 3px 7px;color:var(--accent-text);font:800 9px/1 IBM Plex Mono,monospace;letter-spacing:.14em;text-transform:uppercase}.unlock-mechanics-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:6px}.unlock-mechanic{min-width:0;display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:8px;padding:7px 8px 7px 10px;border-left:4px solid var(--lane1);background:#0003}.unlock-mechanic-chord{border-left-color:var(--lane0)}.unlock-mechanic-slide{border-left-color:var(--lane3)}.unlock-mechanic-copy{min-width:0;display:grid;gap:2px}.unlock-mechanic-preview{position:relative;display:block;width:42px;height:34px}.unlock-mechanic-note,.unlock-mechanic-path{position:absolute;display:block}.unlock-mechanic-note{z-index:2;width:13px;height:13px;border:2px solid var(--ink);background:var(--scape-accent-2);box-shadow:1px 1px 0 var(--ink);transform:rotate(45deg)}.unlock-mechanic-hold .unlock-mechanic-note{left:14px}.unlock-mechanic-hold .unlock-mechanic-note-start{top:1px}.unlock-mechanic-hold .unlock-mechanic-note-end{bottom:1px}.unlock-mechanic-hold .unlock-mechanic-path{z-index:1;top:7px;bottom:7px;left:15px;width:11px;border-inline:2px solid var(--ink);background:color-mix(in srgb,var(--lane1) 72%,transparent)}.unlock-mechanic-chord .unlock-mechanic-note{top:10px}.unlock-mechanic-chord .unlock-mechanic-note-start{left:2px;background:var(--lane0)}.unlock-mechanic-chord .unlock-mechanic-note-end{right:2px;background:var(--lane3)}.unlock-mechanic-chord .unlock-mechanic-path{z-index:1;top:14px;right:7px;left:7px;height:6px;border-block:2px solid var(--ink);background:var(--scape-accent-2)}.unlock-mechanic-slide .unlock-mechanic-note-start{bottom:2px;left:2px;background:var(--lane1)}.unlock-mechanic-slide .unlock-mechanic-note-end{top:2px;right:2px;background:var(--lane2)}.unlock-mechanic-slide .unlock-mechanic-path{z-index:1;top:16px;left:7px;width:29px;border-top:4px dashed var(--scape-accent-2);filter:drop-shadow(0 2px 0 var(--ink));transform:rotate(-31deg);transform-origin:center}.unlock-mechanic b{color:var(--scape-accent-2);font-size:12px;line-height:1.2}.unlock-mechanic small{color:var(--muted);font-size:10px;line-height:1.35}.unlock-keys{display:flex;gap:6px;margin:2px 0 4px;filter:drop-shadow(2px 2px 0 var(--ink))}.unlock-keys .key-chip{min-width:36px;padding:6px 10px;font-size:13px}.unlock-gamepad{display:flex;align-items:center;gap:9px;min-height:42px;margin:1px 0 3px;padding:6px 10px;border:2px solid var(--ink);background:color-mix(in srgb,var(--lime) 13%,rgba(18,16,15,.9));box-shadow:3px 3px 0 var(--ink);text-align:left}.unlock-gamepad-buttons{color:var(--lime);font:900 12px/1 IBM Plex Mono,monospace;letter-spacing:.08em;white-space:nowrap}.unlock-gamepad>span:last-child{display:grid;gap:2px}.unlock-gamepad strong,.unlock-gamepad small{font-family:IBM Plex Mono,monospace;line-height:1.1;text-transform:uppercase}.unlock-gamepad strong{color:var(--text);font-size:10px;letter-spacing:.09em}.unlock-gamepad small{color:var(--muted);font-size:8px;letter-spacing:.06em}.unlock-gamepad-start{margin:-1px 0 1px;color:var(--muted);font:750 9px/1.25 IBM Plex Mono,monospace;letter-spacing:.055em;text-align:center;text-transform:uppercase}.unlock-gamepad-start[data-ready=true]{color:var(--lime)}.unlock-touch-lanes{display:flex;gap:7px;margin:2px 0 4px;filter:drop-shadow(2px 2px 0 var(--ink))}.unlock-touch-lanes span{position:relative;width:34px;height:30px;border:2px solid var(--ink);background:var(--accent);clip-path:polygon(6px 0,100% 0,calc(100% - 6px) 100%,0 100%)}.unlock-touch-lanes span:after{content:"";position:absolute;top:50%;left:50%;width:10px;height:10px;border:2px solid var(--ink);border-radius:50%;background:var(--scape-accent-2);transform:translate(-50%,-50%)}.unlock-touch-lanes span:nth-child(2){background:var(--scape-accent-2)}.unlock-touch-lanes span:nth-child(2):after{background:var(--accent)}.unlock-touch-lanes span:nth-child(3){background:var(--scape-warn)}.unlock-touch-lanes span:nth-child(4){background:var(--lane3)}.unlock-shortcuts{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px 14px;margin:-3px 0 -5px;color:var(--muted);font:750 9px/1.2 IBM Plex Mono,monospace;letter-spacing:.055em;text-transform:uppercase}.unlock-shortcuts>span{display:inline-flex;align-items:center;gap:5px}.unlock-shortcuts kbd{min-width:22px;padding:3px 5px;border:1px solid color-mix(in srgb,var(--muted) 68%,var(--ink));background:#f2e4c90f;box-shadow:1px 1px 0 var(--ink);color:var(--scape-accent-2);font:800 9px/1 IBM Plex Mono,monospace}.unlock-shortcuts i{margin:0 -2px;font-style:normal}.unlock-shortcuts b{color:var(--muted);font:inherit}.unlock-extras{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:8px 14px;margin-top:12px}.unlock-sound{padding:7px 14px;font-size:12px;letter-spacing:.06em;text-transform:uppercase;box-shadow:2px 2px 0 var(--ink)}.unlock-sound-error{margin-top:8px;text-align:center}.unlock-link{display:inline-flex;align-items:center;min-height:44px;color:var(--scape-accent-2);padding:0;font-family:Sora,IBM Plex Sans,sans-serif;font-size:.76rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;text-decoration:underline;text-underline-offset:3px}.unlock-nosound a{display:inline-flex;align-items:center;min-height:44px}.unlock-nosound{max-width:260px;text-align:left;font-size:.74rem;line-height:1.5;color:var(--muted)}.unlock-nosound>summary{min-height:44px;line-height:44px;cursor:pointer;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--scape-accent-2)}.unlock-nosound p{margin:6px 0 0}.unlock-nosound a{color:var(--accent2)}.unlock-rights{margin:-8px 0 0;color:var(--muted);font:650 9px/1.2 IBM Plex Mono,monospace;letter-spacing:.1em;text-transform:uppercase;opacity:.7}.error{color:var(--accent2);margin:24px 0}.results{text-align:center;padding:24px 0 40px}.results-empty{padding-top:clamp(32px,8vh,72px)}.results-empty-card{width:min(100%,560px);margin:0 auto;padding:clamp(22px,5vw,36px);overflow:hidden;border:2px solid var(--ink);border-top:6px solid var(--accent);border-radius:var(--radius-md);background:var(--bg-elevated);box-shadow:6px 6px 0 var(--ink);text-align:left}.results-empty-card .eyebrow{margin:0 0 8px}.results-empty-card h1{margin:0;font-size:clamp(2.2rem,8vw,3.2rem);line-height:1}.results-empty-card .tagline{max-width:42ch;margin:16px 0 0;line-height:1.55}.results-empty-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:24px}.results-empty-actions .btn{min-width:0;min-height:46px;padding:10px 14px;text-align:center}@media(max-width:380px){.results-empty-actions{grid-template-columns:1fr}}.results-meta{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:6px;color:var(--muted);font-size:14px}.results-rights{margin-top:28px;font-size:12px}.grade-big{font-family:Anton,Sora,IBM Plex Sans,system-ui,sans-serif;font-weight:400;font-size:7rem;color:var(--accent);line-height:1;-webkit-text-stroke:6px var(--ink);paint-order:stroke fill;animation:gradeReveal .6s cubic-bezier(.2,1.4,.4,1) both}.grade-S{color:var(--scape-gold)}.grade-A{color:var(--scape-accent-2)}.grade-B{color:var(--accent)}.grade-C{color:var(--muted)}.grade-D{color:var(--scape-warn)}@keyframes gradeReveal{0%{transform:scale(.3) rotate(-8deg);opacity:0}to{transform:scale(1) rotate(0);opacity:1}}.badge.record{border-color:var(--scape-gold);color:var(--scape-gold);box-shadow:3px 3px 0 var(--ink);animation:recordPop 1.4s ease-in-out infinite alternate}@keyframes recordPop{0%{transform:scale(1);box-shadow:3px 3px 0 var(--ink)}to{transform:scale(1.05);box-shadow:5px 5px 0 var(--ink)}}.result-diagnostics{max-width:460px;margin:20px auto 4px;overflow:hidden;border:2px solid var(--ink);border-radius:var(--radius-md);background:var(--bg-elevated);box-shadow:4px 4px 0 var(--ink);text-align:left}.result-diagnostics>summary{min-height:48px;display:grid;grid-template-columns:minmax(0,1fr) auto 18px;align-items:center;gap:10px;padding:9px 12px;cursor:pointer;list-style:none}.result-diagnostics>summary::-webkit-details-marker{display:none}.result-diagnostics>summary:after{content:"+";color:var(--accent-text);font:800 18px/1 IBM Plex Mono,monospace;text-align:center}.result-diagnostics[open]>summary{border-bottom:2px solid var(--ink)}.result-diagnostics[open]>summary:after{content:"−"}.result-diagnostics>summary>span{color:var(--text);font-size:14px;font-weight:800}.result-diagnostics>summary>small{color:var(--muted);font:700 10px/1.2 IBM Plex Mono,monospace;letter-spacing:.04em;white-space:nowrap}.result-diagnostics>summary:focus-visible{outline:3px solid var(--accent2);outline-offset:-5px}.result-diagnostics-body{padding:14px 16px 16px}.judge-bars{max-width:420px;margin:20px auto;display:flex;flex-direction:column;gap:8px}.judge-row{display:flex;align-items:center;gap:10px;font-size:13px;animation:barIn .5s ease both}@keyframes barIn{0%{opacity:0;transform:translate(-12px)}to{opacity:1;transform:translate(0)}}.judge-label{width:56px;text-align:right;color:var(--muted)}.judge-track{flex:1;height:12px;background:var(--bg);border:var(--stroke-w) solid var(--ink);border-radius:var(--radius-sm);overflow:hidden}.judge-fill{display:block;height:100%;animation:barGrow .7s cubic-bezier(.2,.9,.3,1) both}@keyframes barGrow{0%{width:0}}.judge-n{width:34px;text-align:left;color:var(--text)}.timing-bar{max-width:420px;margin:18px auto 4px;animation:barIn .5s ease both}.result-diagnostics .judge-bars{margin:0 auto}.result-diagnostics .timing-bar{margin-bottom:0}.timing-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-bottom:6px}.timing-title{font-size:12px;letter-spacing:.14em;color:var(--muted)}.timing-mean{font-size:13px;font-weight:700;color:var(--text)}.timing-track{display:flex;height:14px;background:var(--bg);border:var(--stroke-w) solid var(--ink);border-radius:var(--radius-sm);overflow:hidden}.timing-half{position:relative;flex:1;display:flex}.timing-half+.timing-half{border-left:var(--stroke-w) solid var(--ink)}.timing-fill{display:block;height:100%;animation:barGrow .7s cubic-bezier(.2,.9,.3,1) both}.timing-fill.early{margin-left:auto;background:var(--lane3)}.timing-fill.late{margin-right:auto;background:var(--accent2)}.timing-legend{display:flex;justify-content:space-between;margin-top:5px;font-size:11px;letter-spacing:.08em;color:var(--muted)}@media(prefers-reduced-motion:reduce){.timing-bar,.timing-fill{animation:none}}.result-coach{--coach-color: var(--accent);max-width:520px;margin:22px auto 18px;overflow:hidden;border:2px solid var(--ink);border-left:6px solid var(--coach-color);border-radius:var(--radius-md);background:var(--bg-elevated);box-shadow:5px 5px 0 var(--ink);text-align:left}.challenge-result{--challenge-color: var(--accent);max-width:520px;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:5px 16px;margin:0 auto 18px;padding:13px 15px;border:2px solid var(--ink);border-left:6px solid var(--challenge-color);border-radius:var(--radius-md);background:var(--bg-elevated);box-shadow:4px 4px 0 var(--ink);text-align:left}.challenge-result[data-outcome=cleared]{--challenge-color: var(--ok)}.challenge-result[data-outcome=tied]{--challenge-color: var(--scape-gold)}.challenge-result>div{min-width:0;display:grid;gap:3px}.challenge-result>div span{color:var(--challenge-color);font:800 9px/1 IBM Plex Mono,monospace;letter-spacing:.12em;text-transform:uppercase}.challenge-result>div strong{color:var(--text);font-size:18px;line-height:1.2}.challenge-result-delta{color:var(--challenge-color);font-variant-numeric:tabular-nums;white-space:nowrap}.challenge-result>small{grid-column:1;color:var(--muted);font-size:11px}.challenge-result-retry.btn{grid-column:2;grid-row:2;justify-self:end;min-height:44px;margin:0;padding:7px 12px;font-size:11px;white-space:nowrap}.daily-result{max-width:520px;display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 auto 18px;padding:13px 15px;border:2px solid var(--ink);border-left:6px solid var(--ok);border-radius:var(--radius-md);background:var(--bg-elevated);box-shadow:4px 4px 0 var(--ink);text-align:left}.daily-result[data-state=failed]{border-left-color:var(--accent)}.daily-result-copy{min-width:0;display:grid;gap:3px}.daily-result-copy>span{color:var(--ok);font:800 9px/1 IBM Plex Mono,monospace;letter-spacing:.12em;text-transform:uppercase}.daily-result[data-state=failed] .daily-result-copy>span{color:var(--accent)}.daily-result-copy>strong{color:var(--text);font-size:18px;line-height:1.2}.daily-result-copy>small{color:var(--muted);font-size:11px;line-height:1.45}.daily-result-actions{flex:0 0 auto;display:grid;gap:7px}.daily-result-actions .btn{min-height:44px;margin:0;padding:7px 12px;font-size:11px;white-space:nowrap}.results-streak-update{max-width:520px;display:flex;align-items:center;justify-content:space-between;gap:18px;margin:0 auto 18px;padding:13px 15px;border:2px solid var(--ink);border-left:6px solid var(--scape-gold);border-radius:var(--radius-md);background:linear-gradient(105deg,rgba(255,176,32,.12),var(--bg-elevated) 62%);box-shadow:4px 4px 0 var(--ink);text-align:left}.results-streak-update[data-kind=extended]{border-left-color:var(--scape-accent-2);background:linear-gradient(105deg,rgba(92,184,148,.14),var(--bg-elevated) 62%)}.results-streak-copy{min-width:0;display:grid;gap:3px}.results-streak-copy>span{color:var(--scape-gold);font:800 9px/1 IBM Plex Mono,monospace;letter-spacing:.12em;text-transform:uppercase}.results-streak-update[data-kind=extended] .results-streak-copy>span{color:var(--scape-accent-2)}.results-streak-copy>strong{color:var(--text);font-size:18px;line-height:1.2}.results-streak-copy>small{color:var(--muted);font-size:11px;line-height:1.45}.results-streak-actions{flex:0 0 auto;display:grid;justify-items:stretch;gap:6px}.results-streak-actions>b{color:var(--scape-gold);font:800 9px/1 IBM Plex Mono,monospace;letter-spacing:.12em;text-align:center;text-transform:uppercase}.results-streak-actions .btn{min-height:44px;margin:0;padding:7px 12px;font-size:11px;white-space:nowrap}@media(max-width:380px){.challenge-target,.personal-best-target,.daily-run-context{grid-template-columns:1fr}.challenge-target small,.personal-best-target small,.daily-run-context small{grid-column:1;grid-row:auto;text-align:left}.challenge-result{grid-template-columns:1fr}.challenge-result-delta,.challenge-result>small,.challenge-result-retry.btn{grid-column:1;grid-row:auto}.challenge-result-retry.btn{justify-self:stretch;width:100%}.daily-result{align-items:stretch;flex-direction:column}.daily-result-actions{grid-template-columns:1fr 1fr}.daily-result-actions .btn{min-width:0;white-space:normal}.results-streak-update{align-items:stretch;flex-direction:column}.results-streak-actions{grid-template-columns:auto minmax(0,1fr);align-items:center}}@media(max-width:420px){.play-wrap .overlay-tap{justify-content:flex-start;overflow-y:auto;padding:8px 10px}}@media(max-width:360px)and (orientation:portrait){.play-wrap:not(.play-wrap-hero) .overlay-tap .unlock-btn{min-height:52px;padding:10px 18px;font-size:1.2rem;line-height:1.1;white-space:nowrap}}.result-coach.practice{--coach-color: var(--scape-gold)}.result-coach.timing{--coach-color: var(--lane3)}.result-coach.advance{--coach-color: var(--ok)}.result-coach.replay{--coach-color: var(--scape-accent-2)}.result-coach-header{min-height:42px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 14px;border-bottom:2px solid var(--ink);background:#00000029}.result-coach-header span,.result-coach-header strong{font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.result-coach-header span{color:var(--coach-color)}.result-coach-header strong{color:var(--muted)}.result-coach-body{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px}.result-coach-body>div{min-width:0}.result-coach h2,.result-coach p{margin:0}.result-coach h2{color:var(--text);font-size:18px;line-height:1.2}.result-coach p{margin-top:6px;color:var(--muted);font-size:12px;line-height:1.5}.result-coach .btn{min-width:168px;min-height:48px;flex:0 0 auto;padding-inline:16px}.result-coach-actions{flex:0 0 168px;display:grid;gap:8px}.result-coach-actions .btn{width:100%}.miss-replay summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px;border-radius:2px}.results-actions{max-width:560px;margin:28px auto 0;overflow:hidden;border:2px solid var(--ink);border-radius:var(--radius-md);background:var(--bg-elevated);box-shadow:5px 5px 0 var(--ink);text-align:left}.results-actions-header{padding:14px 16px 12px;border-bottom:2px solid var(--ink)}.results-actions-header span{color:var(--accent-text);font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.results-actions-header h2{margin:3px 0 0;color:var(--text);font-size:18px}.results-play-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:10px;padding:14px 16px}.results-play-actions .btn,.results-share-actions .btn{min-height:46px;padding:10px 14px}.results-next-track{width:min(100%,520px);display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 auto 20px;padding:12px;border:2px solid var(--ink);border-left:5px solid var(--scape-accent-2);border-radius:var(--radius-sm);background:#5cb89414}.results-next-track>div{min-width:0;display:grid;gap:3px}.results-next-track span{color:var(--scape-accent-2);font:800 9px/1 IBM Plex Mono,monospace;letter-spacing:.12em;text-transform:uppercase}.results-next-track strong{overflow:hidden;color:var(--text);font-size:15px;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.results-next-track small{color:var(--muted);font-size:10px;line-height:1.35}.results-next-track .btn{min-width:112px;min-height:46px;flex:0 0 auto;margin:0;padding:9px 12px}.results-share-panel{max-width:520px;margin:18px auto 20px;padding:14px;border:2px solid var(--ink);border-radius:var(--radius-sm);background:#00000029}.results-share-copy strong,.results-share-copy span{display:block}.results-share-copy strong{color:var(--text);font-size:14px}.results-share-copy span{margin-top:3px;color:var(--muted);font-size:11px;line-height:1.4}.results-share-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:8px;margin-top:12px}.results-share-actions .btn{min-width:0;font-size:12px}.results-share-panel .error{margin:12px 0 0;font-size:12px}.pwa-install-card{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:14px;max-width:520px;margin:0 auto 20px;padding:14px;border:2px solid color-mix(in srgb,var(--accent) 72%,var(--ink));border-radius:var(--radius-sm);background:linear-gradient(110deg,color-mix(in srgb,var(--accent) 14%,transparent),transparent 64%),var(--bg-elevated);box-shadow:5px 5px 0 var(--ink)}.pwa-install-icon{display:grid;width:48px;height:48px;place-items:center;border:2px solid var(--accent);color:var(--accent-text);background:color-mix(in srgb,var(--accent) 12%,var(--bg))}.pwa-install-icon svg{width:26px;height:26px;fill:none;stroke:currentColor;stroke-linecap:square;stroke-linejoin:miter;stroke-width:2}.pwa-install-copy span,.pwa-install-copy strong,.pwa-install-copy small{display:block}.pwa-install-copy span{color:var(--accent-text);font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.pwa-install-copy strong{margin-top:3px;color:var(--text);font-size:14px;line-height:1.3}.pwa-install-copy small{margin-top:3px;color:var(--muted);font-size:11px;line-height:1.4}.pwa-install-action{min-height:46px;white-space:nowrap}.results-exit-links{display:flex;justify-content:center;gap:10px;padding:0 16px 16px;color:var(--muted);font-size:12px}.results-exit-links a{color:var(--muted);font-weight:700;text-underline-offset:3px}.results-exit-links a:hover{color:var(--text)}@media(max-width:520px){.result-coach-body{align-items:stretch;flex-direction:column}.result-coach .btn{width:100%}.result-coach-actions{flex:0 0 auto;width:100%}.results-play-actions,.results-share-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.results-play-actions>:last-child:nth-child(odd),.results-share-actions>:last-child:nth-child(odd){grid-column:1 / -1}.pwa-install-card{grid-template-columns:44px minmax(0,1fr);gap:10px 12px}.pwa-install-icon{width:44px;height:44px}.pwa-install-action{grid-column:1 / -1;width:100%}.results-next-track{align-items:stretch;flex-direction:column}.results-next-track .btn{width:100%}}.badge{display:inline-block;margin:4px;padding:4px 10px;border:1px solid rgba(226,61,61,.35);border-radius:999px;font-size:12px;font-weight:600;background:#e23d3d14}.badge.ap{border-color:#fde047;color:#fde047}.badge.failed{border-color:var(--accent);color:#fff;background:var(--accent)}.badge.daily{border-color:var(--ok);color:var(--ok);background:color-mix(in srgb,var(--ok) 10%,transparent)}.badge.daily.failed{border-color:var(--accent);color:#fff;background:var(--accent)}.badge.beginner{border-color:#86efac;color:#86efac;background:#86efac14}.badge.signal{border-color:#ffb020;color:#ffb020;background:#ffb02014}.badge.signal.onair{border-color:#000;color:#12100f;background:#ffb020}.neon-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;pointer-events:none;opacity:0;transition:opacity .6s}body[data-neon="1"] .neon-layer,body[data-neon="2"] .neon-layer,body[data-neon="3"] .neon-layer{opacity:1}.neon-layer .tube{position:absolute;top:10%;height:58%;width:5px;border-radius:3px;background:var(--district-color, #e23d3d);opacity:.05;animation:tubeFlicker 5.6s steps(1,end) infinite}.neon-layer .tube:nth-child(1){left:4%;animation-duration:6.4s}.neon-layer .tube:nth-child(2){left:8.5%;top:22%;height:42%;animation-duration:5.1s;animation-delay:-2.3s}.neon-layer .tube:nth-child(3){right:8.5%;top:22%;height:42%;animation-duration:5.9s;animation-delay:-1.1s}.neon-layer .tube:nth-child(4){right:4%;animation-duration:6.9s;animation-delay:-3.4s}@keyframes tubeFlicker{0%{opacity:.03}9%{opacity:.18}14%{opacity:.05}27%{opacity:.2}35%{opacity:.04}52%{opacity:.17}63%{opacity:.03}81%{opacity:.15}to{opacity:.05}}.neon-layer .sign{position:absolute;display:none;width:64px;height:22px;background:var(--district-color, #e23d3d);transform:skew(-10deg);opacity:.05}body[data-neon="2"] .neon-layer .sign,body[data-neon="3"] .neon-layer .sign{display:block;animation:signBlink 4.6s steps(1,end) infinite}.neon-layer .sign:nth-child(5){left:14%;top:8%}.neon-layer .sign:nth-child(6){right:15%;top:16%;animation-duration:5.3s;animation-delay:-1.7s}.neon-layer .sign:nth-child(7){left:20%;bottom:14%;animation-duration:4.1s;animation-delay:-2.9s}.neon-layer .sign:nth-child(8){right:10%;bottom:8%;animation-duration:5.8s;animation-delay:-.8s}@keyframes signBlink{0%{opacity:.04}22%{opacity:.16}31%{opacity:.05}55%{opacity:.14}70%{opacity:.03}88%{opacity:.12}to{opacity:.04}}.neon-layer .breathe{position:absolute;top:0;right:0;bottom:0;left:0;display:none;border:2px solid var(--district-color, #e23d3d);opacity:.04}body[data-neon="3"] .neon-layer .breathe{display:block;animation:breathe 8s ease-in-out infinite}@keyframes breathe{0%,to{opacity:.04}50%{opacity:.14}}@media(max-width:1099px){.neon-layer{display:none}}@media(prefers-reduced-motion:reduce){.neon-layer{display:none}}body[data-reduce-motion="1"] .neon-layer{display:none}@keyframes gradeStamp{0%{transform:scale(2.1) rotate(-9deg);opacity:0}55%{transform:scale(.94) rotate(2deg);opacity:1}72%{transform:scale(1.07) rotate(0)}to{transform:scale(1) rotate(0);opacity:1}}.grade-big{animation:gradeStamp .55s cubic-bezier(.2,.9,.3,1.2) both}@keyframes badgePop{0%{transform:scale(.4);opacity:0}70%{transform:scale(1.15);opacity:1}to{transform:scale(1);opacity:1}}.badges .badge{animation:badgePop .3s cubic-bezier(.2,.9,.3,1.2) both}.badges .badge:nth-child(2){animation-delay:90ms}.badges .badge:nth-child(3){animation-delay:.18s}.badges .badge:nth-child(4){animation-delay:.27s}@keyframes momentFlash{0%{opacity:0}25%{opacity:.32}to{opacity:0}}.results-hero-card.moment{position:relative;overflow:hidden}.results-hero-card.moment:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:#f5efe6;pointer-events:none;animation:momentFlash .65s ease-out .35s both}@media(prefers-reduced-motion:reduce){.grade-big,.badges .badge,.results-hero-card.moment:after{animation:none}}.track-card .badge.beginner,.track-detail .badge.beginner{margin-left:0;margin-bottom:6px}table{width:100%;border-collapse:collapse;font-size:14px}th,td{border-bottom:1px solid #1e2a3a;padding:8px;text-align:left}@media(max-width:860px){.hero-split{grid-template-columns:1fr;min-height:auto;margin-bottom:20px}.hero-visual{height:240px;min-height:200px;margin-bottom:8px}}@media(max-width:640px){.app-shell{padding-left:max(12px,env(safe-area-inset-left));padding-right:max(12px,env(safe-area-inset-right));padding-bottom:calc(72px + env(safe-area-inset-bottom))}.site-nav{display:none}.header-avatar{margin-left:auto}.site-footer{display:none}.mobile-tabbar{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:50;padding:6px 8px calc(8px + env(safe-area-inset-bottom));background:#0b0b0feb;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-top:1px solid var(--border);justify-content:space-around;gap:4px}.gamepad-site-hint{right:10px;bottom:calc(80px + env(safe-area-inset-bottom));max-width:calc(100vw - 20px);gap:3px 8px;padding:7px 10px}.mobile-tabbar.mobile-tabbar-track,.challenge-result-retry.btn,.daily-result-actions .btn.primary{display:none}.daily-result-actions{grid-template-columns:1fr}.result-coach-retry{display:none}.track-detail .track-mobile-action{position:fixed;z-index:52;left:0;right:0;bottom:0;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;min-height:64px;padding:8px max(12px,env(safe-area-inset-right)) calc(8px + env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));background:#0b0b0ff5;border-top:1px solid var(--border);box-shadow:0 -8px 24px #0006;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.track-mobile-action-copy{min-width:0;min-height:48px;display:grid;align-content:center;gap:2px;padding:3px 4px;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;border-radius:4px;background:transparent;color:inherit;cursor:pointer;font:inherit;text-align:left}.track-mobile-action-copy:hover{background:#ffffff0d}.track-mobile-action-copy:focus-visible{outline:3px solid var(--accent-text);outline-offset:1px}.track-mobile-action-title{min-width:0;display:flex;align-items:baseline;gap:6px}.track-mobile-action-title strong,.track-mobile-action-copy small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.track-mobile-action-title strong{flex:1 1 auto;color:var(--text);font-size:14px}.track-mobile-action-edit{flex:0 0 auto;color:var(--accent-text);font-size:10px;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.track-mobile-action-copy small{color:var(--muted);font-size:11px;letter-spacing:.04em;text-transform:uppercase}.track-mobile-action-copy small b{color:var(--lime);font-weight:900}.track-mobile-action .btn{min-width:128px;min-height:48px;padding-inline:18px}.track-primary-actions.cta-row .track-play-btn{display:none}.tab-item{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:6px 4px;font-size:10px;font-weight:600;color:var(--muted);text-decoration:none;border-radius:12px;transition:color .15s ease,background .15s ease}.mobile-tabbar button.tab-item{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;font:inherit;cursor:pointer}.tab-item.active{color:var(--text);background:#ffffff0f}.tab-icon{width:22px;height:22px;display:grid;place-items:center;line-height:0}.tab-icon-svg{display:block;width:100%;height:100%}.tab-play .tab-icon-play{width:40px;height:40px;display:grid;place-items:center;border-radius:50%;background:var(--gradient-cta);color:#fff;margin-top:-18px;box-shadow:0 8px 20px #e23d3d59}.tab-play .tab-icon-svg{width:18px;height:18px}body.play-immersive .mobile-tabbar{display:none}.site-header{flex-wrap:nowrap;gap:8px}.track-detail{grid-template-columns:minmax(0,1fr)}.track-grid{grid-template-columns:1fr}.cta-row .btn{flex:1 1 auto;text-align:center;min-height:44px;display:inline-flex;align-items:center;justify-content:center}.home .hero-copy .home-browse-link,.home .hero-rights{display:none}.home .hero-copy>.key-chips{display:none}.play-wrap{height:calc(100dvh - 84px);max-width:100vw;border-radius:10px}.grade-big{font-size:3.5rem}.pickers{flex-direction:column}.play-wrap{min-height:min(100dvh,720px)}.play-canvas{min-height:58dvh}.hero-gameplay-preview{min-height:220px}}.hero-gameplay-preview{position:relative;width:100%;max-width:320px;aspect-ratio:9 / 14;border-radius:var(--radius-lg);border:3px solid var(--ink);background:#12100f;overflow:hidden;box-shadow:8px 8px #00000073}.hero-gameplay-canvas{display:block;width:100%;height:100%}.hero-visual{position:relative;display:flex;align-items:center;justify-content:center}.hero-visual-play{width:100%;max-width:340px}.home-hero-play{position:relative;width:100%}.home-hero-play-meta{display:flex;flex-direction:column;gap:2px;margin-bottom:10px}.home-hero-play-meta strong{font-family:Anton,Sora,sans-serif;font-size:1.35rem;letter-spacing:.02em;line-height:1.1}.home-hero-play-meta span{color:var(--muted);font-size:.85rem}.home-hero-play-loading,.home-hero-play-error{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;min-height:420px;padding:24px;border:3px solid var(--ink);border-radius:var(--radius-md);background:var(--bg);box-shadow:8px 8px #00000073;text-align:center}.home-hero-play-stage{position:relative;width:100%}.home-hero-demo{position:relative;overflow:hidden}.home-hero-demo .hero-gameplay-preview{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;max-width:none;height:100%;aspect-ratio:auto;border:none;border-radius:0;box-shadow:none}.home-hero-demo-mask{position:absolute;top:0;right:0;bottom:0;left:0;z-index:5;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:20px 16px;text-align:center;background:linear-gradient(180deg,#12100f12,#12100f2e 25%,#12100fc7 39%,#12100fd6 67%,#12100f2e 85%,#12100f0d)}.home-hero-demo-mask:before{content:"";position:absolute;top:10px;right:10px;bottom:10px;left:10px;pointer-events:none;box-shadow:inset 0 0 0 2px #f2e4c91f}.home-hero-demo-mask>*{position:relative;z-index:1}.home-play-sound-btn{display:inline-flex!important;align-items:center;gap:10px}.home-hero-demo-error{max-width:24rem;text-align:center}.home-hero-demo-result{display:grid;place-items:center;padding:24px;background:linear-gradient(145deg,#e23d3d2e,#12100fe0 58%),var(--halftone),var(--bg);background-size:auto,10px 10px,auto;text-align:center}.home-hero-demo-result-card{width:min(100%,290px);display:grid;justify-items:center;gap:13px}.home-hero-demo-result-summary{display:grid;justify-items:center;gap:13px}.home-hero-demo-result-score{color:var(--scape-accent-2);font-family:Anton,Sora,sans-serif;font-size:clamp(1.65rem,7vw,2.4rem);font-weight:400;letter-spacing:.02em;line-height:1;text-transform:uppercase}.home-hero-demo-result-note{margin:0;color:var(--muted);font:700 11px/1.3 IBM Plex Mono,monospace;letter-spacing:.07em;text-transform:uppercase}.home-hero-demo-result-actions{width:100%;display:flex;justify-content:center;gap:8px}.home-hero-demo-result-actions .btn{min-width:0;min-height:44px;flex:1 1 0;padding:8px 10px;font-size:12px;line-height:1.15}.home-hero-demo-result-gamepad{display:flex;flex-wrap:wrap;justify-content:center;gap:3px 10px;color:var(--muted);font:750 9px/1.2 IBM Plex Mono,monospace;letter-spacing:.045em;text-transform:uppercase}.play-wrap-hero{height:min(62dvh,560px);min-height:380px;max-width:100%;margin:0}@media(max-width:860px){.hero-visual-play{height:auto}}.play-wrap-hero .unlock-hint{max-width:220px}@media(max-width:720px){.hero-visual-play{max-width:100%}.home-hero-demo-mask{padding-bottom:34px}.key-chips{display:none}.play-wrap-hero{height:min(32dvh,260px);min-height:180px}.home-hero-demo-result{padding:10px}.home-hero-demo-result-card,.home-hero-demo-result-summary{gap:6px}}.daily-challenge-banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;margin:28px 0;padding:20px 22px;border-radius:var(--radius-lg);border:1px solid rgba(226,61,61,.25);background:linear-gradient(135deg,#e23d3d1a,#f2e4c90f)}.daily-challenge-banner h2{margin:6px 0 0;font-size:1.25rem}.daily-challenge-banner[data-cleared=true]{border-color:color-mix(in srgb,var(--ok) 55%,transparent)}.daily-challenge-banner[data-cleared=true] .eyebrow{color:var(--ok)}.daily-challenge-status{margin:8px 0 0;color:var(--text);font:700 12px/1.45 IBM Plex Mono,monospace}.daily-streak-status{margin:7px 0 0;color:var(--muted);font:650 11px/1.45 IBM Plex Sans,sans-serif}.daily-streak-status>span{margin-right:3px;color:var(--scape-gold)}.daily-streak-status[data-state=played-today]{color:var(--scape-accent-2)}.daily-challenge-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.daily-challenge-actions .btn{min-height:44px}@media(max-width:520px){.daily-challenge-banner,.daily-challenge-actions{align-items:stretch}.daily-challenge-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.daily-challenge-actions .btn{min-width:0;padding-inline:10px;font-size:12px}}.trend-card-wrap{display:flex;flex-direction:column;flex:0 0 200px;scroll-snap-align:start}.trend-preview-audio.audiobar{width:100%;height:auto;margin-top:8px;padding:4px 8px}.board-tabs{display:flex;gap:10px;margin:16px 0}.board-tabs [role=tab]{min-height:44px}.board-panel:focus-visible{outline:3px solid var(--accent2);outline-offset:6px}.results-hero-card{padding:8px 0 20px}.miss-replay{text-align:left;max-width:420px;margin:20px auto;padding:12px 16px;border:1px solid var(--border);border-radius:var(--radius-md);background:var(--bg2)}.miss-replay summary{box-sizing:border-box;min-height:44px;padding:12px 0;cursor:pointer;font-weight:600}.miss-replay-empty{color:var(--muted);font-size:14px}.miss-lane-map{margin:14px 0 10px;padding:10px 0 4px;border-top:1px solid var(--border)}.miss-lane-map-axis{display:flex;justify-content:space-between;font-size:10px;color:var(--muted);padding:0 0 6px 28px}.miss-lane-row{display:flex;align-items:center;gap:8px;margin:6px 0}.miss-lane-label{width:20px;font-size:10px;font-weight:600;color:var(--muted);flex-shrink:0}.miss-lane-track{position:relative;flex:1;height:10px;border-radius:999px;background:#ffffff0f}.miss-dot{position:absolute;top:50%;width:8px;height:8px;margin-left:-4px;margin-top:-4px;background:var(--scape-warn);border:2px solid var(--ink)}.miss-section-stats{display:grid;gap:8px;margin:12px 0}.miss-section-chip{font-size:12px;padding:4px 10px;border-radius:999px;background:#e23d3d1f;color:var(--scape-warn)}.miss-section-retry{min-height:52px;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:8px 10px 8px 12px;border:2px solid var(--ink);border-radius:var(--radius-sm);background:#e23d3d1a;color:var(--text);text-decoration:none;box-shadow:2px 2px 0 var(--ink);transition:transform .08s ease,box-shadow .08s ease,background .15s ease}.miss-section-retry:hover{background:#e23d3d2e;box-shadow:4px 4px 0 var(--ink)}.miss-section-retry:active{transform:translate(2px,2px);box-shadow:none}.miss-section-retry:focus-visible{outline:3px solid var(--scape-gold);outline-offset:3px}.miss-section-retry strong,.miss-section-retry small{display:block}.miss-section-retry strong{font-size:13px;letter-spacing:.04em}.miss-section-retry small{margin-top:2px;color:var(--muted);font-size:11px}.miss-section-retry-action{flex-shrink:0;color:var(--scape-warn);font-size:12px;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.miss-timeline{margin:0;padding-left:20px;font-size:13px;color:var(--muted);max-height:160px;overflow-y:auto}.miss-timeline li{margin:4px 0;display:flex;gap:10px;flex-wrap:wrap}.miss-time{color:var(--text);font-variant-numeric:tabular-nums}.miss-lane{color:var(--accent)}.badge.practice{border-color:var(--scape-gold);color:var(--scape-gold);background:#ffb02014}.practice-run-note{max-width:480px;margin:0 auto 18px;padding:12px 16px;display:grid;gap:4px;text-align:left;border:2px solid var(--ink);border-left:6px solid var(--scape-gold);border-radius:var(--radius-sm);background:#ffb02014;box-shadow:3px 3px 0 var(--ink)}.failed-run-note{max-width:480px;margin:0 auto 18px;padding:12px 16px;display:grid;gap:4px;text-align:left;border:2px solid var(--ink);border-left:6px solid var(--accent);border-radius:var(--radius-sm);background:#e23d3d1f;box-shadow:3px 3px 0 var(--ink)}.failed-run-note strong{color:var(--accent);font-size:14px}.failed-run-note span{color:var(--muted);font-size:12px;line-height:1.5}.practice-run-note strong{color:var(--scape-gold);font-size:14px}.practice-run-note span{color:var(--muted);font-size:12px;line-height:1.5}.drill-progress{max-width:520px;margin:-2px auto 22px;padding:14px;border:2px solid var(--ink);border-top:5px solid var(--scape-gold);border-radius:var(--radius-md);background:color-mix(in srgb,var(--scape-gold) 7%,var(--bg-elevated));box-shadow:4px 4px 0 var(--ink);text-align:left}.drill-progress-header{display:grid;gap:3px;margin-bottom:12px}.drill-progress-header>span{color:var(--scape-gold);font:800 9px/1.2 IBM Plex Mono,monospace;letter-spacing:.12em;text-transform:uppercase}.drill-progress-header h2{margin:0;font:400 1.35rem/1 Anton,Sora,sans-serif;letter-spacing:.025em;text-transform:uppercase}.drill-progress-header p{margin:2px 0 0;color:var(--muted);font-size:11px;line-height:1.4}.drill-progress-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(82px,1fr));gap:8px;margin:0;padding:0;list-style:none}.drill-progress-attempt{position:relative;display:grid;align-content:start;gap:3px;min-width:0;min-height:82px;padding:9px 8px 8px;border:2px solid var(--ink);background:var(--bg2);box-shadow:2px 2px 0 var(--ink)}.drill-progress-attempt[data-best=true]{border-color:var(--scape-gold);background:color-mix(in srgb,var(--scape-gold) 12%,var(--bg2))}.drill-progress-attempt>span,.drill-progress-attempt em{font:800 8px/1.2 IBM Plex Mono,monospace;letter-spacing:.09em;text-transform:uppercase}.drill-progress-attempt>span{color:var(--muted)}.drill-progress-attempt em{position:absolute;top:7px;right:6px;color:var(--scape-gold);font-style:normal}.drill-progress-attempt strong{margin-top:4px;color:var(--text);font:400 1.4rem/1 Anton,Sora,sans-serif}.drill-progress-attempt small{overflow-wrap:anywhere;color:var(--muted);font-size:9px;line-height:1.3}@media(max-width:360px){.drill-progress{padding:11px}.drill-progress-list{gap:6px}.drill-progress-attempt{min-height:78px;padding-inline:6px}}.miss-section{color:var(--muted)}.page-header{margin-bottom:24px}.page-header h1{margin:0 0 8px;font-size:clamp(1.75rem,4vw,2.25rem);font-weight:800;letter-spacing:-.03em}.page-header .tagline{margin:0;max-width:52ch;line-height:1.55}.page-count{display:inline-block;margin-top:10px;font-size:12px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--accent-text);padding:4px 10px;border-radius:999px;background:#e23d3d1a;border:1px solid rgba(235,78,78,.25)}.panel{background:var(--bg-elevated);border:var(--stroke-w) solid var(--ink);border-radius:var(--radius-lg);padding:20px 22px;box-shadow:var(--shadow-card)}.panel h2{margin:0 0 16px;font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.field{display:flex;flex-direction:column;gap:8px;margin-bottom:14px;font-size:13px;color:var(--muted)}.field:last-child{margin-bottom:0}.field input[type=text],.field input[type=number],.field select{width:100%;min-height:44px;background:var(--bg);border:1px solid var(--border);color:var(--text);padding:10px 12px;border-radius:var(--radius-sm);font:inherit;transition:border-color .15s ease,box-shadow .15s ease}.settings .key-label-layout-select{height:44px;font-size:16px}.offset-input-wrap{position:relative;display:block;width:100%}.offset-input-wrap input{padding-right:46px;font-variant-numeric:tabular-nums}.offset-input-unit{position:absolute;top:50%;right:12px;color:var(--muted);font:800 10px/1 IBM Plex Mono,monospace;letter-spacing:.1em;pointer-events:none;text-transform:uppercase;transform:translateY(-50%)}.offset-quick-adjust{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:-2px 0 0}.offset-quick-adjust .btn{min-width:0;min-height:44px;margin:0;padding-inline:8px;justify-content:center;white-space:nowrap}.offset-quick-adjust .btn:disabled{cursor:not-allowed;opacity:.45;transform:none}.offset-hint{margin-top:8px}.field input:focus-visible,.field select:focus-visible,.filters-bar input:focus-visible,.filters-bar select:focus-visible{outline:none;border-color:#e23d3d80;box-shadow:0 0 0 3px #e23d3d26}.settings .field input[type=range]{--range-progress: 0%;-webkit-appearance:none;-moz-appearance:none;appearance:none;min-height:44px;width:100%;margin:0;padding:0;border:0;background:transparent;cursor:pointer}.settings .field input[type=range]::-webkit-slider-runnable-track{width:100%;height:8px;border:2px solid var(--ink);border-radius:0;background:linear-gradient(to right,var(--accent) 0 var(--range-progress),var(--scape-line) var(--range-progress) 100%);box-shadow:2px 2px 0 var(--ink)}.settings .field input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:24px;height:24px;margin-top:-10px;border:2px solid var(--ink);border-radius:3px;background:var(--scape-accent-2);box-shadow:2px 2px 0 var(--ink);transition:transform .15s ease,background-color .15s ease}.settings .field input[type=range]::-moz-range-track{width:100%;height:4px;border:2px solid var(--ink);border-radius:0;background:var(--scape-line);box-shadow:2px 2px 0 var(--ink)}.settings .field input[type=range]::-moz-range-progress{height:4px;background:var(--accent)}.settings .field input[type=range]::-moz-range-thumb{width:20px;height:20px;border:2px solid var(--ink);border-radius:3px;background:var(--scape-accent-2);box-shadow:2px 2px 0 var(--ink);transition:transform .15s ease,background-color .15s ease}.settings .field input[type=range]:hover::-webkit-slider-thumb{background:#fff7e8;transform:scale(1.08)}.settings .field input[type=range]:hover::-moz-range-thumb{background:#fff7e8;transform:scale(1.08)}.settings .field input[type=range]:focus-visible{outline:none;border:0;box-shadow:none}.settings .field input[type=range]:focus-visible::-webkit-slider-thumb{outline:3px solid color-mix(in srgb,var(--accent) 58%,transparent);outline-offset:3px}.settings .field input[type=range]:focus-visible::-moz-range-thumb{outline:3px solid color-mix(in srgb,var(--accent) 58%,transparent);outline-offset:3px}.field input[aria-invalid=true]{border-color:var(--accent-text);box-shadow:0 0 0 2px #eb4e4e33}.toggle-field{min-height:48px;padding:2px 0;flex-direction:row;align-items:center;justify-content:space-between;gap:16px;cursor:pointer}.toggle-label{min-width:0;color:var(--text);font-weight:650;line-height:1.35}.toggle-control{position:relative;flex:0 0 auto;display:flex;min-height:44px;align-items:center;gap:8px}.toggle-state{min-width:2.4em;color:var(--muted);font:800 10px/1 IBM Plex Mono,monospace;letter-spacing:.12em;text-align:right;text-transform:uppercase}.toggle-control.is-on .toggle-state{color:var(--scape-accent-2)}.toggle-input{position:absolute;z-index:2;right:0;top:50%;width:48px;height:44px;margin:0;opacity:0;cursor:pointer;transform:translateY(-50%)}.toggle-switch{position:relative;display:block;width:48px;height:28px;overflow:hidden;border:2px solid var(--border);border-radius:4px;background:var(--bg);box-shadow:2px 2px 0 var(--ink);transition:border-color .15s ease,background-color .15s ease}.toggle-thumb{position:absolute;top:3px;left:3px;width:18px;height:18px;border:2px solid var(--ink);border-radius:2px;background:var(--muted);transition:transform .15s ease,background-color .15s ease}.toggle-input:checked+.toggle-switch{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 72%,var(--bg))}.toggle-input:checked+.toggle-switch .toggle-thumb{background:var(--scape-accent-2);transform:translate(20px)}.toggle-input:focus-visible+.toggle-switch{outline:3px solid color-mix(in srgb,var(--accent) 58%,transparent);outline-offset:3px}.toggle-field:hover .toggle-switch{border-color:color-mix(in srgb,var(--accent) 70%,var(--border))}.settings-grid{display:grid;gap:16px;width:100%;max-width:520px}.settings-column{display:grid;align-content:start;gap:16px;min-width:0}@media(min-width:900px){.settings-grid{grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);max-width:1120px;gap:20px}}.settings .page-header{margin-bottom:12px}.settings-save-status{width:fit-content;max-width:520px;margin:0 0 18px;padding:7px 10px;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--muted);background:#ffffff06;font-size:12px;line-height:1.4}.settings-save-status.is-saved{border-color:#f2e4c952;color:var(--scape-accent-2)}.settings-save-status.is-error{border-color:#eb4e4e6b;color:var(--accent-text)}.keys-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.keys-grid label{display:flex;flex-direction:column;gap:6px;font-size:11px;color:var(--muted);text-align:center}.keys-grid input{text-align:center;font-weight:700;font-size:16px;padding:12px 8px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text)}.keys-grid .keycap{font-family:inherit;text-align:center;font-weight:700;font-size:16px;padding:12px 8px;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);cursor:pointer}.keys-grid .keycap:hover{border-color:var(--accent)}.keys-grid .keycap.is-listening{font-size:12px;font-weight:500;border-color:var(--accent);color:var(--accent)}.keys-grid[aria-invalid=true] .keycap{border-color:var(--accent-text)}.preset-row{display:flex;flex-wrap:wrap;gap:8px}.preset-row .btn.compact{flex-direction:column;gap:2px;margin-left:0}.preset-layout-label{color:var(--muted);font:700 10px/1.2 IBM Plex Mono,monospace;letter-spacing:.08em}.preset-row .btn.compact.is-active{border-color:var(--accent);background:var(--scape-accent-2);color:#12100f}.preset-row .btn.compact.is-active .preset-layout-label{color:#12100f}.field-hint{font-size:12px;line-height:1.5;color:var(--muted);margin:8px 0 12px}.field-hint+.keys-grid{margin-top:4px}.settings .error{margin:10px 0 16px;font-size:12px;line-height:1.45}.settings-calibrate{width:100%;min-height:44px;justify-content:center}.settings-keymap-summary{display:none}.settings-keymap.is-collapsible{padding:0}.settings-keymap.is-collapsible .settings-keymap-summary{min-height:52px;padding:16px 18px;display:flex;align-items:center;justify-content:space-between;gap:12px;list-style:none;cursor:pointer;font-weight:700}.settings-keymap.is-collapsible .settings-keymap-summary::-webkit-details-marker{display:none}.settings-keymap.is-collapsible .settings-keymap-summary:focus-visible{outline:3px solid rgba(226,61,61,.45);outline-offset:-3px}.settings-keymap.is-collapsible .settings-keymap-summary small{color:var(--muted);font-size:11px;font-weight:500}.settings-keymap.is-collapsible .settings-keymap-summary:after{content:"+";flex:0 0 auto;color:var(--accent-text);font-size:20px;line-height:1}.settings-keymap.is-collapsible[open] .settings-keymap-summary:after{content:"−"}.settings-keymap.is-collapsible .settings-keymap-body{padding:4px 18px 18px}.settings-keymap.is-collapsible .settings-keymap-body h2{display:none}.loading-state{display:flex;flex-direction:column;align-items:center;gap:16px;padding:44px 22px;color:var(--muted)}.route-loading-state{justify-content:center;min-height:calc(100dvh - 180px)}@media(max-width:640px){.route-loading-state{min-height:calc(100dvh - 152px - env(safe-area-inset-top) - env(safe-area-inset-bottom))}}.loading-spinner{width:34px;height:34px;border:3px solid rgba(242,228,201,.22);border-top-color:var(--accent);animation:spin .72s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.loading-spinner{animation-duration:2.4s}}.tuning-dial{position:relative;width:min(320px,78vw);height:58px;background-color:#12100f;background-image:repeating-linear-gradient(90deg,rgba(242,228,201,.22) 0 1px,transparent 1px 16px),var(--halftone);background-size:16px 100%,6px 6px;border:3px solid var(--ink);box-shadow:5px 5px 0 var(--ink);overflow:hidden}.tuning-scan{position:absolute;top:-2px;bottom:-2px;left:4%;width:4px;background:var(--accent);box-shadow:0 0 0 1px var(--ink);animation:tuningScan 1.7s steps(22,end) infinite alternate}@keyframes tuningScan{0%{left:4%}to{left:94%}}.tuning-callsign{margin:0;font:800 13px/1 IBM Plex Mono,monospace;letter-spacing:.22em;text-transform:uppercase;color:var(--scape-accent-2)}.tuning-status{margin:0;font:700 11px/1 IBM Plex Mono,monospace;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}@media(prefers-reduced-motion:reduce){.tuning-scan{animation:none;left:48%}}.overlay-card{display:flex;flex-direction:column;align-items:center;gap:14px;padding:22px 28px;background:#12100feb;border:3px solid var(--ink);box-shadow:7px 7px 0 var(--ink);max-width:88%}.pause-copy{max-width:31rem;margin:0;color:var(--muted);font:650 13px/1.5 IBM Plex Sans,sans-serif}.gamepad-interruption{display:flex;align-items:center;gap:9px;width:min(400px,100%);margin:-4px 0 0;padding:9px 11px;border:2px solid color-mix(in srgb,var(--scape-warn) 72%,var(--ink));background:color-mix(in srgb,var(--scape-warn) 12%,var(--bg-elevated));color:#fff2cc;font:750 12px/1.35 IBM Plex Sans,sans-serif;text-align:left}.gamepad-interruption>span{flex:0 0 auto;color:var(--scape-warn);font:900 20px/1 IBM Plex Mono,monospace}.gamepad-dialog-hint{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:4px 10px;width:min(420px,100%);margin:0;padding:8px 11px;border:1px solid color-mix(in srgb,var(--lime) 42%,transparent);background:color-mix(in srgb,var(--lime) 8%,transparent);color:var(--lime);font:750 9px/1.3 IBM Plex Mono,monospace;letter-spacing:.045em;text-transform:uppercase}.gamepad-dialog-hint span{color:var(--muted)}.pause-dialog .overlay-card,.duo-pause .overlay-card{width:min(500px,92%);max-height:calc(100dvh - 24px);overflow-y:auto;overscroll-behavior:contain}.pause-control-stack{display:grid;gap:8px;width:min(400px,100%)}.pause-control-stack>.pause-quick-mix,.pause-control-stack>.pause-mix-disclosure{width:100%}.pause-practice-tempo{display:grid;gap:7px;width:100%;margin:0;padding:9px 11px 11px;border:2px solid color-mix(in srgb,var(--scape-gold) 54%,transparent);background:color-mix(in srgb,var(--scape-gold) 7%,transparent)}.pause-practice-tempo legend{padding:0 7px;color:var(--scape-gold);font:850 12px/1 IBM Plex Mono,monospace;letter-spacing:.13em;text-transform:uppercase}.pause-practice-tempo>p{margin:0;color:var(--muted);font:650 10px/1.2 IBM Plex Mono,monospace;letter-spacing:.035em;text-align:left;text-transform:uppercase}.practice-tempo-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.practice-tempo-options label{position:relative;display:grid;place-items:center;min-height:44px;border:2px solid rgba(255,255,255,.2);background:#0000002e;color:var(--muted);cursor:pointer}.practice-tempo-options label[data-active=true]{border-color:var(--scape-gold);background:var(--scape-gold);color:var(--ink);box-shadow:3px 3px 0 var(--ink)}.practice-tempo-options label:has(input:focus-visible){outline:3px solid var(--focus-ring);outline-offset:2px}.practice-tempo-options input{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;margin:0;opacity:0;cursor:pointer}.practice-tempo-options span{pointer-events:none;font:900 13px/1 IBM Plex Mono,monospace;font-variant-numeric:tabular-nums}.pause-quick-mix{display:grid;gap:2px;width:min(400px,100%);margin:0;padding:10px 14px 12px;border:2px solid rgba(255,255,255,.16);background:#ffffff09}.pause-mix-disclosure{width:min(400px,100%)}.pause-mix-disclosure-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;min-height:48px;padding:10px 13px;border:2px solid rgba(255,255,255,.2);border-radius:0;background:#ffffff0b;color:var(--text);font:850 12px/1 IBM Plex Mono,monospace;letter-spacing:.12em;text-align:left;text-transform:uppercase;cursor:pointer}.pause-mix-disclosure-toggle small{color:var(--scape-accent-2);font:inherit;letter-spacing:.06em}.pause-mix-disclosure-toggle:hover,.pause-mix-disclosure-toggle:focus-visible,.pause-mix-disclosure-toggle[aria-expanded=true]{border-color:var(--scape-accent-2);background:#ffffff14}.pause-mix-disclosure>div:not([hidden]) .pause-quick-mix{width:100%;margin-top:8px}.pause-quick-mix legend{padding:0 7px;color:var(--scape-accent-2);font:850 12px/1 IBM Plex Mono,monospace;letter-spacing:.14em;text-transform:uppercase}.pause-mix-caption{margin:0 0 2px;color:var(--muted);font:650 10px/1.3 IBM Plex Mono,monospace;letter-spacing:.04em;text-align:left}.pause-mix-controls{display:grid;gap:2px}.pause-mix-row{display:grid;grid-template-columns:52px minmax(0,1fr) 38px;gap:10px;align-items:center;min-height:44px;color:var(--text);font:750 12px/1 IBM Plex Mono,monospace;text-align:left}.pause-mix-row input[type=range]{width:100%;height:44px;margin:0;accent-color:var(--scape-accent-2);cursor:pointer}.pause-mix-row output{color:var(--muted);font-variant-numeric:tabular-nums;text-align:right}.pause-mix-toggle{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;color:var(--text);font:750 12px/1.1 IBM Plex Mono,monospace;text-align:left;cursor:pointer}.pause-mix-toggle span{display:grid;gap:3px}.pause-mix-toggle small{color:var(--muted);font:600 10px/1.1 IBM Plex Sans,sans-serif}.pause-mix-toggle input{width:24px;height:24px;margin:0 10px;accent-color:var(--scape-accent-2)}.pause-mix-error{margin:4px 0 0;color:var(--accent2);font:700 11px/1.35 IBM Plex Mono,monospace}.pause-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:min(360px,100%)}.pause-actions .btn{min-height:48px;padding:12px 18px;white-space:nowrap}.pause-actions .pause-exit{grid-column:1 / -1;color:var(--muted);background:transparent;box-shadow:none}.pause-actions .pause-exit:hover,.pause-actions .pause-exit:focus-visible{color:var(--text);background:var(--bg-elevated)}@media(min-width:700px)and (min-height:521px){.pause-dialog .overlay-card,.duo-pause .overlay-card{width:min(620px,92%)}.pause-control-stack,.pause-quick-mix,.pause-mix-disclosure{width:min(540px,100%)}.pause-mix-controls{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:8px}.pause-mix-row{grid-column:1 / -1}}@media(max-width:380px){.pause-dialog .overlay-card,.duo-pause .overlay-card{width:calc(100% - 16px);max-width:none;padding-inline:14px}.pause-quick-mix{padding-inline:10px}.pause-practice-tempo{padding:7px 8px 8px}.pause-practice-tempo>p{font-size:8px;text-align:center}.pause-mix-row{grid-template-columns:44px minmax(0,1fr) 34px;gap:7px}.pause-actions{grid-template-columns:1fr;width:min(240px,100%)}.pause-actions .pause-exit{grid-column:auto}}@media(orientation:portrait)and (max-width:640px)and (max-height:700px){.play-wrap .pause-dialog{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;width:100vw;height:100dvh;padding:8px}.pause-dialog .overlay-card,.duo-pause .overlay-card{width:min(100%,420px);max-height:100%;gap:7px;padding:12px 14px}.pause-dialog .overlay-title,.duo-pause .overlay-title{font-size:clamp(1.85rem,10vw,2.3rem)}.pause-copy,.duo-pause-copy{font-size:11px;line-height:1.3}.pause-mix-disclosure-toggle,.pause-actions .btn,.duo-pause-actions .btn{min-height:44px}.pause-actions,.duo-pause-actions{gap:7px}.gamepad-dialog-hint{gap:3px 8px;padding:6px 8px;font-size:8px}.gamepad-dialog-hint span{display:none}.gamepad-dialog-hint strong{white-space:nowrap}}.overlay-title{transform:skew(-5deg)}.track-hero{display:grid;grid-template-columns:minmax(160px,220px) minmax(0,1fr);gap:clamp(20px,4vw,32px);align-items:start}.track-hero-body{min-width:0}.track-hero-cover{position:relative;aspect-ratio:1;border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-card);border:1px solid var(--border)}.track-hero-cover img{display:block;width:100%;height:100%;object-fit:cover}.track-hero-body h1{margin:10px 0 4px;font-size:clamp(1.6rem,4vw,2.1rem);letter-spacing:-.02em}.track-hero-body .artist{font-size:1.05rem;margin:0}.run-configurator{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin:20px 0 14px}.run-control{min-width:0;margin:0;padding:0;border:0}.run-control legend{margin-bottom:7px;padding:0;color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.1em;text-transform:uppercase}.run-note-speed{grid-column:1 / -1}.run-speed-stepper{display:grid;grid-template-columns:48px minmax(0,1fr) 48px;min-height:52px;overflow:hidden;border:2px solid var(--ink);border-radius:var(--radius-sm);background:var(--bg);box-shadow:3px 3px 0 var(--ink)}.run-speed-stepper button{min-width:48px;min-height:48px;border:0;background:var(--bg-elevated);color:var(--text);cursor:pointer;font:900 24px/1 IBM Plex Mono,monospace}.run-speed-stepper button:first-child{border-right:2px solid var(--ink)}.run-speed-stepper button:last-child{border-left:2px solid var(--ink)}.run-speed-stepper button:hover:not(:disabled){background:var(--accent-deep);color:var(--lime)}.run-speed-stepper button:disabled{opacity:.35;cursor:not-allowed}.run-speed-stepper output{min-width:0;display:flex;align-items:center;justify-content:center;gap:10px;padding:7px 12px;text-align:center}.run-speed-stepper output strong{color:var(--lime);font-size:16px}.run-speed-stepper output span{color:var(--muted);font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.run-segments{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:4px;border:2px solid var(--ink);border-radius:var(--radius-sm);background:var(--bg);box-shadow:3px 3px 0 var(--ink)}.run-segments button{min-width:0;min-height:44px;padding:8px 5px;border:0;border-radius:3px;background:transparent;color:var(--muted);cursor:pointer;font:inherit;font-size:12px;font-weight:800;letter-spacing:.01em;transition:background .12s ease,color .12s ease,transform .08s ease}.run-segments button:hover{color:var(--text);background:#f2e4c90f}.run-segments button:active{transform:translateY(1px)}.run-segments button[aria-checked=true]{background:var(--accent-deep);color:var(--lime);box-shadow:inset 0 0 0 2px var(--ink)}.practice-section-control,.practice-section-status{grid-column:1 / -1}.practice-section-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.practice-section-options button{min-width:0;min-height:58px;display:grid;align-content:center;gap:3px;padding:7px 9px;border:2px solid var(--ink);border-radius:var(--radius-sm);background:var(--bg);color:var(--text);cursor:pointer;font:inherit;text-align:left;box-shadow:3px 3px 0 var(--ink);transition:background .12s ease,border-color .12s ease,color .12s ease,transform .08s ease}.practice-section-options button:hover{border-color:var(--accent-text);background:#f2e4c90f}.practice-section-options button:active{transform:translateY(1px)}.practice-section-options button:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.practice-section-options button[aria-checked=true]{border-color:var(--lime);background:var(--accent-deep);color:var(--lime)}.practice-section-options strong,.practice-section-options small{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.practice-section-options strong{font-size:13px;line-height:1.1}.practice-section-options small{color:var(--muted);font:700 10px/1.1 IBM Plex Mono,monospace;letter-spacing:.02em}.practice-section-options button[aria-checked=true] small{color:color-mix(in srgb,var(--lime) 72%,var(--text))}.practice-section-note{margin:9px 0 0;color:var(--muted);font-size:11px;line-height:1.4}.practice-section-status{min-height:58px;display:flex;align-items:center;gap:9px;margin:0;padding:10px 12px;border:2px solid var(--ink);border-radius:var(--radius-sm);background:var(--bg);color:var(--muted);font-size:12px;font-weight:700;box-shadow:3px 3px 0 var(--ink)}.practice-section-status-error{color:var(--accent-text)}@media(max-width:520px){.practice-section-options{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(min-width:900px){.run-configurator{grid-template-columns:repeat(3,minmax(0,1fr))}.run-note-speed{grid-column:auto}.run-speed-stepper output span,.practice-section-note{display:none}.practice-section-options{grid-template-columns:repeat(6,minmax(0,1fr))}}.run-setup{overflow:hidden;margin-bottom:18px;border:var(--stroke-w) solid var(--ink);border-radius:var(--radius-md);background:var(--bg-elevated);box-shadow:5px 5px 0 var(--ink)}.run-setup-header{min-height:45px;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;padding:4px 5px 4px 12px;border-bottom:2px solid var(--ink);background:var(--accent-deep);color:var(--lime)}.run-setup-header span{font-size:11px;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.run-setup-header strong{overflow:hidden;font-size:14px;letter-spacing:.02em;text-align:right;text-overflow:ellipsis;white-space:nowrap}.run-setup-toggle{min-width:66px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:0 8px;border:1px solid rgba(213,255,63,.48);border-radius:var(--radius-sm);color:var(--lime);background:#0000003d;cursor:pointer;font:inherit;font-size:11px;font-weight:900;letter-spacing:.04em;text-transform:uppercase}.run-setup-toggle:after{content:"+";font:900 16px/1 IBM Plex Mono,monospace}.run-setup-toggle[aria-expanded=true]:after{content:"−"}.run-setup-toggle:focus-visible{outline:3px solid var(--focus);outline-offset:-3px}.run-setup[data-details-open=false] .run-personal-best{border-bottom:0}.run-guidance[hidden],.run-chart-profile[hidden]{display:none}.run-guidance{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-bottom:2px solid var(--ink)}.run-guidance>div{position:relative;min-width:0;min-height:126px;padding:15px 46px 15px 15px}.run-guidance>div+div{border-left:2px solid var(--ink)}.run-guidance-index{position:absolute;top:12px;right:12px;color:#f2e4c938;font-size:27px;font-weight:900;line-height:1}.run-guidance p,.run-guidance strong,.run-guidance small{display:block;margin:0}.run-guidance p{margin-bottom:5px;color:var(--accent-text);font-size:10px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.run-guidance strong{margin-bottom:5px;color:var(--text);font-size:15px;line-height:1.25}.run-guidance small{color:var(--muted);font-size:11px;line-height:1.45}.run-personal-best{min-height:72px;display:grid;grid-template-columns:minmax(150px,.7fr) minmax(220px,1.3fr);align-items:center;gap:18px;padding:11px 14px;border-bottom:2px solid var(--ink);background:linear-gradient(105deg,rgba(213,255,63,.08),transparent 48%),#00000014}.run-personal-best-lede,.run-personal-best span,.run-personal-best strong,.run-personal-best small{min-width:0}.run-personal-best-lede{display:grid;gap:2px}.run-personal-best span,.run-personal-best strong,.run-personal-best small{display:block}.run-personal-best span{color:var(--accent-text);font-size:10px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}.run-personal-best strong{overflow:hidden;color:var(--text);font-size:18px;line-height:1.2;text-overflow:ellipsis}.run-personal-best[data-state=ranked] strong{color:var(--lime)}.run-personal-best small{color:var(--muted);font-size:12px;line-height:1.4}.run-chart-profile{min-height:68px;display:grid;align-items:stretch;background:#00000021}.run-chart-profile dl{display:grid;grid-template-columns:repeat(3,minmax(78px,.75fr)) minmax(140px,1.5fr);margin:0}.run-chart-profile dl>div{min-width:0;display:grid;align-content:center;gap:2px;padding:10px 12px}.run-chart-profile dl>div+div{border-left:1px solid rgba(242,228,201,.13)}.run-chart-profile dt{color:var(--muted);font-size:9px;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.run-chart-profile dd{overflow:hidden;margin:0;color:var(--text);font-size:14px;font-weight:800;line-height:1.25;text-overflow:ellipsis}.run-chart-patterns dd{white-space:normal}.run-chart-message{min-height:68px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:10px 14px;color:var(--muted);font-size:12px}.run-chart-message strong{color:var(--text)}.run-chart-loading{justify-content:flex-start}.run-chart-pulse{width:10px;height:10px;flex:0 0 auto;border-radius:50%;background:var(--accent);animation:run-chart-pulse .9s ease-in-out infinite alternate}@keyframes run-chart-pulse{to{opacity:.3;transform:scale(.75)}}.track-primary-actions,.track-secondary-actions{align-items:stretch}.track-primary-actions .btn,.track-secondary-actions .btn{min-height:48px}.track-play-btn{min-width:min(240px,100%)}.track-mobile-action{display:none}.track-primary-actions .btn:disabled{opacity:.46;cursor:not-allowed;box-shadow:none}.track-primary-actions .btn:disabled:hover{box-shadow:none}.results-hero-card{max-width:480px;margin:0 auto 8px;padding:28px 24px 24px;overflow:hidden;border-radius:var(--radius-lg);border:1px solid var(--border);background:linear-gradient(180deg,#1c1717e6,#12100ff2);box-shadow:var(--shadow-card)}.results-hero-card h1{margin:12px 0 6px;font-size:1.35rem;font-weight:700}@media(max-width:520px)and (max-height:700px)and (orientation:portrait){.results{padding-top:12px}.results-hero-card{display:grid;grid-template-columns:72px minmax(0,1fr);grid-template-areas:"grade badges" "grade title" "grade artist";align-items:center;gap:2px 12px;padding:10px 14px;text-align:left}.results-hero-card .grade-big{grid-area:grade;font-size:4rem;text-align:center}.results-hero-card .badges{grid-area:badges}.results-hero-card h1{grid-area:title;margin:0;font-size:1.15rem;line-height:1.15}.results-hero-card .tagline{grid-area:artist;margin:0;font-size:.8rem;line-height:1.2}.results .results-stats{margin-bottom:8px}.result-coach{margin-top:10px}.result-coach-body{gap:10px;padding:10px 12px}.result-coach p{line-height:1.35}}@media(min-width:761px){.results-hero-card{max-width:640px;display:grid;grid-template-columns:120px minmax(0,1fr);grid-template-areas:"grade badges" "grade title" "grade artist";column-gap:28px;align-items:center;padding:18px 28px;text-align:left}.results-hero-card .grade-big{grid-area:grade;text-align:center}.results-hero-card .badges{grid-area:badges}.results-hero-card h1{grid-area:title;margin:0 0 4px}.results-hero-card .tagline{grid-area:artist;margin:0}}.results-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;max-width:420px;margin:0 auto 20px}.results-gamepad-shortcut{width:fit-content;max-width:min(100%,520px);display:flex;flex-wrap:wrap;align-items:baseline;justify-content:center;gap:3px 9px;margin:-8px auto 18px;padding:7px 11px;border:2px solid var(--ink);border-radius:999px;background:color-mix(in srgb,var(--lime) 13%,rgba(18,16,15,.94));box-shadow:3px 3px 0 var(--ink);font:750 9px/1.25 IBM Plex Mono,monospace;letter-spacing:.055em;text-align:center;text-transform:uppercase}.results-gamepad-shortcut span{color:var(--muted)}.results-gamepad-shortcut strong{color:var(--lime);font:inherit}.results-gamepad-shortcut small{flex-basis:100%;color:#f8f1e5;font:700 9px/1.25 IBM Plex Mono,monospace;letter-spacing:.035em}.stat-pill{padding:12px 10px;border-radius:var(--radius-md);background:var(--bg-elevated);border:var(--stroke-w) solid var(--ink);box-shadow:3px 3px 0 var(--ink)}.stat-pill span{display:block;font-size:10px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:4px}.stat-pill strong{font-size:1.1rem;font-variant-numeric:tabular-nums}.grade-border-S{border-color:var(--scape-gold);box-shadow:4px 4px 0 var(--ink),inset 0 0 0 2px #ffb02059}.grade-border-A{border-color:var(--scape-accent-2);box-shadow:4px 4px 0 var(--ink),inset 0 0 0 2px #f2e4c938}.grade-border-B{border-color:var(--lane3);box-shadow:4px 4px 0 var(--ink)}.board-list{display:flex;flex-direction:column;gap:8px;margin-top:8px;padding:0;list-style:none}.board-row{display:grid;grid-template-columns:40px minmax(0,1fr) auto;gap:12px;align-items:center;padding:14px 16px;border-radius:var(--radius-md);background:var(--bg-elevated);border:2px solid var(--ink);box-shadow:4px 4px 0 var(--ink);color:inherit;cursor:pointer;text-decoration:none;transition:border-color .15s ease,transform .12s ease,box-shadow .12s ease}.board-row:hover{border-color:var(--accent);transform:translate(2px);box-shadow:6px 6px 0 var(--ink)}.board-row:focus-visible{outline:3px solid var(--accent);outline-offset:3px}.board-row.rank-1{border-color:#ffb02066;background:linear-gradient(90deg,rgba(255,176,32,.08),transparent)}.board-row.rank-2{border-color:#f5efe633}.board-row.rank-3{border-color:#c4a48440}.board-rank{font-family:Sora,sans-serif;font-weight:800;font-size:1.1rem;color:var(--muted);text-align:center}.board-row.rank-1 .board-rank{color:var(--scape-gold)}.board-track{min-width:0}.board-track strong{display:block;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.board-track>span,.board-track-meta>span{font-size:12px;color:var(--muted)}.board-track-meta{display:flex;align-items:center;gap:8px;min-width:0}.board-track-meta>span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.board-track-meta .board-row-action{flex:none;color:var(--accent);font-size:10px;font-weight:800;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}.board-score{font-weight:700;font-variant-numeric:tabular-nums;text-align:right}.board-acc{font-size:12px;color:var(--muted);text-align:right}.board-metrics{display:grid;grid-template-columns:auto auto;align-items:baseline;gap:12px;white-space:nowrap}.board-metrics small{font-size:.58em;font-weight:800;letter-spacing:.08em;color:var(--muted)}.board-empty{padding:40px 20px;text-align:center;color:var(--muted);border:1px dashed var(--border);border-radius:var(--radius-md)}.board-empty p{max-width:36ch;margin:0 auto 18px}.board-empty .btn{min-height:44px}.calibrate-panel{width:min(100%,560px);margin-inline:auto;padding-bottom:32px}.calibrate-header{margin-bottom:20px}.calibrate-header .tagline{max-width:40ch}.calib-intro{padding:clamp(20px,5vw,30px)}.calib-intro>p{max-width:48ch;margin:18px 0 0;color:var(--muted);line-height:1.65}.calib-facts{display:flex;flex-wrap:wrap;gap:8px}.calib-facts span{padding:7px 10px;border:1px solid var(--border);background:#f2e4c90f;color:var(--scape-accent-2);font:700 11px/1.2 IBM Plex Mono,monospace;letter-spacing:.04em;text-transform:uppercase}.calib-main-action{min-height:50px;margin-top:18px}.calib-gamepad{margin:14px 0 0}.calib-gamepad+.calib-main-action{margin-top:12px}.calib-gamepad-live{margin:14px 0 -6px}.calib-run{position:relative;padding:clamp(18px,4vw,26px);border:2px solid var(--ink);background:#1c1717eb;box-shadow:6px 6px 0 var(--ink)}.calib-status-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px;font-variant-numeric:tabular-nums}.calib-status-row strong{color:var(--scape-accent-2);font-family:Sora,sans-serif;font-size:1rem}.calib-status-row span{color:var(--muted);font:700 11px/1.2 IBM Plex Mono,monospace;text-transform:uppercase}.calib-cancel-run{display:block;min-height:44px;margin:6px 0 0 auto;padding-inline:10px;color:var(--muted)}.calib-progress-track{height:7px;margin-top:10px;overflow:hidden;border:1px solid var(--ink);background:#0f0c0c}.calib-progress-track span{display:block;height:100%;background:var(--accent);transition:width .12s linear}.calib-lanes{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin:22px 0 14px}.calib-lane{min-width:0;min-height:104px;padding:15px 6px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;-webkit-appearance:none;-moz-appearance:none;appearance:none;text-align:center;color:var(--text);background:#1c1717cc;border-radius:var(--radius-md);border:2px solid var(--ink);border-bottom:5px solid var(--lane-color, var(--accent));box-shadow:3px 3px 0 var(--ink);cursor:pointer;touch-action:manipulation;user-select:none;-webkit-user-select:none;transition:transform 80ms ease,box-shadow 80ms ease,background 80ms ease}.calib-lane>span{color:var(--muted);font:800 11px/1 IBM Plex Mono,monospace}.calib-lane kbd{min-width:34px;padding:6px 7px;color:var(--scape-accent-2);background:#100d0d;border:1px solid rgba(242,228,201,.4);border-radius:4px;font:800 16px/1 Sora,sans-serif}.calib-lane:focus-visible{outline:3px solid var(--scape-accent-2);outline-offset:3px}.calib-lane.flash{transform:translateY(-4px);background:color-mix(in srgb,var(--lane-color, var(--accent)) 24%,#1c1717);border-color:var(--lane-color, var(--accent));box-shadow:5px 7px 0 var(--ink),inset 0 0 0 2px var(--lane-color, var(--accent))}.calib-progress{min-height:22px;margin:0;text-align:center;font-size:14px;color:var(--muted)}.calib-done{padding:clamp(22px,5vw,30px);border-radius:var(--radius-md);border:2px solid rgba(242,228,201,.32);background:#f2e4c914;box-shadow:6px 6px 0 var(--ink)}.calib-done:focus-visible{outline:3px solid var(--scape-accent-2);outline-offset:4px}.calib-done-variable{border-color:#ffb020b3}.calib-done-not-enough{border-color:#e23d3db3}.calib-done h2{margin:4px 0 10px;color:var(--scape-accent-2);font-size:clamp(1.45rem,5vw,2rem)}.calib-done>p:not(.eyebrow,.field-hint){color:var(--muted);line-height:1.6}.calib-result-controller{display:grid;grid-template-columns:auto minmax(0,1fr);gap:4px 12px;margin-top:16px;padding:9px 11px;border:2px solid var(--ink);background:color-mix(in srgb,var(--lime) 11%,rgba(18,16,15,.9));box-shadow:3px 3px 0 var(--ink);font:750 9px/1.25 IBM Plex Mono,monospace;letter-spacing:.045em;text-transform:uppercase}.calib-result-controller span{grid-row:1 / 3;align-self:center;color:var(--lime)}.calib-result-controller strong{min-width:0;color:var(--text);overflow-wrap:anywhere}.calib-offset{display:block;margin:6px 0 8px;color:var(--scape-accent-2);font:400 clamp(3.2rem,14vw,5.3rem)/.95 Anton,Sora,sans-serif;letter-spacing:.02em;font-variant-numeric:tabular-nums;-webkit-text-stroke:2px var(--ink);paint-order:stroke fill}.calib-done>.calib-direction{display:flex;flex-wrap:wrap;gap:3px 9px;margin:0 0 10px;color:var(--text);font:750 11px/1.35 IBM Plex Mono,monospace;letter-spacing:.035em;text-transform:uppercase}.calib-direction strong{color:var(--lime)}.calib-direction span{color:var(--muted)}.calib-result-actions{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:10px;margin-top:20px}.calib-result-actions .btn{min-height:48px}.calib-keep{display:block;min-height:44px;margin:16px auto 0;color:var(--muted)}@media(max-width:520px){.calibrate-panel{padding-bottom:calc(86px + env(safe-area-inset-bottom))}.calib-intro,.calib-run,.calib-done{border-radius:0}.calib-facts{display:grid;grid-template-columns:1fr 1fr}.calib-facts span:last-child{grid-column:1 / -1}.calib-main-action{width:100%}.calib-gamepad:not(.calib-gamepad-live){min-height:34px;margin-top:10px;padding-block:4px}.calib-gamepad:not(.calib-gamepad-live)+.calib-main-action{margin-top:8px}.calib-status-row{align-items:flex-start;flex-direction:column;gap:4px}.calib-lanes{gap:5px;margin-inline:-7px}.calib-lane{min-height:98px;padding-inline:2px;border-bottom-width:5px;box-shadow:2px 3px 0 var(--ink)}.calib-lane.flash{box-shadow:3px 6px 0 var(--ink),inset 0 0 0 2px var(--lane-color, var(--accent))}.calib-result-actions{grid-template-columns:1fr}.calib-result-actions .btn{width:100%}}@media(max-width:520px)and (max-height:700px){body.calibration-running .app-shell,body.calibration-complete .app-shell{max-width:none;padding:0}body.calibration-running .site-header,body.calibration-complete .site-header,body.calibration-running .site-footer,body.calibration-complete .site-footer,body.calibration-running .mobile-tabbar,body.calibration-complete .mobile-tabbar,body.calibration-running .calibrate-panel>.back-link,body.calibration-complete .calibrate-panel>.back-link,body.calibration-running .calibrate-header,body.calibration-complete .calibrate-header{display:none}body.calibration-running .site-main,body.calibration-complete .site-main{min-height:100dvh;padding:8px}body.calibration-running .calibrate-panel,body.calibration-complete .calibrate-panel{width:100%;padding:0}body.calibration-running .calib-run{height:calc(100dvh - 16px);padding:12px;display:flex;flex-direction:column;overflow:hidden}body.calibration-running .calib-status-row{display:block;padding-right:82px}body.calibration-running .calib-status-row span{display:block;margin-top:4px}body.calibration-running .calib-cancel-run{position:absolute;z-index:1;top:6px;right:8px;margin:0}body.calibration-running .calib-gamepad-live{min-height:42px;margin:10px 0 8px;padding-block:4px}body.calibration-running .calib-lanes{flex:1 1 auto;min-height:120px;margin:8px 0}body.calibration-running .calib-lane{min-height:0;height:100%}body.calibration-complete .calib-done{padding:18px}body.calibration-complete .calib-keep{width:100%;margin-top:12px}}@media(prefers-reduced-motion:reduce){.hud-practice-assist,.hud-opening-coach{transition:none}.hud-practice-assist[data-show="1"],.hud-opening-coach[data-show="1"]{transform:translate(-50%) skew(-4deg)}.hud-opening-coach[data-show="1"]{transform:skew(-3deg)}.calib-lane,.calib-progress-track span{transition:none}.calib-lane.flash{transform:none}}.library-discovery{margin-bottom:24px;padding:16px;border:2px solid var(--ink);border-left-color:var(--accent);border-radius:var(--radius-md);background:#1c1717db;box-shadow:4px 4px 0 var(--ink)}.library-discovery-head,.library-results-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.library-discovery-head{margin-bottom:14px}.library-discovery-head .eyebrow{display:block;margin:0 0 4px}.library-discovery-head h2,.library-results-head h2{margin:0;font-family:Anton,Sora,sans-serif;font-size:1.35rem;font-weight:400;letter-spacing:.01em}.library-clear{flex:0 0 auto;min-height:44px;white-space:nowrap}.library-results-head{margin:24px 0 12px;padding-bottom:8px;border-bottom:1px solid var(--border)}.library-results-head h2{scroll-margin-top:12px}.library-results-head [role=status]{color:var(--muted);font-size:12px;font-weight:700;letter-spacing:.05em;text-transform:uppercase}.library-load-more{display:grid;justify-items:center;gap:10px;margin:28px 0 8px;padding-top:20px;border-top:1px solid var(--border);text-align:center}.library-load-more>span{color:var(--muted);font:700 11px/1.3 IBM Plex Mono,monospace;letter-spacing:.06em;text-transform:uppercase}.library-load-more .btn{min-width:min(100%,260px);min-height:48px;margin:0}.library-more-filters>summary{display:none}.library-more-filters>summary>b{display:inline-grid;min-width:20px;height:20px;place-items:center;margin-left:auto;padding:0 5px;border:1px solid color-mix(in srgb,var(--accent) 42%,transparent);border-radius:999px;color:var(--accent-text);background:color-mix(in srgb,var(--accent) 12%,transparent);font:700 10px/1 IBM Plex Mono,monospace}.library-view-results{display:none}.library-recent{display:grid;grid-template-columns:104px minmax(0,1fr) auto;align-items:center;gap:18px;min-width:0;margin:0 0 28px;padding:16px;overflow:hidden;border:2px solid var(--ink);border-left:5px solid var(--recent-district-color, var(--accent));border-radius:var(--radius-md);background:var(--bg-elevated);background:linear-gradient(105deg,color-mix(in srgb,var(--recent-district-color, var(--accent)) 12%,transparent),transparent 52%),var(--bg-elevated);box-shadow:5px 5px 0 var(--ink)}.library-recent-cover{width:104px;aspect-ratio:1;overflow:hidden;border:2px solid var(--ink);border-radius:var(--radius-sm);background:var(--bg);box-shadow:3px 3px 0 var(--ink)}.library-recent-cover img{display:block;width:100%;height:100%;object-fit:cover}.library-recent-copy{min-width:0}.library-recent-copy .eyebrow{display:block;margin-bottom:4px;color:var(--recent-district-color, var(--accent-text))}.library-recent-copy h2{margin:0;overflow:hidden;color:var(--text);font-family:Anton,Sora,sans-serif;font-size:clamp(1.45rem,3vw,2.15rem);font-weight:400;letter-spacing:.01em;line-height:1.05;text-overflow:ellipsis;white-space:nowrap}.library-recent-stats{display:flex;flex-wrap:wrap;align-items:center;gap:6px 12px;margin-top:10px;color:var(--muted);font:700 11px/1.4 IBM Plex Mono,monospace;letter-spacing:.04em;text-transform:uppercase}.library-recent-stats strong{color:var(--text);font-size:13px}.library-recent-stats span:last-child{padding:3px 7px;border:1px solid rgba(242,228,201,.2);border-radius:4px}.library-recent-stats .is-failed{color:#f2a3a3;border-color:#e23d3d80}.library-recent-actions{display:grid;grid-template-columns:minmax(124px,1fr);gap:8px}.library-recent-actions .btn{min-height:44px;margin:0;white-space:nowrap}.library-saved-row{display:flex;align-items:center;gap:10px;margin:0 0 12px}.library-filter-primary{display:flex;align-items:end;gap:16px;margin-bottom:12px}.library-genre-control{display:grid;flex:1 1 360px;gap:6px;min-width:0}.library-genre-control>span{color:var(--muted);font:700 11px/1.4 IBM Plex Mono,monospace;letter-spacing:.06em;text-transform:uppercase}.library-genre-control select{width:100%;min-width:0;min-height:44px;height:44px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);background:var(--bg);font:inherit}.library-filter-primary .library-saved-row{flex:0 1 auto;margin:0}.library-saved-row>small{color:var(--muted);font-size:11px}.library-saved-toggle{display:inline-flex;align-items:center;gap:7px;margin:0}.library-saved-toggle>span{color:var(--accent-text);font-size:18px;line-height:1}.library-saved-toggle>b{min-width:20px;padding:2px 6px;border-radius:999px;color:var(--text);background:#f2e4c91f;font:700 10px/1.4 IBM Plex Mono,monospace}.library-sort-control{display:flex;align-items:center;gap:10px;margin:0 0 12px}.library-sort-control>span{flex:0 0 auto;color:var(--muted);font:700 11px/1.4 IBM Plex Mono,monospace;letter-spacing:.06em;text-transform:uppercase}.library-sort-control select{width:min(100%,252px);min-width:0;min-height:44px;height:44px;padding:10px 12px;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);background:var(--bg);font:inherit}.filter-chips{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px}.filter-chips-secondary{margin-bottom:16px}.filter-chips-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin-right:4px}.filter-chip{font:inherit;font-size:12px;font-weight:600;min-width:44px;min-height:44px;padding:6px 12px;border-radius:999px;border:1px solid var(--border);background:#ffffff0a;color:var(--muted);cursor:pointer;transition:border-color .15s,background .15s,color .15s}.filter-chip:hover{color:var(--text);border-color:#f2e4c940}.filter-chip.active{color:var(--text);border-color:#e23d3d8c;background:#e23d3d1f}.filter-chip.vibe-night-drive.active{border-color:#5b8def8c;background:#5b8def1f}.filter-chip.vibe-groove.active{border-color:#ffb0208c;background:#ffb0201a}.filter-chip.vibe-battle.active{border-color:#e23d3d8c;background:#e23d3d1f}.filter-chip.vibe-chill.active{border-color:#b0765a8c;background:#b0765a1f}.vibe-badge{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:3px 8px;border-radius:6px;border:1px solid var(--border);color:var(--muted)}.vibe-badge.vibe-night-drive{border-color:#5b8def59;color:#9bb8f5}.vibe-badge.vibe-groove{border-color:#ffb02059;color:#ffc857}.vibe-badge.vibe-battle{border-color:#e23d3d66;color:#f08080}.vibe-badge.vibe-chill{border-color:#b0765a66;color:#c9a088}.track-card-badges,.track-hero-badges{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px;align-items:center}.track-hero-badges{margin-top:0;margin-bottom:8px}.filters-bar{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:20px;padding:14px;border-radius:var(--radius-md);background:#1c171799;border:1px solid var(--border)}.library-discovery .filters-bar{margin-bottom:12px;padding:0;border:0;border-radius:0;background:transparent}.filters-bar input,.filters-bar select{flex:1 1 140px;min-width:0;min-height:44px;padding:10px 12px;border-radius:var(--radius-sm);border:1px solid var(--border);background:var(--bg);color:var(--text);font:inherit}@media(max-width:640px){.library:not(.library-filtering) .page-header{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;margin-bottom:12px}.library:not(.library-filtering) .page-header h1{margin:0;font-size:1.65rem}.library:not(.library-filtering) .page-header .tagline{display:none}.library:not(.library-filtering) .page-header .page-count{margin-top:0}.library-recent{grid-template-columns:76px minmax(0,1fr);gap:12px;margin-bottom:22px;padding:12px;box-shadow:4px 4px 0 var(--ink)}.library-recent-cover{width:76px}.library-recent-copy h2{font-size:1.35rem}.library-recent-stats{gap:4px 8px;margin-top:7px;font-size:10px}.library-recent-stats span:last-child:not(.is-failed){display:none}.library-recent-actions{grid-column:1 / -1;grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.library-recent-actions .btn{width:100%;min-width:0;padding-right:8px;padding-left:8px}.library-discovery{display:grid;grid-template-columns:minmax(0,1fr) 104px;gap:10px;margin-bottom:16px;padding:12px}.library:not(.library-filtering) .library-discovery-head{margin-bottom:0}.library:not(.library-filtering) .library-discovery-head .eyebrow{display:none}.library:not(.library-filtering) .library-discovery-head h2{font-size:1.05rem;line-height:1.2}.library-discovery-head{grid-column:1 / -1}.library-discovery>.filters-bar{grid-column:1;margin-bottom:0}.library-more-filters{grid-column:2;min-width:0}.library-more-filters[open]{grid-column:1 / -1}.library-filtering .page-header{margin-bottom:6px}.library-filtering .page-header h1{margin-bottom:0;font-size:1.5rem}.library-filtering .page-header .tagline,.library-filtering .page-header .page-count,.library-filtering .library-discovery-head .eyebrow{display:none}.library-filtering .library-discovery-head{justify-content:flex-end;margin-bottom:4px}.library-filtering .library-discovery-head>div{display:none}.library-filtering .library-results-head{margin:8px 0 4px}.library-more-filters>summary{display:flex;min-height:44px;align-items:center;justify-content:space-between;gap:6px;padding:0 10px;border:1px solid var(--border);border-radius:var(--radius-sm);color:var(--text);background:#ffffff0a;cursor:pointer;font-size:13px;font-weight:700;list-style:none}.library-more-filters>summary>span{white-space:nowrap}.library-more-filters>summary::-webkit-details-marker{display:none}.library-more-filters>summary:after{content:"+";flex:0 0 auto;color:var(--accent-text);font:700 20px/1 IBM Plex Mono,monospace}.library-more-filters[open]>summary:after{content:"−"}.library-more-filters>summary small{display:none}.library-more-filters:not([open])>.library-filter-options{display:none}.library-filter-options{padding-top:12px}.library-view-results{display:inline-flex;width:100%;min-height:48px;margin:0}.library-filter-primary{display:grid;grid-template-columns:minmax(0,1fr);gap:12px}.library-filter-primary .library-saved-row{display:flex;align-items:center}.library-filter-primary .library-saved-row>small{display:block}.library-sort-control select{flex:1 1 auto;width:auto}.library-discovery .filter-chips{flex-wrap:nowrap;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:none;scroll-snap-type:x proximity}.library-discovery .filter-chips::-webkit-scrollbar{display:none}.library-discovery .filter-chip,.library-discovery .filter-chips-label{flex:0 0 auto;scroll-snap-align:start}.library .curated-subtitle{display:none}.track-hero{grid-template-columns:minmax(0,1fr)}.run-configurator,.run-guidance{grid-template-columns:1fr}.run-guidance>div{min-height:108px}.run-guidance>div+div{border-top:2px solid var(--ink);border-left:0}.run-personal-best{min-height:76px;grid-template-columns:minmax(0,1fr);gap:5px;padding:11px 12px}.run-personal-best-lede{grid-template-columns:auto minmax(0,1fr);align-items:baseline;gap:10px}.run-personal-best strong{font-size:16px;text-align:right}.run-chart-profile dl{grid-template-columns:repeat(3,minmax(0,1fr))}.run-chart-profile dl>div{min-height:58px;padding:9px}.run-chart-profile .run-chart-patterns{grid-column:1 / -1;border-top:1px solid rgba(242,228,201,.13);border-left:0}.track-primary-actions{display:grid;grid-template-columns:1fr}.track-secondary-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.filters-bar input,.filters-bar select{flex:1 1 100%}.track-hero-cover{max-width:220px;margin:0 auto}.results-stats{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.stat-pill{min-width:0;padding:10px 4px}.stat-pill span{font-size:9px;letter-spacing:.04em}.stat-pill strong{font-size:1rem}.board-row{grid-template-columns:32px 1fr;grid-template-rows:auto auto}.board-metrics{grid-column:2;display:flex;align-items:baseline;gap:14px}.board-score{font-size:14px}.board-score,.board-acc{grid-column:auto;text-align:left}}@media(max-width:380px){.run-segments button{padding-inline:3px;font-size:11px}.run-chart-message{align-items:stretch;flex-direction:column}.run-chart-message .btn{width:100%}}@media(prefers-reduced-motion:reduce){.run-chart-pulse{animation:none}}.home-intro-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:90;display:grid;place-items:center;padding:24px;background:#040404b8}.home-intro{width:min(440px,100%);background:var(--bg-elevated);border:var(--stroke-w) solid var(--ink);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:24px;display:grid;gap:14px}.home-intro .eyebrow{color:var(--accent)}.home-intro-track{display:flex;align-items:center;gap:14px}.home-intro-cover{width:64px;height:64px;border-radius:var(--radius-sm);border:var(--stroke-w) solid var(--ink);background-size:cover;background-position:center;object-fit:cover;flex:none}.home-intro-track-meta{display:grid;gap:2px}.home-intro-track-meta strong{font-size:18px}.home-intro-track-meta span{color:var(--muted);font-size:13px}.home-intro .cta-row{display:flex;flex-wrap:wrap;gap:10px}.character-avatar{display:block;object-fit:cover;background:#12100f;border:2px solid var(--district-color, #e23d3d)}.character-avatar.rounded{border-radius:50%}.character-avatar.glow{box-shadow:0 0 0 1px #ffffff1f,0 8px 28px -8px var(--district-color, #e23d3d)}.character-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:18px;margin-top:22px}.character-card{display:flex;flex-direction:column;background:linear-gradient(180deg,#ffffff0a,#ffffff03);border:2px solid var(--ink);border-radius:var(--radius-md);overflow:hidden;border-top:3px solid var(--district-color, #e23d3d);box-shadow:4px 4px 0 var(--ink);transition:transform .15s ease,box-shadow .15s ease}.character-card:hover{transform:translateY(-3px);box-shadow:8px 8px 0 var(--ink)}.character-card-art{background:#12100f;aspect-ratio:640 / 935;overflow:hidden}.character-card-art .character-avatar{width:100%;height:100%;border:none;border-radius:0}.character-card-body{padding:14px 16px 18px}.character-code{display:inline-block;font-size:12px;font-weight:700;letter-spacing:.14em;color:var(--district-color, #e23d3d);border:1px solid var(--district-color, #e23d3d);border-radius:999px;padding:2px 10px;margin-bottom:8px}.character-card-body h2{font-size:19px;margin:0 0 6px}.character-role{margin:0 0 8px;font-size:14px;color:var(--text)}.character-motif{margin:0;font-size:13px;color:var(--muted);line-height:1.45}.motif-label{display:inline-block;font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);border:1px solid rgba(255,255,255,.16);border-radius:4px;padding:1px 6px;margin-right:6px}.characters-foot{margin-top:24px;font-size:13px;color:var(--muted);max-width:680px}.track-card-cover-wrap{position:relative}.track-card-avatar{position:absolute;right:8px;bottom:8px;width:52px!important;height:52px!important;border-radius:50%;border:2px solid var(--district-color, #e23d3d);box-shadow:0 4px 14px -4px #0009}.radio-welcome{margin-top:16px;padding:10px 14px;border-left:3px solid #ffb020;border-radius:0 10px 10px 0;background:#ffb0200f;color:#f2e4c9;font-size:14px}.radio-welcome strong{color:#ffb020;font-weight:600}.radio-request{border-left:3px solid #ffb020;padding-left:10px}.radio-request strong{color:#ffb020;font-weight:600}.meet-characters{margin-top:34px}.character-strip{display:flex;flex-wrap:wrap;gap:14px;margin-top:14px}.character-strip-item{padding:10px;border-radius:14px;border:1px solid rgba(255,255,255,.07);background:#ffffff05;transition:transform .15s ease,border-color .15s ease}.character-strip-link{display:flex;flex-direction:column;align-items:center;gap:6px;text-decoration:none;color:inherit}.character-strip-item:hover{transform:translateY(-2px);border-color:var(--district-color, #e23d3d)}.character-strip-code{font-size:11px;font-weight:700;letter-spacing:.12em;color:var(--district-color, #e23d3d)}.play-wrap{position:relative}.profile-rank-overview{display:grid;grid-template-columns:minmax(210px,.72fr) minmax(0,1.28fr);gap:14px;margin:20px 0 16px}.profile-current-rank,.profile-next-rank{min-width:0;padding:18px 20px;border:2px solid var(--ink);background:#1c1717;box-shadow:5px 5px 0 var(--ink)}.profile-current-rank{border-color:var(--accent);background:linear-gradient(135deg,#e23d3d38,#1c1717 68%)}.profile-current-rank h2,.profile-next-rank h2{margin:2px 0 5px;font:400 clamp(26px,4vw,40px)/1 "Anton","Sora",sans-serif;letter-spacing:.025em}.profile-current-rank h2{color:var(--accent)}.profile-current-rank>p:last-child,.profile-max-rank>p:last-child{margin:0;color:var(--muted);font-size:13px}.profile-next-rank-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.rank-progress-rule{flex:0 0 auto;margin-top:2px;padding:5px 8px;border:1px solid rgba(245,239,230,.26);color:var(--muted);font:700 10px/1.2 IBM Plex Sans,sans-serif;letter-spacing:.08em;text-transform:uppercase}.rank-progress-list{display:grid;gap:11px;margin-top:12px}.rank-progress-copy{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:5px;color:var(--muted);font-size:12px}.rank-progress-copy strong{color:var(--text);text-align:right}.rank-progress-row.complete .rank-progress-copy strong{color:var(--scape-accent-2)}.rank-progress-row progress{display:block;width:100%;height:9px;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid #000;border-radius:0;overflow:hidden;background:#0e0c0c}.rank-progress-row progress::-webkit-progress-bar{background:#0e0c0c}.rank-progress-row progress::-webkit-progress-value{background:var(--accent)}.rank-progress-row progress::-moz-progress-bar{background:var(--accent)}.rank-progress-row.complete progress::-webkit-progress-value{background:var(--scape-accent-2)}.rank-progress-row.complete progress::-moz-progress-bar{background:var(--scape-accent-2)}.rank-ladder{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin:20px 0}.rank-ladder[hidden],.profile-rank-ladder-head{display:none}.rank-card{background:#1c1717;border:2px solid #000;padding:14px 16px;display:flex;flex-direction:column;gap:4px;transform:skew(-2deg);box-shadow:4px 4px 0 var(--ink)}.rank-card>*{transform:skew(2deg)}.rank-card strong{font-family:Anton,Sora,sans-serif;font-size:18px;letter-spacing:.02em;color:#a8928b}.rank-card.rank-reached strong{color:#f2e4c9}.rank-card.rank-current{border-color:#e23d3d;background:#241a1a}.rank-card.rank-current strong{color:var(--accent-text)}.rank-step{font:600 11px IBM Plex Sans,sans-serif;color:#a8928b;letter-spacing:.14em}.rank-condition{font-size:12px;color:#a8928b}.profile-streak-card{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:18px 0;padding:17px 20px;border:2px solid rgba(255,176,32,.5);background:linear-gradient(115deg,#ffb02021,#1c1717 58%);box-shadow:5px 5px 0 var(--ink)}.profile-streak-card[data-state=played-today]{border-color:color-mix(in srgb,var(--scape-accent-2) 62%,var(--ink));background:linear-gradient(115deg,#5cb89426,#1c1717 58%)}.profile-streak-card h2{margin:3px 0 4px;font:400 clamp(24px,4vw,34px)/1 "Anton","Sora",sans-serif;letter-spacing:.025em}.profile-streak-card>div>p:last-child{margin:0;color:var(--muted);font-size:13px}.profile-streak-card .btn{flex:0 0 auto;min-height:44px}.profile-streak-action{display:grid;flex:0 1 280px;gap:7px}.profile-next-run-meta{color:var(--muted);font:650 10px/1.4 IBM Plex Mono,monospace;letter-spacing:.03em}.profile-streak-complete{flex:0 0 auto;padding:8px 10px;border:1px solid color-mix(in srgb,var(--scape-accent-2) 62%,transparent);color:var(--scape-accent-2);font:700 11px/1.2 IBM Plex Sans,sans-serif;letter-spacing:.08em;text-transform:uppercase}.profile-streak-complete>span{margin-right:4px}.profile-stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px;margin:18px 0}.profile-subhead{margin:0;font-family:Anton,Sora,sans-serif;letter-spacing:.03em}.profile-achievement-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin:26px 0 12px}.profile-achievement-head>span{color:var(--muted);font:700 11px IBM Plex Sans,sans-serif;letter-spacing:.08em;text-transform:uppercase}.achievement-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.achievement-card{background:#1c1717;border:2px solid #000;padding:14px 16px;display:flex;flex-direction:column;gap:4px;filter:grayscale(.85);box-shadow:4px 4px 0 var(--ink);transform:skew(-2deg)}.achievement-card>*{transform:skew(2deg)}.achievement-card.unlocked{opacity:1;filter:none;border-color:var(--accent);border-top:3px solid var(--accent);box-shadow:6px 6px 0 var(--ink)}.achievement-mark{color:#e23d3d;font-size:18px}.achievement-status{width:fit-content;padding:3px 7px;border:1px solid rgba(168,146,139,.45);color:#a8928b;font:700 9px/1 IBM Plex Sans,sans-serif;letter-spacing:.12em;text-transform:uppercase}.achievement-card.unlocked .achievement-status{border-color:var(--accent);color:var(--scape-accent-2)}.achievement-card.unlocked .achievement-mark{animation:honor-pop .6s ease-out}.achievement-card strong{font-family:Sora,sans-serif;font-size:14px;color:#f5efe6}.achievement-condition{font-size:12px;color:#a8928b}.honor-toast{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:14px 0}.honor-chip{background:#e23d3d;color:#f5efe6;border:2px solid #000;padding:5px 12px;font:600 13px IBM Plex Sans,sans-serif;transform:skew(-4deg);animation:honor-pop .5s ease-out}.honor-chip.rank{background:#ffb020;color:#12100f}.honor-link{min-height:44px;display:inline-flex;align-items:center;font:600 13px IBM Plex Sans,sans-serif;color:#a8928b;text-decoration:underline}@keyframes honor-pop{0%{transform:skew(-4deg) scale(.7)}60%{transform:skew(-4deg) scale(1.08)}to{transform:skew(-4deg) scale(1)}}@media(prefers-reduced-motion:reduce){.achievement-card.unlocked .achievement-mark,.honor-chip{animation:none}}@media(max-width:640px){.profile-rank-overview{grid-template-columns:1fr}.profile-current-rank,.profile-next-rank{padding:16px}.profile-next-rank-head,.rank-progress-copy{align-items:flex-start}.profile-next-rank-head{flex-direction:column}.rank-progress-rule{margin-top:0}.profile-streak-card{align-items:stretch;flex-direction:column;padding:16px}.profile-streak-card .btn,.profile-streak-complete{width:100%;text-align:center}.profile-streak-action{flex-basis:auto;width:100%}.profile-rank-ladder-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:18px 0 0;padding:14px 0 0;border-top:1px solid rgba(245,239,230,.18)}.profile-rank-ladder-head .eyebrow{margin-bottom:3px}.profile-rank-ladder-toggle{flex:0 0 auto;min-height:44px}.profile-rank-ladder-head+.rank-ladder{margin-top:12px}.achievement-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.achievement-card{min-height:116px;padding:12px 10px}.achievement-condition{font-size:11px}}.radio-episode-banner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;margin:28px 0;padding:18px 22px;border-radius:var(--radius-lg);border:1px solid rgba(255,176,32,.28);background:linear-gradient(135deg,#ffb0201a,#f2e4c90d)}.radio-episode-banner h2{margin:6px 0 0;font-size:1.25rem}.radio-episode-banner .tagline{margin:6px 0 0;max-width:620px}.radio-deck{margin:20px 0 8px;padding:16px 18px 18px;background:linear-gradient(180deg,#1c1717,#141010);border:3px solid var(--ink);border-radius:var(--radius-md);box-shadow:6px 6px 0 var(--ink)}.radio-deck-top{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px;flex-wrap:wrap}.radio-readout{display:flex;align-items:baseline;gap:6px;font-family:IBM Plex Mono,monospace}.radio-readout-band{font:800 11px/1 IBM Plex Mono,monospace;letter-spacing:.14em;color:#000;background:var(--accent);padding:3px 6px;border:2px solid var(--ink)}.radio-readout-freq{font-family:Anton,Sora,sans-serif;font-size:2rem;line-height:1;color:var(--scape-accent-2);-webkit-text-stroke:1.5px var(--ink);paint-order:stroke fill;font-variant-numeric:tabular-nums}.radio-readout-mhz{font-size:11px;font-weight:700;letter-spacing:.1em;color:var(--muted)}.radio-readout-station{margin-left:6px;font:700 10px/1 IBM Plex Mono,monospace;letter-spacing:.18em;text-transform:uppercase;color:var(--accent2);align-self:center}.radio-signal{display:flex;align-items:flex-end;gap:4px;height:30px}.radio-signal-bar{width:7px;height:20%;background:#f2e4c929;border:1.5px solid var(--ink);transition:height .2s ease,background .2s ease}.radio-signal-bar:nth-child(2){height:40%}.radio-signal-bar:nth-child(3){height:60%}.radio-signal-bar:nth-child(4){height:80%}.radio-signal-bar:nth-child(5){height:100%}.radio-signal-bar.on{background:var(--accent)}.radio-dial{position:relative;height:54px;margin:6px 0 4px;background-color:#12100f;background-image:repeating-linear-gradient(90deg,rgba(242,228,201,.18) 0 1px,transparent 1px 18px),var(--halftone);background-size:18px 100%,6px 6px;border:2px solid var(--ink);overflow:hidden}.radio-dial-ticks{position:absolute;top:0;right:0;bottom:0;left:0}.radio-dial-tick{position:absolute;top:0;bottom:0;width:2px;background:#f2e4c980;transform:translate(-50%)}.radio-dial-tick.tuned{background:var(--accent);width:3px}.radio-dial-needle{position:absolute;top:-3px;bottom:-3px;width:4px;background:var(--accent2);box-shadow:0 0 0 1px var(--ink);transform:translate(-50%);animation:dialJitter 2.4s ease-in-out infinite}@keyframes dialJitter{0%,to{transform:translate(-50%) rotate(-1.2deg)}50%{transform:translate(-50%) rotate(1.2deg)}}.radio-dial-labels{position:absolute;left:0;right:0;bottom:3px}.radio-dial-label{position:absolute;transform:translate(-50%);font:700 9px/1 IBM Plex Mono,monospace;letter-spacing:.04em;color:var(--muted)}.radio-dial-label.tuned{color:var(--scape-accent-2)}.radio-channels{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:8px;margin-top:12px}.radio-channel{display:flex;flex-direction:column;align-items:flex-start;gap:2px;padding:8px 12px;color:var(--scape-accent-2);background:var(--bg-elevated);border:2px solid var(--ink);box-shadow:3px 3px 0 var(--ink);cursor:pointer;font:inherit;text-align:left;transform:skew(-2deg);transition:transform .1s ease,box-shadow .1s ease}.radio-channel>*{transform:skew(2deg)}.radio-channel:hover{transform:translate(-1px,-1px) skew(-2deg);box-shadow:4px 4px 0 var(--ink)}.radio-channel:active{transform:translate(2px,2px) skew(-2deg);box-shadow:1px 1px 0 var(--ink)}.radio-channel.active{background:var(--accent);color:#000}.radio-channel-num{font:800 10px/1 IBM Plex Mono,monospace;letter-spacing:.14em}.radio-channel-name{font:700 13px/1.1 Sora,sans-serif}.radio-channel.active .radio-channel-num{color:#000}@media(prefers-reduced-motion:reduce){.radio-dial-needle{animation:none}}.radio-episode-list{display:grid;gap:14px;max-width:720px}.radio-episode{padding:16px 18px;border-radius:var(--radius-md);border:2px solid var(--ink);background:var(--bg-elevated);box-shadow:4px 4px 0 var(--ink)}.radio-episode-head{display:flex;align-items:baseline;gap:10px}.radio-episode-head h2{flex:1;margin:0;font-size:1.05rem}.radio-ep-num{font-size:12px;font-weight:700;letter-spacing:.08em;color:#ffb020;white-space:nowrap}.radio-ep-air{font-size:12px;color:var(--muted);white-space:nowrap}.radio-episode.now{border-top:3px solid var(--accent2);background:color-mix(in srgb,var(--accent2) 10%,var(--bg-elevated))}.radio-episode.upcoming{border-style:dashed}.radio-onair{margin:10px 0 0;font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#ffb020}.radio-line{margin:10px 0 0;font-size:14px}.radio-teaser{margin:8px 0 0;font-size:14px;font-style:italic;color:var(--muted)}.radio-signoff{margin:10px 0 0;font-weight:600;color:#ffb020}.radio-season{margin-top:26px}.radio-season-title{box-sizing:border-box;min-height:44px;margin:0 0 12px;font-size:.95rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);display:flex;align-items:baseline;gap:10px;cursor:pointer;list-style:none;padding:6px 0}.radio-season-title::-webkit-details-marker{display:none}.radio-season-title:before{content:"+";font-family:IBM Plex Mono,monospace;font-size:1rem;color:var(--accent-text);width:1em}.radio-season[open]>.radio-season-title:before{content:"–"}.radio-season-count{flex:0 0 auto;font-size:.72rem;letter-spacing:.08em;color:var(--muted);opacity:.8;white-space:nowrap}.radio-episode-head h3{flex:1;margin:0;font-size:1.02rem}.radio-airdate{font-style:normal;font-size:12px;color:var(--muted);white-space:nowrap}.catalog-error{margin:0 0 18px;padding:12px 16px;display:flex;align-items:center;justify-content:space-between;gap:16px;border:var(--stroke-w) solid var(--accent);border-radius:var(--radius-md);background:#e23d3d14;color:var(--text);font-size:14px;line-height:1.4}.catalog-error-copy{display:grid;gap:2px}.catalog-error-copy strong{color:var(--accent-text);font-size:14px}.catalog-error-copy span{color:var(--muted);font-size:13px}.catalog-error .btn{flex:0 0 auto;min-height:44px;padding:9px 16px}@media(max-width:540px){.catalog-error{align-items:stretch;flex-direction:column}.catalog-error .btn{width:100%}}.track-load-fallback{min-height:min(68vh,620px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:48px 20px 96px;text-align:center}.track-load-fallback h1,.track-load-fallback .tagline,.track-load-fallback .eyebrow{margin:0}.track-load-fallback .tagline{max-width:480px}.track-load-mark{display:grid;place-items:center;width:64px;height:64px;margin-bottom:4px;border:3px solid var(--accent);background:var(--bg-elevated);color:var(--accent-text);font-size:34px;font-weight:800;box-shadow:6px 6px 0 var(--ink);transform:rotate(-4deg)}.error-screen{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;min-height:60vh;padding:48px 20px;text-align:center}.error-screen h1{margin:0;font-size:1.8rem;letter-spacing:.04em;color:var(--accent)}.error-screen .tagline{margin:0;max-width:460px;color:var(--muted)}.reveal-armed{opacity:0;translate:0 16px;transition:opacity .44s ease,translate .44s cubic-bezier(.2,.9,.3,1)}.reveal-armed.is-visible{opacity:1;translate:none}.track-grid>*:nth-child(3n+2),.character-grid>*:nth-child(3n+2){transition-delay:60ms}.track-grid>*:nth-child(3n+3),.character-grid>*:nth-child(3n+3){transition-delay:.12s}@media(prefers-reduced-motion:reduce){.reveal-armed,.reveal-armed.is-visible{opacity:1;translate:none;transition:none}}.trend-cover:after,.track-card-cover-wrap:after,.track-hero-cover:after,.character-card-art:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background-image:var(--halftone);background-size:5px 5px;opacity:.34;pointer-events:none;transition:opacity .22s ease}.character-card-art{position:relative}.trend-bpm,.track-card-avatar{z-index:2}.trend-cover-img,.track-card-cover-wrap img,.track-hero-cover img,.character-card-art .character-avatar{transition:transform .3s cubic-bezier(.2,.9,.3,1)}.trend-card:hover .trend-cover:after,.track-card:hover .track-card-cover-wrap:after,.track-hero-cover:hover:after,.character-card:hover .character-card-art:after{opacity:.08}.trend-card:hover .trend-cover-img,.track-card:hover .track-card-cover-wrap img,.track-hero-cover:hover img,.character-card:hover .character-avatar{transform:scale(1.06)}.home-hero-play-meta{padding:8px 0 10px 12px;margin-bottom:12px;border-left:4px solid var(--accent);background:linear-gradient(90deg,rgba(226,61,61,.16),transparent 72%)}.home-hero-onair{position:absolute;top:10px;left:-6px;z-index:6;display:inline-flex;align-items:center;gap:7px;padding:5px 13px;font:700 10px/1 IBM Plex Mono,IBM Plex Sans,monospace;letter-spacing:.16em;text-transform:uppercase;color:var(--scape-accent-2);background:var(--accent-deep);border:var(--stroke-w) solid var(--ink);box-shadow:3px 3px 0 var(--ink);transform:skew(-8deg);pointer-events:none}.home-hero-onair>span{transform:skew(8deg)}.home-hero-onair-dot{width:6px;height:6px;background:var(--scape-accent-2);animation:onairBlink 1.6s steps(1,end) infinite}@keyframes onairBlink{0%,55%{opacity:1}56%,to{opacity:.2}}@media(prefers-reduced-motion:reduce){.home-hero-onair-dot{animation:none}}@media(max-width:860px){.home-hero-onair{display:none}}.skeleton-card{padding:14px;background:var(--bg-elevated);border:var(--stroke-w) solid var(--ink);border-radius:var(--radius-md);box-shadow:4px 4px 0 var(--ink);animation:skeleton-in .32s ease-out both}.skeleton-card-main{display:flex;gap:14px}.skeleton-lines{flex:1 1 auto;display:flex;flex-direction:column;gap:8px;padding-top:2px;min-width:0}.skeleton-block{background-color:#f5efe612;background-image:linear-gradient(90deg,transparent 0%,rgba(245,239,230,.09) 45%,rgba(245,239,230,.14) 50%,rgba(245,239,230,.09) 55%,transparent 100%);background-repeat:no-repeat;background-size:220px 100%;border-radius:var(--radius-sm);animation:skeleton-sweep 1.5s ease-in-out infinite}.skeleton-cover{flex:0 0 auto;width:72px;height:72px}.skeleton-line{height:11px;width:100%}.skeleton-line-lg{height:14px;width:72%}.skeleton-line-sm{width:46%;height:22px}.skeleton-action{width:100%;height:44px;margin-top:14px}@keyframes skeleton-sweep{0%{background-position:-240px 0}to{background-position:calc(100% + 240px) 0}}@keyframes skeleton-in{0%{opacity:0}to{opacity:1}}.skeleton-lines>.skeleton-block:nth-child(2){animation-delay:.12s}.skeleton-lines>.skeleton-block:nth-child(3){animation-delay:.24s}@media(prefers-reduced-motion:reduce){.skeleton-card,.skeleton-block{animation:none}}.site-main{animation:route-in .26s ease-out}@keyframes route-in{0%{opacity:0}to{opacity:1}}.site-main.route-plain{animation:none}@media(prefers-reduced-motion:reduce){.site-main{animation:none}}.duo-stage{display:grid;grid-template-columns:1fr 1fr;gap:10px;height:calc(100dvh - 104px);min-height:400px;padding:0 8px}.play-wrap-duo{height:100%;min-height:0;max-width:none;margin:0;box-shadow:5px 5px #0000008c}@media(max-width:760px){.duo-stage{grid-template-columns:1fr;grid-template-rows:1fr 1fr;height:calc(100dvh - 84px - env(safe-area-inset-top) - env(safe-area-inset-bottom));min-height:0}.play-wrap-duo{height:auto}.play-wrap-duo .play-canvas{min-height:0}.play-wrap-duo .hud-signal{left:56%}}.play-wrap-duo .hud-chip{width:118px;padding:6px 8px 7px;gap:2px}.play-wrap-duo .hud-track-score-label{font-size:7px;letter-spacing:.1em}.play-wrap-duo .hud-track-score>span:last-child{font-size:1.05rem}.play-wrap-duo .hud-performance-meta{font-size:7px}.play-wrap-duo .hud-hp{grid-template-columns:auto minmax(24px,1fr) 3ch;gap:3px;font-size:6px}.play-wrap-duo .hud-signal{top:12px;padding:4px 10px;font-size:10px;letter-spacing:.14em;box-shadow:3px 3px 0 var(--ink)}.play-wrap-duo .pause-btn{top:5px;right:5px}.play-wrap-duo .pause-btn-visual{width:30px;height:30px;font-size:13px;box-shadow:2px 2px 0 var(--ink)}.play-wrap-duo .play-failure{padding:10px}.play-wrap-duo .play-failure-card{width:min(280px,90%);gap:4px;padding:15px 12px 17px;box-shadow:5px 5px 0 var(--ink)}.play-wrap-duo .play-failure-card strong{font-size:clamp(1.45rem,5vw,2.7rem)}.play-wrap-duo .play-failure-card span{font-size:.58rem}@media(prefers-reduced-motion:reduce){.play-failure{transition:none}}.hud-player{align-self:flex-start;padding:2px 7px;font:800 10px/1 IBM Plex Mono,monospace;letter-spacing:.18em;text-transform:uppercase;background:var(--ink);color:var(--scape-accent-2)}.hud-player[data-player=P2]{background:#1c1717;color:var(--accent)}.duo-keyhint{font:700 11px/1 IBM Plex Mono,monospace;letter-spacing:.06em;color:var(--muted);text-transform:uppercase}.duo-keyhint b{color:var(--scape-accent-2)}.duo-keyhint-sep{opacity:.45;margin:0 2px}@media(max-width:700px){.duo-keyhint{display:none}}.duo-start{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;display:flex;align-items:center;justify-content:center;padding:20px 16px;background:#12100feb;background-image:var(--halftone);background-size:10px 10px}.duo-start .overlay-card{text-align:center}.duo-start .unlock-btn{width:260px;max-width:100%;min-height:52px}.duo-start .unlock-btn:disabled{cursor:wait;opacity:.72;transform:none}.duo-start .unlock-btn[data-loading=true]{background:#29221f;color:var(--scape-accent-2);border-color:var(--accent);opacity:1;cursor:progress}.duo-loading-copy{margin:0;color:var(--muted);font:650 13px/1.45 IBM Plex Sans,sans-serif}.duo-loading-back{min-height:44px}.audio-load-progress{width:min(320px,100%);display:grid;gap:6px}.audio-load-progress-track{height:6px;overflow:hidden;border:1px solid var(--muted);background:var(--ink)}.audio-load-progress-track>span{display:block;height:100%;background:var(--scape-accent-2)}.audio-load-progress-indeterminate>span{width:35%;animation:audio-load-scan 1.4s ease-in-out infinite alternate}.audio-load-progress-label{margin:0;color:var(--muted);font:700 11px/1.3 IBM Plex Mono,monospace;text-align:center}@keyframes audio-load-scan{0%{transform:translate(0)}to{transform:translate(185%)}}@media(prefers-reduced-motion:reduce){.audio-load-progress-indeterminate>span{animation:none}}.duo-gamepad-start{margin:-3px 0}.duo-pause{z-index:32}.duo-pause-copy{max-width:31rem;margin:0;color:var(--muted);font:650 13px/1.5 IBM Plex Sans,sans-serif}.duo-pause-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:min(360px,100%)}.duo-pause-actions .btn{min-height:48px;margin:0;padding:12px 16px;white-space:nowrap}.duo-pause-actions .duo-pause-exit{grid-column:1 / -1;color:var(--muted);background:transparent;box-shadow:none}.duo-pause-actions .duo-pause-exit:hover,.duo-pause-actions .duo-pause-exit:focus-visible{color:var(--text);background:var(--bg-elevated)}@media(max-width:380px){.duo-pause-actions{grid-template-columns:1fr;width:min(240px,100%)}.duo-pause-actions .duo-pause-exit{grid-column:auto}}.duo-start-error{max-width:32rem;margin:0;color:var(--accent2);font:700 12px/1.45 IBM Plex Mono,monospace}.duo-load-copy{max-width:30rem;margin:0;color:var(--scape-warn);font:600 14px/1.45 IBM Plex Sans,sans-serif;text-align:center}.audio-load-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:min(390px,100%)}.audio-load-actions .btn{min-height:48px;padding:11px 14px}@media(max-width:430px){.audio-load-actions{grid-template-columns:1fr;width:min(260px,100%)}}.duo-seat-hint{display:grid;gap:4px;max-width:100%;text-align:left}.duo-seat-hint b{display:inline-block;width:4.4em;color:#fff7e8}.duo-seat-axis-stacked{display:none}.duo-seat-hint-touch b{width:5.4em}.duo-seat-hint-gamepad{letter-spacing:.035em}.duo-seat-hint-gamepad b{width:5em}@media(max-width:760px){.duo-seat-axis-wide{display:none}.duo-seat-axis-stacked{display:inline}}.duo-result{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;display:flex;align-items:center;justify-content:center;padding:20px 16px;background:#12100feb;background-image:var(--halftone);background-size:10px 10px}.duo-result-card{padding:24px 26px 22px;width:min(560px,100%);max-width:100%;min-width:0}.duo-result-rule{margin:-5px 0 0;color:var(--scape-warn);font:800 10px/1 IBM Plex Mono,monospace;letter-spacing:.16em}.duo-scoreline{display:flex;width:100%;gap:12px;margin:4px 0 18px}.duo-scorecol{position:relative;flex:1;min-width:0;display:flex;flex-direction:column;align-items:center;gap:3px;padding:12px 8px;background:#1c1717;border:2px solid var(--ink)}.duo-scorecol.is-winner{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 14%,#1c1717)}.duo-scorecol-who{font:800 11px/1 IBM Plex Mono,monospace;letter-spacing:.2em;color:var(--muted)}.duo-scorecol.is-winner .duo-scorecol-who{color:var(--accent)}.duo-scorecol-status{min-height:20px;padding:4px 7px;border:1px solid var(--ink);font:800 8px/1 IBM Plex Mono,monospace;letter-spacing:.1em}.duo-scorecol-status.failed{background:var(--accent);color:#fff}.duo-scorecol-status.cleared{background:var(--ok);color:#12100f}.duo-scorecol-grade{font-family:Anton,Sora,sans-serif;font-size:2.6rem;line-height:.9;color:var(--scape-accent-2);-webkit-text-stroke:2px var(--ink);paint-order:stroke fill}.duo-scorecol-score{display:grid;gap:2px;font-family:Anton,Sora,sans-serif;font-size:1.3rem;letter-spacing:.02em;color:var(--scape-accent-2);font-variant-numeric:tabular-nums}.duo-scorecol-score small{color:var(--muted);font:800 7px/1 IBM Plex Mono,monospace;letter-spacing:.12em}.duo-scorecol-meta{width:100%;min-width:0;font:700 10px/1.5 IBM Plex Mono,monospace;letter-spacing:.06em;color:var(--muted)}.duo-scorecol-meta strong{color:var(--scape-accent-2);font-weight:800;font-variant-numeric:tabular-nums;letter-spacing:0}.duo-scorecol-stats{display:grid;gap:2px}.duo-scorecol-stats>span{display:flex;justify-content:space-between;gap:4px;white-space:nowrap}.duo-scorecol-judgments{display:grid;justify-items:center;gap:2px}.duo-scorecol-judgments>span,.duo-scorecol-judgments>strong{white-space:nowrap}.duo-scorecol-judgments abbr{text-decoration:none}.duo-result-actions{display:flex;gap:10px;justify-content:center}.duo-result .gamepad-dialog-hint{margin-top:2px}@media(max-width:420px){.duo-scorecol{padding-inline:5px}.duo-scorecol-meta{font-size:9px;letter-spacing:0}.duo-scorecol-grade{font-size:2rem}.duo-scorecol-score{font-size:1.05rem}}@media(orientation:landscape)and (max-height:520px){body.play-immersive{height:100dvh;min-height:0;overflow:hidden}body.play-immersive .app-shell{height:calc(100dvh - env(safe-area-inset-top) - env(safe-area-inset-bottom));padding-top:0;padding-bottom:0}body.play-immersive .site-main.route-plain,body.play-immersive .play-page{height:100%;min-height:0}body.play-immersive .play-page{display:flex;flex-direction:column;overflow:hidden}.play-meta{flex:0 0 auto;flex-wrap:nowrap;gap:6px;min-width:0;min-height:44px;margin-bottom:4px;padding:0 6px;font-size:12px}.play-meta>strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.duo-meta>strong{min-width:6.5em}.play-meta-tier,.duo-keyhint{flex:0 0 auto;white-space:nowrap}.play-meta-tier{font-size:11px}.duo-keyhint{font-size:9px}.play-wrap,.duo-stage{flex:1 1 auto;height:auto;min-height:0}.duo-seat-axis-wide{display:inline}.duo-seat-axis-stacked{display:none}.play-wrap{width:100%;max-width:min(96vw,600px);border-radius:8px}.play-canvas{min-height:0}.duo-stage{grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:minmax(0,1fr);gap:6px;width:100%;padding:0 4px}.play-wrap-duo{width:auto;max-width:none}.play-wrap .overlay,.duo-start,.duo-result{overflow-y:auto;justify-content:safe center;padding:8px 10px}.play-wrap .overlay:before{top:5px;right:5px;bottom:5px;left:5px}.play-wrap .overlay-card,.duo-start .overlay-card,.duo-result .overlay-card{gap:7px;max-width:min(96%,720px);max-height:100%;padding:10px 14px;overflow-y:auto}.pause-dialog .overlay-card,.duo-pause .overlay-card{width:min(620px,96%)}.pause-control-stack{grid-template-columns:minmax(0,1fr);align-items:start;width:min(590px,100%)}.pause-control-stack[data-practice="1"]{grid-template-columns:164px minmax(0,1fr)}.pause-practice-tempo{align-content:start;height:100%;padding:5px 7px 7px}.pause-practice-tempo>p{display:none}.practice-tempo-options{gap:4px}.practice-tempo-options label{min-height:44px}.pause-copy,.duo-pause-copy{font-size:11px;line-height:1.25}.pause-quick-mix{width:min(590px,100%);padding:4px 9px 5px}.pause-mix-caption{display:none}.pause-mix-controls{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;align-items:center}.pause-control-stack[data-practice="1"] .pause-mix-controls{grid-template-columns:repeat(2,minmax(0,1fr));gap:2px 8px}.pause-mix-row{grid-template-columns:38px minmax(0,1fr) 31px;gap:5px;min-width:0;min-height:44px;font-size:10px}.pause-mix-row input[type=range]{min-width:44px}.pause-mix-toggle{gap:5px;min-width:0;font-size:10px}.pause-mix-toggle small{display:none}.pause-mix-toggle input{flex:0 0 auto;margin:0 4px}.pause-actions,.duo-pause-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;width:min(590px,100%)}.pause-actions .pause-exit,.duo-pause-actions .duo-pause-exit{grid-column:auto}.overlay .unlock-btn,.overlay .btn.primary.unlock-btn{min-height:48px;padding:8px 20px;font-size:1.2rem}.unlock-extras{gap:2px 12px;margin-top:2px}}@media(orientation:landscape)and (max-height:520px)and (max-width:700px){.duo-keyhint{display:none}}@media(max-width:520px){.play-meta{min-width:0;flex-wrap:nowrap;gap:6px;padding:6px}.play-meta>strong{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.play-meta-tier{flex:0 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.play-meta-tier-full{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);clip-path:inset(50%);white-space:nowrap;border:0}.play-meta-tier-compact{display:inline}.play-fullscreen{flex:0 0 44px;width:44px;height:44px;padding:0;margin-left:0}.play-fullscreen-label{display:none}.play-fullscreen-icon{display:grid;place-items:center}.play-fullscreen-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-linecap:square;stroke-linejoin:miter;stroke-width:2.5}}@media(max-width:340px)and (orientation:portrait){.play-meta{min-width:0;flex-wrap:nowrap;gap:6px;padding:6px}.play-meta>strong,.play-meta-tier{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.play-meta>strong{flex:1 1 auto}.play-meta-tier{flex:0 1 auto;font-size:12px}.play-fullscreen{margin-left:0}.play-wrap .hud-signal{left:64%;padding:5px 7px;font-size:9px;letter-spacing:.08em;box-shadow:3px 3px 0 var(--ink)}}@media(orientation:portrait)and (max-width:720px){body.play-immersive{height:100dvh;min-height:0;overflow:hidden}body.play-immersive .site-main.route-plain,body.play-immersive .play-page{height:100%;min-height:0}body.play-immersive .app-shell{height:calc(100dvh - env(safe-area-inset-top) - env(safe-area-inset-bottom));min-height:0;padding-top:0;padding-bottom:0}body.play-immersive .play-page{display:flex;flex-direction:column;overflow:hidden}body.play-immersive .play-meta{flex:0 0 auto}body.play-immersive .play-wrap,body.play-immersive .duo-stage{flex:1 1 auto;width:100%;height:auto;min-height:0}body.play-immersive .play-canvas{min-height:0}body.play-immersive .play-wrap .overlay,body.play-immersive .duo-start,body.play-immersive .duo-result{justify-content:safe center;overflow-y:auto}body.play-immersive .play-wrap .overlay-card,body.play-immersive .duo-start .overlay-card,body.play-immersive .duo-result .overlay-card{max-height:100%;overflow-y:auto}}
