.activity-picker{max-width:350px;margin-bottom:22px}.activity-picker label{margin-top:0}#songStudio>p{font-size:14px;line-height:1.7;color:#65756c}#songResults{margin-top:20px}#songResults h2{font-size:32px;margin-bottom:12px}#songReference{padding:18px;background:#eef1e6;border-radius:9px;margin-top:20px}#songReference h3{font-size:13px;letter-spacing:1px}#songReference p{font-size:14px;line-height:1.7}#songStudio .primary{align-self:flex-start}
input:not([type=checkbox]):not([type=range]):not([type=file]){width:100%;padding:10px;border:1px solid #cfd8c9;border-radius:7px}audio{width:100%;margin:8px 0}.segment{background:#eff2e9;padding:12px;border-radius:8px;margin:12px 0}.segment label{margin-top:0}.segment textarea{margin:7px 0}.segment button{font-size:12px;padding:6px 10px}.compact{gap:6px}.compact button{font-size:11px;padding:8px}.file-label{font-size:12px;padding:10px;border:1px solid #d7ddcf;border-radius:7px}.file-label input{width:100%;margin-top:7px;font-size:11px}#audioReview{border:1px solid #d7ddcf;border-radius:9px;padding:13px;margin:12px 0}#results .small{margin:7px 0}button[hidden],[hidden]{display:none!important}
:root{font-family:'DM Sans',sans-serif;color:#243e39;background:#f5f3eb}*{box-sizing:border-box}body{margin:0}header{height:88px;border-bottom:1px solid #dcded4;display:flex;align-items:center;justify-content:space-between;padding:0 5vw}header a{color:inherit;text-decoration:none;font-size:23px}header span,.eyebrow,.step{font-size:11px;letter-spacing:2px;font-weight:700}button,input,textarea,select{font:inherit}button{cursor:pointer;border:1px solid #cbd2c7;border-radius:8px;padding:12px 17px;background:#fbfaf6;color:#243e39}button:hover{background:#e5eadf}button:disabled{opacity:.45;cursor:default}.primary{background:#294b40;color:white;border-color:#294b40}.primary:hover{background:#3e6555}main{max-width:1400px;margin:auto;padding:48px 5vw}.intro{max-width:720px;margin-bottom:40px}h1{font-family:'Playfair Display',Georgia,serif;font-size:clamp(44px,5.4vw,72px);font-weight:500;line-height:1.12;margin:20px 0}h1 em{color:#778765}.intro p{max-width:560px;line-height:1.7;color:#65756c}.badge{display:inline-block;border:1px solid #d3d9c9;border-radius:20px;font-size:12px;padding:7px 12px}.studio{display:grid;grid-template-columns:350px 1fr;gap:22px}aside,.stage{border:1px solid #d7ddcf;background:#fdfcf8;border-radius:15px;padding:27px}h2{font-family:'Playfair Display',Georgia,serif;font-weight:500;font-size:30px;margin:14px 0 23px}.drop{display:flex;position:relative;flex-direction:column;align-items:center;justify-content:center;border:1px dashed #a4b39a;border-radius:10px;min-height:140px;background:#eff2e9;font-size:27px;gap:10px;cursor:pointer}.drop strong{font-size:14px}.drop small{font-size:11px;color:#647366}.drop input{position:absolute;inset:0;opacity:0;width:100%;cursor:pointer}.small{font-size:12px;line-height:1.6;color:#6a786d}label{display:block;font-size:12px;font-weight:600;margin:17px 0 8px}textarea,select{width:100%;border:1px solid #cfd8c9;border-radius:7px;background:white;padding:11px;color:#304439}textarea{resize:vertical;line-height:1.55}.step{color:#829172;margin-top:7px}aside .primary{width:100%;margin-top:12px}.check{display:flex;align-items:center;gap:8px}input[type=range]{width:100%}.stage{display:flex;flex-direction:column;min-width:0}.stagehead{display:flex;justify-content:space-between;gap:10px}#progress{font-size:12px;color:#71816f}.scene{background:#eef1e6;border-radius:12px;min-height:330px;margin-top:25px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;padding:35px}.scene h2{font-size:clamp(28px,3vw,42px);line-height:1.4;white-space:pre-line}.scene p{color:#687865;font-size:14px}.controls{display:flex;gap:9px;flex-wrap:wrap;margin:20px 0}#response{border-top:1px solid #dee3d7}.results{padding:20px;background:#edf2e9;border-radius:10px}.results h3{margin-top:0}.resultline{border-top:1px solid #cdd8c5;padding:12px 0;font-size:14px;line-height:1.7}details{margin-top:22px;font-size:13px}summary{cursor:pointer}#transcript p{line-height:1.6}footer{font-size:12px;color:#758071;line-height:1.8;margin:28px 0}.castrow{padding:12px 0;border-bottom:1px solid #e4e6de}.castrow b{font-size:13px}.castrow select{margin:5px 0}.castrow button{padding:6px 10px;font-size:12px}:focus-visible{outline:3px solid #b38a4d;outline-offset:3px}@media(max-width:850px){.studio{grid-template-columns:1fr}header span{display:none}main{padding-top:30px}.scene{min-height:280px}header{padding:0 5vw;height:75px}header button{font-size:11px;padding:9px}.intro{margin-bottom:25px}}
.brand{display:flex;align-items:center;gap:12px}.brand img{object-fit:contain}.brand span{display:block;letter-spacing:0;font-size:22px}.brand small{display:block;font-family:Georgia,serif;font-size:12px;font-weight:400;margin-top:3px}.header-note{color:#8d666a}header{background:#fffaf4;border-color:#e5d9cd}:root{color:#35262a;background:#f6efe6;font-family:Arial,sans-serif}main{max-width:1400px;padding-top:35px}.intro{max-width:none;display:grid;grid-template-columns:1fr 310px;align-items:center;gap:40px;margin-bottom:35px}.intro h1{font-family:Georgia,serif;font-size:clamp(48px,5.2vw,74px);letter-spacing:-2px}.intro h1 em{color:#7c2d3a}.intro p{color:#715c5c;max-width:590px}.eyebrow,.step{color:#947134}.mascot{margin:0;text-align:center}.mascot img{width:290px;height:300px;object-fit:contain}.mascot figcaption{font-size:12px;color:#816968}.hero-badges{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0}.badge{border-color:#dfcbb5;background:#fffcf6;color:#775143}.intro button{border:0;background:#f0e0d0;color:#7c2d3a;font-weight:700}.worksteps{display:flex;gap:12px;justify-content:space-between;margin:20px 0 24px;border-top:1px solid #dfd0c2;border-bottom:1px solid #dfd0c2;padding:18px 0}.worksteps a{color:#725b59;font-size:12px;text-decoration:none;font-weight:600}.activity-picker{max-width:none;display:grid;grid-template-columns:90px 310px 1fr;align-items:center;gap:14px;margin-bottom:24px}.activity-picker p{margin:0}.activity-picker label{margin:0}.studio{grid-template-columns:350px 1fr;gap:24px}aside,.stage{background:#fffaf4;border-color:#e4d6c8;box-shadow:0 8px 30px #7c2d3a06}.stage{align-self:start;position:sticky;top:20px}button{color:#643a41;border-color:#ddcbbd;background:#fffaf4;min-height:42px}button:hover{background:#f5e9dd}.primary{background:#7c2d3a;border-color:#7c2d3a;color:#fff}.primary:hover{background:#993d4c}.drop,.scene,#songReference,.results,.segment{background:#f4eade;border-color:#c3a781}.scene{background:radial-gradient(ellipse at top,#fff7e8,#f1e0d0);border:1px solid #e8d6bf;min-height:350px}.scene h2{color:#56323a;font-family:Georgia,serif}.scene p,.intro p,#songStudio>p,.small{color:#786463}.scene .eyebrow{color:#967341}.stagehead .step{color:#9a7540}h2{font-family:Georgia,serif;color:#513339}input,select,textarea{accent-color:#7c2d3a}textarea,select,input:not([type=checkbox]):not([type=range]):not([type=file]){border-color:#ddcebf;color:#483539}.check{line-height:1.6;align-items:flex-start}.check input{flex:0 0 auto;margin-top:3px}.retention-panel{padding:14px;border:1px solid #e4d6c8;background:#fff4e8;border-radius:10px;margin:20px 0}.retention-panel summary{font-weight:700;color:#7c2d3a}.camera-label{border-style:dashed;color:#7c2d3a}.notice{background:#fffaf4;border:1px solid #dbc4a8;padding:20px;border-radius:12px;margin-bottom:20px}.notice p{font-size:14px;line-height:1.7}.page-row{display:flex;align-items:center;gap:5px;margin:7px 0}.page-row span{flex:1;min-width:0;overflow-wrap:anywhere;font-size:12px}.page-row button{padding:4px 9px;min-height:34px}.policy-page{max-width:850px}.policy-page p{line-height:1.8}.policy-page a,footer a,a.small{color:#7c2d3a}footer{color:#8c756b}:focus-visible{outline-color:#c59835}#listen{border-color:#c69b44;background:#fff3cc}.activity-picker select{background:#fffaf4}
@media(max-width:950px){.intro{grid-template-columns:1fr 220px;gap:15px}.mascot img{width:210px;height:225px}.studio{grid-template-columns:310px 1fr}aside,.stage{padding:20px}.activity-picker{grid-template-columns:65px 260px}.activity-picker p{grid-column:2}}@media(max-width:850px){header{height:auto;min-height:75px;gap:10px;padding-top:12px;padding-bottom:12px}.brand span{display:block;font-size:17px}.brand small{font-size:10px}.brand img{width:40px;height:40px}.header-note{display:none}.studio{grid-template-columns:1fr}.stage{position:static}.activity-picker{grid-template-columns:1fr;gap:8px}.activity-picker p{grid-column:auto}.activity-picker select{max-width:500px}.intro{grid-template-columns:1fr 130px;gap:4px}.intro h1{font-size:46px;letter-spacing:-1.6px}.intro .eyebrow{font-size:9px;letter-spacing:1px}.intro p{font-size:13px}.mascot img{width:125px;height:170px}.mascot figcaption{font-size:10px}.hero-badges{gap:5px}.badge{font-size:10px;padding:6px 8px}.worksteps a{font-size:10px}.worksteps{gap:8px}.stage .controls button{flex:1 1 auto}.scene{padding:22px;min-height:260px}main{padding:25px 5vw}.header-note{display:none}.compact button{font-size:12px}.policy-page h1{font-size:42px}}@media(max-width:420px){header button{max-width:95px;font-size:10px;padding:8px}.intro{grid-template-columns:1fr 96px}.mascot img{width:96px;height:150px}.intro h1{font-size:42px}.intro p{max-width:250px}.mascot figcaption{max-width:95px}.intro button{font-size:11px;padding:11px}.hero-badges{max-width:250px}.studio aside,.stage{padding:18px}.worksteps a{font-size:9px}.scene h2{font-size:27px}}

@media(max-width:420px){.worksteps a{font-size:11px;line-height:1.5;min-height:35px;flex:1}}

/* A focused workspace on phones; side-by-side setup and practice on larger screens. */
.worksteps{padding:8px;border:1px solid #dfd0c2;background:#fffaf4;border-radius:13px;gap:6px;scroll-margin-top:12px}
.worksteps button{flex:1;border:0;background:transparent;font-size:13px;font-weight:700;min-height:48px;padding:12px;color:#786463}
.worksteps button[aria-current=step]{background:#7c2d3a;color:#fff;box-shadow:0 3px 8px #7c2d3a18}
.setup-summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 4px;margin-bottom:20px}
.setup-summary p{font-size:13px;line-height:1.6;margin:0;color:#786463}
.setup-summary p[data-ready=true]{color:#546d42}
.setup-summary button{font-size:12px;flex-shrink:0}
#choicesPanel{border-top:1px solid #e4d6c8;padding-top:14px;margin-top:24px}
#choicesHeading{font-size:24px;margin-bottom:12px}
.advanced-options{padding:14px;border:1px solid #e4d6c8;border-radius:10px}
.advanced-options summary{line-height:1.6;font-weight:700;color:#7c2d3a}
#importPanel,#choicesPanel,.stage{scroll-margin-top:20px}
#goRehearse{margin-bottom:8px}
@media(max-width:850px){
  .worksteps{position:sticky;top:0;z-index:5;margin-top:16px;box-shadow:0 4px 20px #5a2a3010;border-radius:0 0 12px 12px}
  .worksteps button{font-size:12px;line-height:1.4;padding:10px 6px;min-height:54px;touch-action:manipulation}
  .setup-summary{display:block;padding:0 2px;margin-bottom:16px}
  .setup-summary button{margin-top:10px}
  #choicesPanel{border:0;padding:0;margin:0}
  #importPanel,#choicesPanel,.stage{scroll-margin-top:88px}
  input,textarea,select{font-size:16px}
  button,.file-label{min-height:44px}
  .castrow button{min-height:44px}
  .stage .controls{gap:8px}
  .stage .controls .primary{flex-basis:100%}
}
