/* StorageIQ — schematische diagrammen (energie, prijs, netto-effect).
   Werkt op lichte én donkere banden; alle kleuren via tokens. */
.sch{display:block;width:100%;height:auto}
.figure.is-schema{background:var(--bg-surface);display:block;padding:clamp(18px,2.4vw,30px);border-radius:var(--r-xl);border:1px solid var(--line)}
.figure.is-schema::after{content:none}
.ctx-dark .figure.is-schema{background:var(--bg-raised);border-color:var(--line-on-dark,rgba(246,244,252,0.16))}
.sch .grid{stroke:var(--line);stroke-width:1}
.sch .axis{stroke:var(--line-strong);stroke-width:1}
.sch .ax-t{font-family:var(--font-mono);font-size:9px;fill:var(--fg-dim);letter-spacing:.06em}
.sch .lbl{font-family:var(--font-display);font-size:11px;font-weight:700;fill:var(--fg)}
.sch .lbl-s{font-family:var(--font-body);font-size:9.5px;fill:var(--fg-muted)}
.sch .key{font-family:var(--font-mono);font-size:8.5px;fill:var(--fg-dim);letter-spacing:.1em;text-transform:uppercase}
.sch .price{fill:none;stroke:var(--fg);stroke-width:2;stroke-linejoin:round}
.sch .soc{fill:none;stroke:var(--accent);stroke-width:2;stroke-dasharray:5 3.5}
.sch .zone-lo{fill:var(--accent-tint)}
.sch .zone-hi{fill:rgba(33,16,64,0.075)}
.ctx-dark .sch .zone-hi{fill:rgba(246,244,252,0.09)}
.sch .box{fill:var(--bg);stroke:var(--line-strong);stroke-width:1.2;rx:6}
.ctx-dark .sch .box{fill:var(--bg-surface)}
.sch .box-acc{fill:var(--accent-tint);stroke:var(--accent);stroke-width:1.4}
.sch .flow{fill:none;stroke:var(--fg-muted);stroke-width:1.6}
.sch .flow-acc{fill:none;stroke:var(--accent);stroke-width:2}
.sch .head{fill:var(--fg-muted)}
.sch .head-acc{fill:var(--accent)}
.sch .bar-cost{fill:var(--fg);opacity:.22}
.ctx-dark .sch .bar-cost{fill:var(--text-on-dark,#F6F4FC);opacity:.2}
.sch .bar-save{fill:var(--accent)}
.sch .num{font-family:var(--font-display);font-size:13px;font-weight:800;fill:var(--fg);letter-spacing:-.02em}
.sch-cap{margin-top:14px;font-size:12.5px;color:var(--fg-muted);line-height:1.5}
.sch-legend{display:flex;flex-wrap:wrap;gap:10px 20px;margin-top:14px}
.sch-legend span{display:inline-flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--fg-muted)}
.sch-legend i{width:16px;height:0;border-top:2px solid var(--fg);flex:0 0 auto}
.sch-legend i.acc{border-top-style:dashed;border-color:var(--accent)}
.sch-legend i.sq{height:10px;border:none;background:var(--accent-tint);border-radius:2px}
.sch-legend i.sq-hi{height:10px;border:none;background:rgba(33,16,64,0.10);border-radius:2px}
.ctx-dark .sch-legend i.sq-hi{background:rgba(246,244,252,0.12)}
