/* Verbanden (prefix vb-) */
.vb-wrap { max-width: 100%; margin: 8px auto; text-align: center; }
.vb-chart { width: 100%; max-width: 440px; height: auto; display: block; margin: 0 auto; background: var(--card); border-radius: 12px; }
.vb-chart text { font-family: inherit; fill: var(--ink); }
.vb-grid { stroke: var(--line); stroke-width: 1.2; }
.vb-axis { stroke: var(--ink); stroke-width: 2; }
.vb-yl { font-size: 12px; text-anchor: end; }
.vb-xl { font-size: 12px; text-anchor: middle; font-weight: 600; }
.vb-unit { font-size: 12px; font-weight: 700; fill: var(--muted) !important; }
.vb-leg { font-size: 12px; font-weight: 600; }
.vb-leg.vb-big { font-size: 14px; }
.vb-bar { stroke: var(--ink); stroke-width: 1; }
.vb-s0 { fill: var(--primary); }
.vb-s1 { fill: var(--accent); }
.vb-line { fill: none; stroke-width: 3; stroke-linejoin: round; stroke-linecap: round; }
.vb-ls0 { stroke: var(--primary); }
.vb-ls1 { stroke: var(--accent); stroke-dasharray: 7 4; }
.vb-pt { stroke: var(--card); stroke-width: 1.5; }
.vb-slice { stroke: var(--card); stroke-width: 2; }
.vb-c0 { fill: var(--g6); } .vb-c1 { fill: var(--g8); } .vb-c2 { fill: var(--g5); }
.vb-c3 { fill: var(--g4); } .vb-c4 { fill: var(--g7); } .vb-c5 { fill: var(--g3); }
.vb-beeld { border-collapse: collapse; margin: 0 auto; background: var(--card); }
.vb-beeld th, .vb-beeld td { border-bottom: 2px solid var(--line); padding: 6px 8px; text-align: left; color: var(--ink); }
.vb-beeld th { font-size: .95rem; white-space: nowrap; padding-right: 12px; }
.vb-beeld td { font-size: 1.3rem; line-height: 1.2; white-space: nowrap; }
.vb-beeld td span { display: inline-block; width: 1.15em; text-align: center; }
.vb-beeld td span.vb-half { width: .62em; overflow: hidden; white-space: nowrap; text-align: left; vertical-align: bottom; }
.vb-key { margin-top: 8px; font-weight: 700; color: var(--ink); }
.vb-key span { font-size: 1.3rem; }
@media (max-width: 380px) { .vb-beeld td { font-size: 1.1rem; } .vb-beeld th { font-size: .85rem; padding-right: 6px; } }
.vb-tblwrap { overflow-x: auto; }
.tbl.vb-tbl { margin: 0 auto; font-size: .95rem; }
.tbl.vb-tbl th, .tbl.vb-tbl td { padding: 5px 7px; }
.tbl.vb-tbl td:first-child { font-weight: 700; text-align: left; background: #FAF6EE; }
