/* Shared, quiet musical canvas. Keep notation and touch targets readable. */
[hidden]{display:none!important}
body{background:#f5efe6;color:#243b32}
button,a,summary,input,select{touch-action:manipulation}
button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid #8e3b46!important;outline-offset:3px}
button{min-height:44px}button:disabled{opacity:.55}
#pilotBar{flex-wrap:wrap;gap:8px!important;padding:8px 12px!important}#pilotBar button{position:static!important;margin:0!important}#pilotBar a{margin-right:auto}
.reviewOptions summary,.missionOptions summary,.moreIdeas summary,#journeyHelp>summary{list-style:none;border:1px solid #cbd4ca;border-radius:12px;padding:10px 12px;min-height:44px;background:#fffdf8;color:#243b32}
.reviewOptions summary::before,.missionOptions summary::before,.moreIdeas summary::before,#journeyHelp>summary::before{content:'＋';margin-right:8px;font-weight:700}
.reviewOptions[open]>summary::before,.missionOptions[open]>summary::before,.moreIdeas[open]>summary::before,#journeyHelp[open]>summary::before{content:'−'}
summary::-webkit-details-marker{display:none}
.reviewOptions label{justify-content:flex-start}.reviewOptions input[type=checkbox]{flex:0 0 20px}
body[data-game] main{max-width:760px}body[data-game] .stage{background:#fffdf8;border:1px solid #d8bb87!important;border-radius:24px;box-shadow:0 6px 22px #243b3209!important;margin:12px 0}
body[data-game] .modes{background:#e8ece4;padding:5px;border-radius:16px}body[data-game] .modes button{flex:1;border-width:1px;border-radius:12px}
body[data-game] .modes button[aria-pressed=true]{background:#243b32;color:#fff;border-color:#243b32}
body[data-game] #cards button:nth-child(1){background:#fbebbf}body[data-game] #cards button:nth-child(2){background:#e7eedc}body[data-game] #cards button:nth-child(3){background:#f5e1ce}body[data-game] #cards button:nth-child(4){background:#f0e0e7}
body[data-game] #cards button small{color:#243b32}body[data-game] .slot b{color:#46604c}
body[data-game=echo] #slots{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}body[data-game=echo] .slot{min-width:0;min-height:110px}
body[data-game=echo] #next{border-color:#8e3b46}body[data-game=echo] #status.success{border-width:2px}
#noteJourney .journeyWelcome .eyebrow,main>.eyebrow,main>.lead{display:none}#noteJourney .promptRow{align-items:center;gap:8px}#journeyProgress{font-size:14px;color:#53685b;margin:6px 0}#questStart img{width:76px;height:76px;object-fit:contain;float:right;margin:0 0 12px 12px}.questStart #questPlay{display:block;width:100%;margin:16px 0 10px}.questStart #questChoose,.questStart #questGuide{font-size:14px;margin:4px 4px 4px 0}
body[data-game=create] .noteChoices{position:static;box-shadow:none;background:#eef1e7}body[data-game=create] .starterChoices{padding:8px}.mixBar{border-color:#c8d0be}.mixBar h3{color:#53685b}.mixInstrumentControls{flex-wrap:wrap}
body[data-game=fruit] main{max-width:820px;margin:auto;padding:12px}body[data-game=fruit] .card{border-radius:24px;padding:18px}body[data-game=fruit] .fruitWelcome img{width:64px;height:64px;object-fit:contain}body[data-game=fruit] .legend{gap:10px}body[data-game=fruit] .legend>div{padding:12px!important}body[data-game=fruit] .chantNote{font-size:15px;line-height:1.5}body[data-game=fruit] .voiceSetup{margin:10px 0}.fruitHelp{background:#f3dfba;color:#243b32;margin:8px 0}.fruitHelpText{font-size:16px;line-height:1.4}
body[data-hub] header,body[data-hub] main,body[data-hub] footer{max-width:960px}body[data-hub] main{padding-top:22px}body[data-hub] h1{font-size:clamp(28px,4vw,40px)}body[data-hub] .art{height:150px}body[data-hub] .content{padding:18px}body[data-hub] h2{font-size:26px}body[data-hub] .content p{margin-bottom:12px}
@media(max-width:600px){body[data-game] main{padding:10px}body[data-game] #cards{grid-template-columns:repeat(2,minmax(0,1fr))}body[data-game=fruit] main{padding:8px}body[data-game=fruit] .card{padding:14px}body[data-hub] header,body[data-hub] main,body[data-hub] footer{padding-left:16px;padding-right:16px}body[data-hub] .tagline{display:none}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important}.celebrate,.happy,.guide-glow,.button{animation:none!important;transition:none!important}.still .fall{animation:none!important}}
