@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(./barlow-condensed-latin-700-normal-v1xN8_Wq.woff2) format("woff2"),url(./barlow-condensed-latin-700-normal-Dmwat-ge.woff) format("woff")}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:800;src:url(./barlow-condensed-latin-800-normal-BKzMuPgK.woff2) format("woff2"),url(./barlow-condensed-latin-800-normal-e9GbPXiK.woff) format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:400;src:url(./manrope-latin-400-normal-PaqtzbVb.woff2) format("woff2"),url(./manrope-latin-400-normal-8tf8FM3T.woff) format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:600;src:url(./manrope-latin-600-normal-4f0koTD-.woff2) format("woff2"),url(./manrope-latin-600-normal-BqgrALkZ.woff) format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:700;src:url(./manrope-latin-700-normal-BZp_XxE4.woff2) format("woff2"),url(./manrope-latin-700-normal-DGRFkw-m.woff) format("woff")}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:700;src:url(./barlow-condensed-latin-ext-700-normal-CwuXbfVR.woff2) format("woff2"),url(./barlow-condensed-latin-ext-700-normal-BIHFfxf0.woff) format("woff")}@font-face{font-family:Barlow Condensed;font-style:normal;font-display:swap;font-weight:800;src:url(./barlow-condensed-latin-ext-800-normal-DGNyg4u8.woff2) format("woff2"),url(./barlow-condensed-latin-ext-800-normal-gY_0Gifi.woff) format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:400;src:url(./manrope-latin-ext-400-normal-CMDvPJRp.woff2) format("woff2"),url(./manrope-latin-ext-400-normal-C-X6QNXX.woff) format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:600;src:url(./manrope-latin-ext-600-normal-_gBojHdJ.woff2) format("woff2"),url(./manrope-latin-ext-600-normal-u5Pl7hTU.woff) format("woff")}@font-face{font-family:Manrope;font-style:normal;font-display:swap;font-weight:700;src:url(./manrope-latin-ext-700-normal-DYOwVNan.woff2) format("woff2"),url(./manrope-latin-ext-700-normal-eVCcYqtJ.woff) format("woff")}:root{font-family:Manrope,sans-serif;color:#f2efdf;background:#090e10;--ink: #101719;--dim: #9ba6a5;--teal: #5ee2ca;--coral: #ff806b;--cream: #f2efdf;--line: #ffffff14;font-synthesis:none;color-scheme:dark}*{box-sizing:border-box}body{margin:0;min-width:320px;background:radial-gradient(ellipse at 18% 35%,#153b36 0,transparent 48%),radial-gradient(ellipse at 90% 60%,#3b211f 0,transparent 50%),#090e10}button,a,input{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible{outline:2px solid #fff;outline-offset:3px}button{border:0}button:disabled{cursor:wait;opacity:.6}a{color:var(--teal)}[hidden]{display:none!important}h1,h2,h3,p{margin:0}button{touch-action:manipulation}#app{width:min(100%,540px);margin:auto;min-height:700px;height:100svh;height:100dvh;max-height:1100px;background:var(--ink);display:grid;grid-template-rows:48px minmax(230px,1fr) auto 28px;padding-top:env(safe-area-inset-top);padding-bottom:env(safe-area-inset-bottom);overflow:hidden}.masthead{position:relative;z-index:4;display:flex;justify-content:space-between;align-items:center;padding:0 17px;border-bottom:1px solid var(--line)}.wordmark{text-decoration:none;color:var(--cream);font-size:10px;font-weight:800;letter-spacing:1.2px;display:flex;align-items:center;gap:8px}.mark{font-family:Barlow Condensed,sans-serif;font-size:23px;letter-spacing:-4px;background:var(--cream);color:#101719;padding:0 7px 3px 4px;transform:skewY(-7deg)}.header-actions{display:flex;align-items:center;gap:12px}.on-air{font-size:8px;letter-spacing:1px;color:#b7c0ba;display:flex;gap:5px;align-items:center}.on-air i{width:5px;height:5px;background:var(--coral);border-radius:50%;box-shadow:0 0 12px #ff806b66}.icon-button{background:transparent;border:1px solid #ffffff20;border-radius:50%;width:34px;height:34px;display:grid;place-items:center;font-size:19px;line-height:1}.stage{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 50% 10%,#344543 0,transparent 65%),linear-gradient(125deg,#132e2e,#141a1c 50%,#3c2924)}.panels{position:absolute;inset:0;background:repeating-linear-gradient(90deg,#0004 0,#0004 2px,transparent 2px,transparent 26px);mask-image:linear-gradient(#000a,transparent)}.stage:after{content:"";pointer-events:none;position:absolute;inset:0;background:linear-gradient(90deg,#0003,transparent 22%,transparent 78%,#0003);z-index:2}.spotlight{position:absolute;top:10%;width:85%;height:100%;filter:blur(20px);opacity:.2;transform-origin:top}.spotlight.teal{left:-50%;transform:rotate(-20deg);background:linear-gradient(var(--teal),transparent)}.spotlight.coral{right:-50%;transform:rotate(20deg);background:linear-gradient(var(--coral),transparent)}.hero-title{position:absolute;top:17px;left:22px;z-index:3;pointer-events:none}.eyebrow{font-size:8px;font-weight:700;letter-spacing:1.8px;color:var(--teal);margin-bottom:7px}h1{font-family:Barlow Condensed,Impact,sans-serif;font-size:clamp(48px,12.4vw,68px);font-weight:800;line-height:.85;letter-spacing:-.5px}h1 span{color:var(--cream)}.tagline{font-size:11px;color:#c5cfca;margin-top:9px}.artists{position:absolute;inset:94px -12% 6px;display:flex;align-items:flex-end;z-index:1}.artist{position:relative;display:flex;align-items:flex-end;justify-content:center;background:transparent;width:56%;height:100%;padding:0;flex:none;transform-origin:50% 95%;transition:filter .2s}.artist-a{margin-right:-12%}.artist img{width:100%;height:100%;object-fit:contain;object-position:bottom;filter:drop-shadow(0 12px 12px #0008);pointer-events:none;user-select:none}.artist.selected{filter:drop-shadow(0 0 8px #67dfc222)}.artist-label{display:none;position:absolute;bottom:16px;left:22%;font-size:8px;letter-spacing:1px;padding:5px 8px;background:#0c1418dd;border:1px solid #ffffff22;border-radius:3px;white-space:nowrap}.artist-label i{width:5px;height:5px;background:var(--coral);display:inline-block;border-radius:50%;margin-right:5px}.artist.selected .artist-label i{background:var(--teal)}.artist-a .artist-label{left:30%}.stage-floor{position:absolute;bottom:0;height:58px;left:0;right:0;z-index:2;background:linear-gradient(transparent,#101719)}.studio-bottom{position:absolute;bottom:7px;left:20px;right:20px;display:flex;align-items:center;justify-content:space-between;z-index:4;color:#8c9c97;font-size:7px;letter-spacing:1.8px}.level-bars{display:flex;align-items:center;gap:3px;height:16px}.level-bars i{width:2px;height:6px;background:#7aa89e}.level-bars i:nth-child(3n){height:13px}.level-bars i:nth-child(4n){height:9px}.console{background:#101719;padding:13px 20px 3px;position:relative;z-index:4}.select-caption{display:flex;gap:10px;align-items:center;margin-bottom:13px}.step-number{font-family:Barlow Condensed,sans-serif;font-size:23px;color:var(--teal);border-right:1px solid #ffffff28;padding-right:10px}.select-caption p{font-size:12px;font-weight:700}.select-caption small{display:block;font-size:9px;font-weight:400;color:var(--dim);margin-top:3px}.difficulty{display:flex;gap:8px;margin-bottom:11px}.difficulty button{flex:1;text-align:left;border:1px solid #ffffff1a;padding:8px 11px;background:#151f21;border-radius:6px;font-weight:700;font-size:11px}.difficulty button span{display:block;color:var(--dim);font-size:8px;font-weight:400;margin-top:3px}.difficulty button.active{border-color:#5ee2ca88;background:#1a3531}.primary-button{background:var(--teal);color:#102420;display:flex;align-items:center;justify-content:space-between;width:100%;padding:15px 18px;border-radius:6px;font-weight:800;font-size:17px;box-shadow:0 5px 22px #5ee2ca13;transition:filter .15s,transform .15s}.primary-button:hover{filter:brightness(1.08);transform:translateY(-1px)}.play-icon{font-size:14px}.home-meta{display:flex;justify-content:space-between;align-items:center;margin-top:10px;font-size:7px;letter-spacing:1px;color:var(--dim)}.text-button{background:none;padding:3px 0;color:#bdc7c3;font-size:10px}.text-button:hover{color:var(--teal)}.tracklist{display:none;border-top:1px solid var(--line);margin-top:20px}.tracklist>div{padding:13px 0;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:14px}.tracklist span{font-size:10px;color:var(--teal)}.tracklist strong{font:700 19px Barlow Condensed;letter-spacing:1px}.tracklist small{margin-left:auto;font-size:10px;color:var(--dim)}.record-line{margin:10px 0 4px;display:flex;justify-content:space-between;font-size:8px;color:#8fa19c;align-items:center}.record-line .text-button{font-size:8px}footer{padding:0 18px;display:flex;justify-content:space-between;align-items:center;font-size:7px;letter-spacing:1px;color:#71837d;border-top:1px solid var(--line);position:relative;z-index:4}footer .text-button{font-size:8px;color:#9aa9a3;letter-spacing:0}#loading-panel{padding:24px 0}h2{font:800 36px/.98 Barlow Condensed;letter-spacing:.4px}#load-label{font-size:12px;margin:18px 0 10px}progress{width:100%;height:6px;accent-color:var(--teal)}.small-note{font-size:10px;color:var(--dim);line-height:1.6;margin:12px 0}#load-home{display:block;margin:12px auto}#app[data-screen=playing],#app[data-screen=paused]{grid-template-rows:48px minmax(195px,1fr) auto 28px;min-height:650px}#app:not([data-screen=home]) .hero-title{display:none}#app:not([data-screen=home]) .artists{inset:45px -6% 36px}#app:not([data-screen=home]) .artist-a{margin-right:-12%}#app:not([data-screen=home]) .artist-label{display:block}#app:not([data-screen=home]) .console{padding-top:8px}.round-stage-label{position:absolute;z-index:3;top:12px;left:20px}.round-stage-label span{font-size:7px;letter-spacing:1.6px;color:var(--teal)}.round-stage-label h2{font-size:27px;margin-top:3px}.lyric{position:absolute;z-index:4;bottom:24px;width:100%;text-align:center;padding:0 15px;pointer-events:none}.lyric span{font-size:6px;letter-spacing:1.4px;color:var(--teal);background:#101719bd;padding:3px 7px;border-radius:2px}.lyric p{font-size:12px;font-weight:700;margin-top:6px;text-shadow:0 2px 4px #000,0 0 12px #000;background:#101719cc;border-radius:4px;padding:4px 6px;display:table;margin-left:auto;margin-right:auto;max-width:95%}.score-row{display:flex;align-items:center;justify-content:space-between;height:45px}.score-row>div{display:flex;flex-direction:column}.score-row span{font-size:7px;letter-spacing:1.3px;color:var(--dim)}.score-row strong{font:700 29px Barlow Condensed;line-height:1.1}.score-row .combo{text-align:center}.combo strong{color:var(--teal)}.crowd-row{display:flex;justify-content:space-between;font-size:6px;letter-spacing:1px;margin-top:3px;color:#8da69e}.crowd-meter{height:4px;background:#ffffff14;position:relative;border-radius:4px;margin-top:4px}.crowd-meter i{display:block;height:100%;width:0;background:linear-gradient(90deg,#377f76,var(--teal));transition:width .12s}.crowd-meter b{position:absolute;top:-2px;height:8px;width:2px;background:var(--cream);left:60%}.phase-row{display:flex;justify-content:space-between;align-items:center;margin:12px 0 0}.phase-row strong{font-size:14px;color:var(--cream)}.phase-row span{font-size:7px;letter-spacing:1px;color:var(--dim)}.lane-wrap{position:relative;height:160px}.lane-wrap #note-field{width:100%;height:100%;overflow:hidden}.lane-wrap canvas{display:block!important}#judgement{position:absolute;top:8px;left:0;right:0;text-align:center;font:700 20px Barlow Condensed;letter-spacing:1px;pointer-events:none;color:var(--teal);text-shadow:0 2px 7px #000;opacity:0}.pads{display:grid;grid-template-columns:1fr 1fr;gap:10px}.pad{height:67px;border-radius:7px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;touch-action:none;user-select:none;-webkit-user-select:none;box-shadow:inset 0 -4px #0003;transition:background .06s}.pad-left{background:#153c35;border:1px solid #5ee2ca66;color:var(--teal)}.pad-right{background:#422a26;border:1px solid #ff806b77;color:#ffac9f}.pad b{font:700 25px Barlow Condensed;letter-spacing:2px}.pad span{font-size:7px;letter-spacing:1px;display:flex;align-items:center;gap:6px}.pad kbd{font-family:Manrope;font-size:8px;background:#0004;padding:1px 4px;border-radius:2px}.pad.pressed{background:#5b9b85;color:#fff}.pad-right.pressed{background:#af675b}.play-hint{font-size:8px;text-align:center;min-height:22px;padding-top:8px;color:#a6b6ae}.round-progress{height:2px;background:#ffffff0a;margin-top:3px}.round-progress i{display:block;background:var(--teal);height:100%;width:0}.result-eyebrow{font-size:8px;letter-spacing:2px;color:var(--teal);margin-bottom:8px}.result-number{font:800 76px/.95 Barlow Condensed;color:var(--teal);margin:12px 0}.result-number small{font-size:32px}.result-description{font-size:11px;line-height:1.6;color:#b9c8bf;margin-bottom:15px}.result-stats{display:flex;justify-content:space-between;font-size:10px;margin:15px 0;color:#a9bbb1}.result-actions{display:flex;gap:14px;justify-content:center;margin-top:10px}.round-medals{display:flex;gap:8px;margin:14px 0}.round-medals span{flex:1;border:1px solid #ffffff20;padding:8px;text-align:center;font-size:9px;border-radius:4px}.round-medals .win{border-color:var(--teal);color:var(--teal)}#result-panel{padding:15px 0 8px}.result-title{font-size:38px}dialog{background:#142023;border:1px solid #39514b;border-radius:13px;color:var(--cream);max-width:min(420px,calc(100vw - 24px));width:420px;max-height:90dvh;padding:28px 24px;box-shadow:0 24px 100px #000a}dialog::backdrop{background:#03090bd9;backdrop-filter:blur(7px)}.dialog-close{position:absolute;top:11px;right:11px}.dialog-body h2,#dialog-body h2{padding-right:20px;margin-bottom:20px;font-size:34px}#dialog-body p{font-size:12px;line-height:1.7;color:#bdccc4;margin:12px 0}#dialog-body p strong{color:var(--cream)}#dialog-body ol{padding-left:20px;font-size:12px;line-height:1.8;color:#bdccc4}#dialog-body li{margin-bottom:9px}#dialog-body .primary-button{margin-top:16px;font-size:15px;padding:13px 16px}.setting{display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;margin:18px 0;font-size:12px}.setting input[type=range]{width:100%;accent-color:var(--teal)}.setting input[type=checkbox]{accent-color:var(--teal);width:17px;height:17px}.setting small{font-size:10px;color:var(--dim);width:100%;line-height:1.5}.divider{height:1px;background:var(--line);margin:20px 0}.calibration-pad{width:100%;height:110px;border:1px solid var(--teal);background:#173d36;border-radius:9px;color:var(--teal);font:700 28px Barlow Condensed;touch-action:none}.calibration-pad.pulse{background:#36675c}.cal-result{font-weight:700;color:var(--teal)!important}.replay-button{display:flex;justify-content:space-between;width:100%;padding:16px 0;background:none;border-bottom:1px solid var(--line);font-size:13px}.replay-button small{color:var(--teal)}.reduced-motion *{animation:none!important;transition:none!important}@media (min-height: 850px) and (max-width: 899px){#app{grid-template-rows:52px minmax(285px,1fr) auto 30px}.console{padding-bottom:10px}.primary-button{padding:18px}.difficulty button{padding:11px}.home-meta{margin-top:15px}.record-line{margin-top:17px}.lane-wrap{height:190px}.artists{inset:110px -12% 6px}h1{font-size:72px}.hero-title{top:22px}}@media (min-width: 900px){body{min-height:100vh;display:flex;align-items:center;justify-content:center}#app{width:min(1180px,96vw);height:min(800px,94dvh);min-height:640px;max-height:none;grid-template-columns:minmax(0,1fr) 380px;grid-template-rows:62px 1fr 35px;border:1px solid #ffffff12;border-radius:12px;box-shadow:0 30px 100px #0007;padding:0;overflow:hidden}#app[data-screen=playing],#app[data-screen=paused]{grid-template-rows:62px 1fr 35px;min-height:640px}.masthead{grid-column:1/3;padding:0 27px}.wordmark{font-size:12px}.on-air{font-size:9px}.stage{grid-column:1;grid-row:2}.console{grid-column:2;grid-row:2;border-left:1px solid var(--line);padding:32px 26px;display:flex;align-items:center}.console>div{width:100%}footer{grid-column:1/3;padding:0 27px}.hero-title{top:40px;left:34px}.eyebrow{font-size:9px;margin-bottom:12px}h1{font-size:clamp(80px,8.5vw,112px)}.tagline{font-size:13px;margin-top:15px}.artists{inset:185px -16% 4px}.artist{width:56%}.tracklist{display:block}.select-caption{margin-bottom:22px}.select-caption p{font-size:14px}.select-caption small{font-size:10px;margin-top:6px}.difficulty{margin-bottom:16px}.difficulty button{font-size:12px;padding:11px}.difficulty button span{font-size:8px}.primary-button{font-size:19px;padding:19px 18px}.home-meta{font-size:7px;margin-top:13px}.record-line{margin-top:22px;font-size:9px}.stage-floor{height:90px}.studio-bottom{bottom:15px;left:34px;right:34px;font-size:8px}#app:not([data-screen=home]) .artists{inset:110px -16% 50px}#app:not([data-screen=home]) .console{padding:24px 26px}.round-stage-label{top:35px;left:34px}.round-stage-label span{font-size:9px}.round-stage-label h2{font-size:52px;margin-top:8px}.lyric{bottom:40px}.lyric span{font-size:8px}.lyric p{font-size:17px;padding:7px 12px}.artist-label{bottom:28px;font-size:10px}.lane-wrap{height:235px}.score-row{height:65px}.score-row strong{font-size:38px}.score-row span{font-size:9px}.phase-row{margin-top:22px}.phase-row strong{font-size:18px}.phase-row span{font-size:8px}.pad{height:86px}.pad b{font-size:30px}.play-hint{font-size:10px;line-height:1.5;padding-top:14px;min-height:48px}.crowd-row{font-size:8px}.crowd-meter{margin-top:7px}.result-title{font-size:47px}.result-number{font-size:100px}.result-description{font-size:13px}.result-stats{font-size:11px}}@media (max-height: 560px) and (min-width: 600px){#app,#app[data-screen=playing],#app[data-screen=paused]{width:100%;height:100dvh;min-height:320px;max-height:none;grid-template-columns:1fr 330px;grid-template-rows:40px 1fr 22px}.masthead,footer{grid-column:1/3}.stage{grid-column:1;grid-row:2}.console{grid-column:2;grid-row:2;padding:8px 17px;overflow:auto}.hero-title{top:12px;left:17px}h1{font-size:48px}.eyebrow{font-size:6px}.tagline{font-size:9px}.artists{inset:72px -18% 0}.tracklist,.record-line{display:none}.difficulty,.select-caption{margin-bottom:8px}.primary-button{padding:12px}.lane-wrap{height:85px}.pad{height:48px}.score-row{height:36px}.score-row strong{font-size:23px}.phase-row{margin-top:7px}.phase-row strong{font-size:12px}.crowd-row{font-size:6px}.play-hint{font-size:7px;min-height:18px;padding-top:4px}#app:not([data-screen=home]) .artists{inset:40px -16% 25px}.round-stage-label{top:8px;left:16px}.round-stage-label h2{font-size:24px}.lyric{bottom:21px}.lyric p{font-size:10px}.artist-label{font-size:6px}.result-number{font-size:49px;margin:7px 0}.result-title{font-size:28px}.result-description{font-size:10px;margin-bottom:6px}.result-stats{margin:8px 0;font-size:9px}.round-medals{margin:6px 0}.round-medals span{padding:5px}.console #result-panel{padding:0}.result-actions{margin-top:4px}.studio-bottom{font-size:6px}.pads{gap:7px}}.stage{background-image:linear-gradient(#06111455,#10171944),url(./studio-UKOyyRrM.webp);background-size:cover;background-position:center}.artist:disabled{cursor:default;opacity:1}.spotlight{opacity:calc(.14 + var(--energy, .5) * .16)}#app[data-screen=home] .artist-label{display:block;bottom:22px}#app[data-screen=home] .artist:not(.selected) .artist-label{opacity:.65}#app[data-screen=home] .artist.selected .artist-label{border-color:var(--teal);color:var(--teal)}.stage,#app{overflow:clip}#app:not([data-screen=home]) .artist-label{bottom:68px}.play-hint{font-size:10px;line-height:1.35;min-height:31px}.artist-label{font-size:8px}.difficulty button{font-size:12px}.difficulty button span{font-size:9px}@media (max-height: 560px) and (min-width: 600px){.play-hint{font-size:8px;min-height:22px}.difficulty button{font-size:11px}.difficulty button span{font-size:8px}}@media (max-height: 560px) and (min-width: 600px){#app[data-screen=home] .artists{top:110px}}@media (min-width: 900px){#app[data-screen=home] .artists{top:265px}}.song-caption{display:flex;justify-content:space-between;align-items:baseline;margin:2px 0 6px;font-size:8px;letter-spacing:1px;color:var(--teal);font-weight:700}.song-caption small{font-size:8px;letter-spacing:0;font-weight:400;color:var(--dim)}.song-picker button{padding:7px 8px;font-size:10.5px;line-height:1.15;min-width:0}.song-picker button.active{border-color:#ff8a7a99;background:#3a2622}@media (min-width: 900px){.song-caption{font-size:9px;margin-bottom:8px}.song-picker button{font-size:12px;padding:10px}}
