@import"https://fonts.googleapis.com/css2?family=DM+Mono:wght@400;500&family=IBM+Plex+Mono:wght@400;500&family=Manrope:wght@400;500;600;700&family=Playfair+Display:ital,wght@1,600&display=swap";:root{font-family:Manrope,sans-serif;color:#171714;background:#f1efe8;font-synthesis:none;--ink:#171714;--paper:#f7f5ef;--acid:#d8ff45;--red:#ee5b42;--lyrics-font:"IBM Plex Mono",monospace}*{box-sizing:border-box}html{min-width:320px}body{margin:0;min-width:320px}button,input,textarea{font:inherit}button,a,input,textarea,summary{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--red);outline-offset:3px}audio{max-width:100%}.splash{height:100vh;display:grid;place-items:center;font:700 6rem DM Mono;background:var(--ink);color:var(--acid)}header{height:76px;padding:0 4vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #cbc8bd;background:#f1efe8f0;position:sticky;top:0;z-index:30}.wordmark{font-weight:700;display:flex;align-items:center;gap:12px}.wordmark span,.brand-mark,.auth-mobile-brand span{display:grid;place-items:center;width:38px;height:38px;background:var(--ink);color:var(--acid);font:500 14px DM Mono;flex:0 0 auto}nav{display:flex;gap:28px;align-items:center;font-size:14px}.ghost,.text-button{border:0;background:none;cursor:pointer;color:#65645e}.menu-button,.mobile-account,.auth-mobile-brand,.mobile-stage-details{display:none}.page{padding:5vw;min-height:calc(100vh - 76px)}.hero{display:flex;align-items:flex-end;justify-content:space-between;border-bottom:1px solid #bbb8ae;padding-bottom:4vw}.eyebrow{font:500 11px DM Mono;letter-spacing:.14em;color:#68665e}.hero h1{font-size:clamp(3rem,7vw,7.5rem);line-height:.89;letter-spacing:-.065em;margin:22px 0 0}.hero em{font-family:Playfair Display;font-weight:600}.hero p{line-height:1.8;color:#6b6961}.dashboard-grid{display:grid;grid-template-columns:1fr 1.3fr;gap:5vw;padding-top:4vw}.new-session,.history{background:var(--paper);border:1px solid #d7d3c8;padding:34px}.step-number{font:500 11px DM Mono;color:var(--red)}h2{font-size:2rem;letter-spacing:-.04em}.new-session p{color:#716e66;line-height:1.7}.duration-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:30px 0}.duration-row label{font:500 10px DM Mono;text-transform:uppercase}.duration-row span{display:flex;align-items:center;border-bottom:1px solid #aaa;padding:10px 0;font:400 12px Manrope}.duration-row input{width:55px;border:0;background:transparent;font-size:24px;outline:none}.primary{border:0;background:var(--ink);color:#fff;padding:16px 20px;cursor:pointer;width:100%;font-weight:600;display:flex;justify-content:space-between}.primary:hover{background:#34342d}.section-head{display:flex;justify-content:space-between;align-items:flex-start}.section-head h2{margin:8px 0}.count{font:14px DM Mono;border:1px solid #aaa;border-radius:20px;padding:7px 12px}.empty{border-top:1px solid #ccc;padding:50px 0;color:#777}.session-sections{display:grid;gap:25px}.session-row{display:flex;align-items:center;border-top:1px solid #d2cfc5;gap:4px}.session-link{display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:18px;padding:18px 0;min-width:0;flex:1}.session-link>div{min-width:0}.session-link strong{overflow-wrap:anywhere}.session-list small{display:block;color:#888;margin-top:6px}.status{font:10px DM Mono;text-transform:uppercase;padding:6px 8px;background:#e5e2d8;white-space:nowrap}.status.completed{background:var(--acid)}.like-button{border:0;background:none;color:#8c8980;font-size:22px;line-height:1;cursor:pointer;padding:8px}.like-button:hover,.like-button.liked{color:var(--red)}.archive-button{border:1px solid #aaa;background:transparent;color:#65645e;padding:7px 9px;cursor:pointer;font:11px DM Mono}.archive-button:hover{border-color:var(--ink);color:var(--ink)}.archive-countdown{font:11px DM Mono;color:#65645e;white-space:nowrap}.archive-countdown .text-button{font:inherit;text-decoration:underline;padding:5px}.archive-action{display:grid;gap:3px}.error-inline{color:#bd2f21;max-width:100px}.archived-history{max-width:900px;margin:4vw auto 0}.archived-page .hero{max-width:1200px;margin:auto}.tracks-grid{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(0,1.4fr);gap:5vw;padding-top:4vw;align-items:start}.upload-card,.track-library{background:var(--paper);border:1px solid #d7d3c8;padding:34px}.upload-card{display:grid;gap:22px}.upload-card h2{margin:0}.file-picker,.lyrics-field{font:500 11px DM Mono;text-transform:uppercase}.file-picker input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.file-picker span{display:block;margin-top:10px;padding:16px;border:1px dashed #999;background:#eeece4;color:#555;cursor:pointer;overflow-wrap:anywhere;text-transform:none;font:500 14px Manrope}.file-picker:focus-within span{outline:3px solid var(--red);outline-offset:3px}.check-field{display:flex;gap:12px;align-items:flex-start;cursor:pointer}.check-field input{width:20px;height:20px;accent-color:var(--ink);flex:0 0 auto}.check-field span{display:grid;gap:5px;font-size:14px}.check-field small,.lyrics-field small{color:#777;font-weight:400}.lyrics-field textarea{display:block;width:100%;min-height:150px;margin-top:10px;padding:12px;border:1px solid #aaa;background:#fff;resize:vertical;text-transform:none;font:14px/1.6 var(--lyrics-font)}.upload-card .primary:disabled,.track-row .primary:disabled{opacity:.55;cursor:wait}.track-list{border-top:1px solid #ccc}.track-row{display:grid;grid-template-columns:minmax(180px,1fr) minmax(180px,1fr) 150px;gap:20px;align-items:center;padding:20px 0;border-bottom:1px solid #ccc}.track-title{min-width:0}.track-title strong{display:block;overflow-wrap:anywhere}.track-title small{display:block;margin-top:7px;color:#777}.track-row audio{width:100%;height:38px}.track-row .primary{padding:12px 14px}.track-sessions{grid-column:1/-1;margin-top:4px;padding:18px;background:#eeece4;border-top:1px solid #d2cfc5}.track-sessions-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.track-sessions .count{font-size:11px;padding:4px 8px}.track-sessions .empty{padding:24px 0 8px}.track-sessions .session-row:last-child{padding-bottom:0}.auth-shell{min-height:100vh;display:grid;grid-template-columns:1.25fr .75fr}.auth-art{background:var(--ink);color:#fff;padding:5vw;display:flex;flex-direction:column;justify-content:center}.brand-mark{position:absolute;top:5vw}.auth-art h1{font-size:clamp(4rem,8vw,8rem);line-height:.9;letter-spacing:-.07em}.auth-art p{max-width:500px;color:#aaa;line-height:1.8}.auth-card{background:var(--paper);padding:12vh 6vw;display:flex;flex-direction:column;justify-content:center}.auth-card h2{font-size:2.8rem;margin:18px 0 5px}.muted{color:#777;margin-bottom:40px}.auth-card label{font:500 11px DM Mono;text-transform:uppercase;margin:12px 0}.auth-card input{display:block;width:100%;padding:14px 0;border:0;border-bottom:1px solid #aaa;background:none;outline:none;font:18px Manrope}.auth-card .primary{margin-top:28px;justify-content:center}.auth-card .text-button{margin-top:20px}.error{color:#bd2f21;background:#ffe1db;padding:10px}.studio{display:grid;grid-template-columns:minmax(280px,32vw) 1fr;min-height:calc(100vh - 76px)}.studio aside{background:var(--ink);color:#fff;padding:4vw;display:flex;flex-direction:column}.back{color:#aaa;font-size:13px;margin-bottom:12vh}.studio aside h1{font-size:clamp(2rem,4vw,4rem);line-height:1.03;letter-spacing:-.05em;margin:20px 0 8vh;overflow-wrap:anywhere}.studio-like{align-self:flex-start;border:1px solid #555;color:#aaa;font:11px DM Mono;padding:10px 12px;margin-bottom:28px}.studio-like:hover,.studio-like.liked{color:var(--acid);border-color:var(--acid)}.stage-map{margin-top:auto}.stage-map>div{display:flex;gap:18px;opacity:.35;border-top:1px solid #555;padding:12px 0}.stage-map .reached{opacity:1}.stage-map span{font:11px DM Mono;color:var(--acid)}.stage-map p{margin:0}.stage-map small{display:block;color:#aaa;margin-top:5px}.studio audio{width:100%;margin-top:26px;height:36px}.editor{padding:4vw 6vw;display:flex;flex-direction:column;min-width:0}.studio-controls{position:sticky;top:76px;z-index:5;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:20px;align-items:start;padding:20px 0;background:#f1efe8f7;border-bottom:1px solid #bbb}.editor .studio-controls audio{display:block;width:min(760px,100%);height:42px;margin:8px 0 0}.timer-dock{text-align:left}.timer-dock .timer{font-size:clamp(2rem,4vw,4.5rem);line-height:.9}.timer{font:500 clamp(2rem,5vw,5rem) DM Mono;letter-spacing:-.08em}.timer i{font-style:normal;color:var(--red);padding:0 6px}.add-time,.finish-stage{display:inline-block;margin:12px 8px 0 0}.add-time{border:1px solid var(--ink);background:transparent;padding:7px 10px;font:500 11px DM Mono;cursor:pointer}.add-time:hover:not(:disabled){background:var(--acid)}.finish-stage{border:0;background:var(--ink);color:#fff;padding:8px 10px;font:500 11px DM Mono;cursor:pointer}.finish-stage:hover:not(:disabled){background:#34342d}.add-time:disabled,.finish-stage:disabled{cursor:wait;opacity:.6}.save-state{font:12px DM Mono;color:#777}.editor .editor-head{display:flex;align-items:flex-start;justify-content:space-between;border-bottom:1px solid #bbb;padding:28px 0 20px}.editor-head>div{min-width:0;width:100%}.editor-head input{font-size:28px;font-weight:600;border:0;background:none;outline:none;margin-top:8px;width:100%}.editor textarea{flex:0 0 auto;min-height:55vh;overflow-y:hidden;border:0;background:transparent;resize:none;outline:none;font:20px/1.9 var(--lyrics-font);padding:40px 0}.editor textarea:disabled{color:#777}.editor-foot{display:flex;justify-content:space-between;border-top:1px solid #bbb;padding-top:12px;color:#777;font:11px DM Mono}.previous-glimpse{margin-top:26px;padding:16px 18px;background:#e5e2d8;border-left:3px solid var(--red)}.previous-glimpse ol{margin:12px 0 0;padding:0;list-style:none}.previous-glimpse li{font:13px/1.6 var(--lyrics-font)}.stage-gate,.reveal-panel{margin:auto;max-width:640px;width:100%}.stage-gate>span{font:11px DM Mono;color:var(--red)}.stage-gate h2,.reveal-panel h2{font-size:clamp(3rem,6vw,6rem);line-height:.92}.stage-gate p{color:#777;line-height:1.8;max-width:450px}.stage-gate .primary,.reveal-panel .primary{margin-top:40px}.reveal-panel ol{padding:0;list-style:none;border-top:1px solid #bbb}.reveal-panel li{padding:14px 0;border-bottom:1px solid #ccc;font:15px var(--lyrics-font);overflow-wrap:anywhere}.final{margin-top:50px;border-top:6px solid var(--ink);padding-top:30px;min-width:0}.final h2{font-size:4rem;margin:15px 0 0;overflow-wrap:anywhere}.final h3{font-weight:400;color:#777}.final pre{white-space:pre-wrap;font:14px/1.8 var(--lyrics-font);overflow-wrap:anywhere}.loading{display:grid;place-items:center;font:14px DM Mono}@media(max-width:800px){header{height:64px;padding:0 16px}.wordmark{gap:10px}.wordmark span{width:36px;height:36px}.menu-button{min-width:72px;min-height:44px;border:1px solid #aaa;background:var(--paper);display:flex;align-items:center;justify-content:space-between;gap:9px;padding:0 11px;color:var(--ink);font:500 11px DM Mono;cursor:pointer}header nav{display:none;position:absolute;top:calc(100% + 1px);left:12px;right:12px;padding:8px 18px 14px;background:var(--paper);border:1px solid #cbc8bd;box-shadow:0 12px 28px #17171429;gap:0;align-items:stretch}header nav.open{display:flex;flex-direction:column}header nav a,header nav .ghost{display:flex;align-items:center;min-height:48px;border-bottom:1px solid #d7d3c8;text-align:left;padding:0}header nav .ghost{border-bottom:0;color:var(--ink)}.mobile-account{display:block;padding:14px 0 5px;color:#777;font:11px DM Mono;overflow-wrap:anywhere}.desktop-username{display:none}.page{padding:32px 20px;min-height:calc(100vh - 64px)}.hero,.dashboard-grid{display:block}.hero{padding-bottom:28px}.hero h1{font-size:clamp(3rem,14vw,5rem)}.hero p{margin:28px 0 0}.dashboard-grid{padding-top:28px}.new-session,.history{padding:24px}.history{margin-top:24px}.session-sections{gap:0}.liked-sessions{margin-top:24px}.session-row{flex-wrap:wrap;gap:8px;padding-bottom:14px}.session-link{flex:1 0 100%;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;padding:16px 0 4px}.session-row .like-button,.session-row .archive-button,.archive-countdown .text-button{min-width:44px;min-height:44px}.archive-action{display:block}.archive-action .archive-button{min-width:72px}.archive-countdown{white-space:normal;display:flex;align-items:center;gap:4px;min-height:44px}.error-inline{display:block;max-width:none;margin-top:4px}.archived-history{margin-top:28px}.empty{padding:38px 0}.tracks-grid{display:block;padding-top:28px}.upload-card,.track-library{padding:24px}.track-library{margin-top:24px}.track-row{grid-template-columns:1fr;padding:22px 0;gap:14px}.track-row .primary{min-height:48px}.track-sessions{padding:16px 12px}.auth-shell{grid-template-columns:1fr}.auth-art{display:none}.auth-card{min-height:100svh;padding:clamp(32px,8vh,72px) 24px;justify-content:center}.auth-mobile-brand{display:flex;align-items:center;gap:12px;font-weight:700;margin-bottom:clamp(40px,8vh,72px)}.auth-card h2{font-size:clamp(2.2rem,11vw,2.8rem)}.auth-card .primary,.auth-card .text-button{min-height:48px}.studio{display:block;min-height:calc(100vh - 64px)}.studio aside{min-height:0;padding:24px 20px 18px;display:block}.back{display:inline-flex;align-items:center;min-height:44px;margin:0 0 20px}.studio aside h1{font-size:clamp(2rem,10vw,3rem);margin:12px 0 16px}.studio-like{min-height:44px;margin:0}.desktop-stage-map{display:none}.mobile-stage-details{display:block;border-top:1px solid #555;margin-top:18px}.mobile-stage-details summary{min-height:48px;display:flex;align-items:center;justify-content:space-between;gap:16px;cursor:pointer;list-style:none;font:11px DM Mono;text-transform:uppercase;color:#aaa}.mobile-stage-details summary::-webkit-details-marker{display:none}.mobile-stage-details summary b{color:var(--acid);font-weight:500}.mobile-stage-details summary b:after{content:" +"}.mobile-stage-details[open] summary b:after{content:" −"}.mobile-stage-details .stage-map{margin-top:0}.mobile-stage-details .stage-map>div:last-child{padding-bottom:4px}.editor{padding:0 20px 32px}.editor.has-mobile-dock{padding-bottom:calc(118px + env(safe-area-inset-bottom))}.studio-controls{position:static;display:block;padding:18px 0;z-index:auto}.editor .studio-controls audio{width:100%;height:42px}.studio-controls>.save-state{display:block;margin-top:12px}.timer-dock{position:fixed;z-index:20;left:0;right:0;bottom:0;display:grid;grid-template-columns:auto minmax(0,1fr) minmax(0,1fr);gap:7px 8px;align-items:center;text-align:left;padding:9px max(12px,env(safe-area-inset-right)) calc(9px + env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));background:#f7f5effa;border-top:1px solid #aaa;box-shadow:0 -8px 24px #1717141f}.timer-dock>.eyebrow{grid-column:1/-1}.timer-dock .timer{font-size:1.75rem;line-height:1;white-space:nowrap}.timer i{padding:0 3px}.add-time,.finish-stage{min-height:44px;margin:0;padding:7px 6px;font-size:10px;line-height:1.25}.editor .editor-head{padding:22px 0 18px}.editor-head input{width:100%;font-size:24px}.editor textarea{min-height:60vh;font-size:18px;padding:28px 0}.stage-gate,.reveal-panel{margin:48px auto 24px}.stage-gate h2,.reveal-panel h2{font-size:clamp(3rem,14vw,5rem)}.stage-gate .primary,.reveal-panel .primary{min-height:48px}.final h2{font-size:clamp(2.5rem,13vw,4rem)}.final audio{width:100%}}@media(max-width:480px){.page{padding:26px 16px}.hero h1{font-size:clamp(2.8rem,15vw,4.5rem)}.hero p br{display:none}.new-session,.history,.upload-card,.track-library{padding:20px 16px}.duration-row{grid-template-columns:1fr;gap:18px;margin:26px 0}.duration-row span{justify-content:space-between}.duration-row input{width:90px}.section-head h2{font-size:1.75rem}.session-link{grid-template-columns:minmax(0,1fr) auto}.session-link>b{display:none}.status{max-width:112px;white-space:normal;text-align:center}.auth-card{padding-left:20px;padding-right:20px}.menu-button-label{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.menu-button{min-width:44px;width:44px;justify-content:center;font-size:18px}.studio aside,.editor{padding-left:16px;padding-right:16px}.timer-dock{grid-template-columns:68px minmax(0,1fr) minmax(0,1fr)}.timer-dock .timer{font-size:1.55rem}.add-time,.finish-stage{font-size:9px}}
