/* ficklestudio26 · Sound tools (builds on /timer/timer.css) */
.m-bpm { font:800 clamp(80px,24vw,200px)/1 system-ui,sans-serif; color:#d9480f; font-variant-numeric:tabular-nums; display:block; }
.m-name { font:700 clamp(18px,3.4vw,28px) system-ui,sans-serif; color:#5b5b66; display:block; margin-bottom:6px; }
.m-dots { display:flex; gap:clamp(8px,3vw,18px); justify-content:center; margin:14px 0; }
.dot { width:clamp(26px,7vw,44px); height:clamp(26px,7vw,44px); border-radius:50%; background:#e8e8ec; transition:background .05s; }
.dot.first { border:3px solid #e8590c; }
.dot.on { background:#40c057; } .dot.first.on { background:#e8590c; }
.m-row { display:flex; gap:10px; justify-content:center; align-items:center; flex-wrap:wrap; margin:10px 0; }
.m-row input[type=range] { width:min(80%,420px); accent-color:#e8590c; }
.m-row label, .n-form label { display:grid; gap:3px; font:700 12px system-ui,sans-serif; color:#5b5b66; text-transform:uppercase; letter-spacing:.05em; text-align:left; }
.m-row select, .n-form select { padding:10px; border:2px solid #e8e8ec; border-radius:10px; font:600 17px system-ui,sans-serif; background:#fff; }
.n-form { display:flex; gap:14px; justify-content:center; flex-wrap:wrap; margin:12px 0; }
.n-form input[type=range] { width:200px; accent-color:#e8590c; }
.n-status { font:700 clamp(18px,4vw,28px) system-ui,sans-serif; color:#d9480f; min-height:1.4em; }
.btn.big { font-size:22px; padding:16px 38px; min-width:180px; }
