@layer lab-base{.vega-lead a{color:var(--accent);border-bottom:1px solid var(--accent-pale);font-weight:600;text-decoration:none}.vega-lead a:hover{color:var(--accent-press);border-bottom-color:var(--accent)}svg.plot{touch-action:none;width:100%;max-width:560px;height:auto;margin:0 auto;display:block}.plot .grid{stroke:var(--line);stroke-width:1px}.plot .axis{stroke:var(--line-strong);stroke-width:2px}.plot .arrow{fill:var(--line-strong)}.plot .tk{stroke:var(--line-strong);stroke-width:1.5px}.plot .tklbl{font-family:var(--mono);fill:var(--muted);text-anchor:middle;font-size:11px}.plot .tklbl.al{text-anchor:end}.plot .axname{font-family:var(--mono);fill:var(--muted);text-anchor:middle;font-size:12px;font-weight:600}.plot .curve{fill:none;stroke:var(--accent);stroke-width:2.6px;stroke-linejoin:round;stroke-linecap:round}.plot .curve.alt{stroke:var(--warn)}.plot .helper{stroke:var(--muted);stroke-width:1.6px;stroke-dasharray:5 4;fill:none}.plot .pt{fill:var(--accent-deep);stroke:var(--card);stroke-width:2px}.plot .pt.peak{fill:var(--warn)}.vega-legend .sw.c1sw{background:var(--accent);border-color:var(--accent)}.vega-legend .sw.mutsw{background:var(--muted);border-color:var(--muted)}.vega-legend .sw.warnsw{background:var(--warn);border-color:var(--warn)}.plot .fieldline{fill:none;stroke:var(--accent);stroke-width:1.6px;stroke-linecap:round;opacity:.75}.plot .fieldarrow{stroke:var(--muted);stroke-linecap:round}.plot .fieldhead{fill:var(--muted)}.plot .charge{stroke:var(--card);stroke-width:2px}.plot .charge.pos{fill:var(--bad)}.plot .charge.neg{fill:var(--accent-press)}.plot .chargelbl{font-family:var(--display);fill:var(--card);text-anchor:middle;dominant-baseline:central;font-size:13px;font-weight:700}.plot .testpt{fill:var(--warn);stroke:var(--card);stroke-width:2px}.vega-legend .sw.possw{background:var(--bad);border-color:var(--bad)}.vega-legend .sw.negsw{background:var(--accent-press);border-color:var(--accent-press)}.vega-legend .sw.linesw{background:var(--accent);border-color:var(--accent)}.platewrap{padding:10px 16px 4px}svg.plate{width:100%;max-width:560px;height:auto;margin:0 auto;display:block}.plate .platebar{stroke:var(--line-strong);stroke-width:1.5px}.plate .platebar.neg{fill:var(--accent-press)}.plate .platebar.pos{fill:var(--bad)}.plate .platelbl{font-family:var(--display);text-anchor:middle;dominant-baseline:central;fill:var(--card);font-size:20px;font-weight:700}.plate .rail{stroke:var(--muted);stroke-width:1.4px;stroke-dasharray:5 4}.plate .fieldvec{stroke:var(--accent);stroke-width:2px;stroke-linecap:round;opacity:.8}.plate .fieldhead{fill:var(--accent);opacity:.8}.plate .electron{fill:var(--accent-press);stroke:var(--card);stroke-width:2px}.plate .electronlbl{font-family:var(--mono);fill:var(--muted);text-anchor:middle;font-size:11px}.circuitwrap{padding:10px 16px 4px}svg.circuit{width:100%;max-width:520px;height:auto;margin:0 auto;display:block}.circuit .wire{stroke:var(--line-strong);stroke-width:2px;fill:none}.circuit .node{fill:var(--line-strong)}.circuit .res{fill:none;stroke-width:2.4px;stroke-linejoin:round;stroke-linecap:round}.circuit .res.r1{stroke:var(--accent)}.circuit .res.r2{stroke:var(--warn)}.circuit .res.rext{stroke:var(--accent)}.circuit .res.rint{stroke:var(--muted)}.circuit .cell{stroke:var(--ink)}.circuit .cell.short{stroke-width:5px}.circuit .cell.long{stroke-width:2px}.circuit .lbl{font-family:var(--mono);fill:var(--muted);text-anchor:middle;font-size:12px}svg.emplot{touch-action:none;width:100%;max-width:560px;height:auto;margin:0 auto;display:block}.emplot .fieldline{stroke:var(--muted);stroke-width:1.6px;fill:none}.emplot .wire{stroke:var(--accent-press);stroke-width:3px;stroke-linecap:round;fill:none}.emplot .anglearc{stroke:var(--warn);stroke-width:1.6px;fill:none}.emplot .anglelbl{font-family:var(--mono);fill:var(--warn);text-anchor:middle;font-size:13px}.emplot .pivot{fill:var(--line-strong)}.emplot .fring{fill:none;stroke:var(--ink);stroke-width:2px}.emplot .fdot{fill:var(--ink)}.emplot .fcross{stroke:var(--ink);stroke-width:2px}.emplot .flbl{font-family:var(--mono);fill:var(--muted);text-anchor:middle;font-size:12px}.emplot .fielddot{fill:var(--accent-pale)}.emplot .orbit{fill:none;stroke:var(--accent);stroke-width:2.6px}.emplot .radiusline{stroke:var(--muted);stroke-width:1.5px;stroke-dasharray:5 4;fill:none}.emplot .center{fill:var(--line-strong)}.emplot .entrypt{fill:var(--accent-deep);stroke:var(--card);stroke-width:2px}.emplot .vvec{stroke:var(--accent-press);stroke-width:2.6px;fill:none}.emplot .rlbl{font-family:var(--mono);fill:var(--muted);text-anchor:middle;font-size:12px}.vega-legend .sw.wiresw{background:var(--accent-press);border-color:var(--accent-press)}.vega-legend .sw.anglesw{background:var(--warn);border-color:var(--warn)}.vega-legend .sw.fieldsw{background:var(--muted);border-color:var(--muted)}svg.rails{touch-action:none;width:100%;max-width:560px;height:auto;margin:0 auto;display:block}.rails .field{stroke:var(--muted);stroke-width:1.6px;fill:none;opacity:.65}.rails .fielddot{fill:var(--muted);opacity:.65}.rails .rail{stroke:var(--line-strong);stroke-width:3px;stroke-linecap:round}.rails .wire{stroke:var(--line-strong);stroke-width:2.4px}.rails .rod{stroke:var(--accent-deep);stroke-width:6px;stroke-linecap:round}.rails .cur{stroke:var(--accent-press);stroke-width:2.6px;fill:none;stroke-linecap:round}.rails .force{stroke:var(--bad);stroke-width:2.6px;fill:none;stroke-linecap:round}.rails .vvec{stroke:var(--accent);stroke-width:2.6px;fill:none;stroke-linecap:round}.rails .lbl{font-family:var(--mono);fill:var(--muted);text-anchor:middle;font-size:12px}.rails .lbl.cur{fill:var(--accent-press)}.rails .lbl.force{fill:var(--bad)}.rails .lbl.vvec{fill:var(--accent)}.rails .rbox{fill:var(--panel);stroke:var(--line-strong);stroke-width:1.5px}.vega-legend .sw.cursw{background:var(--accent-press);border-color:var(--accent-press)}.vega-legend .sw.forcesw{background:var(--bad);border-color:var(--bad)}.vega-legend .sw.vvecsw{background:var(--accent);border-color:var(--accent)}.vega-legend .sw.rodsw{background:var(--accent-deep);border-color:var(--accent-deep)}svg.coil{width:100%;max-width:260px;height:auto;margin:0 auto;display:block}.coil .ring{fill:none;stroke:var(--line-strong);stroke-width:1.5px}.coil .frame{stroke:var(--accent-deep);stroke-width:6px;stroke-linecap:round}.coil .axis{stroke:var(--muted);stroke-width:1px;stroke-dasharray:3 3}.coil .fielddot{fill:var(--muted);opacity:.6}.duo{flex-direction:column;gap:14px;display:flex}.duopanel{flex-direction:column;gap:2px;display:flex}.panelcap{font-family:var(--display);color:var(--muted);text-align:center;font-size:12.5px;font-weight:600}.plot .curve.ghost{stroke:var(--warn);stroke-width:2px;stroke-dasharray:6 5}.plot .peakline{stroke:var(--bad);stroke-width:1.6px;stroke-dasharray:4 3;fill:none}.emplot .baseline{stroke:var(--line);stroke-width:1.2px;stroke-dasharray:5 4}.emplot .parallelogram{fill:none;stroke:var(--muted);stroke-width:1.4px;stroke-dasharray:4 4}.emplot .fvec{fill:none;stroke:var(--accent);stroke-width:2.4px;stroke-linejoin:round;stroke-linecap:round}.emplot .fvec.fa{stroke:var(--accent)}.emplot .fvec.fb{stroke:var(--accent-press)}.emplot .fvec.fnet{stroke:var(--accent-deep);stroke-width:3.2px}.emplot .charge{stroke:var(--card);stroke-width:2px}.emplot .charge.pos{fill:var(--bad)}.emplot .charge.neg{fill:var(--accent-press)}.emplot .charge.target{stroke-dasharray:3 2}.emplot .chargelbl{font-family:var(--mono);fill:var(--card);text-anchor:middle;font-size:11px;font-weight:700}.vega-legend .sw.c2sw{background:var(--warn);border-color:var(--warn)}.vega-legend .sw.fasw{background:var(--accent);border-color:var(--accent)}.vega-legend .sw.fbsw{background:var(--accent-press);border-color:var(--accent-press)}.plate .platelbl.dim{fill:var(--muted);text-anchor:start;font-weight:500}svg.barchart{width:100%;max-width:560px;height:auto;margin:0 auto;display:block}.barchart .baseaxis{stroke:var(--line-strong);stroke-width:2px}.barchart .bar{stroke:var(--card);stroke-width:1px}.barchart .bar.heat{fill:var(--warn);fill-opacity:.85}.barchart .bar.mech{fill:var(--accent);fill-opacity:.85}.barchart .bar.wrong{fill:var(--muted);fill-opacity:.45}.barchart .barlbl{font-family:var(--display);fill:var(--muted);text-anchor:middle;font-size:12px;font-weight:600}.barchart .barlbl.sub{font-size:11px;font-weight:500}.barchart .barval{font-family:var(--mono);fill:var(--ink);text-anchor:middle;font-size:12px;font-weight:700}.vega-legend .sw.heatsw{background:var(--warn);border-color:var(--warn)}.vega-legend .sw.mechsw{background:var(--accent);border-color:var(--accent)}.barchart .cliptick{stroke:var(--card);stroke-width:2.5px;fill:none}.vega-legend .sw.wrongsw{background:var(--muted);border-color:var(--muted)}.emplot .bline{stroke:var(--line);stroke-width:1.4px}.emplot .bline.through{stroke:var(--accent);stroke-width:2.2px}.emplot .bhead{fill:var(--line)}.emplot .bhead.through{fill:var(--accent)}.emplot .coilplane{stroke:var(--accent-deep);stroke-width:5px;stroke-linecap:round}.emplot .normalvec{stroke:var(--warn);stroke-width:2.2px;stroke-dasharray:5 3}.emplot .fvec.fc{stroke:var(--bad)}.emplot .fvec.netv{stroke:var(--muted);stroke-width:2px;stroke-dasharray:5 4}.emplot .veclbl{font-family:var(--mono);fill:var(--muted);font-size:12px;font-weight:700}.emplot .veclbl.sum{fill:var(--accent-deep)}.emplot .veclbl.mid{text-anchor:middle}.emplot .veclbl.dim{text-anchor:end;font-size:11px;font-weight:500}.plot .curve.xc{stroke:var(--muted);stroke-width:2.2px;stroke-dasharray:7 5}.vega-legend .sw.fcsw{background:var(--bad);border-color:var(--bad)}.vega-legend .sw.xcsw{background:var(--muted);border-color:var(--muted)}}
