:root{color-scheme:dark;--bg:#161316;--panel:#201b20;--edge:#372d35;--ink:#fbf0e7;--muted:#baabb4;--rose:#eaaa9b;--gold:#e6bd83;--wine:#49252f;font:15px/1.55 system-ui,sans-serif}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);display:grid;grid-template-columns:235px minmax(0,1fr);min-height:100vh}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select{outline-offset:4px}button{cursor:pointer;background:#2b2229;color:var(--ink);border:1px solid #55404b;border-radius:8px;padding:8px 13px}button:hover{border-color:var(--rose);background:#392930}.primary{background:var(--rose);color:#2b171b;border-color:var(--rose);font-weight:750}.primary:hover{background:#f8c7b8}.quiet{background:transparent}.danger{color:#ffc0b2}aside{position:sticky;top:0;height:100vh;background:#1b171b;border-right:1px solid var(--edge);padding:27px 17px;display:flex;flex-direction:column}.brand{display:flex;align-items:center;gap:10px;font:600 20px Georgia,serif;white-space:nowrap}.logo{display:grid;place-items:center;width:36px;height:36px;border-radius:50%;background:#44252f;color:var(--rose);font:30px Georgia}.brand small,.navlabel,.eyebrow,.foot,footer{font:700 10px/1.6 system-ui;letter-spacing:.18em}.brand small{display:block;color:var(--muted);font-size:8px;margin-top:4px}.navlabel{color:#a38e9a;margin:42px 10px 10px}nav{display:grid;gap:5px}nav a{padding:10px;border-radius:8px;color:var(--muted)}nav a span{display:inline-block;width:28px;color:var(--rose)}nav a:hover,nav a.active{background:#38242e;color:var(--ink)}.foot{margin-top:auto;border-top:1px solid var(--edge);padding:17px 7px 0;color:var(--rose)}.foot small{color:var(--muted);letter-spacing:0;font-size:11px;font-weight:400}.dot{display:inline-block;background:#a9c4a5;width:6px;height:6px;border-radius:50%;margin-right:5px}.shell{min-width:0}header{height:65px;border-bottom:1px solid var(--edge);display:flex;justify-content:space-between;align-items:center;padding:0 4%;color:var(--muted);font-size:13px}#saved{color:#b5cfb2}main{max-width:1330px;margin:auto;padding:29px 4% 15px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:Georgia,serif;font-weight:500;line-height:1.12}h1{font-size:clamp(37px,5vw,67px);letter-spacing:-.05em}h2{font-size:30px;letter-spacing:-.035em}h3{font-size:22px}p{color:var(--muted)}.eyebrow{color:var(--gold);margin-bottom:9px}.hero{min-height:288px;overflow:hidden;position:relative;isolation:isolate;display:flex;align-items:center;padding:35px clamp(22px,4vw,53px);border-radius:16px;border:1px solid #62414d;background:linear-gradient(105deg,#39212e 3%,#4c2938 56%,#241b28 100%)}.hero h1 em{color:var(--rose);font-weight:400}.hero p{max-width:380px;margin:12px 0 21px;color:#ead4dc}.record{pointer-events:none;position:absolute;z-index:-1;width:360px;aspect-ratio:1;right:2%;top:50%;transform:translateY(-48%) rotate(-18deg);border-radius:50%;box-shadow:0 22px 60px #0c0810b0,inset 0 0 25px #130e14;background:conic-gradient(from 22deg,#160f19aa,#98637756,#1f152399,#7a51635c,#160f19aa),repeating-radial-gradient(circle,#241923 0px,#302230 2px,#151016 3px,#201721 5px)}.record:before{content:"VELVET / 33⅓";display:grid;place-items:center;position:absolute;inset:32%;border-radius:50%;border:4px double #aa655c;background:#74404c;color:#f8cab3;font:700 9px system-ui;letter-spacing:.15em}.record:after{content:"";position:absolute;inset:49%;border-radius:50%;background:#170f19}.grid{display:grid;gap:13px}.stats{grid-template-columns:repeat(4,minmax(0,1fr));margin:16px 0 28px}.stats .card strong{font:36px Georgia;display:block;margin:5px 0}.card,.row{background:var(--panel);border:1px solid var(--edge);border-radius:12px;padding:17px}.card p,.row p{font-size:13px}.section{margin:25px 0 12px}.spread,.actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.spread{justify-content:space-between}.two{grid-template-columns:repeat(2,minmax(0,1fr))}.three{grid-template-columns:repeat(3,minmax(0,1fr))}.pill{border-radius:30px;padding:4px 9px;color:#f0b5a8;background:#422931;font-size:11px;white-space:nowrap}.songlink{display:flex;align-items:center;gap:13px;min-width:0}.songlink:hover h3{color:var(--rose)}.tile{display:grid;place-items:center;width:43px;height:43px;border-radius:9px;background:#3e2632;color:var(--rose);flex:none}.row+.row{margin-top:8px}.pagehead{margin-bottom:21px}.pagehead p{margin-top:8px}.pagehead h1{font-size:clamp(34px,4.7vw,56px);overflow-wrap:anywhere}.tabs{display:flex;overflow:auto;gap:7px;padding:5px 0 13px;margin-bottom:7px}.tabs button{white-space:nowrap}.tabs .active{background:#522d3d;border-color:#9e6379}.field{display:grid;gap:5px;color:#e7d8df;font-size:13px;margin:10px 0}.field input,.field textarea,.field select,input[type=search]{width:100%;min-width:0;background:#171317;color:var(--ink);border:1px solid #59454f;border-radius:7px;padding:8px 10px}.field textarea{min-height:92px;resize:vertical}.field input[type=file]{font-size:12px}.lyrics textarea{min-height:112px}.muted{color:var(--muted)}.hint{margin:8px 0}.tight{margin-top:10px}.timer{font:44px Georgia;color:var(--gold);font-variant-numeric:tabular-nums;margin:12px 0}ol{padding-left:22px;color:#e5d6db}li+li{margin-top:8px}footer{max-width:1330px;margin:auto;padding:20px 4%;color:#ad96a2;display:flex;gap:15px;justify-content:space-between}footer span{letter-spacing:0;font-weight:400}dialog{width:min(530px,calc(100% - 30px));background:#241c24;color:var(--ink);border:1px solid #795667;border-radius:14px;padding:22px}dialog::backdrop{background:#0c0812bb}audio{width:100%;height:37px;margin-top:8px}progress{accent-color:var(--rose);width:100%;height:6px;margin:8px 0}.empty{border-style:dashed}.template h3,.template p{margin-bottom:9px}.step{color:var(--gold);font-weight:750}.list{display:grid;gap:8px}
@media(max-width:900px){body{grid-template-columns:175px minmax(0,1fr)}aside{padding-inline:12px}.brand{font-size:16px}.record{right:-80px;opacity:.68}.three{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:650px){body{display:block}aside{position:static;height:auto;border-right:0;border-bottom:1px solid var(--edge);padding:12px 4%}.navlabel,.foot{display:none}nav{display:flex;overflow:auto;margin-top:8px;gap:4px}nav a{white-space:nowrap;font-size:12px;padding:6px 8px}nav a span{width:auto;margin-right:5px}header{height:41px;font-size:11px}main{padding-top:15px}.hero{min-height:255px}.record{right:-150px;opacity:.4;width:315px}.stats,.three{grid-template-columns:repeat(2,minmax(0,1fr))}.two{grid-template-columns:1fr}.stats .card{padding:11px}.section{margin-top:19px}}@media(prefers-reduced-motion:no-preference){button,a{transition:background .15s,border-color .15s}}
.signed-out{display:block}.signed-out aside{display:none}.signed-out main{max-width:980px}.signed-out .card{max-width:550px}.signed-out .hero p{margin-bottom:0}.foot small{overflow-wrap:anywhere}.foot button{margin-top:8px}
#demo-lyrics[hidden]{display:none}

.lyric-preview{white-space:pre-wrap;margin:12px 0;overflow-wrap:anywhere}.arrangement-list article{border-left:3px solid var(--gold)}details{border:1px solid var(--edge);border-radius:8px;padding:12px}summary{cursor:pointer;color:var(--gold)}#memo-status{overflow-wrap:anywhere}

/* The Velvet Room stage identity */
:root{--bg:#100d10;--panel:#1c171b;--edge:#403139;--ink:#fcf3e9;--muted:#c7b8be;--rose:#e9b294;--gold:#e7c58c;--wine:#561d32}
body{background:radial-gradient(ellipse at 80% 0%,#3a172627,transparent 65%),var(--bg)}
aside{background:linear-gradient(160deg,#24151e,#120f13 70%);padding-top:31px}
.brand{font-size:22px}.logo{background:#3a1727;border:1px solid #7a4f45;width:41px;height:47px;border-radius:20px 20px 8px 8px}.logo img{width:31px;height:35px}.brand small{letter-spacing:.2em}
header{min-height:70px;height:auto;gap:14px;flex-wrap:wrap;padding-block:10px;background:#130f13e8;position:sticky;top:0;z-index:10;backdrop-filter:blur(14px)}
.account-actions{display:flex;gap:8px}.account-actions button{font-size:12px}
.card,.row{background:linear-gradient(135deg,#241b21,#191519);box-shadow:0 9px 24px #00000016;border-color:#45313c}
h2{font-size:32px}h3{font-size:23px}.card{padding:23px}.field{font-size:14px;margin-block:15px;gap:8px}.field input,.field textarea,.field select,input[type=search]{padding:12px;border-color:#634754;background:#110e12}
button{min-height:43px;padding:10px 16px;border-radius:9px}.primary{background:linear-gradient(120deg,#f0c5a4,#d9a084);color:#281611;border:1px solid #e8b394;box-shadow:0 4px 15px #0003}
.primary:hover{background:#f4cfb1}button:disabled{opacity:.6;cursor:wait}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid #edca94;outline-offset:4px}
.stage-hero{min-height:395px;padding:46px;isolation:isolate;background:#25151d url("assets/velvet-stage.webp") 58% center/cover no-repeat;border-color:#82533e;border-radius:18px;box-shadow:0 20px 60px #0004}
.stage-hero:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#100b10e6 0%,#160d1199 48%,#110b1020 100%);z-index:-1}
.hero-copy{max-width:530px;position:relative}.stage-hero h1{font-size:clamp(41px,4.5vw,68px);letter-spacing:-.045em}.stage-hero h1 em{color:#efd0a7}.stage-hero p{color:#e3d2cb;max-width:330px;font-size:15px;line-height:1.7}
.stage-light{position:absolute;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 85% 6%,#efbb6622,transparent 54%)}
.stage-caption{font:600 10px system-ui;letter-spacing:.22em;color:#d7b67f;display:flex;align-items:center;gap:8px;margin-top:36px}
.live-dot{width:6px;height:6px;border-radius:50%;background:#d9b77a;box-shadow:0 0 10px #d9b77a}.stats .card{border-top:2px solid #a87854;padding:20px}.stats strong{color:#efd3b1}
.tabs{gap:9px;border-bottom:1px solid var(--edge);padding-bottom:16px}.tabs button{background:#171116}.tabs .active{background:#5a273e;border-color:#b98491;color:#fff3e3;box-shadow:inset 0 -2px #dbb98b}
.auth-layout{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(330px,.85fr);gap:20px;align-items:stretch}
.signed-out main{max-width:1270px;padding-top:33px}.signed-out .card{max-width:none}.signed-out .hero{min-height:620px}
.signed-out .hero-copy{align-self:flex-start;padding-top:38px}.signed-out .stage-hero{background-position:63% center;padding:42px}.signed-out .hero p{max-width:300px;margin-top:20px}
.auth-card{padding:34px;display:flex;flex-direction:column;justify-content:center;border-color:#65404f}.auth-card h2{font-size:40px;letter-spacing:-.04em}.auth-card .hint{font-size:14px;line-height:1.65;margin-block:14px}
.auth-card form>[type=submit]{width:100%;margin-top:18px;min-height:48px}.password-wrap{display:flex;background:#110e12;border:1px solid #634754;border-radius:8px}.password-wrap input{border:0;background:none;flex:1}.password-wrap button{background:transparent;border:0;min-width:60px;color:var(--gold);font-size:12px}
.auth-options{display:grid;gap:4px;margin-top:16px;justify-items:start}.text-button{border:0;background:none;padding:7px 0;min-height:34px;color:#e3c6a9;text-align:left;font-size:13px;text-decoration:underline;text-underline-offset:4px}.text-button:hover{background:none;color:#fff0dc}
.auth-footnote{border-top:1px solid #4a333f;padding-top:21px;margin-top:22px;color:#bca1ad;letter-spacing:.12em;font-size:9px}
.welcome-strip{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin:35px 4px 15px}.welcome-strip span{color:var(--gold);letter-spacing:.14em;font-size:11px}.welcome-strip h3{margin:8px 0;font-size:25px}.welcome-strip p{font-size:13px;line-height:1.7}
.video-card{display:grid;grid-template-columns:90px minmax(0,1fr);gap:20px;align-items:center}.video-play{height:90px;width:90px;border:1px solid #b58559;border-radius:50%;background:linear-gradient(120deg,#542539,#23151e);color:#f1d2a1;font-size:23px}.video-card h3{font-size:24px}.video-card p{margin:7px 0}.video-frame{width:100%;aspect-ratio:16/9;border:0;border-radius:9px}dialog:has(.video-frame){width:min(900px,calc(100% - 30px))}
@media(prefers-reduced-motion:no-preference){.stage-light{animation:stage-glow 9s ease-in-out infinite alternate}@keyframes stage-glow{from{opacity:.35}to{opacity:1}}}
@media(max-width:950px){.auth-layout{grid-template-columns:1fr 1fr}.signed-out .stage-hero{padding:28px}.auth-card{padding:26px}.stage-hero h1{font-size:48px}}
@media(max-width:650px){header{position:static;gap:8px;min-height:50px}header #saved{max-width:55%;font-size:10px}.account-actions{width:100%;justify-content:flex-end}.account-actions button{min-height:32px;padding:5px 9px}.auth-layout{grid-template-columns:1fr;gap:15px}.signed-out main{padding-top:16px}.signed-out .stage-hero{min-height:350px;background-position:62% 50%;padding:29px}.signed-out .hero-copy{padding-top:0}.signed-out .stage-hero h1{font-size:44px}.signed-out .hero p{max-width:235px;font-size:13px}.stage-caption{margin-top:25px}.auth-card{padding:26px}.auth-card h2{font-size:35px}.welcome-strip{grid-template-columns:1fr;gap:24px;padding:8px 10px}.welcome-strip>div{border-left:1px solid #76503c;padding-left:18px}.stage-hero{min-height:350px;padding:29px}.stage-hero h1{font-size:42px}.hero-copy{max-width:290px}.card{padding:19px}.stats .card{padding:14px}.video-card{grid-template-columns:64px minmax(0,1fr);gap:14px}.video-play{height:64px;width:64px}.field input,.field textarea,.field select{font-size:16px}}

.auth-message:empty{display:none}.auth-message{font-size:14px;line-height:1.65;margin:14px 0;padding:12px 14px;border:1px solid #715443;border-radius:8px;background:#30231e;color:#f6d9b7}.auth-message[data-state="error"]{border-color:#c77f86;background:#3a1d29;color:#ffe1e5}.auth-message:focus{outline:2px solid #efcba3;outline-offset:3px}

.footer-nav{display:flex;gap:18px;align-items:center;flex-wrap:wrap;margin:0}.footer-nav a{padding:4px;font-size:12px;letter-spacing:0}.button-link{display:inline-flex;align-items:center;justify-content:center;min-height:43px;padding:10px 16px;border:1px solid #674452;border-radius:9px;font-size:14px;letter-spacing:0;font-weight:500}.account-actions .button-link{min-height:36px;font-size:12px;padding:7px 12px}.faq-list{display:grid;gap:12px}.faq-item{background:linear-gradient(135deg,#241b21,#191519);padding:19px 22px;border-color:#513644}.faq-item summary{font-size:16px;line-height:1.6;color:#f0d2b0}.faq-item p{margin-top:15px;line-height:1.85;max-width:850px;font-size:15px}.faq-item[open]{border-color:#b68563}.about-story{max-width:830px;padding:12px 6px}.about-story h2{font-size:38px;margin-bottom:18px}.about-story p{font-size:17px;line-height:1.9;margin:14px 0}.about-purpose{display:grid;grid-template-columns:1fr 1.4fr;gap:35px;padding:35px}.about-purpose p{font-size:15px;line-height:1.9;margin-bottom:15px}#profile-status{overflow-wrap:anywhere}.about-hero{margin-bottom:35px}.field input[readonly]{color:var(--muted)}
@media(max-width:650px){.about-purpose{grid-template-columns:1fr;padding:24px;gap:18px}.about-story h2{font-size:32px}.about-story p{font-size:15px}.footer-nav{gap:10px}.faq-item{padding:16px}.faq-item summary{font-size:15px}.faq-item p{font-size:14px}}

.workspace-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:14px;border-bottom:1px solid var(--edge);padding-bottom:14px}.workspace-nav button{display:flex;align-items:center;justify-content:center;gap:10px;min-width:0;background:#1a1319;color:#d6c3cd}.workspace-nav button span{font-size:10px;color:#b68c69;letter-spacing:.1em}.workspace-nav button.active{background:#59283e;border-color:#ba8793;color:#fff4e5;box-shadow:inset 0 -2px #edc593}.tool-nav{display:flex;flex-wrap:wrap;gap:6px;padding:12px 0}.tool-nav button{background:transparent;border:0;color:#cbb8c3;min-height:40px;padding:8px 13px;font-size:13px}.tool-nav button.active{background:#382330;color:#f6d4ad}.workspace-content{margin-top:15px}.first-session h2{margin-bottom:10px}.path-card{position:relative;display:grid;align-content:start;gap:10px;min-height:170px;text-align:left;background:linear-gradient(135deg,#382131,#20151e);border-color:#75515b;padding:20px}.path-card strong{font:27px Georgia,serif;color:#f4d3af}.path-card>span:not(.eyebrow):not(.path-arrow){font-size:13px;line-height:1.7;color:#d2bec8}.path-arrow{position:absolute;right:16px;top:16px;color:#e2b688}.path-card:hover{background:#422738;transform:translateY(-1px)}.guide-steps{display:flex;gap:20px;flex-wrap:wrap;list-style-position:inside;padding:0;margin:14px 0 5px;color:#bdaab4;font-size:12px}.guide-steps li+li{margin-top:0}.guide-steps .done{color:#c3d8b0}.session-guide{border-color:#8a6048;padding:18px 21px;background:linear-gradient(100deg,#312119,#261b23)}.session-guide h3{font-size:24px}
@media(max-width:650px){.workspace-nav{gap:5px;position:sticky;top:0;z-index:5;background:#100d10f5;padding:10px 0;margin-top:8px}.workspace-nav button{padding:10px 4px;gap:0;font-size:13px;min-height:46px}.workspace-nav button span{display:none}.tool-nav{gap:2px}.tool-nav button{font-size:12px;padding:8px 12px}.first-session .three{grid-template-columns:1fr}.path-card{min-height:125px;padding:18px}.path-card strong{font-size:25px}.guide-steps{display:grid;gap:7px}.session-guide{padding:17px}.session-guide h3{font-size:23px}}
/* A quieter writing desk, with the stage reserved for the welcome. */
body.in-song{background:var(--bg)}.in-song .card,.in-song .row{background:#1d181d;box-shadow:none}.resume-card{display:flex;align-items:center;justify-content:space-between;gap:24px;border-left:3px solid var(--gold)}.resume-card p{max-width:670px}.welcome-card{background:linear-gradient(110deg,#3b202e,#1c161d)}.feedback-note{padding:16px;border:1px solid var(--edge);border-radius:9px}.feedback-note.resolved{border-style:dashed}.feedback-note.resolved>p{color:#a5b69b}.feedback-note strong{font-size:14px}.feedback-note .muted{font-size:12px}#studio-player{position:fixed;z-index:20;bottom:14px;left:calc(235px + 4%);right:4%;padding:14px 20px;background:#2d1d29f5;border:1px solid #b48762;border-radius:13px;box-shadow:0 10px 45px #0008;backdrop-filter:blur(15px)}#studio-player[hidden],#sync-issue[hidden]{display:none}#studio-player strong{font-size:14px;overflow-wrap:anywhere}#studio-player audio{margin:6px 0}#studio-player p{font-size:12px}.has-player .shell{padding-bottom:180px}#sync-issue{position:relative;grid-column:1/-1;background:#442626;border-block:1px solid #e0a489;padding:18px 5%;z-index:15}#sync-issue p{font-size:13px;color:#f3d6cd;margin:8px 0}#sync-issue .actions{margin:10px 0}.feedback-note .lyric-preview{white-space:pre-wrap}dialog:has(#welcome-video),dialog:has([data-action="example-copy"]){width:min(850px,calc(100% - 30px));max-height:90dvh;overflow:auto}#welcome-video{height:auto;display:block;background:#100d10}
@media(max-width:900px){#studio-player{left:calc(175px + 3%);right:3%}}@media(max-width:650px){.resume-card{align-items:stretch;flex-direction:column;gap:14px}.resume-card .button-link{width:100%}#studio-player{left:10px;right:10px;bottom:max(10px,env(safe-area-inset-bottom));padding:12px}.has-player .shell{padding-bottom:195px}#sync-issue{padding:18px 5%}.feedback-note .spread{align-items:start}.feedback-note .actions button{min-height:44px}}
#sync-issue{position:fixed;top:70px;left:235px;right:0;max-height:45dvh;overflow:auto;box-shadow:0 15px 40px #0008;z-index:25}@media(max-width:900px){#sync-issue{left:175px}}@media(max-width:650px){#sync-issue{top:0;left:0;max-height:55dvh}}
