@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/fb526027db1fc1ae-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/4da3161b738b07dd-s.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:Fraunces;font-style:normal;font-weight:100 900;font-display:swap;src:url(/_next/static/media/af4bf8399d1aacdf-s.p.woff2) format("woff2");unicode-range:u+00??,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:Fraunces Fallback;src:local("Times New Roman");ascent-override:84.71%;descent-override:22.09%;line-gap-override:0.00%;size-adjust:115.45%}.__className_eb41fe{font-family:Fraunces,Fraunces Fallback;font-style:normal}.__variable_eb41fe{--font-display:"Fraunces","Fraunces Fallback"}@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(/_next/static/media/abfec168c8990f67-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(/_next/static/media/3131c862d4942660-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(/_next/static/media/6a9c36ea9dc9b36b-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(/_next/static/media/e1694c6cb47c173f-s.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:Nunito;font-style:normal;font-weight:200 1000;font-display:swap;src:url(/_next/static/media/ee40bb094c99a29a-s.p.woff2) format("woff2");unicode-range:u+00??,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:Nunito Fallback;src:local("Arial");ascent-override:99.71%;descent-override:34.82%;line-gap-override:0.00%;size-adjust:101.39%}.__className_eef148{font-family:Nunito,Nunito Fallback;font-style:normal}.__variable_eef148{--font-body:"Nunito","Nunito Fallback"}:root{--paper:#f4ead8;--paper-deep:#eadbc3;--ink:#2a1c14;--ink-soft:#5c4638;--terracotta:#c45c26;--terracotta-deep:#9a3f14;--teal:#1f5c56;--teal-soft:#3d8a82;--gold:#e6c07b;--danger:#9b2c2c;--shadow:0 12px 32px rgba(42,28,20,0.12);--radius:22px}*{box-sizing:border-box}body,html{margin:0;min-height:100%}body{font-family:var(--font-body),"Nunito",system-ui,sans-serif;color:var(--ink);background:radial-gradient(1200px 600px at 10% -10%,#ffe7c2 0,transparent 55%),radial-gradient(900px 500px at 110% 10%,#cde8e2 0,transparent 50%),repeating-linear-gradient(180deg,transparent 0,transparent 31px,rgba(42,28,20,.04) 32px),var(--paper)}a{color:var(--teal)}.frame{width:min(640px,calc(100% - 32px));margin:0 auto;padding:24px 0 48px}.topbar{justify-content:space-between;margin-bottom:18px}.topbar,.topbar nav{display:flex;align-items:center;gap:12px}.topbar nav{flex-wrap:wrap;justify-content:flex-end;font-weight:700}.topbar a{color:var(--teal);text-decoration:none}.topbar-email{color:var(--ink-soft);font-size:.9rem;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}button.linkish{background:none;border:0;padding:0;font:inherit;font-weight:700;color:var(--teal);cursor:pointer}.shell{width:min(640px,calc(100% - 32px));margin:0 auto;padding:24px 0 48px}.wordmark{font-family:var(--font-display),Georgia,serif;font-weight:600;font-style:italic;font-size:1.35rem;letter-spacing:-.02em;color:var(--teal);text-decoration:none}.hero,.step{background:rgba(255,250,242,.86);border:1px solid rgba(42,28,20,.08);border-radius:var(--radius);box-shadow:var(--shadow);padding:28px 22px 24px}.hero h1,.step h1{font-family:var(--font-display),Georgia,serif;font-size:clamp(1.8rem,6vw,2.6rem);line-height:1.15;margin:12px 0 10px;font-weight:650}.library-tabs{display:flex;flex-wrap:wrap;gap:10px 20px;margin:12px 0 10px}.library-tab{font-family:var(--font-display),Georgia,serif;font-size:clamp(1.45rem,5vw,2.2rem);line-height:1.15;font-weight:650;background:none;border:0;padding:0 0 6px;color:var(--ink-soft);cursor:pointer;border-bottom:3px solid transparent}.library-tab.on{color:var(--ink);border-bottom-color:var(--teal)}.lede,.step header p{color:var(--ink-soft);font-size:1.05rem;line-height:1.5;margin:0 0 22px}.progress{display:flex;gap:8px;margin:16px 0 20px}.progress span{flex:1 1;height:6px;border-radius:99px;background:var(--paper-deep)}.progress span.on{background:var(--teal)}.field-label,label{display:block;font-weight:700;font-size:.92rem;margin-bottom:6px}input[type=email],input[type=number],input[type=password],input[type=text],select,textarea{width:100%;border:2px solid rgba(42,28,20,.14);border-radius:14px;padding:14px;font:inherit;font-size:1.05rem;background:#fffdf8;color:var(--ink)}textarea{min-height:120px;resize:vertical}button:focus-visible,input:focus,select:focus,textarea:focus{outline:3px solid var(--gold);outline-offset:2px}.field{margin-bottom:16px}.row{display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px}.chips{display:flex;flex-wrap:wrap;gap:8px}.btn,.chip{font:inherit;cursor:pointer;border:0}.chip{min-height:44px;padding:8px 14px;border-radius:999px;background:#fff;border:2px solid rgba(42,28,20,.12);color:var(--ink)}.chip.on{background:var(--teal);border-color:var(--teal);color:#fff}.chip-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:10px;gap:10px}.duration-grid{grid-template-columns:1fr 1fr}.duration-grid .choice{text-align:center;min-height:52px;padding:10px 8px}.choice{min-height:56px;padding:12px 14px;border-radius:16px;text-align:left;background:#fff;border:2px solid rgba(42,28,20,.12);font-weight:700}.choice.on{background:#e7f4f2;border-color:var(--teal);color:var(--teal)}.group-label{margin:18px 0 8px;font-size:.82rem;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-soft);font-weight:800}.step-footer{display:flex;gap:10px;margin-top:22px}.btn{min-height:52px;border-radius:16px;padding:12px 18px;font-weight:800;flex:1 1}a.btn{display:flex;align-items:center;justify-content:center}.btn.primary{background:var(--terracotta);color:#fff}.btn.primary:hover{background:var(--terracotta-deep)}.btn.ghost{background:transparent;border:2px solid rgba(42,28,20,.16)}.btn:disabled{opacity:.55;cursor:not-allowed}.error{color:var(--danger);font-weight:700;margin:0 0 12px}.lyrics-section{margin-bottom:16px;padding:12px;border-radius:16px;background:rgba(255,255,255,.7)}.player audio{width:100%;margin:12px 0 8px}.status{text-align:center;padding:28px 8px}.status .note{font-size:2.4rem}.hint{color:var(--ink-soft);font-size:.92rem;margin:6px 0 0}.welcome-actions{display:flex;flex-direction:column;gap:10px}.library-layout{display:grid;grid-gap:18px;gap:18px}.song-list{gap:8px}.song-list,.song-list .choice{display:flex;flex-direction:column}.song-list .choice{gap:4px}.song-meta{display:block;color:var(--ink-soft);font-size:.85rem;font-weight:700}.library-detail audio{width:100%;margin:12px 0 16px}.library-lyrics{margin:0 0 16px}.library-lyrics summary{cursor:pointer;font-weight:800;color:var(--ink);margin:0 0 10px}.lyric-line{margin:0 0 4px;line-height:1.45}@media (max-width:520px){.row{grid-template-columns:1fr}}