/* v2.8 Stage 3: clean, keyboard-accessible song arranger. No hardware-style interface. */
.maker-song-sections{padding:20px;margin:18px 0;border:1px solid #bcd4df;border-radius:15px;background:#fff;color:#29485a}
.maker-section-heading{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;margin:0 0 16px}
.maker-section-heading>div>span{font-size:11px;letter-spacing:.14em;font-weight:850;color:#367a96}
.maker-section-heading h3{font-size:23px;line-height:1.2;margin:3px 0 6px}
.maker-section-heading p,.maker-section-empty{font-size:13px;line-height:1.55;margin:3px 0;color:#516d7e}
#makerSectionsSummary{font-size:12px;color:#27546e;background:#edf5f8;padding:9px 12px;border-radius:16px;white-space:nowrap}
.maker-section-cards{display:flex;gap:10px;overflow-x:auto;scroll-snap-type:x proximity;padding:6px 3px 14px;margin:8px -3px;min-height:105px;overscroll-behavior-x:contain}
.maker-section-card{scroll-snap-align:start;display:flex;flex-direction:column;flex:1 0 155px;max-width:245px;min-width:145px;border:2px solid #c7dce4;border-radius:12px;overflow:hidden;background:#f1f7f9;transition:border-color .12s,box-shadow .12s}
.maker-section-card.selected{border-color:#2b7898;box-shadow:0 0 0 2px #b6dce9}
.maker-section-card.playing{outline:3px solid #67b38c;outline-offset:1px}
.maker-section-card[data-role=intro]{background:#eaf4fb}
.maker-section-card[data-role=verse]{background:#f1f6ee}
.maker-section-card[data-role=chorus]{background:#fff5e6}
.maker-section-card[data-role=outro]{background:#f0eff8}
.maker-section-card[data-role=break]{background:#f4f1eb}
.maker-section-select{display:flex;flex:1;flex-direction:column;align-items:flex-start;text-align:left;justify-content:center;width:100%;min-height:90px;gap:4px;padding:12px 13px;cursor:grab;border:none!important;border-radius:0!important;color:#26475a;background:transparent!important;user-select:none}
.maker-section-select:active{cursor:grabbing}
.maker-section-select .maker-section-number{font-size:10px;font-weight:800;letter-spacing:.1em;opacity:.74}
.maker-section-select strong{font-size:19px;line-height:1.2}
.maker-section-select small{font-size:12px;font-weight:650;color:#516b7a}
.maker-section-card-tools{display:flex;justify-content:space-between;border-top:1px solid #cadbe4;background:#fff9;padding:3px}
.maker-section-card-tools button{min-width:43px;min-height:40px;font-weight:800;font-size:17px;border:0;background:transparent;color:#25536d}
.maker-section-card-tools button:disabled{opacity:.3}
.maker-section-card button:focus-visible,.maker-song-sections button:focus-visible,.maker-song-sections select:focus-visible{outline:3px solid #1c7ea3;outline-offset:2px}
.maker-section-tools{display:grid;grid-template-columns:minmax(130px,1fr) minmax(125px,.6fr) minmax(280px,1.8fr);align-items:end;gap:13px;margin:17px 0}
.maker-section-tools label{display:grid;gap:7px;font-size:13px;font-weight:750;color:#335669}
.maker-section-tools select{min-width:0;width:100%;font-size:14px;background:#fff}
.maker-section-actions,.maker-section-next{display:flex;gap:7px;flex-wrap:wrap}
.maker-section-actions button,.maker-section-next button{min-height:43px;font-size:12px;padding:9px 11px}
.maker-section-next{padding:12px 0 3px;border-top:1px solid #d4e3ea}
#makerSectionAdd{background:#205975;color:white;border-color:#205975}
#makerSectionRecord{background:#dbeef3;border-color:#87bbcc}
#makerSectionsStatus{font-size:12px;color:#426278;background:#f0f7fa;border-radius:9px;padding:11px 12px;margin:14px 0 0;line-height:1.6}
.maker-section-limit{padding:9px 12px;border-left:4px solid #bf722f;color:#754d20;font-size:12px;background:#fff6e6;margin-top:12px}
.maker-section-cards:empty{display:none}
@media(max-width:850px){.maker-section-tools{grid-template-columns:1fr 1fr}.maker-section-actions{grid-column:1/-1}}
@media(max-width:480px){.maker-song-sections{padding:14px}.maker-section-heading h3{font-size:21px}.maker-section-card{flex:0 0 170px}.maker-section-tools{grid-template-columns:1fr 1fr;gap:9px}.maker-section-actions{grid-column:1/-1}.maker-section-actions button{flex:1 1 65px}.maker-section-next button{flex:1 1 130px}}
@media(prefers-reduced-motion:reduce){.maker-section-card{transition:none}.maker-section-cards{scroll-snap-type:none}}
