:root{font-family:system-ui,sans-serif;color:#202139;background:#f5f5fc;line-height:1.65}*{box-sizing:border-box}body{margin:0}main,header,footer{max-width:880px;margin:auto;padding:20px}header{border-bottom:2px solid #d2b66d}nav{display:flex;flex-wrap:wrap;gap:18px}a{color:#39338a}h1{line-height:1.25;font-size:clamp(1.8rem,5vw,2.6rem)}section{background:white;border:1px solid #dadae8;border-radius:16px;padding:20px;margin:20px 0}label{display:block;font-weight:650;margin:12px 0 5px}textarea,input,select,button{font:inherit;max-width:100%}textarea,input,select{border:1px solid #77758b;border-radius:6px;padding:10px}textarea{width:100%;min-height:145px}button{color:white;background:#39338a;border:2px solid #d2b66d;border-radius:8px;padding:10px 18px;cursor:pointer;min-height:46px}button:disabled{opacity:.6}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible{outline:3px solid #b35b00;outline-offset:3px}.row{display:flex;gap:12px;flex-wrap:wrap;align-items:end}.row>div{flex:1;min-width:110px}.note{color:#555568;font-size:.95rem}.status{min-height:1.8em;color:#7c3000;overflow-wrap:anywhere}pre{white-space:pre-wrap;overflow-wrap:anywhere}#beats{display:flex;gap:8px;justify-content:center;margin:25px 0}.beat{border:2px solid #68677b;border-radius:50%;width:34px;height:34px;text-align:center}.beat.active{background:#39338a;color:white;outline:3px solid #d2b66d}.big{font-size:1.3rem}output{font-weight:bold}table{width:100%;border-collapse:collapse}td,th{text-align:left;padding:8px;border-bottom:1px solid #ddd;overflow-wrap:anywhere}@media(max-width:400px){main,header,footer{padding:12px}section{padding:14px}.row{gap:8px}button{padding:10px 12px}}@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* R3: DOM owns focus and visual order; compact only this tool's controls. */
.metronome-page #bpm + .row{margin-top:12px}
@media(max-width:400px){
.metronome-page .site-header{padding-top:8px;padding-bottom:8px}
.metronome-page #main{padding-top:8px}
.metronome-page #main > .note{margin:8px 0}
.metronome-page #main > h1{margin:10px 0}
.metronome-page #main > section:first-of-type{margin-top:12px;padding:12px}
.metronome-page label[for=bpm]{margin-top:0}
}