body{font-family:Arial,sans-serif}.shell{max-width:1120px}h1{font-size:28px}.settings{display:flex;gap:14px;flex-wrap:wrap;align-items:end}.settings label{display:flex;gap:6px;flex-direction:column;font-size:14px}.settings input:not([type=checkbox]),select{padding:9px;border:1px solid #c8c2d7;border-radius:8px;font:inherit;max-width:100%}.settings label:has(#title){flex:1}.composer p{font-size:16px;margin:18px 0 10px}#palette{display:flex;gap:9px;flex-wrap:wrap}#palette button{background:white;border:2px solid #d7d0e4;flex:1;min-width:110px;display:flex;flex-direction:column;gap:5px;align-items:center}#palette button[aria-pressed=true]{border-color:#5135b1;background:#eee8ff}#palette b{font-size:22px}#palette small{font-size:14px}.stage{background:white;border:1px solid #d8d1e5;border-radius:18px;margin-top:20px;padding:18px 24px}.stage-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.stage-head h2{font-size:22px;margin:0;overflow-wrap:anywhere}.stage-head span{font-size:14px;color:#685d7c}#phase{text-align:center;font-size:24px;font-weight:bold;color:#463382;margin:16px 0;min-height:30px}#rhythmBoard{display:grid;gap:12px}.rhythm-row{display:grid;grid-template-columns:30px repeat(4,minmax(0,1fr));gap:9px;align-items:center}.row-label{font-size:14px;color:#6f6383}.beat{position:relative;background:#f6f7fb;border:2px solid #dedeea;border-radius:12px;min-height:86px;color:#282039;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:8px 4px}.beat:hover{background:#edf0fc}.beat.current{background:#d9efff;border-color:#2687d0;box-shadow:0 0 0 2px #2687d0}.beat .number{position:absolute;top:5px;left:9px;font-size:13px;color:#716a7f}.marks{display:flex;width:100%;justify-content:space-around;padding:8px 8px 0;font-size:27px;gap:2px}.marks span.hit{color:#147cba;transform:scale(1.35)}.beat small{font-size:12px;color:#766d82;margin-top:5px}#pulse{display:flex;justify-content:center;gap:14px;margin-top:15px}#pulse span{width:32px;height:32px;border-radius:50%;background:#eeeaf7;display:grid;place-items:center;color:#6b5f83}#pulse span.active{background:#5135b1;color:white}.transport{display:flex;gap:9px;flex-wrap:wrap;margin:16px 0}.playback{align-items:center}.playback label:has(input){flex-direction:row;align-items:center}#status{font-size:15px;line-height:1.5;color:#675975;min-height:24px}.files{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:18px 0}.files span{font-size:14px;color:#766783}details{padding:16px;background:white;border-radius:10px;margin-top:15px}details p{font-size:15px;line-height:1.6}[hidden]{display:none!important}.presenting{background:#f2f4fc;min-height:100vh;max-width:none;padding:20px 4vw}.presenting .edit-only,.presenting header,.presenting .title-row{display:none}.presenting .stage{margin-top:0}.presenting .beat{min-height:110px}.presenting #phase{font-size:36px}.presenting .marks{font-size:40px}.presenting .beat small{font-size:16px}@media(max-width:650px){.shell{padding:12px}.settings{gap:9px}.settings label:has(#title){flex-basis:100%}h1{font-size:23px}.title-row{align-items:start}.stage{padding:12px}.stage-head{align-items:start;flex-direction:column}#phase{font-size:20px}.rhythm-row{gap:5px;grid-template-columns:18px repeat(4,minmax(0,1fr))}.marks{font-size:21px;padding:8px 0 0;gap:0}.beat small{font-size:11px}.beat{min-height:80px}.presenting .marks{font-size:23px}.presenting .beat small{font-size:12px}.transport button{flex:1;min-width:135px}#palette button{min-width:40%;padding:8px}.presenting #phase{font-size:25px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

.notation{width:100%;max-width:120px;height:68px;display:block;color:#292337}.notation g.hit{color:#087cb6}#palette .notation{height:50px;width:100px}.beat{min-height:110px}.beat.current .notation{color:#233349}.presenting .notation{max-width:160px;height:90px}@media(max-width:650px){.notation{height:55px}.beat{min-height:98px}.presenting .notation{height:65px}}

.rhythm-tabs{display:flex;gap:10px;margin:10px 0 18px}.rhythm-tabs button[aria-pressed=true]{background:#5135b1;color:white}.training .edit-only{display:none!important}.training .stage{padding-top:24px}.stage{border:0;box-shadow:none}#singleScore{width:100%;margin:25px 0 5px}#singleScore svg{display:block;width:100%;height:auto;max-height:270px}#phase{font-size:34px;margin:16px 0 24px}#pulse{display:none}#levelHelp{font-size:14px;color:#766783}.presenting #rhythmBoard{display:none}.presenting #singleScore{margin-top:8vh}.presenting #singleScore svg{max-height:360px}.presenting .playback{font-size:14px}@media(max-width:650px){#phase{font-size:26px}#singleScore{margin-top:30px}.rhythm-tabs button{flex:1}}
