.pc-theme-beatforge .ff-hero h1{background:linear-gradient(90deg, var(--ff-forge), var(--ff-spark));color:#0000;-webkit-background-clip:text;background-clip:text}.pc-theme-beatforge .bt-hud{flex-wrap:wrap;justify-content:center;gap:.5rem;margin-top:.8rem;display:flex}.bt-studio{gap:.8rem;display:grid}.bt-bar{border:2px solid var(--ff-outline);background:var(--ff-paper);border-radius:.9rem;flex-wrap:wrap;align-items:center;gap:.7rem .9rem;padding:.7rem .9rem;display:flex}.bt-tempo,.bt-count-pick{align-items:center;gap:.45rem;display:inline-flex}.bt-tempo input[type=range]{accent-color:var(--ff-forge)}.bt-select{border:2px solid var(--ff-outline);background:var(--ff-paper);font:inherit;color:var(--ff-outline);border-radius:.5rem;padding:.25rem .4rem}.bt-counter{text-align:center;font-weight:700}.bt-grid{gap:.35rem;padding-bottom:.2rem;display:grid;overflow-x:auto}.bt-row{grid-template-columns:4.5rem repeat(16,1fr);align-items:center;gap:.25rem;min-width:30rem;display:grid}.bt-row-label{color:var(--ff-forge-text);font-size:.8rem;font-weight:700}.bt-cell{aspect-ratio:1;border:2px solid var(--ff-outline);background:var(--ff-paper);cursor:pointer;border-radius:.35rem;min-width:1.1rem;padding:0;transition:background-color 80ms,transform 60ms}.bt-cell--downbeat{border-color:var(--ff-forge)}.bt-cell--on{background:var(--bt-voice,var(--ff-forge))}.bt-cell--playhead{outline:3px solid var(--ff-spark);outline-offset:1px}.bt-count-row{grid-template-columns:4.5rem repeat(16,1fr);gap:.25rem;min-width:30rem;display:grid}.bt-count{text-align:center;color:var(--ff-slate-text);opacity:.8;font-size:.7rem;font-weight:700}.bt-count--downbeat{color:var(--ff-forge-text);opacity:1}.bt-count--playhead{color:#fff;background:var(--ff-spark);border-radius:.3rem}.bt-wheel-wrap{justify-items:center;gap:.5rem;display:grid}.bt-wheel{width:min(320px,86vw);height:auto}.bt-dot{fill:#fff;stroke:var(--ff-outline);stroke-width:1.5px}.bt-dot--on{fill:var(--bt-voice,var(--ff-forge))}.bt-dot--playhead{stroke:var(--ff-spark);stroke-width:3px}.bt-hand{stroke:var(--ff-spark);stroke-width:3px;stroke-linecap:round}.bt-note-strip{flex-wrap:wrap;align-items:center;gap:.4rem;margin:.5rem 0;display:flex}.bt-note-sum{color:var(--ff-forge-text);font-weight:800}.bt-options{gap:.5rem;margin-top:.6rem;display:grid}.bt-option{text-align:left}.bt-option--right{background:var(--pc-correct-bg);border-color:var(--pc-correct);color:var(--pc-correct);font-weight:700}.bt-option--wrong{background:var(--pc-incorrect-bg);border-color:var(--pc-incorrect);color:var(--pc-incorrect);opacity:.85}.bt-echo-row{flex-wrap:wrap;gap:.3rem;margin:.25rem 0 .4rem;display:inline-flex}.bt-echo-cell{border:2px solid var(--ff-outline);background:var(--ff-paper);cursor:pointer;border-radius:.4rem;width:2.2rem;height:2.2rem;padding:0}.bt-echo-cell--beat{border-color:var(--ff-forge)}.bt-echo-cell--target{cursor:default}.bt-echo-cell--on{background:var(--ff-forge)}.bt-echo-cell--target.bt-echo-cell--on{background:var(--ff-slate)}.bt-check{margin-top:.6rem}@media (prefers-reduced-motion:reduce){.bt-cell{transition:none}}.bt-melrow .bt-cell{min-width:1.6rem}.bt-melrow .bt-row-label{font-variant-numeric:tabular-nums}.bt-guide{border:2px solid var(--ff-forge);background:var(--ff-paper);border-left-width:6px;border-radius:.7rem;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.6rem .9rem;margin-bottom:.6rem;padding:.6rem .9rem;display:flex}.bt-guide[hidden]{display:none}.bt-guide-text{flex:16rem;margin:0;font-weight:600}.bt-cell--target{box-shadow:0 0 0 3px var(--ff-spark);animation:1.1s ease-in-out infinite bt-target-pulse}@keyframes bt-target-pulse{0%,to{box-shadow:0 0 0 3px var(--ff-spark)}50%{box-shadow:0 0 0 6px var(--ff-spark)}}.bt-metro{border:2px solid var(--ff-outline);background:var(--ff-paper);border-radius:.9rem;justify-items:center;gap:.8rem;padding:.8rem;display:grid}.bt-pulse{background:var(--ff-slate);border:3px solid var(--ff-outline);border-radius:50%;width:3.5rem;height:3.5rem;transition:transform 90ms ease-out,background-color 90ms}.bt-pulse--hit{background:var(--ff-forge);transform:scale(1.28)}.bt-beattrack{grid-template-columns:repeat(4,1fr);gap:.5rem;width:min(28rem,90%);display:grid}.bt-beatslot{border-bottom:2px solid var(--ff-outline);height:2.4rem;position:relative}.bt-beatdot{border:2px solid var(--ff-outline);background:var(--ff-paper);border-radius:50%;justify-content:center;align-items:center;width:1.9rem;height:1.9rem;font-size:.85rem;font-weight:800;transition:background-color 80ms,transform 80ms;display:inline-flex;position:absolute;top:.2rem;left:0}.bt-beatdot--on{background:var(--ff-forge);color:#fff;transform:scale(1.12)}.bt-offdot{background:var(--ff-spark);border:2px solid var(--ff-outline);opacity:.85;border-radius:50%;width:1rem;height:1rem;margin-left:-.5rem;position:absolute;top:.55rem}.bt-tap{width:100%;margin-top:.5rem;padding:.9rem;font-size:1.15rem;font-weight:800}.bt-verdict{margin:.6rem 0 .2rem;font-size:1.05rem;font-weight:800}.bt-verdict--ontime{color:var(--pc-correct)}.bt-verdict--early{color:var(--ff-spark)}.bt-verdict--late{color:var(--ff-slate)}.bt-verdict--miss{color:var(--ff-slate-text)}@media (prefers-reduced-motion:reduce){.bt-cell--target{animation:none}.bt-pulse,.bt-beatdot{transition:none}.bt-pulse--hit,.bt-beatdot--on{transform:none}}.bt-staff-stage{text-align:center;padding:.6rem .4rem}.bt-staff-svg{width:min(300px,100%);height:auto;display:inline-block}.bt-staff-line{stroke:var(--ff-anvil);stroke-width:2px}.bt-staff-bar{stroke:var(--ff-anvil);stroke-width:2.5px}.bt-staff-head{fill:var(--ff-anvil);stroke:var(--ff-anvil);stroke-width:1px}.bt-staff-head--open{fill:var(--ff-paper)}.bt-staff-stem{stroke:var(--ff-anvil);stroke-width:2px}.bt-staff-flag{fill:none;stroke:var(--ff-anvil);stroke-width:2.5px;stroke-linecap:round}.bt-staff-dot{fill:var(--ff-anvil)}.bt-staff-options{gap:.6rem;margin-top:.5rem;display:grid}@media (width>=560px){.bt-staff-options{grid-template-columns:1fr 1fr 1fr}}.bt-staff-option{justify-content:center;align-items:center;min-height:88px;padding:.5rem;display:flex}.bt-staff-option--right{background:var(--pc-correct-bg);border-color:var(--pc-correct)}.bt-staff-option--wrong{background:var(--pc-incorrect-bg);border-color:var(--pc-incorrect);opacity:.85}.bt-brief{color:var(--ff-anvil);background:var(--ff-warm);border:2px solid var(--ff-outline);border-left:6px solid var(--ff-forge);border-radius:.5rem;margin:0 0 .7rem;padding:.6rem .8rem;font-size:1.05rem;font-weight:700;line-height:1.35}.bt-compose-echo{margin-top:.6rem}.bt-hstage{text-align:center;justify-items:center;gap:.7rem;display:grid}.bt-hnotes{letter-spacing:.02em;color:var(--ff-forge-text);font-variant-numeric:tabular-nums;margin:0;font-size:1.5rem;font-weight:800}.bt-hear{min-height:44px}.bt-hchoices{gap:.6rem;margin-top:.9rem;display:grid}@media (width>=460px){.bt-hchoices{grid-template-columns:1fr 1fr}}.bt-hchoice{text-align:center;justify-content:center;align-items:center;gap:.4rem;min-height:52px;font-weight:700;display:flex}.bt-hchoice--correct{background:var(--pc-correct-bg);border-color:var(--pc-correct);color:var(--pc-correct);font-weight:800}.bt-hchoice--wrong{background:var(--pc-incorrect-bg);border-color:var(--pc-incorrect);color:var(--pc-incorrect);opacity:.9}.bt-dyn-ladder{grid-template-columns:repeat(6,1fr);align-items:end;gap:.4rem;width:min(340px,90%);margin:.4rem auto;display:grid}.bt-dyn-bar{border:2px solid var(--ff-outline);background:var(--ff-forge);border-radius:.4rem .4rem 0 0}.bt-dyn-bar-label{text-align:center;color:var(--ff-forge-text);font-variant-numeric:tabular-nums;font-size:.85rem;font-weight:800}.bt-dyn-arc{text-align:center;margin:.3rem 0;font-size:2rem}
