.fm-workshop{--fm-bg:#101820;--fm-plot:#18232e;--fm-text:#e6edf3;--fm-blue:#4da3ff;--fm-amber:#e7b66c;--fm-line:#66707d;background:var(--fm-bg);color:var(--fm-text);border:1px solid var(--fm-line);border-radius:14px;padding:24px!important;scroll-margin-top:110px}
.fm-workshop h2{margin-top:0}.fm-workshop h3{font-family:var(--display);font-size:22px}.fm-workshop p{max-width:75ch}.fm-workshop [hidden]{display:none!important}
.fm-controls{display:grid;grid-template-columns:1fr 1.3fr 1fr;gap:14px;margin:24px 0}.fm-controls label,.fm-time label{font:600 14px/1.4 var(--body-font)}.fm-controls select{display:block;width:100%;min-height:48px;margin-top:8px;background:var(--fm-plot);color:var(--fm-text);border:1px solid var(--fm-line);border-radius:6px;padding:8px;font:14px var(--body-font)}
.fm-status{font:13px/1.6 var(--mono);color:var(--fm-amber);border-left:3px solid var(--fm-amber);padding-left:12px}
.fm-bench{display:grid;grid-template-columns:minmax(170px,.6fr) minmax(0,1.4fr);gap:24px;align-items:start;margin-top:24px}.fm-workshop figure{margin:0;min-width:0}.fm-gauge{background:var(--fm-plot);padding:14px;border-radius:10px}.fm-gauge svg{width:100%;max-height:220px}.fm-workshop figcaption{font:12px/1.6 var(--mono);margin-top:8px;color:var(--fm-text)}
.fm-readout h3{margin:0 0 10px}.fm-readout p{font-size:14px;line-height:1.6}.fm-readout dl{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:16px 0}.fm-readout dl>div{padding-top:8px;border-top:1px solid var(--fm-line)}.fm-readout dt{font:12px/1.5 var(--body-font);color:var(--muted)}.fm-readout dd{margin:5px 0 0;font:700 19px/1.4 var(--mono);overflow-wrap:anywhere}.fm-subtle{color:var(--body)}
.fm-legend{display:flex;flex-wrap:wrap;gap:12px 24px;font:13px/1.5 var(--mono);margin:24px 0 12px}.fm-legend span:first-child{color:var(--fm-blue)}.fm-legend span:last-child{color:var(--fm-amber)}
.fm-charts{display:grid;grid-template-columns:1fr 1fr;gap:18px}.fm-charts svg{width:100%;height:auto;display:block;background:var(--fm-plot);border-radius:8px}.fm-charts text{font:20px var(--mono);fill:var(--fm-text)}.fm-axis{stroke:var(--fm-line);stroke-width:1;fill:none}.fm-own{fill:none;stroke:var(--fm-blue);stroke-width:3;stroke-linecap:round;stroke-linejoin:round}.fm-reference{fill:none;stroke:var(--fm-amber);stroke-width:2;stroke-dasharray:7 5}.fm-own-dot{fill:var(--fm-blue)}.fm-ref-dot{fill:var(--fm-amber)}.fm-pulse-zone{fill:#4da3ff12}.fm-cursor{stroke:var(--fm-text);stroke-width:1;stroke-dasharray:3 3;fill:none}.fm-reference-value{font:12px/1.6 var(--mono);color:var(--body)}
.fm-time{margin:22px 0}.fm-time input{display:block;width:100%;height:44px;accent-color:var(--fm-blue);cursor:ew-resize}.fm-time output{font:600 14px/1.5 var(--mono);display:block}.fm-phase-buttons{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.fm-phase-buttons button{min-height:44px;border:1px solid var(--fm-line);border-radius:5px;padding:9px 12px;color:var(--fm-text);background:var(--fm-plot);font:600 14px var(--body-font);cursor:pointer}
.fm-workshop :is(select,input,button,a,summary):focus-visible{outline:2px solid var(--fm-blue);outline-offset:4px}.fm-next{margin:20px 0;padding:16px 0;border-top:1px solid var(--fm-line);border-bottom:1px solid var(--fm-line)}.fm-next:empty{display:none}.fm-next h3{margin-top:0}.fm-next p{font-size:14px}.fm-next a{display:inline-block;min-height:44px;padding:8px 0;font-weight:700}
.fm-method{font-size:14px;margin:20px 0}.fm-method summary{cursor:pointer;font-weight:700;padding:10px 0;min-height:44px}.fm-source-hash{overflow-wrap:anywhere;font-size:11px}.fm-workshop .table-scroll{margin-top:22px}.fm-workshop table{min-width:440px;font-size:13px}.fm-workshop caption{text-align:left;padding-bottom:10px;font-weight:600}.fm-workshop th,.fm-workshop td{padding:10px 12px}
.mode-practice-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.mode-practice{border-top:2px solid var(--line2);padding-top:14px}.mode-practice h3{margin:0 0 8px}.mode-practice p{font-size:15px}.mode-practice ol{padding-left:20px}.mode-practice li{margin-bottom:8px}.mode-practice a{display:inline-block;min-height:44px;padding:8px 0;font-weight:600}
@media(max-width:800px){.fm-controls{grid-template-columns:1fr}.fm-bench{grid-template-columns:1fr}.fm-gauge{max-width:280px;width:100%;margin:auto!important}.fm-charts{grid-template-columns:1fr}.mode-practice-grid{grid-template-columns:1fr}}
@media(max-width:420px){.fm-workshop{padding:16px!important}.fm-readout dl{gap:12px 8px}.fm-readout dd{font-size:17px}.fm-controls{gap:12px}.fm-legend{font-size:12px}.fm-phase-buttons button{flex:1 0 calc(50% - 8px)}}
@media(prefers-reduced-motion:reduce){.fm-workshop *{scroll-behavior:auto;animation:none!important;transition:none!important}}
