:root{color-scheme:light;--ink:#17211d;--muted:#60706a;--paper:#f7f3e8;--panel:#fffaf0;--line:#17211d24;--green:#146c53;--green-dark:#0d4637;--amber:#f59e0b;--sky:#38bdf8;--shadow:0 24px 70px #222d2624}*{box-sizing:border-box}body{min-height:100vh;color:var(--ink);background:radial-gradient(circle at top left, #38bdf833, transparent 34rem), linear-gradient(135deg, #fffaf0 0%, var(--paper) 45%, #eef7ef 100%);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}a{color:var(--green-dark);text-underline-offset:.22em}.skip-link{z-index:10;background:var(--green-dark);color:#fff;border-radius:999px;padding:.75rem 1rem;position:absolute;top:1rem;left:1rem;transform:translateY(-200%)}.skip-link:focus{transform:translateY(0)}.container,.site-header,.site-footer{width:min(1120px,100% - 32px);margin:0 auto}.site-header{justify-content:flex-start;align-items:center;gap:1rem;padding:1.2rem 0;display:flex}.brand{color:var(--ink);align-items:center;gap:.7rem;font-weight:800;text-decoration:none;display:inline-flex}.brand-mark{border:1px solid var(--line);background:#fffaf0b3;border-radius:.95rem;place-items:center;width:2.8rem;height:2.8rem;display:grid;overflow:hidden;box-shadow:0 10px 24px #0d46371f}.brand-mark img{object-fit:contain;width:100%;height:100%;display:block}.hero{padding:clamp(2rem,5vw,4rem) 0 clamp(.9rem,3vw,1.7rem)}.hero-copy{max-width:940px}.hero-copy h1{max-width:11.5ch;font-size:clamp(3.2rem,8vw,6rem)}.eyebrow,.card-kicker{color:var(--green);letter-spacing:.12em;text-transform:uppercase;margin:0 0 .8rem;font-size:.78rem;font-weight:900}h1,h2,h3,p{margin-top:0}h1{letter-spacing:-.07em;max-width:12ch;font-size:clamp(3.1rem,9vw,6.8rem);line-height:.9}h2{letter-spacing:-.05em;font-size:clamp(2rem,5vw,3.6rem);line-height:.98}h3{font-size:1.3rem;line-height:1.1}.lede{color:var(--muted);font-size:clamp(1.05rem,2vw,1.24rem);line-height:1.6}.hero-copy .lede{max-width:680px}.button{border:1px solid var(--line);border-radius:999px;justify-content:center;align-items:center;min-height:48px;padding:.85rem 1.15rem;font-weight:850;text-decoration:none;display:inline-flex}.button-primary{background:var(--green-dark);color:#fffaf0;box-shadow:0 16px 30px #0d46373d}.content-card,.formula-card,.lab-board,.lab-controls,.meter{border:1px solid var(--line);box-shadow:var(--shadow);background:#fffaf0d1;border-radius:28px}.section{padding:clamp(3rem,7vw,5.5rem) 0}.article-index{padding-top:clamp(.9rem,3vw,1.8rem)}.game-entry-section{padding:.7rem 0 clamp(1.4rem,4vw,2.5rem)}.game-entry-heading{gap:.3rem;margin-bottom:1rem;display:grid}.game-entry-heading .eyebrow,.game-entry-heading h2{margin-bottom:0}.game-entry-heading h2{font-size:clamp(1.7rem,3vw,2.4rem)}.game-entry-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.game-entry{min-height:190px;color:var(--ink);background:radial-gradient(circle at 8% 20%,#38bdf83d,#0000 14rem),#fffaf0db;border:1px solid #0d46373d;border-radius:26px;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:clamp(1rem,3vw,2rem);padding:clamp(1rem,3vw,1.5rem);text-decoration:none;transition:transform .16s,border-color .16s,box-shadow .16s;display:grid;overflow:hidden;box-shadow:0 18px 54px #0d46371f}.game-entry[data-game=gridkeeper]{background:radial-gradient(circle at 8% 20%,#dde9b9c7,#0000 14rem),#fffaf0db}.game-entry[data-game=gridkeeper] .game-entry-signal{background:#e4edc4;border-radius:50% 44% 48% 42%}.game-entry:hover,.game-entry:focus-visible{border-color:#146c5385;transform:translateY(-2px);box-shadow:0 24px 66px #0d46372b}.game-entry:focus-visible{outline-offset:4px;outline:3px solid #38bdf8bf}.game-entry-signal{background:#ddefdf;border:1px solid #146c5338;border-radius:24px;grid-template-columns:repeat(3,18px);place-content:center;gap:7px;width:82px;height:82px;display:grid;position:relative}.game-entry-signal:before{background:var(--green);content:"";width:54px;height:2px;position:absolute;top:50%;left:14px}.game-entry-signal i{z-index:1;border:3px solid var(--green-dark);background:var(--panel);border-radius:50%;width:18px;height:18px;position:relative}.game-entry-signal i:first-child,.game-entry-signal i:last-child{background:var(--amber)}.game-entry-copy{min-width:0;display:grid}.game-entry-copy .eyebrow{margin-bottom:.3rem}.game-entry-copy strong{letter-spacing:-.045em;font-size:clamp(1.35rem,3vw,2rem);line-height:1.05}.game-entry-copy>span:last-child{max-width:660px;color:var(--muted);margin-top:.38rem;font-size:.92rem;line-height:1.45}.game-entry-meta{border-top:1px solid var(--line);color:var(--muted);white-space:nowrap;grid-column:1/-1;grid-template-columns:auto auto 1fr;place-items:center end;gap:.8rem;padding-top:.8rem;font-size:.73rem;font-weight:800;display:grid}.game-entry-meta b{color:var(--green-dark);text-underline-offset:.22em;margin-top:0;font-size:.88rem;text-decoration:underline}@media (width<=760px){.game-entry-list{grid-template-columns:1fr}.game-entry{grid-template-columns:auto minmax(0,1fr)}.game-entry-signal{grid-template-columns:repeat(3,14px);width:68px;height:68px}.game-entry-signal:before{width:44px;left:12px}.game-entry-signal i{border-width:2px;width:14px;height:14px}.game-entry-meta{justify-items:start}.game-entry-meta b{justify-self:end;margin-top:0}}@media (width<=430px){.game-entry{grid-template-columns:1fr}.game-entry-signal{display:none}}.index-heading{border-top:1px solid var(--line);gap:.35rem;margin-bottom:1rem;padding-top:1.4rem;display:grid}.index-heading .eyebrow{margin-bottom:0}.index-heading h2{margin-bottom:0;font-size:clamp(1.9rem,4vw,2.8rem)}.content-cards{gap:1rem;display:grid}.article-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.content-card{padding:1.5rem}.article-card{min-height:260px;color:inherit;align-content:space-between;gap:1.25rem;text-decoration:none;transition:border-color .16s,box-shadow .16s,transform .16s;display:grid}.article-card:hover,.article-card:focus-visible{border-color:#146c536b;transform:translateY(-2px);box-shadow:0 28px 80px #0d46372e}.article-card:focus-visible{outline-offset:4px;outline:3px solid #38bdf8bf}.content-card p{color:var(--muted);line-height:1.55}.card-link{color:var(--green-dark);text-underline-offset:.22em;font-weight:850;text-decoration:underline}.card-footer{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;padding-top:1rem;display:flex}.card-footer span{color:var(--muted);font-size:.8rem;font-weight:850}.article-shell,.lab-page{padding:clamp(2rem,6vw,5rem) 0}.article-container{width:min(860px,100% - 32px)}.article-container h1{max-width:13ch}.article-simulation-intro{border-top:1px solid var(--line);margin-top:clamp(2.5rem,6vw,4.5rem);padding-top:1.4rem}.article-simulation-intro h2{max-width:13ch;margin-bottom:.75rem}.article-simulation-intro p:not(.eyebrow){max-width:680px;color:var(--muted);font-size:1.05rem;line-height:1.6}.prose{color:#26332e;margin-top:2rem;font-size:1.08rem;line-height:1.72}.prose.compact{margin-top:1rem}.prose :where(h2,h3){margin-top:2rem}.prose code,.prose pre{font-family:SFMono-Regular,Consolas,monospace}.prose pre{border:1px solid var(--line);color:#fff8e8;background:#11261f;border-radius:18px;padding:1rem;overflow-x:auto}.lab-shell{--bulb-glow:.4;--charge-speed:4s;--wire-width:9px;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);align-items:start;gap:1rem;margin-top:1.5rem;display:grid}.lab-board{color:#fff7dc;background:linear-gradient(145deg,#0e362bf2,#135644eb);grid-column:1/-1;padding:clamp(1rem,3vw,1.5rem);overflow:hidden}.lab-board-header{justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.lab-board h2{max-width:none;font-size:clamp(1.8rem,4vw,3rem)}.lab-board .eyebrow,.lab-status{color:#f8d98a}.lab-status{text-align:right;max-width:280px;font-weight:800}.circuit{width:100%;min-height:280px;display:block}.wire{fill:none;stroke:url(#wireGradient);stroke-linecap:round;stroke-linejoin:round;stroke-width:var(--wire-width);filter:drop-shadow(0 0 12px #38bdf84d);transition:stroke-width .16s,opacity .16s}.battery rect,.load circle{fill:#fffaf01f;stroke:#fff7dc;stroke-width:3px}.battery line,.load path,.resistor path{fill:none;stroke:#fff7dc;stroke-linecap:round;stroke-linejoin:round;stroke-width:4px}.battery text,.load text,.resistor text{fill:#fff7dc;text-anchor:middle;font-size:18px;font-weight:800}.battery-voltage,.resistance-label{fill:#f8d98a!important;font-size:16px!important}.load circle{fill:rgba(245, 158, 11, calc(.2 + var(--bulb-glow) * .6));filter:drop-shadow(0 0 calc(var(--bulb-glow) * 34px) #f59e0bf2);transition:opacity .16s,fill .16s,filter .16s}.charge{fill:#fff7dc;stroke:#38bdf8;stroke-width:3px;filter:drop-shadow(0 0 8px #38bdf8cc);transition:opacity .16s}[data-loop-state=open] .wire{opacity:.45}.lab-controls,.formula-card{padding:1.25rem}.control{gap:.65rem;margin-bottom:1.1rem;font-weight:800;display:grid}.control span,.switch-control span{color:var(--ink)}.control input[type=range]{width:100%;accent-color:var(--green)}.control output{color:var(--green-dark);font-weight:900}.switch-control{align-items:center;gap:.75rem;min-height:48px;font-weight:900;display:flex}.switch-control input{width:1.3rem;height:1.3rem;accent-color:var(--green)}.switch-lab-shell{grid-template-columns:1fr}.switch-lab-board,.switch-controls,.switch-readings,.switch-explainer{grid-column:1/-1}.switch-circuit .switch-arm{stroke:#f8d98a;stroke-width:8px;stroke-linecap:round;filter:drop-shadow(0 0 12px #f8d98ab8);transform-box:view-box;transform-origin:258px 210px;transition:transform .22s,stroke .16s,filter .16s;transform:rotate(-32deg)}[data-switch-state=closed] .switch-circuit .switch-arm{stroke:#fff7dc;transform:rotate(0)}.switch-contact{fill:#fff7dc;stroke:#f8d98a;stroke-width:3px;filter:drop-shadow(0 0 10px #f8d98a8c)}.switch-gap-arc{fill:none;stroke:#fff7dc4d;stroke-dasharray:6 8;stroke-linecap:round;stroke-width:3px}.switch-svg-label,.return-path-label{fill:#fff7dcb8;letter-spacing:.04em;text-anchor:middle;text-transform:uppercase;font-size:15px;font-weight:900}.switch-control-row{margin-bottom:.65rem}.switch-control-note{color:var(--muted);margin:0;line-height:1.5}.switch-readings{grid-template-columns:repeat(3,minmax(0,1fr))}[data-switch-state=open] .switch-circuit .wire{opacity:.42}[data-switch-state=closed] .switch-circuit .wire{opacity:1}[data-switch-state=open] .switch-circuit .charge{opacity:.14}[data-switch-state=closed] .switch-circuit .charge{opacity:1}[data-switch-state=open] .switch-circuit .load circle{fill:#fffaf01f;filter:none}[data-switch-state=closed] .switch-circuit .load circle{fill:#f59e0bd1}.ohms-law-shell{--ohms-flow:.22;--ohms-speed:4s;grid-template-columns:1fr}.ohms-law-board,.ohms-controls,.ohms-readings,.ohms-compare-card,.ohms-limit-card{grid-column:1/-1}.ohms-stage{grid-template-columns:minmax(0,1.5fr) minmax(240px,.55fr);align-items:stretch;gap:1rem;display:grid}.ohms-circuit .ohms-wire{stroke:url(#ohmsWireGradient);stroke-width:calc(6px + var(--ohms-flow) * 10px)}.ohms-circuit .charge{opacity:calc(.28 + var(--ohms-flow) * .72)}.ohms-equation-label{fill:#f8d98a;letter-spacing:-.03em;text-anchor:middle;font-size:28px;font-weight:900}.ohms-flow-panel{background:#fffaf014;border:1px solid #fff7dc38;border-radius:24px;align-content:center;gap:.65rem;padding:1.2rem;display:grid}.ohms-flow-panel strong{color:#fff7dc;letter-spacing:-.06em;font-size:clamp(2.5rem,6vw,4.6rem);line-height:.9}.ohms-flow-panel span,.ohms-flow-panel p:not(.panel-label){color:#fff7dcd1;font-weight:850}.ohms-flow-track{background:#fffaf01f;border:1px solid #fff7dc47;border-radius:999px;height:16px;overflow:hidden}.ohms-flow-track span{border-radius:inherit;background:linear-gradient(90deg,#38bdf8,#f8d98a,#f59e0b);block-size:100%;inline-size:17%;transition:inline-size .16s;display:block;box-shadow:0 0 18px #f8d98a8c}.ohms-controls{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.ohms-readings{grid-template-columns:repeat(3,minmax(0,1fr))}.ohms-compare-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.ohms-compare-result strong{color:var(--green-dark);font-size:1.25rem}.ac-dc-shell{grid-template-columns:1fr}.ac-dc-board,.ac-dc-controls,.ac-dc-readings,.ac-dc-pipeline-card{grid-column:1/-1}.ac-dc-stage{grid-template-columns:minmax(0,1.5fr) minmax(240px,.55fr);align-items:stretch;gap:1rem;display:grid}.ac-dc-wave{background:#fffaf014;border:1px solid #fff7dc38;border-radius:24px;width:100%;min-height:260px}.ac-dc-zero-line{stroke:#fff7dc47;stroke-dasharray:8 10;stroke-width:3px}.ac-dc-wave-path{fill:none;opacity:.12;stroke:#fff7dc;stroke-linecap:round;stroke-linejoin:round;stroke-width:9px;transition:opacity .18s,stroke .18s,filter .18s}[data-ac-dc-stage="1"] .ac-dc-wave-ac,[data-ac-dc-stage="2"] .ac-dc-wave-rectified,[data-ac-dc-stage="3"] .ac-dc-wave-smoothed,[data-ac-dc-stage="4"] .ac-dc-wave-regulated{opacity:1;stroke:#f8d98a;filter:drop-shadow(0 0 14px #f8d98ab8)}.ac-dc-wave-labels text{fill:#fff7dc6b;text-anchor:middle;text-transform:uppercase;font-size:18px;font-weight:900}.ac-dc-wave-labels text.is-current{fill:#f8d98a}.ac-dc-readout{background:#fffaf014;border:1px solid #fff7dc38;border-radius:24px;align-content:center;gap:.75rem;padding:1.2rem;display:grid}.ac-dc-readout strong{color:#fff7dc;letter-spacing:-.06em;font-size:clamp(2.3rem,5vw,4.1rem);line-height:.92}.ac-dc-readout p:not(.panel-label){color:#fff7dcd1;font-weight:850;line-height:1.5}.ac-dc-controls{grid-template-columns:minmax(260px,.7fr) minmax(0,1.3fr);align-items:end;gap:1rem;display:grid}.ac-dc-step-buttons{grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem;display:grid}.ac-dc-step{color:var(--green-dark);cursor:pointer}.ac-dc-step.is-current{background:#146c531f;border-color:#146c536b}.ac-dc-readings{grid-template-columns:repeat(2,minmax(0,1fr))}.ac-dc-pipeline{grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem;display:grid}.ac-dc-pipeline-step{border:1px solid var(--line);background:#ffffff5c;border-radius:20px;padding:1rem;transition:border-color .16s,background .16s,transform .16s}.ac-dc-pipeline-step.is-current{background:#146c531a;border-color:#146c5370;transform:translateY(-2px)}.ac-dc-pipeline-step strong{color:var(--green-dark);margin-bottom:.4rem;display:block}.ac-dc-pipeline-step p{margin-bottom:0}.adapter-label-shell{grid-template-columns:1fr}.adapter-label-board,.adapter-controls,.adapter-readings,.adapter-checklist-card{grid-column:1/-1}.adapter-stage{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.adapter-device-card,.adapter-label-card{background:#fffaf014;border:1px solid #fff7dc38;border-radius:24px;min-height:320px;padding:clamp(1rem,3vw,1.4rem)}.adapter-device-card h3,.adapter-label-card h3{color:#fff7dc;letter-spacing:-.05em;font-size:clamp(2rem,5vw,3.3rem)}.adapter-label-list{gap:.8rem;margin:0;display:grid}.adapter-label-list div{background:#fffaf014;border:1px solid #fff7dc2e;border-radius:16px;grid-template-columns:minmax(96px,.4fr) minmax(0,1fr);align-items:center;gap:.75rem;padding:.75rem;display:grid}.adapter-label-list dt{color:#fff7dca3;letter-spacing:.08em;text-transform:uppercase;font-size:.74rem;font-weight:900}.adapter-label-list dd{color:#fff7dc;margin:0;font-weight:900}.adapter-output-list dd{color:#f8d98a}.adapter-controls{grid-template-columns:repeat(5,minmax(0,1fr));gap:1rem;display:grid}.adapter-readings{grid-template-columns:1fr}.adapter-result-meter strong{max-width:14ch}.adapter-checklist{grid-template-columns:repeat(5,minmax(0,1fr));gap:.75rem;padding-left:0;list-style:none;display:grid}.adapter-checklist li{border:1px solid var(--line);background:#ffffff61;border-radius:18px;padding:.85rem;font-weight:850}.adapter-checklist li:before{content:"✓";margin-bottom:.35rem;font-size:1.1rem;display:block}.adapter-checklist li[data-check-state=fail]{color:#7f1d1d;background:#b4462c1a;border-color:#b4462c6b}.adapter-checklist li[data-check-state=fail]:before{content:"!"}[data-adapter-state=safe] .adapter-result-meter strong{color:var(--green-dark)}[data-adapter-state=weak] .adapter-result-meter strong{color:#a16207}[data-adapter-state=danger] .adapter-result-meter strong{color:#7f1d1d}.power-energy-shell{grid-template-columns:1fr}.power-energy-board,.power-energy-controls,.power-energy-readings,.power-energy-chain-card{grid-column:1/-1}.power-energy-stage{grid-template-columns:minmax(0,.8fr) minmax(0,1.15fr) minmax(0,.8fr);gap:1rem;display:grid}.power-energy-card{background:#fffaf014;border:1px solid #fff7dc38;border-radius:24px;min-height:260px;padding:clamp(1rem,3vw,1.4rem)}.power-energy-card h3{color:#fff7dc;letter-spacing:-.05em;font-size:clamp(2rem,5vw,3.3rem);line-height:.95}.power-energy-card p:not(.panel-label){color:#fff7dcd1;font-weight:850;line-height:1.5}.power-energy-equation-card h3{color:#f8d98a}.bill-energy-track{background:#fffaf01f;border:1px solid #fff7dc47;border-radius:999px;height:16px;overflow:hidden}.bill-energy-track span{border-radius:inherit;background:linear-gradient(90deg,#38bdf8,#f8d98a,#f59e0b);block-size:100%;inline-size:15%;transition:inline-size .16s;display:block;box-shadow:0 0 18px #f8d98a8c}.power-energy-controls{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.power-energy-readings{grid-template-columns:repeat(3,minmax(0,1fr))}.bill-price-note{color:var(--muted);margin-bottom:0;line-height:1.5}.bill-price-note strong{color:var(--green-dark)}.grounding-safety-shell{grid-template-columns:1fr}.grounding-safety-board,.grounding-controls,.grounding-readings,.grounding-protection-card{grid-column:1/-1}.grounding-stage{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.grounding-card{background:#fffaf014;border:1px solid #fff7dc38;border-radius:24px;min-height:300px;padding:clamp(1rem,3vw,1.4rem)}.grounding-card h3{color:#fff7dc;letter-spacing:-.05em;font-size:clamp(1.7rem,4vw,2.8rem);line-height:1}.grounding-card p:not(.panel-label){color:#fff7dcd1;font-weight:850;line-height:1.5}.grounding-path-line{background:linear-gradient(90deg,#38bdf8,#f8d98a,#f59e0b);border-radius:999px;height:28px;margin:2.8rem 0;position:relative;box-shadow:0 0 26px #f8d98a73}.grounding-path-line .path-dot{background:#fff7dc;border-radius:999px;width:18px;height:18px;position:absolute;top:50%;transform:translateY(-50%)}.path-dot-one{left:14%}.path-dot-two{left:48%}.path-dot-three{left:80%}.insulation-barrier{grid-template-columns:repeat(3,1fr);gap:.5rem;margin:2.4rem 0;display:grid}.insulation-barrier span{background:#38bdf81f;border:2px solid #38bdf8b3;border-radius:18px;min-height:64px}.ground-symbol{justify-items:center;gap:.45rem;margin:2.45rem 0;display:grid}.ground-symbol span{background:#f8d98a;border-radius:999px;height:7px;display:block}.ground-symbol span:first-child{width:84px}.ground-symbol span:nth-child(2){width:56px}.ground-symbol span:nth-child(3){width:28px}.grounding-controls{grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;display:grid}.grounding-step.is-current{background:var(--green-dark);color:#fff7dc;border-color:#267d5973}.grounding-readings{grid-template-columns:repeat(3,minmax(0,1fr))}.grounding-readings .meter strong{font-size:clamp(1.35rem,4vw,2.4rem)}.grounding-protection-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.grounding-protection-grid div{background:#267d5912;border:1px solid #1f3a2f24;border-radius:18px;padding:1rem}.grounding-protection-grid span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.78rem;font-weight:900;display:block}.grounding-protection-grid strong{color:var(--green-dark);letter-spacing:-.03em;margin:.35rem 0;font-size:clamp(1.25rem,3vw,1.8rem);display:block}.grounding-protection-grid p,.grounding-note{color:var(--muted);line-height:1.5}.grounding-note{margin-bottom:0}[data-grounding-state=unsafe] .grounding-card,[data-grounding-state=unsafe] .meter{border-color:#b4462c59}[data-grounding-state=unsafe] .grounding-readings .meter strong{color:#7f1d1d}[data-grounding-state=grounded] .grounding-backup-card,[data-grounding-state=leakage] .grounding-insulator-card{border-color:#f8d98a73;box-shadow:0 18px 45px #f8d98a29}[data-grounding-state=grounded] .ground-symbol span,[data-grounding-state=leakage] .insulation-barrier span{background:#f59e0b}.battery-chemistry-shell{--battery-chemical-level:70%;grid-template-columns:1fr}.battery-chemistry-board,.battery-controls,.battery-readings,.battery-model-card{grid-column:1/-1}.battery-stage{grid-template-columns:repeat(5,minmax(0,1fr));gap:1rem;display:grid}.battery-terminal-card,.battery-path-card,.battery-device-card{background:#fffaf014;border:1px solid #fff7dc38;border-radius:24px;min-height:260px;padding:clamp(1rem,3vw,1.4rem)}.battery-terminal-card h3,.battery-path-card h3,.battery-device-card h3{color:#fff7dc;letter-spacing:-.05em;font-size:clamp(1.45rem,4vw,2.3rem);line-height:1}.battery-terminal-card p:not(.panel-label),.battery-path-card p:not(.panel-label),.battery-device-card p:not(.panel-label){color:#fff7dcd1;font-weight:850;line-height:1.5}.battery-flow-line{background:#fffaf01f;border-radius:999px;height:22px;margin:2.4rem 0;position:relative;overflow:hidden}.battery-flow-line:before{content:"";opacity:.86;background:linear-gradient(90deg,#38bdf8,#f8d98a,#f59e0b);position:absolute;inset:0}.battery-flow-line span{width:16px;height:16px;animation:2.4s linear infinite battery-flow;animation-delay:calc(var(--battery-dot-delay,0) * -1s);background:#fff7dc;border-radius:999px;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 0 14px #fff7dcb8}.battery-flow-line span:first-child{--battery-dot-delay:0}.battery-flow-line span:nth-child(2){--battery-dot-delay:.8}.battery-flow-line span:nth-child(3){--battery-dot-delay:1.6}.inside-flow span{background:#f8d98a}@keyframes battery-flow{0%{left:-12%}to{left:112%}}[data-battery-mode=rundown] .battery-flow-line span{opacity:.38;animation-duration:5s}[data-battery-mode=charging] .battery-flow-line span{animation-direction:reverse}[data-battery-mode=rundown] .battery-terminal-card,[data-battery-mode=rundown] .battery-path-card,[data-battery-mode=rundown] .battery-device-card{border-color:#b4462c59}[data-battery-mode=charging] .inside-path-card,[data-battery-mode=charging] .outside-path-card{border-color:#f8d98a7a;box-shadow:0 18px 45px #f8d98a24}.battery-chemical-meter{color:#fff7dcc7;letter-spacing:.08em;text-transform:uppercase;grid-template-columns:auto minmax(160px,1fr) auto;align-items:center;gap:.75rem;margin-top:1.2rem;font-size:.78rem;font-weight:900;display:grid}.battery-chemical-track{background:#fffaf01f;border:1px solid #fff7dc47;border-radius:999px;height:16px;overflow:hidden}.battery-chemical-track span{inline-size:var(--battery-chemical-level,70%);border-radius:inherit;background:linear-gradient(90deg,#7f1d1d,#f8d98a,#38bdf8);block-size:100%;transition:inline-size .16s;display:block;box-shadow:0 0 18px #f8d98a8c}.battery-controls{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.battery-step.is-current{background:var(--green-dark);color:#fff7dc;border-color:#267d5973}.battery-chemical-control{grid-column:1/-1;margin-bottom:0}.battery-readings{grid-template-columns:repeat(3,minmax(0,1fr))}.battery-readings .meter strong{font-size:clamp(1.35rem,4vw,2.4rem)}.battery-note{color:var(--muted);margin-bottom:0;line-height:1.5}.generator-induction-shell{--generator-motion:55%;--generator-magnet-speed:3.6s;--generator-flux-opacity:.64;--generator-voltage-opacity:.72;grid-template-columns:1fr}.generator-induction-board,.generator-controls,.generator-readings,.generator-chain-card{grid-column:1/-1}.generator-stage{gap:1rem;display:grid}.generator-visual{background:radial-gradient(circle at 26% 48%,#38bdf829,#0000 30%),radial-gradient(circle at 72%,#f59e0b29,#0000 32%),#fffaf012;border:1px solid #fff7dc33;border-radius:28px;width:100%;min-height:300px;display:block}.generator-field-window{fill:#0c242361;stroke:#fff7dc24}.generator-moving-magnet{animation:generator-magnet-sweep var(--generator-magnet-speed) ease-in-out infinite alternate;filter:drop-shadow(0 0 18px #38bdf847)}.generator-bar-magnet{fill:url(#generatorMagnetGradient);stroke:#fff7dcb8;stroke-width:3px}.generator-magnet-split{stroke:#08334473;stroke-width:3px}.generator-moving-magnet text{fill:#05201e;text-anchor:middle;dominant-baseline:middle;font-size:34px;font-weight:950}@keyframes generator-magnet-sweep{0%{transform:translate(-26px)}to{transform:translate(170px)}}.generator-flux-line{fill:none;stroke:#38bdf8;stroke-width:4px;stroke-linecap:round;stroke-dasharray:12 14;marker-end:url(#generatorFluxArrow);opacity:var(--generator-flux-opacity);animation:generator-flux-flow var(--generator-magnet-speed) linear infinite}.flux-line-b,.flux-line-d{stroke:#f8d98a;animation-delay:-.7s}.flux-line-c{stroke-width:5px}@keyframes generator-flux-flow{to{stroke-dashoffset:-52px}}.generator-wire-lead,.generator-coil-loop{fill:none;stroke:url(#generatorWireGradient);stroke-linecap:round;stroke-linejoin:round;stroke-width:8px}.generator-coil-loop{filter:drop-shadow(0 0 12px #f59e0b47)}.generator-svg-label{fill:#fff7dcc7;letter-spacing:-.02em;text-anchor:middle;font-size:24px;font-weight:900}.generator-flux-label,.generator-voltage-label{font-size:20px}.generator-terminal{fill:#fff7dc;stroke:#f59e0b;stroke-width:4px;filter:url(#generatorVoltageGlow);opacity:var(--generator-voltage-opacity)}.generator-voltage-gap{fill:none;stroke:#fff7dc75;stroke-dasharray:7 8;stroke-width:4px}.generator-voltage-symbol{fill:#fff7dc;dominant-baseline:middle;opacity:var(--generator-voltage-opacity);font-size:44px;font-weight:950}.generator-voltage-pulse{fill:none;stroke:#f8d98a;stroke-linecap:round;stroke-width:5px;opacity:var(--generator-voltage-opacity);animation:generator-voltage-pulse var(--generator-magnet-speed) ease-in-out infinite alternate}.pulse-two{animation-delay:-.45s}@keyframes generator-voltage-pulse{0%{transform:translateY(0)}to{transform:translateY(6px)}}.generator-current-path{fill:none;stroke:#38bdf8b3;stroke-linecap:round;stroke-width:6px;stroke-dasharray:10 12;animation:2.4s linear infinite generator-flux-flow}.generator-current-dot{fill:#38bdf8;opacity:.8;filter:drop-shadow(0 0 8px #38bdf880)}[data-generator-circuit=open] .generator-current-path,[data-generator-circuit=open] .generator-current-dot{opacity:0}[data-generator-circuit=open] .generator-voltage-gap{stroke:#b4462cb8}.generator-legend{color:#fff7dcd1;grid-template-columns:repeat(4,minmax(0,1fr));gap:.7rem;font-size:.9rem;font-weight:850;display:grid}.generator-legend div{background:#fffaf012;border:1px solid #fff7dc29;border-radius:16px;align-items:center;gap:.5rem;padding:.75rem;display:flex}.legend-swatch{border-radius:999px;width:28px;height:12px;display:inline-block}.magnet-swatch{background:linear-gradient(90deg,#38bdf8 0 50%,#f8d98a 50% 100%)}.flux-swatch{background:#38bdf8}.wire-swatch{background:#f59e0b}.voltage-swatch{background:#fff7dc;box-shadow:0 0 12px #f8d98abf}.generator-controls{grid-template-columns:minmax(0,1fr) minmax(220px,.38fr);align-items:end;gap:1rem;display:grid}.generator-circuit-control{margin-bottom:1.1rem}.generator-readings{grid-template-columns:repeat(3,minmax(0,1fr))}.generator-readings .meter strong{font-size:clamp(1.25rem,3.5vw,2.1rem)}.generator-note{color:var(--muted);margin-bottom:0;line-height:1.5}.meters{gap:1rem;display:grid}.meter{padding:1.2rem}.meter span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.8rem;font-weight:900;display:block}.meter strong{color:var(--green-dark);letter-spacing:-.05em;margin:.25rem 0;font-size:clamp(2rem,5vw,3.4rem);line-height:1;display:block}.meter p,.formula-card li{color:var(--muted);line-height:1.5}.formula-card h2{letter-spacing:-.03em;font-size:1.6rem}.formula-card ul{padding-left:1.2rem}.contrast-lab-board{grid-column:1/-1}.contrast-stage{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.static-charge-shell{grid-template-columns:1fr}.static-charge-board,.manual-control-shell,.static-model-card{grid-column:1/-1}.static-buildup-stage{grid-template-columns:1fr;display:grid}.static-buildup-panel{min-height:420px}.static-buildup-panel .static-scene{max-width:760px;min-height:clamp(190px,28vw,270px);margin:1.2rem auto 1.6rem}.static-buildup-panel .charged-object{min-height:clamp(150px,22vw,220px)}.manual-control-shell{gap:1rem;display:grid}.manual-toggle{cursor:pointer;justify-self:start}.manual-controls[hidden]{display:none}.manual-controls{width:100%}.manual-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;display:grid}.buildup-meter{max-width:760px;margin:0 auto 1rem}.buildup-meter-labels{color:#fff7dcb8;letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;gap:1rem;margin-bottom:.45rem;font-size:.78rem;font-weight:900;display:flex}.buildup-track{background:#fffaf01f;border:1px solid #fff7dc47;border-radius:999px;height:16px;position:relative;overflow:hidden}.buildup-bar{border-radius:inherit;background:linear-gradient(90deg,#38bdf8,#f8d98a,#f59e0b);block-size:100%;inline-size:0%;transition:inline-size .12s linear;display:block;box-shadow:0 0 18px #f8d98a8c}.critical-marker{background:#fff7dc;width:2px;position:absolute;top:-6px;bottom:-6px;left:90%;box-shadow:0 0 14px #fff7dce6}.contrast-panel{background:#fffaf014;border:1px solid #fff7dc38;border-radius:24px;min-height:330px;padding:clamp(1rem,3vw,1.4rem)}.panel-label{color:#f8d98a;letter-spacing:.1em;text-transform:uppercase;margin-bottom:.45rem;font-size:.75rem;font-weight:900}.contrast-panel h3{color:#fff7dc;letter-spacing:-.04em;margin-bottom:1rem;font-size:clamp(1.6rem,4vw,2.35rem)}.panel-note{color:#fff7dcd1;line-height:1.5}.static-scene{grid-template-columns:minmax(86px,1fr) minmax(44px,.35fr) minmax(86px,1fr);align-items:center;gap:.6rem;min-height:150px;margin:1rem 0;display:grid;position:relative}.charged-object{background:#fffaf01a;border:2px solid #fff7dcb3;border-radius:28px;min-height:124px;position:relative}.charged-object-negative{box-shadow:inset 0 0 calc(var(--static-charge-level) * 3px) #38bdf86b}.charged-object-positive{box-shadow:inset 0 0 calc(var(--static-charge-level) * 3px) #f59e0b6b}[data-static-state=critical] .charged-object{animation:.24s ease-in-out infinite static-tension-shake}[data-static-state=discharging] .charged-object{border-color:#f8d98af2;box-shadow:inset 0 0 34px #f8d98a73,0 0 28px #f59e0b47}@keyframes static-tension-shake{0%,to{transform:translate(0)}50%{transform:translate(2px)}}.charge-dot{width:28px;height:28px;animation:2.8s ease-in-out infinite charge-hover;animation-delay:calc(var(--dot-delay,0) * 1s);border-radius:999px;place-items:center;font-weight:900;transition:opacity .16s,transform .16s;display:grid;position:absolute}.charged-object-negative .charge-dot{color:#083344;background:#38bdf8}.charged-object-positive .charge-dot{color:#5f3700;background:#f8d98a}.dot-a,.dot-e{--dot-delay:0;top:18%;left:18%}.dot-b,.dot-f{--dot-delay:.35;top:36%;right:18%}.dot-c,.dot-g{--dot-delay:.7;bottom:18%;left:34%}.dot-d{--dot-delay:1.05;bottom:16%;right:30%}@keyframes charge-hover{0%,to{transform:translateY(0)scale(1)}50%{transform:translateY(calc(var(--static-charge-level) * -.45px)) scale(1.05)}}.spark-gap{place-items:center;min-height:96px;display:grid;position:relative}.spark-gap:before,.spark-gap:after{content:"";background:#fff7dc5c;width:2px;height:32%;position:absolute;left:50%}.spark-gap:before{top:0}.spark-gap:after{bottom:0}.field-line{height:2px;opacity:calc(.16 + var(--static-charge-level) * .055);transform-origin:50%;background:linear-gradient(90deg,#38bdf800,#f8d98ad1,#f59e0b00);animation:2.6s ease-in-out infinite field-breathe;position:absolute;left:12%;right:12%;box-shadow:0 0 12px #f8d98a73}.field-line-one{--line-rotation:-9deg;top:26%}.field-line-two{animation-delay:.45s;top:50%}.field-line-three{--line-rotation:9deg;animation-delay:.9s;top:74%}.spark-label{color:#fff7dcb8;letter-spacing:.08em;text-align:center;text-transform:uppercase;width:max-content;max-width:8rem;font-size:.68rem;font-weight:900;position:absolute;bottom:-1.4rem;left:50%;transform:translate(-50%)}@keyframes field-breathe{0%,to{opacity:calc(.12 + var(--static-charge-level) * .045);transform:rotate(var(--line-rotation,0deg)) scaleX(.74)}50%{opacity:calc(.2 + var(--static-charge-level) * .07);transform:rotate(var(--line-rotation,0deg)) scaleX(1)}}.spark-gap-active:before,.spark-gap-active:after{background:#f8d98a;box-shadow:0 0 18px #f8d98ad9}.spark{opacity:0;clip-path:polygon(40% 0,100% 0,58% 42%,100% 42%,10% 100%,38% 52%,0 52%);background:#f8d98a;width:4px;height:34px;position:absolute;top:44%;left:50%;transform:translate(-50%,-50%)rotate(18deg);box-shadow:0 0 22px #f8d98ae6}.spark-active{opacity:1;animation:.65s ease-out spark-flash}@keyframes spark-flash{0%{opacity:0;transform:translate(-50%,-50%)scale(.7)rotate(18deg)}18%{opacity:1;transform:translate(-50%,-50%)scale(1.8)rotate(18deg)}to{opacity:0;transform:translate(-50%,-50%)scale(.9)rotate(18deg)}}.lab-action{cursor:pointer;width:100%;margin-bottom:1.1rem}.contrast-meters{grid-template-columns:1fr}.control select{border:1px solid var(--line);width:100%;min-height:48px;color:var(--ink);font:inherit;background:#fffaf0;border-radius:16px;padding:.75rem .9rem;font-weight:800}.transformer-grid-shell{grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr)}.transformer-grid-board,.transformer-readings,.transformer-model-card{grid-column:1/-1}.transformer-stage{grid-template-columns:minmax(160px,.7fr) minmax(260px,1.4fr) minmax(160px,.7fr);align-items:stretch;gap:1rem;display:grid}.transformer-node,.transformer-line-card{background:#fffaf014;border:1px solid #fff7dc38;border-radius:24px;min-height:260px;padding:clamp(1rem,3vw,1.35rem)}.transformer-node h3,.transformer-line-card h3{color:#fff7dc;font-size:clamp(1.35rem,3vw,2rem)}.transformer-node p:not(.panel-label),.transformer-line-card p:not(.panel-label){color:#fff7dccc;line-height:1.5}.transformer-coils{justify-content:center;align-items:center;gap:.22rem;min-height:110px;margin:1rem 0;display:flex}.transformer-coils span{border:3px solid #f8d98a;border-radius:999px;width:20px;height:88px;box-shadow:0 0 18px #f8d98a52}.transformer-coils-small span{height:68px}.transformer-line{background:linear-gradient(90deg,#38bdf833,#f8d98a47);border-radius:999px;height:90px;margin:1.2rem 0;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #fff7dc2e}.transformer-line:before,.transformer-line:after{content:"";background:#fff7dcc7;border-radius:999px;height:8px;position:absolute;left:8%;right:8%}.transformer-line:before{top:28px}.transformer-line:after{bottom:28px}.line-flow{width:18px;height:18px;transform:translateY(-50%) scale(var(--transformer-current-scale,.5));background:#38bdf8;border-radius:999px;transition:opacity .18s,transform .18s;animation:3s linear infinite transformer-flow;position:absolute;top:50%;box-shadow:0 0 16px #38bdf8b8}.transformer-grid-shell[data-transformer-voltage-level=medium] .flow-three{opacity:.35}.transformer-grid-shell[data-transformer-voltage-level=high] .flow-two,.transformer-grid-shell[data-transformer-voltage-level=high] .flow-three{opacity:0}.flow-two{animation-delay:-1s}.flow-three{animation-delay:-2s}@keyframes transformer-flow{0%{left:6%}to{left:90%}}.heat-track{background:#fffaf024;border:1px solid #fff7dc40;border-radius:999px;height:18px;overflow:hidden}.heat-track span{width:var(--transformer-heat-level,25%);border-radius:inherit;background:linear-gradient(90deg,#38bdf8,#f8d98a,#f59e0b);height:100%;transition:width .18s;display:block;box-shadow:0 0 16px #f59e0b66}.transformer-scale-ladder{background:#08132161;border:1px solid #fff7dc29;border-radius:18px;gap:.65rem;margin-top:1rem;padding:.85rem;display:grid}.transformer-scale-ladder h4{color:#fff7dc;margin:0;font-size:1rem}.scale-ladder-intro{margin:0;font-size:.9rem}.transformer-scale-row{background:#fffaf00f;border:1px solid #fff7dc1f;border-radius:14px;grid-template-columns:minmax(4.8rem,.45fr) minmax(0,1fr);align-items:center;gap:.65rem;padding:.65rem;display:grid}.transformer-scale-row[data-selected=true]{border-color:#f8d98ab8;box-shadow:0 0 0 1px #f8d98a2e,0 16px 38px #f59e0b1f}.transformer-scale-row strong{color:#fff7dc}.transformer-scale-row span{color:#fff7dcd1;font-size:.86rem;display:block}.scale-mini-track{background:#fffaf024;border-radius:999px;height:7px;margin:.25rem 0 .45rem;overflow:hidden}.scale-mini-track span{border-radius:inherit;width:0%;height:100%;transition:width .18s;display:block}.current-track span{background:#38bdf8}.heat-mini-track span{background:linear-gradient(90deg,#38bdf8,#f8d98a,#f59e0b)}.transformer-controls{grid-column:1/2}.transformer-readings{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.transformer-note{color:var(--muted);line-height:1.55}.house-wiring-shell{grid-template-columns:1fr}.house-wiring-board,.house-controls,.house-comparison-card{grid-column:1/-1}.house-wiring-stage{grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);align-items:stretch;gap:1rem;display:grid}.house-loop-card,.house-answer-card{background:#fffaf014;border:1px solid #fff7dc38;border-radius:24px;min-height:300px;padding:clamp(1rem,3vw,1.5rem)}.house-loop-card h3,.house-answer-card h3{color:#fff7dc;letter-spacing:-.055em;max-width:14ch;font-size:clamp(2rem,5vw,3.4rem);line-height:.98}.house-loop-card p:not(.panel-label),.house-answer-card p:not(.panel-label){color:#fff7dcd1;font-weight:800;line-height:1.55}.house-loop-diagram{grid-template-columns:auto minmax(44px,1fr) auto minmax(44px,1fr) auto;align-items:center;gap:.55rem;min-height:90px;margin:1.4rem 0;display:grid;position:relative}.house-loop-node{color:#fff7dc;background:#fffaf017;border:1px solid #fff7dc38;border-radius:18px;place-items:center;min-width:84px;min-height:58px;font-weight:950;display:grid}.house-live-node{color:#f8d98a}.house-neutral-node{color:#38bdf8}.house-loop-flow{background:linear-gradient(90deg,#f8d98a,#38bdf8);border-radius:999px;height:10px;box-shadow:0 0 18px #f8d98a4d}.house-leak-path{color:#fff7dc8f;letter-spacing:.08em;opacity:.35;text-transform:uppercase;border:1px dashed #f8d98a6b;border-radius:999px;place-items:center;min-width:68px;min-height:38px;font-size:.78rem;font-weight:950;display:grid;position:absolute;bottom:-.3rem;right:clamp(1rem,10vw,7rem)}.house-answer-card{align-content:start;gap:.8rem;display:grid}.house-watchers{gap:.7rem;margin-top:.5rem;display:grid}.house-watcher{background:#fffaf014;border:1px solid #fff7dc2e;border-radius:18px;padding:.9rem}.house-watcher span{color:#fff7dc9e;letter-spacing:.08em;text-transform:uppercase;margin-bottom:.3rem;font-size:.75rem;font-weight:950;display:block}.house-watcher strong{color:#fff7dc;font-size:1.1rem}.house-controls{grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;display:grid}.house-step{color:var(--green-dark);cursor:pointer;justify-content:center;align-items:center;gap:.55rem;display:inline-flex}.house-step span{background:#146c531f;border-radius:999px;place-items:center;width:1.6rem;height:1.6rem;font-size:.78rem;font-weight:950;display:inline-grid}.house-step.is-current{background:#146c531f;border-color:#146c536b}.house-rule-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;display:grid}.house-rule-grid div{border:1px solid var(--line);background:#ffffff5c;border-radius:20px;padding:1rem}.house-rule-grid span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;margin-bottom:.35rem;font-size:.78rem;font-weight:900;display:block}.house-rule-grid strong{color:var(--green-dark);margin-bottom:.45rem;font-size:1.18rem;display:block}[data-house-state=overcurrent] .house-loop-card,[data-house-breaker-state=active]{border-color:#f8d98ab8;box-shadow:0 0 0 1px #f8d98a2e,0 16px 38px #f59e0b1f}[data-house-state=leakage] .house-leak-path,[data-house-gfci-state=active]{opacity:1;color:#fff7dc;border-color:#f8d98ab8;box-shadow:0 0 0 1px #f8d98a2e,0 16px 38px #f59e0b1f}.neighborhood-distribution-shell{grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr)}.neighborhood-board,.neighborhood-readings,.neighborhood-model-card{grid-column:1/-1}.neighborhood-stage{grid-template-columns:minmax(160px,.8fr) minmax(260px,1.2fr) minmax(180px,.9fr) minmax(180px,.9fr);align-items:stretch;gap:1rem;display:grid}.neighborhood-node,.neighborhood-feeder-card,.neighborhood-home-card{background:#fffaf014;border:1px solid #fff7dc38;border-radius:24px;min-height:260px;padding:clamp(1rem,3vw,1.35rem)}.neighborhood-node h3,.neighborhood-feeder-card h3,.neighborhood-home-card h3{color:#fff7dc;font-size:clamp(1.35rem,3vw,2rem);line-height:1.05}.neighborhood-node p:not(.panel-label),.neighborhood-feeder-card p:not(.panel-label),.neighborhood-home-card p:not(.panel-label){color:#fff7dcd1;line-height:1.5}.neighborhood-feeder-line{background:linear-gradient(90deg,#38bdf833,#f8d98a47);border-radius:999px;height:90px;margin:1.2rem 0;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #fff7dc2e}.neighborhood-feeder-line:before,.neighborhood-feeder-line:after{content:"";background:#fff7dcc7;border-radius:999px;height:8px;position:absolute;left:8%;right:8%}.neighborhood-feeder-line:before{top:28px}.neighborhood-feeder-line:after{bottom:28px}.neighborhood-feeder-line .line-flow{transform:translateY(-50%) scale(var(--neighborhood-current-scale,.45))}.neighborhood-distribution-shell[data-neighborhood-voltage-level=medium] .flow-three{opacity:.35}.neighborhood-distribution-shell[data-neighborhood-voltage-level=high] .flow-two,.neighborhood-distribution-shell[data-neighborhood-voltage-level=high] .flow-three{opacity:0}.neighborhood-heat-track span{width:var(--neighborhood-heat-level,14%)}.neighborhood-transformer{gap:.55rem;margin:1rem 0;display:grid}.neighborhood-transformer span{border:3px solid #f8d98a;border-radius:999px;height:42px;box-shadow:0 0 18px #f8d98a47}.neighborhood-transformer strong{color:#fff7dc}.home-load-stack{flex-wrap:wrap;gap:.45rem;margin:1rem 0;display:flex}.home-load-chip{color:#fff7dc9e;letter-spacing:.04em;text-transform:uppercase;border:1px solid #fff7dc33;border-radius:999px;padding:.5rem .7rem;font-size:.82rem;font-weight:950}.home-load-chip.is-on{color:#fff7dc;background:#f8d98a1f;border-color:#f8d98ab8}.neighborhood-controls{grid-column:1/2}.neighborhood-readings{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.neighborhood-note{color:var(--muted);line-height:1.55}.grid-balancing-shell{grid-template-columns:minmax(0,1.05fr) minmax(300px,.95fr)}.grid-balancing-board,.grid-balancing-readings,.grid-balancing-model-card{grid-column:1/-1}.grid-balance-stage{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.grid-balance-panel,.grid-frequency-panel{background:#fffaf014;border:1px solid #fff7dc38;border-radius:24px;min-height:280px;padding:clamp(1rem,3vw,1.5rem)}.grid-balance-panel h3,.grid-frequency-panel h3{color:#fff7dc;font-size:clamp(1.65rem,4vw,2.7rem);line-height:1.05}.grid-balance-panel p:not(.panel-label),.grid-frequency-panel p:not(.panel-label){color:#fff7dcd1;line-height:1.5}.grid-balance-row{color:#fff7dcc7;letter-spacing:.06em;text-transform:uppercase;grid-template-columns:100px minmax(0,1fr);align-items:center;gap:.8rem;margin-top:1.2rem;font-size:.82rem;font-weight:900;display:grid}.grid-power-track{background:#fff7dc1f;border-radius:999px;height:18px;overflow:hidden;box-shadow:inset 0 0 0 1px #fff7dc1f}.grid-power-track span{border-radius:inherit;height:100%;transition:width .22s,background .22s;display:block}.grid-generation-bar{background:linear-gradient(90deg,#38bdf8,#93e5ff);width:56%}.grid-demand-bar{background:linear-gradient(90deg,#f59e0b,#f8d98a);width:68%}.grid-balance-caption{margin-top:1.35rem;font-weight:900}.grid-frequency-scale{background:#fff7dc14;border:3px solid #fff7dc29;border-radius:999px;grid-template-columns:1fr .28fr 1fr;height:32px;margin-top:1.8rem;display:grid;position:relative;overflow:visible}.grid-frequency-zone{height:100%;display:block}.grid-frequency-zone-low{background:linear-gradient(90deg,#f87171b8,#f59e0b5c);border-radius:999px 0 0 999px}.grid-frequency-zone-nominal{background:#86efacbf}.grid-frequency-zone-high{background:linear-gradient(90deg,#38bdf85c,#f87171b8);border-radius:0 999px 999px 0}.grid-frequency-needle{background:#fff7dc;border-radius:999px;width:5px;height:48px;transition:left .22s;position:absolute;top:-10px;left:49%;transform:translate(-50%);box-shadow:0 0 0 3px #0f172ab3,0 0 20px #fff7dcb3}.grid-frequency-labels{color:#fff7dc9e;justify-content:space-between;gap:.8rem;margin-top:.65rem;font-size:.76rem;font-weight:850;display:flex}.grid-response-ladder{grid-template-columns:repeat(4,minmax(0,1fr));gap:.8rem;margin-top:1rem;display:grid}.grid-response-stage{opacity:.62;background:#0f172a42;border:1px solid #fff7dc29;border-radius:20px;min-height:210px;padding:1.1rem;transition:border-color .22s,background .22s,opacity .22s,transform .22s;position:relative}.grid-response-stage:before{content:"";background:#fff7dc61;border-radius:999px;width:10px;height:10px;margin-bottom:.9rem;display:block}.grid-response-stage>span{color:#fff7dc94;letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;font-weight:900}.grid-response-stage h3{color:#fff7dc;margin-top:.45rem;font-size:1.15rem}.grid-response-stage p{color:#fff7dcb8;line-height:1.48}.grid-response-stage[data-stage-state=active]{opacity:1;background:#22c55e1a;border-color:#86efac80;transform:translateY(-2px)}.grid-response-stage[data-stage-state=active]:before{background:#86efac;box-shadow:0 0 16px #86efacb3}.grid-response-stage[data-stage-state=limited]{opacity:.9;background:#f59e0b1a;border-color:#f8d98a75}.grid-response-stage[data-stage-state=limited]:before{background:#f8d98a}.grid-response-stage[data-stage-state=blocked]{opacity:.82;background:#ef44441a;border-color:#f8717175}.grid-response-stage[data-stage-state=blocked]:before{background:#f87171}.grid-response-stage[data-stage-state=unavailable]{opacity:.74;background:#0f172a4d;border-color:#fff7dc33}.grid-response-stage[data-stage-state=unavailable]:before{background:#fff7dc75}.grid-balancing-shell[data-grid-state=protection] .grid-frequency-panel{border-color:#f8717194;box-shadow:0 0 0 1px #f871711f,0 18px 42px #7f1d1d24}.grid-balancing-shell[data-grid-state=restoring] .grid-frequency-panel{border-color:#86efac75}.grid-balancing-controls{grid-column:1/2}.grid-demand-response-control{align-items:flex-start}.grid-balancing-readings{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem;display:grid}.grid-model-note{color:var(--muted);line-height:1.55}.electricity-mix-shell{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}.electricity-mix-board,.electricity-mix-model-card{grid-column:1/-1}.mix-context-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.mix-profile-card,.mix-snapshot-card{background:#fffaf012;border:1px solid #fff7dc2e;border-radius:24px;padding:clamp(1rem,3vw,1.5rem)}.mix-profile-card h3,.mix-snapshot-card h3{color:#fff7dc;font-size:clamp(1.45rem,3vw,2.2rem);line-height:1.08}.mix-profile-card p:not(.panel-label),.mix-snapshot-card p:not(.panel-label),.mix-profile-card li{color:#fff7dcc2;line-height:1.5}.mix-profile-card ul{flex-wrap:wrap;gap:.45rem;margin:1rem 0 0;padding:0;list-style:none;display:flex}.mix-profile-card li{background:#38bdf814;border:1px solid #93e5ff33;border-radius:999px;padding:.35rem .6rem;font-size:.78rem;font-weight:800}.mix-snapshot-demand{color:#fff7dcad;letter-spacing:.05em;text-transform:uppercase;border-top:1px solid #fff7dc24;justify-content:space-between;align-items:baseline;gap:1rem;margin:1.4rem 0 .8rem;padding-top:1rem;font-size:.8rem;font-weight:850;display:flex}.mix-snapshot-demand strong{color:#f8d98a;letter-spacing:-.03em;text-transform:none;font-size:clamp(1.45rem,3vw,2rem)}.mix-source-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem;margin-top:1rem;display:grid}.mix-source-row{--mix-source-color:#93e5ff;background:#0f172a42;border:1px solid #fff7dc24;border-radius:18px;padding:1rem}.mix-source-row[data-mix-source=solar]{--mix-source-color:#f8d98a}.mix-source-row[data-mix-source=wind]{--mix-source-color:#93e5ff}.mix-source-row[data-mix-source=hydro]{--mix-source-color:#67e8f9}.mix-source-row[data-mix-source=flexible]{--mix-source-color:#c4b5fd}.mix-source-heading,.mix-source-values{justify-content:space-between;gap:1rem;display:flex}.mix-source-heading strong{color:#fff7dc;font-size:1.05rem}.mix-source-heading span,.mix-source-values{color:#fff7dc9e;font-size:.75rem;font-weight:800}.mix-source-values{margin-top:.65rem}.mix-source-values span:last-child{color:var(--mix-source-color)}.mix-capacity-track{background:#fff7dc14;border-radius:999px;height:18px;margin-top:.55rem;position:relative;overflow:hidden}.mix-capacity-track span,.mix-capacity-track i{border-radius:999px;transition:width .22s;display:block;position:absolute;left:0}.mix-capacity-track span{background:color-mix(in srgb, var(--mix-source-color) 26%, transparent);height:100%;box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--mix-source-color) 40%, transparent);top:0}.mix-capacity-track i{background:var(--mix-source-color);height:8px;box-shadow:0 0 12px color-mix(in srgb, var(--mix-source-color) 48%, transparent);top:5px}.mix-bar-legend{color:#fff7dca3;flex-wrap:wrap;gap:1rem;margin-top:.9rem;font-size:.76rem;font-weight:800;display:flex}.mix-bar-legend span{align-items:center;gap:.4rem;display:inline-flex}.mix-bar-legend i{background:#93e5ff;border-radius:999px;width:28px;display:inline-block}.mix-legend-capacity{opacity:.28;height:14px}.mix-legend-output{height:7px}.electricity-mix-controls{grid-column:1/2}.mix-balance-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:28px;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:.8rem;padding:clamp(1.1rem,3vw,1.6rem);display:grid}.mix-balance-card>div:not(.mix-balance-operator){gap:.3rem;display:grid}.mix-balance-card span{color:var(--muted);letter-spacing:.07em;text-transform:uppercase;font-size:.72rem;font-weight:900}.mix-balance-card strong{color:var(--ink);font-size:clamp(1.05rem,2vw,1.35rem);line-height:1.15}.mix-balance-operator{color:var(--accent);font-size:1.4rem;font-weight:900}.mix-balance-card>p{border-top:1px solid var(--line);color:var(--muted);grid-column:1/-1;margin:.35rem 0 0;padding-top:.8rem;font-weight:800;line-height:1.45}.electricity-mix-shell[data-storage-action=charging] .mix-balance-card strong[data-mix-storage]{color:var(--accent)}.electricity-mix-shell[data-storage-action=discharging] .mix-balance-card strong[data-mix-storage]{color:var(--accent-2)}.mix-storage-note,.mix-model-boundary{color:var(--muted);line-height:1.55}.mix-model-boundary{border-top:1px solid var(--line);padding-top:.9rem;font-size:.9rem}@media (width<=980px) and (width>=761px){.grid-response-ladder{grid-template-columns:repeat(2,minmax(0,1fr))}}.site-footer{color:var(--muted);border-top:1px solid var(--line);justify-content:space-between;gap:1rem;padding:2rem 0 3rem;display:flex}.footer-small{max-width:420px}@media (width<=760px){.site-header,.site-footer,.index-heading,.article-cards,.contrast-stage,.static-meters,.manual-actions,.switch-readings,.ohms-stage,.ohms-controls,.ohms-readings,.ohms-compare-grid,.ac-dc-stage,.ac-dc-controls,.ac-dc-step-buttons,.ac-dc-readings,.ac-dc-pipeline,.adapter-stage,.adapter-controls,.adapter-checklist,.power-energy-stage,.power-energy-controls,.power-energy-readings,.grounding-stage,.grounding-controls,.grounding-readings,.grounding-protection-grid,.battery-stage,.battery-controls,.battery-readings,.battery-chemical-meter,.generator-stage,.generator-controls,.generator-readings,.generator-legend,.transformer-stage,.transformer-controls,.transformer-readings,.house-wiring-stage,.house-controls,.house-rule-grid,.house-loop-diagram,.neighborhood-stage,.neighborhood-controls,.neighborhood-readings,.grid-balance-stage,.grid-response-ladder,.grid-balancing-controls,.grid-balancing-readings,.mix-context-grid,.mix-source-list,.electricity-mix-controls,.mix-balance-card,.lab-shell,.lab-board-header{grid-template-columns:1fr;display:grid}.site-header{gap:1rem}h1{font-size:clamp(2.35rem,11vw,3.7rem)}.article-container h1{overflow-wrap:anywhere}.hero{padding-top:1.6rem}.hero-copy h1{font-size:clamp(2.8rem,14vw,4rem)}.article-card{min-height:0}.lab-status{text-align:left}.mix-balance-operator{display:none}.mix-balance-card>p{grid-column:1}.circuit{min-height:220px}}@media (prefers-reduced-motion:reduce){.grid-power-track span,.grid-frequency-needle,.grid-response-stage,.mix-capacity-track span,.mix-capacity-track i{transition:none!important}.charge-dot,.field-line,.spark-active,.generator-moving-magnet,.generator-flux-line,.generator-voltage-pulse,.generator-current-path,.line-flow,[data-static-state=critical] .charged-object{animation:none!important}}
