@font-face{font-family:Lexend Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./lexend-vietnamese-wght-normal-RvljkFvg.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Lexend Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./lexend-latin-ext-wght-normal-B6JQhE1e.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Lexend Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./lexend-latin-wght-normal-ci0D1wrL.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Roboto Mono Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(./roboto-mono-cyrillic-ext-wght-normal-BUDPrIko.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Roboto Mono Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(./roboto-mono-cyrillic-wght-normal-HUlVHixE.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Roboto Mono Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(./roboto-mono-greek-wght-normal-BJJTbwTT.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Roboto Mono Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(./roboto-mono-vietnamese-wght-normal-DlC-zuDL.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Roboto Mono Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(./roboto-mono-latin-ext-wght-normal-QAYlOegK.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Roboto Mono Variable;font-style:normal;font-display:swap;font-weight:100 700;src:url(./roboto-mono-latin-wght-normal-CZtBPCCa.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--papier: #F7F8F7;--inkt: #101418;--vlak: #fff;--rand: #D9DDDB;--accent: #0F5C4A;--accent-inkt: #fff;--gedempt: #525C58;--sein: #F2B705;--stop: #B93A2B;--f-tekst: "Lexend Variable", system-ui, sans-serif;--f-mono: "Roboto Mono Variable", ui-monospace, monospace;--xs: 4px;--s: 8px;--m: 16px;--l: 24px;--xl: 40px;--2xl: 64px;--3xl: 104px;--maat: 1240px;--duur: .18s;--ease: cubic-bezier(.2, 0, 0, 1)}*,*:before,*:after{box-sizing:border-box}body{margin:0;background:var(--papier);color:var(--inkt);font-family:var(--f-tekst);font-size:1rem;line-height:1.6;transition:background var(--duur) linear,color var(--duur) linear}h1,h2,h3,h4{margin:0;line-height:1.08;font-weight:600;letter-spacing:-.02em}p{margin:0}a{color:inherit}em{font-style:normal;color:var(--accent)}.mono{font-family:var(--f-mono);font-size:.8rem;letter-spacing:.01em}:where(a,button,input,select,[tabindex]):focus-visible{outline:3px solid var(--sein);outline-offset:2px}.overslaan{position:absolute;left:-9999px;background:var(--inkt);color:var(--papier);padding:var(--s) var(--m);z-index:40}.overslaan:focus{left:var(--m);top:var(--s)}.balk{position:sticky;top:0;z-index:30;display:flex;flex-wrap:wrap;gap:var(--m);align-items:center;padding:var(--s) var(--l);background:var(--accent);color:var(--accent-inkt);transition:background var(--duur) linear,color var(--duur) linear}.balk-merk{display:flex;align-items:baseline;gap:var(--s)}.merkteken{display:inline-flex;gap:3px;align-items:flex-end;height:18px}.merkteken i{display:block;width:5px;background:currentColor}.merkteken i:nth-child(1){height:8px}.merkteken i:nth-child(2){height:14px}.merkteken i:nth-child(3){height:18px}.merknaam{font-weight:700;letter-spacing:.22em;font-size:1.1rem}.merksub{font-family:var(--f-mono);font-size:.8rem;opacity:.8}.balk-versie{margin-right:auto;opacity:.85}.thema-kiezer{display:flex;border:2px solid currentColor}.thema-kiezer button{font-family:var(--f-mono);font-size:.78rem;cursor:pointer;background:transparent;color:inherit;border:0;padding:6px 12px;transition:background var(--duur) var(--ease)}.thema-kiezer button+button{border-left:2px solid currentColor}.thema-kiezer button[aria-pressed=true]{background:currentColor}.thema-kiezer button[aria-pressed=true]:after{content:""}.thema-kiezer button[aria-pressed=true]{color:var(--accent);background:var(--accent-inkt)}main>section{padding:var(--3xl) var(--l) var(--2xl);border-bottom:1px solid var(--rand)}main>section>*{max-width:var(--maat)}.route{color:var(--gedempt);text-transform:uppercase;letter-spacing:.18em;margin-bottom:var(--m)}h1{font-size:clamp(2.4rem,7vw,4.6rem);font-weight:700}h2{font-size:clamp(1.7rem,4vw,2.6rem)}.lede{margin-top:var(--l);max-width:62ch;font-size:1.15rem;color:var(--gedempt)}.sectie-lede{margin-top:var(--m);max-width:62ch;color:var(--gedempt)}.ladders{margin-top:var(--xl);display:grid;gap:var(--xl)}.ladder-kop{display:flex;flex-wrap:wrap;gap:var(--s) var(--m);align-items:baseline;margin-bottom:var(--s)}.ladder-kop h3{font-size:1.25rem}.ladder-rol{color:var(--gedempt);font-family:var(--f-mono);font-size:.8rem}.ladder{display:grid;grid-template-columns:repeat(10,1fr);gap:2px}.stop{border:0;padding:0;text-align:left;font:inherit;cursor:default}.stop-vlak{height:76px;display:flex;align-items:flex-end;padding:6px}.stop-nr{font-family:var(--f-mono);font-size:.7rem}.stop-uit{padding:6px 4px 0;display:grid;gap:2px}.stop-hex{font-family:var(--f-mono);font-size:.68rem;color:var(--gedempt)}.stop-ratio{font-family:var(--f-mono);font-size:.68rem}.merk-oordeel{display:inline-block;padding:0 4px;font-family:var(--f-mono);font-size:.64rem;border:1px solid currentColor}.merk-oordeel[data-o=AAA]{color:var(--accent)}.merk-oordeel[data-o=AA]{color:var(--inkt)}.merk-oordeel[data-o=zakt]{color:var(--stop)}.typeschaal{margin-top:var(--xl);display:grid;gap:var(--m)}.type-rij{display:grid;grid-template-columns:8rem 1fr;gap:var(--l);align-items:baseline;border-bottom:1px solid var(--rand);padding-bottom:var(--m)}.type-meta{font-family:var(--f-mono);font-size:.74rem;color:var(--gedempt);display:grid;gap:2px}.type-proef{font-weight:600;letter-spacing:-.02em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ruimte-rij{margin-top:var(--xl);display:flex;flex-wrap:wrap;gap:var(--l);align-items:flex-end}.ruimte-blok{display:grid;gap:var(--s);justify-items:start}.ruimte-staaf{background:var(--accent);height:22px}.ruimte-naam{font-family:var(--f-mono);font-size:.74rem;color:var(--gedempt)}.staten-raam{margin-top:var(--xl);display:grid;gap:var(--xl)}.staten-groep h3{font-size:1.2rem;margin-bottom:var(--m)}.staten-lijst{display:flex;flex-wrap:wrap;gap:var(--l)}.staat{display:grid;gap:6px;justify-items:start}.staat-label{font-family:var(--f-mono);font-size:.7rem;color:var(--gedempt);text-transform:uppercase;letter-spacing:.1em}.knop{font-family:var(--f-tekst);font-weight:500;font-size:.95rem;cursor:pointer;background:var(--accent);color:var(--accent-inkt);border:2px solid var(--accent);padding:10px 18px;transition:background var(--duur) var(--ease),border-color var(--duur) var(--ease)}.knop--rand{background:transparent;color:var(--inkt);border-color:var(--rand)}.knop[data-staat=hover],.knop:hover{background:var(--accent);filter:brightness(1.18)}.knop[data-staat=focus]{outline:3px solid var(--sein);outline-offset:2px}.knop[data-staat=actief]{filter:brightness(.82)}.knop[disabled],.knop[data-staat=uit]{opacity:.45;cursor:not-allowed;filter:none}.knop[data-staat=laden]{position:relative;padding-left:38px}.knop[data-staat=laden]:before{content:"";position:absolute;left:16px;top:50%;width:12px;height:12px;margin-top:-6px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:draai .7s linear infinite}@keyframes draai{to{transform:rotate(360deg)}}.veld{display:grid;gap:4px}.veld label{font-size:.82rem;color:var(--gedempt)}.veld input{font:inherit;font-size:.95rem;padding:9px 12px;min-width:200px;background:var(--vlak);color:var(--inkt);border:2px solid var(--rand)}.veld[data-staat=fout] input{border-color:var(--stop)}.veld-fout{color:var(--stop);font-family:var(--f-mono);font-size:.72rem}.veld[data-staat=uit] input{opacity:.5}.plak{display:inline-block;padding:3px 10px;font-family:var(--f-mono);font-size:.74rem;border:2px solid currentColor}.plak--rijdt{color:var(--accent)}.plak--vertraagd{color:var(--stop)}.plak--gepland{color:var(--gedempt)}.component-blok{margin-top:var(--2xl)}.component-blok h3{font-size:1.2rem;margin-bottom:var(--m)}.kaart-rij{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--m)}.haltekaart{background:var(--vlak);border:2px solid var(--rand);border-left:6px solid var(--accent);padding:var(--m);display:grid;gap:6px}.haltekaart[data-toestand=vertraagd]{border-left-color:var(--stop)}.haltekaart[data-toestand=gepland]{border-left-color:var(--gedempt)}.haltekaart-lijn{display:flex;align-items:center;gap:var(--s)}.lijnnummer{background:var(--accent);color:var(--accent-inkt);font-family:var(--f-mono);font-weight:700;padding:2px 9px;font-size:.9rem}.haltekaart h4{font-size:1.15rem}.haltekaart-tijd{font-family:var(--f-mono);font-size:1.6rem;font-weight:500}.haltekaart-note{color:var(--gedempt);font-size:.85rem}.regel-raam{margin-top:var(--xl);display:grid;gap:var(--l)}.regel{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--l);border-top:2px solid var(--inkt);padding-top:var(--m)}.regel-kop{grid-column:1 / -1}.regel-kop h3{font-size:1.15rem}.regel-kop p{color:var(--gedempt);max-width:70ch;margin-top:4px}.regel-vak{border:2px solid var(--rand);padding:var(--m);display:grid;gap:var(--s);align-content:start}.regel-vak[data-soort=wel]{border-color:var(--accent)}.regel-vak[data-soort=niet]{border-color:var(--stop)}.regel-merk{font-family:var(--f-mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.12em}.regel-vak[data-soort=wel] .regel-merk{color:var(--accent)}.regel-vak[data-soort=niet] .regel-merk{color:var(--stop)}.regel-uitleg{font-size:.85rem;color:var(--gedempt)}.slecht-knop{background:#7a4dd6;color:#efe6ff;border:0;padding:7px 11px;font-size:.72rem;border-radius:20px;font-family:var(--f-tekst)}.slecht-tekst{color:var(--rand)}.export-raam{margin-top:var(--xl)}.export-knoppen{display:flex;flex-wrap:wrap;gap:var(--s);align-items:center;margin-bottom:var(--m)}.export-code{margin:0;padding:var(--m);background:var(--vlak);border:2px solid var(--rand);max-height:340px;overflow:auto;font-size:.76rem;line-height:1.55;white-space:pre}.voet{padding:var(--2xl) var(--l);display:grid;gap:var(--s);background:var(--accent);color:var(--accent-inkt)}.voetnaam{font-weight:700;letter-spacing:.18em}.voetnoot{opacity:.8;max-width:60ch}@media(max-width:560px){.ladder{grid-template-columns:repeat(2,1fr)}}@media(max-width:900px){.ladder{grid-template-columns:repeat(5,1fr)}.regel{grid-template-columns:1fr}.type-rij{grid-template-columns:1fr;gap:var(--s)}main>section{padding:var(--2xl) var(--m) var(--xl)}}@media(prefers-reduced-motion:reduce){*{animation-duration:1ms!important;transition-duration:1ms!important}}
