.tegel .sub{color:var(--tekst-zacht);margin-top:2px;font-size:12px}.tegel .waarde small{color:var(--tekst-zacht);margin-left:4px;font-size:15px;font-weight:600}.aandacht{gap:6px;margin:0;padding:0;list-style:none;display:grid}.aandacht li{align-items:baseline;gap:8px;display:flex}.aandacht li:before{content:"●";color:var(--rood);flex:none;font-size:10px}.dagkolom.compact{min-height:0}.dagkolom.compact .dagkolom-kop{padding:8px 10px}.dagkolom.compact .dagkolom-inhoud{gap:2px;padding:6px 10px 8px;font-size:12.5px}.dagkolom.compact .regel{justify-content:space-between;gap:8px;display:flex}.dagkolom.compact .regel b{font-variant-numeric:tabular-nums}.dagkolom.compact .regel.rood b,.rood{color:var(--rood)}.lotlijst{margin:0;padding:0;list-style:none}.lotlijst li{border-bottom:1px solid var(--grijs-100);flex-wrap:wrap;justify-content:space-between;gap:8px;padding:6px 0;font-size:13px;display:flex}.lotlijst li:last-child{border-bottom:0}.tabel.strak td,.tabel.strak th{padding:6px 10px}.tabel td.smal{white-space:nowrap;width:1%}.tourstip{align-items:center;gap:6px;display:inline-flex}.historiek-kop{flex-wrap:wrap;align-items:flex-end;gap:12px;margin-bottom:14px;display:flex}.historiek-kop .veld{min-width:240px}.logboek-actie{color:var(--grijs-600);font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px}.instellingen{max-width:980px}.instellingen .formulier{max-width:640px}.legende{gap:10px;margin-top:8px;display:grid}.legende .capaciteit{max-width:360px}.legende .uitleg{color:var(--tekst-zacht);font-size:12.5px}.werkdagen{flex-wrap:wrap;gap:6px;display:flex}.werkdagen label{border:1px solid var(--grijs-300);cursor:pointer;border-radius:8px;align-items:center;gap:6px;padding:6px 10px;display:inline-flex}.werkdagen label.aan{background:var(--goud-licht);border-color:var(--goud-donker);font-weight:600}.keuzeblok{gap:8px;display:grid}.keuzeblok label{border:1px solid var(--grijs-300);cursor:pointer;border-radius:8px;grid-template-columns:18px 1fr;align-items:start;gap:10px;padding:10px 12px;display:grid}.keuzeblok label.aan{background:var(--goud-licht);border-color:var(--goud-donker)}.keuzeblok label input{margin-top:3px}.keuzeblok .uitleg{color:var(--tekst-zacht);font-size:12.5px;font-weight:400}.wachtwoord-tonen{letter-spacing:.06em;background:var(--wit);-webkit-user-select:all;user-select:all;word-break:break-all;border:1px dashed #86efac;border-radius:8px;padding:10px 14px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:22px}.kolomlijst{background:var(--grijs-50);border:1px solid var(--grijs-200);white-space:nowrap;border-radius:8px;padding:8px 10px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;overflow-x:auto}.verslag-lijst{columns:2;column-gap:24px;margin:4px 0 0 18px;padding:0;font-size:13px}.verslag-lijst li{break-inside:avoid}.blokkaart{border:1px solid var(--grijs-200);background:var(--wit);border-radius:8px;padding:10px 12px;font-size:13px}.blokkaart .kop{background:0 0;border:0;justify-content:space-between;gap:8px;height:auto;padding:0 0 6px;font-weight:650;display:flex;position:static}.blokkaart .klantlijst{color:var(--grijs-700);margin:0;padding:0 0 0 16px}.blokkaart .klantlijst li{margin:1px 0}.blokkaart .notitie{color:#92400e;font-size:12px}details.uitklap>summary{cursor:pointer;padding:6px 0;font-weight:600;list-style:none}details.uitklap>summary:before{content:"▸ ";color:var(--tekst-zacht)}details.uitklap[open]>summary:before{content:"▾ "}.bestandkeuze{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.bestandkeuze input[type=file]{max-width:100%}.stap{background:var(--navy);color:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;width:24px;height:24px;margin-right:8px;font-size:12.5px;font-weight:700;display:inline-flex}.mijnrit{max-width:760px;margin:0 auto}.mijnrit h1{font-size:20px}.mijnrit .groepkop{text-transform:uppercase;letter-spacing:.06em;color:var(--tekst-zacht);margin:18px 0 8px;font-size:12px;font-weight:650}.ritblok{background:var(--wit);border:1px solid var(--grijs-200);border-left:5px solid var(--grijs-400);box-shadow:var(--schaduw);border-radius:12px;margin-bottom:12px;overflow:hidden}.ritblok.open{border-color:var(--goud-donker);border-left-color:var(--goud-donker);box-shadow:0 0 0 2px var(--goud-licht)}.ritblok-kop{text-align:left;cursor:pointer;width:100%;font:inherit;background:0 0;border:0;gap:4px;padding:14px;display:grid}.ritblok-kop .titel{justify-content:space-between;align-items:center;gap:8px;font-size:16px;font-weight:700;display:flex}.ritblok-kop .sub{color:var(--tekst-zacht);flex-wrap:wrap;gap:6px 14px;font-size:13px;display:flex}.ritblok-acties{grid-template-columns:1fr;gap:8px;padding:0 14px 14px;display:grid}.ritblok-acties .knop{min-height:50px;font-size:16px}.mijnrit .stops{padding:0 10px 12px}.mijnrit .stopkaart{position:relative}.mijnrit .stopkaart.afgemeld{background:var(--grijs-50);box-shadow:none}.mijnrit .stopkaart .kop{background:0 0;border:0;align-items:flex-start;gap:10px;height:auto;padding:0;display:flex;position:static}.mijnrit .stopkaart .nr{background:var(--navy);color:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;width:34px;height:34px;font-size:15px;font-weight:700;display:inline-flex}.mijnrit .stopkaart.afgemeld .nr{background:var(--grijs-400)}.mijnrit .stopkaart .naam{font-size:17px;font-weight:700;line-height:1.2}.mijnrit .stopkaart .adres{color:var(--grijs-700);margin-top:2px;font-size:14px}.mijnrit .stopkaart .links{grid-template-columns:1fr 1fr;gap:8px;margin-top:10px;display:grid}.mijnrit .stopkaart .links .knop{min-height:46px;font-size:15px}.mijnrit .stopkaart .instructies{background:var(--goud-licht);color:#78350f;border:1px solid #fde68a;border-radius:8px;margin-top:10px;padding:8px 10px;font-size:14px;font-weight:600}.mijnrit .bestelling{border-top:1px solid var(--grijs-100);margin-top:10px;padding-top:8px;font-size:14px}.mijnrit .bestelling .kop{flex-wrap:wrap;justify-content:space-between;gap:8px;font-weight:600;display:flex}.mijnrit .bestelling .opmerking{background:var(--blauw-licht);color:#1e3a8a;border-radius:6px;margin:6px 0;padding:6px 8px;font-weight:600}.mijnrit .lijnen{color:var(--grijs-700);margin:4px 0 0;padding:0 0 0 18px}.mijnrit .lijnen li{margin:2px 0}.mijnrit .stopkaart .knoppen.drie{grid-template-columns:1fr 1fr}.mijnrit .stopkaart .knoppen.drie .knop:first-child{grid-column:1/-1}.mijnrit .stopkaart .knoppen .knop{min-height:52px}.mijnrit .afgemeld-info{color:var(--tekst-zacht);justify-content:space-between;align-items:center;gap:8px;margin-top:8px;font-size:13px;display:flex}.mijnrit .stopkaart .reden{color:#7f1d1d;margin-top:4px;font-size:13px}.mijnrit details.uitklap>summary{padding:10px 4px;font-size:14px}.mijnrit .kies-chauffeur{margin-bottom:12px}@media (width>=640px){.ritblok-acties{grid-template-columns:1fr 1fr}}@media (width<=900px){.verslag-lijst{columns:1}.mijnrit .pagina-kop h1{font-size:19px}}.bs-invoer{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:16px;display:grid}.bs-zij{top:calc(var(--kop-hoogte) + 16px);flex-direction:column;gap:16px;display:flex;position:sticky}.bs-stap{margin-bottom:16px}.bs-stap-kop{align-items:center;gap:10px;display:flex}.bs-stap-nr{background:var(--navy);color:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;width:24px;height:24px;font-size:12.5px;font-weight:700;display:inline-flex}.bs-klantkaart{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 20px;font-size:13.5px;display:grid}.bs-klantkaart h4{text-transform:uppercase;letter-spacing:.04em;color:var(--tekst-zacht);margin-bottom:4px;font-size:11.5px;font-weight:600}.bs-klantkaart .breed{grid-column:1/-1}.bs-herinnering{background:var(--oranje-licht);color:#78350f;border:1px solid #fde68a;border-left:4px solid var(--oranje);white-space:pre-wrap;border-radius:8px;padding:10px 12px;font-size:14.5px;font-weight:600}.bs-herinnering-kop{text-transform:uppercase;letter-spacing:.05em;margin-bottom:2px;font-size:11px;font-weight:700;display:block}.bs-dagchips{vertical-align:middle;gap:4px;display:inline-flex}.bs-dagchips .chip{justify-content:center;width:30px;padding:2px 0}.bs-dagchips .chip.actief{background:var(--navy);color:#fff;font-weight:650}.bs-totalen{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;display:grid}.bs-totalen .tegel{box-shadow:none;padding:10px 12px}.bs-totalen .waarde{font-size:22px}.bs-lijnen td{vertical-align:top;padding:6px}.bs-lijnen th{padding:8px 6px}.bs-lijnen .invoer{min-height:36px;padding:6px 8px}.bs-lijnen td.aantal{width:96px}.bs-lijnen td.eenheid{width:100px}.bs-lijnen td.opmerking{width:22%}.bs-lijnen td.knop-cel{text-align:right;width:40px}.bs-lijnen tr.bs-let-op td,.tabel tr.bs-let-op td{background:var(--oranje-licht)}.bs-lijnen .bs-lijn-melding{color:#92400e;margin-top:3px;font-size:12px}.bs-lijnen .bs-lijn-info{color:var(--tekst-zacht);margin-top:3px;font-size:12px}.bs-ritkeuze{border:1px solid var(--grijs-200);cursor:pointer;background:var(--wit);border-radius:8px;grid-template-columns:auto minmax(0,1fr) 110px;align-items:center;gap:4px 10px;margin-bottom:6px;padding:8px 10px;display:grid}.bs-ritkeuze:hover{border-color:var(--grijs-400)}.bs-ritkeuze.bs-gekozen{border-color:var(--goud-donker);background:var(--goud-licht)}.bs-ritkeuze.bs-kan-niet{opacity:.75}.bs-ritkeuze .naam{font-weight:600}.bs-ritkeuze .sub{color:var(--tekst-zacht);font-size:12px}.bs-ritkeuze input{width:16px;height:16px;accent-color:var(--navy);margin:0}.bs-ritkeuze .pct{text-align:right;color:var(--tekst-zacht);font-size:12px}.bs-ritkeuze .pct b{color:var(--grijs-900)}.bs-detail{grid-template-columns:minmax(0,2fr) minmax(280px,1fr);align-items:start;gap:16px;display:grid}.bs-lotlijst{flex-direction:column;align-items:flex-start;gap:3px;font-size:12.5px;display:flex}.bs-logboek{margin:0;padding:0;font-size:13px;list-style:none}.bs-logboek li{border-bottom:1px solid var(--grijs-100);padding:6px 0}.bs-logboek li:last-child{border-bottom:0}.okblok h3,.okblok h2{color:inherit;margin-bottom:4px}.bs-lotstabel td.aantal{width:110px}.bs-lotrest{color:var(--tekst-zacht);white-space:nowrap;font-size:12px}.bs-vb-rit{background:var(--wit);border:1px solid var(--grijs-200);border-radius:var(--radius);box-shadow:var(--schaduw);margin-bottom:12px}.bs-vb-rit-kop{grid-template-columns:minmax(180px,1.3fr) minmax(150px,1fr) minmax(160px,1.1fr) auto;align-items:center;gap:12px;padding:12px 16px;display:grid}.bs-vb-rit-kop .naam{flex-wrap:wrap;align-items:center;gap:8px;font-size:15px;font-weight:650;display:flex}.bs-vb-rit-kop .sub{color:var(--tekst-zacht);font-size:12.5px}.bs-vb-rit-knoppen{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.bs-vb-picklijst{border-top:1px solid var(--grijs-200);background:var(--grijs-50);border-radius:0 0 var(--radius) var(--radius);padding:12px 16px 16px}.bs-vb-stop{background:var(--wit);border:1px solid var(--grijs-200);border-radius:8px;margin-bottom:10px}.bs-vb-stop-kop{border-bottom:1px solid var(--grijs-100);flex-wrap:wrap;align-items:center;gap:8px;padding:8px 12px;display:flex}.bs-vb-stop-kop .nr{background:var(--navy);color:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;width:22px;height:22px;font-size:12px;font-weight:700;display:inline-flex}.bs-vb-bestelling{border-bottom:1px solid var(--grijs-100);padding:6px 12px 8px}.bs-vb-bestelling:last-child{border-bottom:0}.bs-vb-bestelling-kop{flex-wrap:wrap;align-items:center;gap:8px;padding:4px 0;display:flex}.bs-vb-bestelling .tabel td,.bs-vb-bestelling .tabel th{padding:6px 8px}.bs-tekort{color:var(--rood);font-weight:650}.bs-klaar-teller{font-size:13px;font-weight:600}.bs-klaar-teller.alles{color:var(--groen)}@media (width<=1000px){.bs-invoer{grid-template-columns:minmax(0,1fr)}.bs-invoer>*{min-width:0}.bs-zij{position:static}.bs-klantkaart,.bs-detail{grid-template-columns:minmax(0,1fr)}.bs-vb-rit-kop{grid-template-columns:1fr 1fr}.bs-vb-rit-knoppen{grid-column:1/-1;justify-content:flex-start}}.teplannen-doel{border-radius:10px;min-height:60px;transition:background .15s}.teplannen-doel.doel{background:var(--goud-licht);outline:2px dashed var(--goud-donker)}.stopchip.doel{outline:2px solid var(--goud-donker)}.stopchip.sleept{opacity:.4}.bestelkaart.overlay{box-shadow:var(--schaduw-groot);width:280px;transform:rotate(-1deg)}.ritrij.gesloten{opacity:.82}.ritrij.gesloten .ritrij-stops{background:var(--grijs-50);border-radius:0 0 10px 10px}.planning-tabs .tabs{margin-bottom:8px}.planning-tabs .tabs button{padding:6px 8px;font-size:12.5px}.verwachtlijst{margin:0;padding:0;list-style:none}.verwachtlijst li{border-bottom:1px solid var(--grijs-100);justify-content:space-between;align-items:center;gap:8px;padding:6px 8px;font-size:13px;display:flex}.voorstel-tabel td{vertical-align:top}.week-teplannen{flex-direction:column;gap:4px;display:flex}.week-teplannen .bestelkaart{margin-bottom:0;padding:5px 8px}.week-teplannen .bestelkaart .kop{font-size:12.5px}.dagkolom .verwacht{color:var(--tekst-zacht);border-top:1px dashed var(--grijs-200);padding:6px 8px 8px;font-size:12px}.stopdetail .tabel td{padding:6px 8px}.ritrij-kop .snelkeuze{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0;-webkit-text-decoration:underline dotted;text-decoration:underline dotted}@media (width<=900px){.bestelkaart{cursor:default}}.planning-tabs .tabs{flex-wrap:wrap;overflow:visible}.ritrij-kop{grid-template-columns:minmax(200px,1.3fr) minmax(130px,1fr) minmax(210px,1.3fr) auto}.ritrij-kop .capaciteit .tekst span{white-space:nowrap}.detail-raster{grid-template-columns:minmax(280px,360px) minmax(0,1fr);align-items:start;gap:16px;display:grid}.detail-raster>*{min-width:0}.detail-raster .definitie{grid-template-columns:minmax(90px,max-content) minmax(0,1fr)}.detail-raster .definitie dd{overflow-wrap:anywhere}.kop-badges{flex-wrap:wrap;align-items:center;gap:6px;margin-top:6px;display:flex}.dagstrook{gap:2px;display:inline-flex}.dagstrook .dag{text-align:center;background:var(--grijs-100);min-width:24px;color:var(--grijs-400);border-radius:5px;padding:1px 4px;font-size:11px;font-weight:600;line-height:1.5}.dagstrook .dag.actief{background:var(--navy);color:#fff}.dagstrook .dag.actief.eigen-tour{background:var(--goud);color:var(--navy)}.chip.kleur{background:var(--wit);border:1px solid var(--grijs-200)}.chip.ja{background:var(--groen-licht);color:#14532d}.chip.let-op{background:var(--oranje-licht);color:#78350f}.chip.uit{background:var(--rood-licht);color:#7f1d1d}.tekst-rood{color:var(--rood);font-weight:650}.tekst-oranje{color:#b45309;font-weight:650}.tekst-groen{color:var(--groen);font-weight:650}.tabel tr.variant-rij td{background:var(--grijs-50);padding-top:6px;padding-bottom:6px;font-size:13px}.tabel tr.variant-rij td:first-child{padding-left:34px}.tabel tr.niet-actief td{color:var(--grijs-400)}.tabel tr.niet-actief td .chip,.tabel tr.niet-actief td .badge{opacity:.6}.knop.klap{min-width:24px;padding:2px 6px;font-size:11px}.tabel .invoer.klein{min-width:60px}.codekiezer{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.codekiezer .code{border:1px solid var(--grijs-300);background:var(--wit);cursor:pointer;border-radius:999px;padding:2px 10px;font-size:12.5px;font-weight:550}.codekiezer .code.aan{background:var(--navy);border-color:var(--navy);color:#fff}.codekiezer .code.aan.uitsluiten{background:var(--rood);border-color:var(--rood)}.codekiezer .code:hover{border-color:var(--grijs-400)}.codekiezer input.invoer{width:120px;min-height:30px;padding:3px 8px}.leverdagen{gap:6px;display:grid}.leverdagen .dagregel{grid-template-columns:110px 1fr;align-items:center;gap:8px;display:grid}.leverdagen .dagregel select.invoer{min-height:32px;padding:4px 8px;font-size:13px}.bereik-rij{grid-template-columns:1fr auto 1fr auto;align-items:center;gap:6px;display:grid}.bereik-rij .invoer{min-height:32px;padding:4px 8px}.varianten-invoer{overflow-x:auto}.varianten-invoer table{border-collapse:collapse;width:100%}.varianten-invoer th{text-align:left;color:var(--tekst-zacht);text-transform:uppercase;letter-spacing:.04em;padding:4px;font-size:11.5px;font-weight:600}.varianten-invoer td{padding:3px 4px}.varianten-invoer .invoer{min-width:70px;min-height:32px;padding:4px 8px;font-size:13px}.staafjes{gap:6px;display:grid}.staafjes .staaf-rij{grid-template-columns:90px 1fr 130px;align-items:center;gap:10px;font-size:13px;display:grid}.staafjes .staaf{background:var(--grijs-100);border-radius:4px;height:16px;overflow:hidden}.staafjes .staaf>span{background:var(--navy);border-radius:4px;min-width:2px;height:100%;display:block}.staafjes .staaf-waarde{text-align:right;color:var(--grijs-700);font-variant-numeric:tabular-nums}.vinkjes{flex-wrap:wrap;gap:6px 14px;display:flex}.vinkjes .vinkje{font-size:13px}.kleurveld{align-items:center;gap:8px;display:flex}.kleurveld input[type=color]{border:1px solid var(--grijs-300);background:var(--wit);cursor:pointer;border-radius:8px;width:44px;height:38px;padding:2px}.totalen{grid-template-columns:repeat(auto-fit,minmax(110px,1fr));gap:8px;margin-bottom:14px;display:grid}.totalen .totaal{background:var(--grijs-50);border:1px solid var(--grijs-200);border-radius:8px;padding:8px 10px}.totalen .totaal b{color:var(--grijs-900);font-size:18px;display:block}.totalen .totaal span{color:var(--tekst-zacht);font-size:12px}@media (width<=900px){.detail-raster{grid-template-columns:minmax(0,1fr)}.staafjes .staaf-rij{grid-template-columns:70px 1fr 110px}}.om-kop{flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;display:flex}.om-kop .knopgroep{border:1px solid var(--grijs-300);background:var(--wit);border-radius:8px;display:inline-flex;overflow:hidden}.om-kop .knopgroep button{cursor:pointer;color:var(--grijs-700);border:0;border-right:1px solid var(--grijs-200);background:0 0;padding:8px 12px;font-weight:550}.om-kop .knopgroep button:last-child{border-right:0}.om-kop .knopgroep button.actief{background:var(--navy);color:#fff}.om-kop .periode{text-align:center;min-width:200px;font-weight:650}.om-kop .eigen{align-items:center;gap:6px;display:inline-flex}.om-kop .eigen input{width:150px}.om-tegels{grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px;margin-bottom:16px;display:grid}.om-tegels .tegel .verschil{color:var(--tekst-zacht);margin-top:4px;font-size:12px}.om-tegels .tegel .verschil.plus{color:var(--groen)}.om-tegels .tegel .verschil.min{color:var(--rood)}.om-grafiek{max-width:100%;height:auto;display:block}.om-grafiek .raster line{stroke:var(--grijs-200);stroke-width:1px}.om-grafiek .as text{fill:var(--tekst-zacht);font-size:11px}.om-grafiek .staaf{fill:var(--blauw)}.om-grafiek .staaf.weekend{fill:#93c5fd}.om-grafiek .staaf:hover{fill:var(--navy)}.om-grafiek .etiket{fill:var(--grijs-900);text-anchor:middle;font-size:11px;font-weight:650}.om-tabel td.aandeel{width:160px}.om-tabel .balk{background:var(--grijs-100);border-radius:3px;height:6px;overflow:hidden}.om-tabel .balk i{background:var(--blauw);border-radius:3px;height:100%;display:block}@media (width<=900px){.om-kop .periode{min-width:0}.om-tabel td.aandeel{width:90px}}:root{--navy:#182233;--navy-2:#223047;--navy-3:#2c3d5a;--goud:#f5c400;--goud-donker:#c9a200;--goud-licht:#fff7cc;--grijs-900:#1f2937;--grijs-700:#374151;--grijs-600:#4b5563;--grijs-500:#6b7280;--grijs-400:#9ca3af;--grijs-300:#d1d5db;--grijs-200:#e5e7eb;--grijs-100:#f3f4f6;--grijs-50:#f9fafb;--wit:#fff;--achtergrond:#f4f5f7;--tekst:#1f2937;--tekst-zacht:#6b7280;--groen:#16a34a;--groen-licht:#dcfce7;--oranje:#f59e0b;--oranje-licht:#fef3c7;--rood:#dc2626;--rood-licht:#fee2e2;--blauw:#2563eb;--blauw-licht:#dbeafe;--radius:10px;--radius-klein:6px;--schaduw:0 1px 2px #1018280f, 0 1px 3px #1018281a;--schaduw-groot:0 10px 30px #1018282e;--menu-breedte:236px;--menu-smal:68px;--kop-hoogte:56px;--font:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif}*{box-sizing:border-box}html,body,#root{height:100%}body{font-family:var(--font);color:var(--tekst);background:var(--achtergrond);-webkit-font-smoothing:antialiased;font-variant-numeric:tabular-nums;margin:0;font-size:14px;line-height:1.45}a{color:var(--blauw);text-decoration:none}a:hover{text-decoration:underline}h1,h2,h3,h4{letter-spacing:-.01em;color:var(--grijs-900);margin:0;font-weight:650}h1{font-size:22px}h2{font-size:17px}h3{font-size:15px}p{margin:0 0 8px}button,input,select,textarea{font:inherit;color:inherit}::placeholder{color:var(--grijs-400)}.zacht{color:var(--tekst-zacht)}.klein{font-size:12px}.rechts{text-align:right}.mono{font-variant-numeric:tabular-nums}.nowrap{white-space:nowrap}.rij{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.rij-tussen{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.kolom{flex-direction:column;gap:8px;display:flex}.groei{flex:auto;min-width:0}.verborgen{display:none!important}.schil{grid-template-columns:var(--menu-breedte) 1fr;min-height:100vh;display:grid}.schil.ingeklapt{grid-template-columns:var(--menu-smal) 1fr}.menu{background:var(--navy);color:#d5dbe6;flex-direction:column;height:100vh;display:flex;position:sticky;top:0;overflow:hidden}.menu-logo{justify-content:center;align-items:center;padding:18px 16px 10px;display:flex}.menu-logo img{width:150px;max-width:100%;height:auto}.schil.ingeklapt .menu-logo img{width:40px}.menu-nav{flex:1;padding:6px 10px 10px;overflow-y:auto}.menu-groep{text-transform:uppercase;letter-spacing:.08em;color:#7d8aa3;padding:12px 10px 4px;font-size:10.5px}.schil.ingeklapt .menu-groep{display:none}.menu-item{color:#d5dbe6;white-space:nowrap;border-radius:8px;align-items:center;gap:10px;padding:8px 10px;font-weight:500;display:flex}.menu-item:hover{background:var(--navy-2);color:#fff;text-decoration:none}.menu-item.actief{background:var(--goud);color:var(--navy);font-weight:650}.menu-item .icoon{flex:none;justify-content:center;align-items:center;width:20px;display:inline-flex}.icoon-svg{display:block}.icoon-svg.inline{vertical-align:-2px;display:inline-block}.menu-item .teller{color:#fff;background:#ffffff24;border-radius:10px;margin-left:auto;padding:0 7px;font-size:11px;font-weight:650}.menu-item.actief .teller{color:var(--navy);background:#18223329}.schil.ingeklapt .menu-item{justify-content:center;padding:10px 0}.schil.ingeklapt .menu-item span:not(.icoon){display:none}.menu-voet{border-top:1px solid var(--navy-3);padding:10px;font-size:12px}.menu-support{background:var(--navy-2);color:#fff;border-radius:8px;align-items:center;gap:8px;margin-top:8px;padding:7px 10px;font-weight:550;display:flex}.menu-support:hover{background:var(--navy-3);text-decoration:none}.menu-support .zacht{color:#a8b3c7;margin-left:auto}.menu-voet .naam{color:#fff;font-weight:600}.menu-knop{color:#a8b3c7;cursor:pointer;background:0 0;border:0;border-radius:6px;padding:6px 8px}.menu-knop:hover{background:var(--navy-2);color:#fff}.inhoud{flex-direction:column;min-width:0;display:flex}.kop{height:var(--kop-hoogte);background:var(--wit);border-bottom:1px solid var(--grijs-200);z-index:20;align-items:center;gap:12px;padding:0 20px;display:flex;position:sticky;top:0}.kop .titel{font-size:16px;font-weight:650}.pagina{flex:1;padding:20px}.pagina-kop{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:16px;display:flex}.pagina-kop .sub{color:var(--tekst-zacht);margin-top:2px}.hamburger,.scherm,.onder-nav{display:none}.kaart{background:var(--wit);border:1px solid var(--grijs-200);border-radius:var(--radius);box-shadow:var(--schaduw)}.kaart-kop{border-bottom:1px solid var(--grijs-200);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;padding:12px 16px;display:flex}.kaart-kop h2,.kaart-kop h3{font-size:15px}.kaart-inhoud{padding:16px}.kaart-inhoud.strak{padding:0}.raster{gap:16px;display:grid}.raster-2{grid-template-columns:repeat(2,minmax(0,1fr))}.raster-3{grid-template-columns:repeat(3,minmax(0,1fr))}.raster-4{grid-template-columns:repeat(4,minmax(0,1fr))}.tegels{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;display:grid}.tegel{background:var(--wit);border:1px solid var(--grijs-200);border-radius:var(--radius);box-shadow:var(--schaduw);color:inherit;padding:14px 16px;display:block}a.tegel:hover{border-color:var(--grijs-300);box-shadow:var(--schaduw-groot);text-decoration:none}.tegel .waarde{letter-spacing:-.02em;color:var(--grijs-900);font-size:26px;font-weight:700;line-height:1.1}.tegel .label{color:var(--tekst-zacht);margin-top:4px;font-size:12.5px}.tegel.alarm .waarde{color:var(--rood)}.tegel.let-op .waarde{color:var(--oranje)}.tegel.goed .waarde{color:var(--groen)}table.tabel{border-collapse:collapse;width:100%;font-size:13.5px}.tabel th{text-align:left;color:var(--tekst-zacht);text-transform:uppercase;letter-spacing:.04em;border-bottom:1px solid var(--grijs-200);background:var(--grijs-50);z-index:1;padding:10px 12px;font-size:12px;font-weight:600;position:sticky;top:0}.tabel td{border-bottom:1px solid var(--grijs-100);vertical-align:middle;padding:9px 12px}.tabel tr:last-child td{border-bottom:0}.tabel tr.klikbaar{cursor:pointer}.tabel tr.klikbaar:hover td{background:var(--grijs-50)}.tabel td.rechts,.tabel th.rechts{text-align:right}.tabel-wikkel{max-width:100%;overflow-x:auto}.kolom{min-width:0}.leeg{text-align:center;color:var(--tekst-zacht);padding:28px 16px}.leeg strong{color:var(--grijs-700);margin-bottom:4px;display:block}.knop{border:1px solid var(--grijs-300);background:var(--wit);color:var(--grijs-900);cursor:pointer;white-space:nowrap;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:8px 14px;font-weight:550;line-height:1.2;display:inline-flex}.knop:hover{background:var(--grijs-50);border-color:var(--grijs-400);text-decoration:none}.knop:disabled{opacity:.55;cursor:not-allowed}.knop.primair{background:var(--goud);border-color:var(--goud);color:var(--navy);font-weight:650}.knop.primair:hover{background:#ffd21a}.knop.donker{background:var(--navy);border-color:var(--navy);color:#fff}.knop.donker:hover{background:var(--navy-2)}.knop.gevaar{color:var(--rood);background:#fff5f5;border-color:#fecaca}.knop.gevaar:hover{background:var(--rood-licht)}.knop.klein{border-radius:6px;padding:4px 9px;font-size:12.5px}.knop.stil{background:0 0;border-color:#0000}.knop.stil:hover{background:var(--grijs-100)}.knop.groot{border-radius:12px;padding:14px 18px;font-size:16px}.knop.blok{width:100%}.veld{flex-direction:column;gap:4px;min-width:0;display:flex}.veld>label,.veld-label{color:var(--grijs-700);font-size:12.5px;font-weight:600}.veld .hulp{color:var(--tekst-zacht);font-size:12px}.invoer,input.invoer,select.invoer,textarea.invoer{border:1px solid var(--grijs-300);background:var(--wit);border-radius:8px;width:100%;min-height:38px;padding:8px 10px}.invoer:focus{outline-offset:0;border-color:var(--goud-donker);outline:2px solid #f5c4008c}.invoer.fout{border-color:var(--rood)}textarea.invoer{resize:vertical;min-height:72px}.invoer.klein{min-height:32px;padding:4px 8px;font-size:13px}.vinkje{cursor:pointer;align-items:center;gap:8px;font-weight:500;display:inline-flex}.vinkje input{width:16px;height:16px;accent-color:var(--navy)}.formulier{gap:14px;display:grid}.formulier .raster-2{gap:14px}.formulier-acties{border-top:1px solid var(--grijs-200);justify-content:flex-end;gap:8px;margin-top:6px;padding-top:8px;display:flex}.filters{flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px;display:flex}.filters .invoer{width:auto;min-width:140px}.zoekveld{min-width:220px}.foutblok{background:var(--rood-licht);color:#7f1d1d;border:1px solid #fecaca;border-radius:8px;padding:10px 12px}.waarschuwingblok{background:var(--oranje-licht);color:#78350f;border:1px solid #fde68a;border-radius:8px;padding:10px 12px}.infoblok{background:var(--blauw-licht);color:#1e3a8a;border:1px solid #bfdbfe;border-radius:8px;padding:10px 12px}.okblok{background:var(--groen-licht);color:#14532d;border:1px solid #bbf7d0;border-radius:8px;padding:10px 12px}.badge{white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:2px 8px;font-size:12px;font-weight:600;line-height:1.5;display:inline-flex}.badge.doorgestreept{text-decoration:line-through}.chip{background:var(--grijs-100);color:var(--grijs-700);border-radius:6px;align-items:center;gap:4px;padding:1px 7px;font-size:12px;display:inline-flex}.stip{border-radius:50%;flex:none;width:10px;height:10px;display:inline-block}.balk{background:var(--grijs-200);border-radius:999px;height:8px;position:relative;overflow:hidden}.balk>span{border-radius:999px;height:100%;transition:width .25s;display:block}.balk.groot{height:12px}.capaciteit{flex-direction:column;gap:3px;min-width:120px;display:flex}.capaciteit .tekst{color:var(--tekst-zacht);justify-content:space-between;gap:8px;font-size:12px;display:flex}.capaciteit .tekst b{color:var(--grijs-900)}.tabs{border-bottom:1px solid var(--grijs-200);gap:4px;margin-bottom:14px;display:flex;overflow-x:auto}.tabs button{cursor:pointer;color:var(--tekst-zacht);white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;padding:8px 12px;font-weight:550}.tabs button.actief{color:var(--navy);border-bottom-color:var(--goud)}.tabs button .teller{background:var(--grijs-100);border-radius:10px;margin-left:6px;padding:0 6px;font-size:11.5px}.modaal-achtergrond{z-index:100;background:#0f172a73;justify-content:center;align-items:flex-start;padding:6vh 16px 16px;display:flex;position:fixed;inset:0;overflow-y:auto}.modaal{background:var(--wit);box-shadow:var(--schaduw-groot);border-radius:14px;width:100%;max-width:560px}.modaal.breed{max-width:860px}.modaal.smal{max-width:420px}.modaal-kop{border-bottom:1px solid var(--grijs-200);justify-content:space-between;align-items:center;padding:14px 18px;display:flex}.modaal-inhoud{padding:18px}.modaal-voet{border-top:1px solid var(--grijs-200);flex-wrap:wrap;justify-content:flex-end;gap:8px;padding:12px 18px;display:flex}.toasts{z-index:200;flex-direction:column;gap:8px;max-width:min(420px,100vw - 32px);display:flex;position:fixed;bottom:16px;right:16px}.toast{background:var(--navy);color:#fff;box-shadow:var(--schaduw-groot);cursor:pointer;border-radius:10px;padding:10px 14px;font-weight:500;animation:.2s ease-out toast-in}.toast-fout{background:var(--rood)}.toast-waarschuwing{background:#b45309}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.typeahead{position:relative}.typeahead-lijst{background:var(--wit);border:1px solid var(--grijs-200);box-shadow:var(--schaduw-groot);z-index:50;border-radius:10px;max-height:320px;position:absolute;top:calc(100% + 4px);left:0;right:0;overflow-y:auto}.typeahead-item{cursor:pointer;justify-content:space-between;align-items:center;gap:8px;padding:8px 12px;display:flex}.typeahead-item.actief,.typeahead-item:hover{background:var(--goud-licht)}.typeahead-item .sub{color:var(--tekst-zacht);font-size:12px}.planning{grid-template-columns:300px 1fr;align-items:start;gap:16px;display:grid}.planning-zij{top:calc(var(--kop-hoogte) + 16px);max-height:calc(100vh - var(--kop-hoogte) - 32px);position:sticky;overflow-y:auto}.bestelkaart{background:var(--wit);border:1px solid var(--grijs-200);border-left:4px solid var(--grijs-400);cursor:grab;box-shadow:var(--schaduw);border-radius:8px;margin-bottom:8px;padding:8px 10px;font-size:13px}.bestelkaart:active{cursor:grabbing}.bestelkaart.sleept{opacity:.4}.bestelkaart .kop{background:0 0;border:0;justify-content:space-between;gap:8px;height:auto;padding:0;font-weight:600;display:flex;position:static}.bestelkaart .sub{color:var(--tekst-zacht);justify-content:space-between;gap:8px;margin-top:2px;font-size:12px;display:flex}.ritrij{background:var(--wit);border:1px solid var(--grijs-200);border-radius:var(--radius);box-shadow:var(--schaduw);margin-bottom:12px}.ritrij.doel{outline:2px dashed var(--goud-donker);outline-offset:-2px;background:var(--goud-licht)}.ritrij.geweigerd{outline:2px dashed var(--rood);outline-offset:-2px;background:var(--rood-licht)}.ritrij-kop{border-bottom:1px solid var(--grijs-100);grid-template-columns:minmax(180px,1.4fr) minmax(120px,1fr) minmax(160px,1.2fr) auto;align-items:center;gap:12px;padding:10px 14px;display:grid}.ritrij-stops{flex-wrap:wrap;gap:6px;min-height:44px;padding:8px 14px 10px;display:flex}.stopchip{background:var(--grijs-50);border:1px solid var(--grijs-200);cursor:grab;border-radius:8px;align-items:center;gap:6px;padding:4px 8px;font-size:12.5px;display:inline-flex}.stopchip .nr{color:var(--navy);font-weight:700}.stopchip.geleverd{background:var(--groen-licht);border-color:#bbf7d0}.stopchip.niet_geleverd{background:var(--rood-licht);border-color:#fecaca}.stopchip.aangekomen{background:var(--blauw-licht);border-color:#bfdbfe}.week{grid-template-columns:repeat(6,minmax(0,1fr));align-items:start;gap:10px;display:grid}.week.zeven{grid-template-columns:repeat(7,minmax(0,1fr))}.dagkolom{background:var(--wit);border:1px solid var(--grijs-200);border-radius:var(--radius);flex-direction:column;min-height:260px;display:flex}.dagkolom.vandaag{border-color:var(--goud-donker);box-shadow:0 0 0 2px var(--goud-licht)}.dagkolom.doel{background:var(--goud-licht)}.dagkolom-kop{border-bottom:1px solid var(--grijs-100);justify-content:space-between;align-items:baseline;padding:10px 12px;display:flex}.dagkolom-kop b{font-size:14px}.dagkolom-inhoud{flex-direction:column;flex:1;gap:6px;padding:8px 10px;display:flex}.ritkaart{border:1px solid var(--grijs-200);border-left:4px solid var(--grijs-400);background:var(--wit);color:inherit;border-radius:8px;padding:6px 8px;font-size:12.5px;display:block}a.ritkaart:hover{border-color:var(--grijs-400);text-decoration:none}.datumnav{align-items:center;gap:4px;display:inline-flex}.datumnav .knop{padding:6px 10px}.datumnav .huidig{text-align:center;min-width:190px;padding:0 8px;font-weight:650}.definitie{grid-template-columns:max-content 1fr;gap:6px 14px;font-size:13.5px;display:grid}.definitie dt{color:var(--tekst-zacht)}.definitie dd{margin:0}.tijdlijn{margin:0;padding:0;list-style:none}.tijdlijn li{border-left:2px solid var(--grijs-200);padding:6px 0 6px 18px;font-size:13px;position:relative}.tijdlijn li:before{content:"";background:var(--goud);border:2px solid var(--wit);border-radius:50%;width:10px;height:10px;position:absolute;top:11px;left:-6px}.tijdlijn .wanneer{color:var(--tekst-zacht);font-size:12px}.inlog{background:var(--navy);place-items:center;min-height:100vh;padding:20px;display:grid}.inlog-kaart{background:var(--wit);width:100%;max-width:400px;box-shadow:var(--schaduw-groot);border-radius:16px;padding:28px}.inlog-logo{justify-content:center;margin-bottom:16px;display:flex}.inlog-logo img{width:200px}.mobiel-lijst .stopkaart{background:var(--wit);border:1px solid var(--grijs-200);box-shadow:var(--schaduw);border-radius:12px;margin-bottom:12px;padding:14px}.stopkaart .knoppen{grid-template-columns:1fr 1fr;gap:8px;margin-top:10px;display:grid}.stopkaart .knoppen .knop{padding:12px;font-size:15px}@media (width<=1100px){.raster-4,.raster-3{grid-template-columns:repeat(2,minmax(0,1fr))}.planning{grid-template-columns:260px 1fr}.week{grid-template-columns:repeat(3,minmax(0,1fr))}.week.zeven{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (width<=900px){.schil,.schil.ingeklapt{grid-template-columns:1fr}.menu{z-index:60;width:260px;transition:transform .2s;position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.menu.open{transform:none}.scherm.open{z-index:55;background:#0f172a66;display:block;position:fixed;inset:0}.hamburger{display:inline-flex}.pagina{padding:12px 12px 76px}.kop{padding:0 12px}.planning-zij{max-height:none;position:static}.ritrij-kop{grid-template-columns:1fr 1fr}.week,.week.zeven{grid-template-columns:repeat(2,minmax(0,1fr))}.raster-2,.raster-3,.raster-4{grid-template-columns:minmax(0,1fr)}.inhoud{overflow-x:clip}.planning{grid-template-columns:minmax(0,1fr)}.pagina-kop>.rij,.pagina-kop .rij,.datumnav{flex-wrap:wrap}.kop .zoekveld{min-width:0}.kop .titel{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.tegels{grid-template-columns:repeat(2,minmax(0,1fr))}.onder-nav{background:var(--wit);border-top:1px solid var(--grijs-200);z-index:50;padding-bottom:env(safe-area-inset-bottom);display:flex;position:fixed;bottom:0;left:0;right:0}.onder-nav a{color:var(--grijs-600);flex-direction:column;flex:1;align-items:center;gap:2px;padding:8px 4px;font-size:11px;display:flex}.onder-nav a.actief{color:var(--navy);font-weight:650}.onder-nav .icoon{display:inline-flex}.modaal-achtergrond{align-items:flex-end;padding:0}.modaal{border-radius:14px 14px 0 0;max-height:92vh;overflow-y:auto}.datumnav .huidig{min-width:0}.filters .invoer{flex:140px;min-width:0}}@media print{.menu,.kop,.onder-nav,.toasts,.knop,.filters{display:none!important}.schil,.schil.ingeklapt{grid-template-columns:1fr}.pagina{padding:0}.kaart{box-shadow:none}}
