.stage{display:grid;grid-template-columns:minmax(250px,330px) 1fr;gap:20px;margin-bottom:20px;align-items:stretch}
@media (max-width:760px){.stage{grid-template-columns:1fr}}
.headwrap{background:var(--wood2);border:3px solid #120b06;border-radius:14px;padding:10px;box-shadow:0 8px 0 var(--sh),inset 0 0 0 2px rgba(255,255,255,.06);display:flex;align-items:center;justify-content:center}
#head svg{width:100%;max-width:300px;height:auto;margin:0 auto}
.peg{cursor:pointer}.peg .pc{fill:#d9dbdc;stroke:#6e7274;stroke-width:3}
.peg text{font:600 13px Unbounded,sans-serif;fill:#1b1f20;pointer-events:none}
.peg.sel .pc,.peg.hit .pc{stroke:var(--acc);stroke-width:5}
.peg.ok .pc{fill:var(--acc)}
.peg:focus-visible .pc{stroke:var(--link);stroke-width:5}
line.str{stroke:var(--str);stroke-linecap:round}
line.str.live{animation:vibl .09s linear infinite}
@keyframes vibl{0%{transform:translateX(-1px)}50%{transform:translateX(1px)}100%{transform:translateX(-1px)}}
.read{text-align:center;display:flex;flex-direction:column;justify-content:center;gap:8px;margin-bottom:0}
.bn{display:flex;align-items:baseline;justify-content:center;gap:8px}
#nn{font:700 clamp(72px,13vw,120px)/1 Unbounded,sans-serif;min-width:1.1ch}
#oct{font:600 28px Unbounded,sans-serif}
#alt{font-size:18px;color:var(--mute);min-height:24px}
.meter{position:relative;height:46px;border:2px solid var(--edge);border-radius:8px;background:var(--card);overflow:hidden;margin:6px 4px 0;box-shadow:inset 0 2px 6px rgba(0,0,0,.12)}
.meter .ticks{position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0 calc(10% - 1px),var(--line) calc(10% - 1px) 10%)}
.meter .zone{position:absolute;top:0;bottom:0;left:45%;width:10%;background:rgba(224,173,47,.3)}
.meter.ok .zone{background:var(--acc)}
.meter .needle{position:absolute;top:3px;bottom:3px;width:6px;margin-left:-3px;border-radius:3px;background:var(--ink);left:50%;transition:left .09s linear}
.meter.ok .needle{background:var(--accink)}
.scale{display:flex;justify-content:space-between;font-size:13px;color:var(--mute);margin:2px 8px 0}
#status{font:600 16px/1.3 Unbounded,sans-serif;min-height:42px}
#cents{font-size:18px;font-weight:700}#hz{font-size:13.5px;color:var(--mute)}
.mic{min-width:200px;padding:9px 18px;font-weight:700}
.mic.on{background:var(--root);color:var(--rootink)}
.err{color:var(--root);font-weight:600;margin:10px 0 0}
.stepper{display:flex;align-items:center;gap:6px}.stepper b{font:700 20px Unbounded,sans-serif;min-width:62px;text-align:center}
.sheet ul{margin:6px 0 10px;padding-left:20px}.sheet li{margin:4px 0}