*{box-sizing:border-box}body{margin:0;background:#f7f7f1;color:#203e36;font:16px/1.5 -apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}header,main{max-width:700px;margin:auto;padding:24px 32px}header{padding-bottom:0}a{color:inherit;text-underline-offset:3px}header a{font-size:13px;text-decoration:none}.eyebrow{font-size:10px;font-weight:650;letter-spacing:.2em;color:#7b886f;margin:0 0 12px}h1{font-size:clamp(34px,6vw,48px);font-weight:550;line-height:1.08;letter-spacing:-.045em;margin:0 0 15px}.lead{color:#6c7966;font-size:14px;max-width:440px;margin:0 0 24px}.soundtracks{display:grid;grid-template-columns:1fr 1fr;gap:12px}button{font:inherit;cursor:pointer;color:inherit}button:disabled{cursor:default;opacity:.5}.soundtrack-card{position:relative;border:1px solid #dfe4d5;background:#fffefa;border-radius:19px;padding:16px 18px;text-align:left;transition:background .2s,border-color .2s;min-height:157px}.soundtrack-card[aria-pressed=true]{background:#e9efdf;border-color:#829b67;box-shadow:inset 0 0 0 1px #829b67}.soundtrack-card[aria-pressed=true]::after{content:'✓';position:absolute;right:14px;top:12px;border-radius:50%;background:#34523d;color:white;width:22px;height:22px;text-align:center;font-size:13px;line-height:22px}.soundtrack-card:hover{border-color:#829b67}.soundtrack-card strong{display:block;font-size:17px;font-weight:600;letter-spacing:-.02em;margin-top:12px}.description{display:block;font-size:12px;color:#6c7966;margin-top:4px}.sound-art{display:flex;align-items:center;gap:4px;height:35px;color:#8fa777}.sound-art i{display:block;width:6px;border-radius:8px;height:18px;background:currentColor}.sound-art i:nth-child(2),.sound-art i:nth-child(4){height:29px}.sound-art i:nth-child(3){height:35px}.calm .sound-art{color:#7ea59b}.calm .sound-art i{height:7px;width:10px}.calm .sound-art i:nth-child(2),.calm .sound-art i:nth-child(4){height:13px}.calm .sound-art i:nth-child(3){height:19px}.beats .sound-art{color:#b48372}.beats .sound-art i:nth-child(even){height:13px}.african .sound-art{color:#b9a15d}.african .sound-art i{width:12px;border-radius:50%;height:12px}.african .sound-art i:nth-child(even){height:25px}.quiet-choice{display:flex;align-items:center;justify-content:center;gap:8px;border:0;background:transparent;margin:10px auto 0;padding:10px;min-height:44px;font-size:13px;color:#63765c}.quiet-choice[aria-pressed=true]{font-weight:650;color:#244330;text-decoration:underline;text-underline-offset:4px}.quiet-choice span{font-size:22px}.sample{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid #dfe4d5;margin-top:14px;padding-top:18px}.sample strong{font-size:13px;font-weight:600}.sample p{font-size:12px;color:#6c7966;max-width:310px;margin:4px 0 0}.sample button{flex-shrink:0;border:1px solid #d4deca;background:#fffefa;border-radius:24px;min-height:44px;padding:10px 16px;font-size:12px}.preview-credit{font-size:11px;color:#6c7966;margin:8px 0 0}.save-row{margin-top:22px}.primary{width:100%;border:0;border-radius:14px;background:#244532;color:#fff;min-height:52px;font-weight:550;font-size:15px}#save-status{font-size:12px;color:#697961;margin:8px 0 0}#save-status:empty{display:none}footer{font-size:11px;color:#7a8571;margin-top:16px;line-height:1.7}footer a{margin-left:6px;white-space:nowrap}[hidden]{display:none!important}button:focus-visible,a:focus-visible{outline:3px solid #bc744c;outline-offset:3px}@media(max-width:440px){main{padding:18px 20px}header{padding:18px 20px 0}.soundtrack-card{padding:14px 12px;min-height:155px}.soundtrack-card strong{font-size:15px}.description{font-size:11px}.sample{gap:12px}.sample button{padding:9px 12px}h1{font-size:36px}.lead{font-size:13px}}@media(prefers-reduced-motion:reduce){.soundtrack-card{transition:none}}
.save-row{position:sticky;bottom:0;z-index:1;background:#f7f7f1;padding:12px 0;margin-top:10px}

/* The soundtrack chooser is a single, fitted app panel. */
body{height:100dvh;display:flex;flex-direction:column;overflow:hidden}
header{flex:0 0 auto;width:100%;padding:12px 24px 0}
main{flex:1;min-height:0;width:100%;padding:18px 24px;display:flex;flex-direction:column;gap:10px}
.soundtrack-welcome{flex:1 1 115px;min-height:90px;max-height:180px;border-radius:18px;padding:20px 24px;background:linear-gradient(90deg,#102a21c9,#102a2140),url('/images/find-your-rhythm.webp') center 56%/cover;display:flex;flex-direction:column;justify-content:center;color:white}
.soundtrack-welcome .eyebrow{color:#e3e7db;margin:0 0 5px}.soundtrack-welcome h1{font:400 clamp(28px,5vw,38px)/1.15 Georgia,serif;letter-spacing:-.04em;margin:0}
.lead{font-size:12px;line-height:1.5;margin:0}
.soundtracks{gap:10px;flex:0 0 auto;margin:0}.soundtrack-card{min-height:106px;padding:12px 16px}
.sound-art{height:20px;transform:scale(.65);transform-origin:left center}.soundtrack-card strong{margin-top:6px;font-size:15px}.description{font-size:11px}
.quiet-choice{margin:0 auto;padding:4px 10px;min-height:36px}
.sample{margin:0;padding-top:10px;gap:10px}.sample p{font-size:11px}.sample button{min-height:40px}
.save-row{position:static;margin:0;padding:0}.primary{min-height:46px}.preview-credit{margin:0}footer{margin:0;font-size:10px}
@media(max-height:670px){main{padding:10px 16px;gap:7px}.soundtrack-welcome{min-height:68px;max-height:85px;padding:12px 16px}.soundtrack-welcome h1{font-size:27px}.soundtrack-card{min-height:86px;padding:10px 12px}.sound-art{display:none}.soundtrack-card strong{margin:0}.lead{display:none}footer{font-size:9px}}
@media(max-height:480px){body{overflow:auto}main{flex:none}.soundtrack-welcome{display:none}}

.soundtrack-card[aria-pressed=true]::after{width:12px;height:12px;line-height:12px;font-size:8px;right:8px;top:8px}.soundtrack-card strong{padding-right:8px}

.collection-choice{display:flex;align-items:center;justify-content:space-between;gap:12px;font-weight:650;font-size:14px;padding:10px 12px;border:1px solid #d5dfd7;border-radius:14px;background:#f1f5ef}.collection-choice select{max-width:180px;border:0;border-radius:9px;padding:8px;color:#203e36;background:white;font:inherit}

/* All six soundtracks form one exclusive choice grid. */
.soundtrack-card.wahala .sound-art{color:#b48372}
.soundtrack-card.quiet .sound-art i{height:2px}
@media(max-height:670px){.soundtrack-card{min-height:74px;padding:8px 12px}.soundtracks{gap:8px}.soundtrack-card strong{font-size:14px}.description{font-size:10px}}
