:root{color-scheme:light dark;--bg:#fbf8f1;--kaart:#fff;--inkt:#1d2b2b;--zacht:#566464;--lijn:#dcd6c8;--teal:#0d6b6b;--tealtekst:#fff;--goed:#1d6b3a;--goedbg:#e6f3ea;--let:#7a5200;--letbg:#fbf0d6;--fout:#9b1c1c;--foutbg:#fbe6e4;--grijs:#e9e6de}
@media (prefers-color-scheme:dark){:root{--bg:#141b1b;--kaart:#1d2626;--inkt:#ecefe9;--zacht:#a8b5b2;--lijn:#384545;--teal:#46b5ae;--tealtekst:#0c1414;--goed:#8fd8a8;--goedbg:#1b3324;--let:#f0c766;--letbg:#3a2e10;--fout:#f5a9a3;--foutbg:#3d1c1a;--grijs:#2b3535}}
*{box-sizing:border-box}
body{margin:0;background:var(--bg);color:var(--inkt);font:16px/1.55 system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
a{color:var(--teal)}
.top{padding:.8rem 1rem;border-bottom:1px solid var(--lijn)}
.merk{font-weight:600;text-decoration:none;color:var(--inkt)}
main{max-width:46rem;margin:0 auto;padding:1rem 1rem 3rem}
h1{font-size:1.7rem;line-height:1.2;margin:.8rem 0 .4rem}
h2{font-size:1.2rem;margin:1.6rem 0 .5rem}
h3{display:flex;flex-wrap:wrap;gap:.4rem;align-items:center;font-size:1rem;margin:0 0 .4rem}
h4{font-size:.95rem;margin:0 0 .3rem}
.tag{display:inline-block;vertical-align:middle;font-size:.8rem;font-weight:600;padding:.1rem .5rem;border-radius:1rem;background:var(--grijs)}
.intro{color:var(--zacht);margin-top:0}
label{display:block;font-weight:600;margin:.9rem 0 .3rem}
.teller{float:right;font-weight:400;color:var(--zacht)}
.teller.over{color:var(--fout);font-weight:600}
textarea{width:100%;padding:.7rem;border:1px solid var(--lijn);border-radius:.5rem;background:var(--kaart);color:inherit;font:15px/1.5 ui-monospace,Consolas,monospace;resize:vertical}
input[type=file]{max-width:100%;font-size:.9rem}
.rij{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin:.6rem 0}
button{min-height:2.75rem;padding:.5rem 1rem;border:1px solid var(--teal);border-radius:.5rem;background:var(--teal);color:var(--tealtekst);font:inherit;font-weight:600;cursor:pointer}
button.stil{background:transparent;color:var(--teal)}
button:disabled{opacity:.55;cursor:wait}
:is(a,button,textarea,input):focus-visible{outline:3px solid var(--teal);outline-offset:2px}
[hidden]{display:none!important}
progress{width:100%;height:.6rem;accent-color:var(--teal)}
.klein{font-size:.88rem;color:var(--zacht);margin:.25rem 0;overflow-wrap:anywhere}
.melding{padding:.6rem .8rem;border-radius:.5rem;margin:.8rem 0}
.goed{background:var(--goedbg);color:var(--goed)}.let{background:var(--letbg);color:var(--let)}.fout{background:var(--foutbg);color:var(--fout)}
.tellers{display:grid;grid-template-columns:repeat(auto-fit,minmax(6.5rem,1fr));gap:.5rem;margin:.8rem 0}
.tellers div{background:var(--kaart);border:1px solid var(--lijn);border-radius:.5rem;padding:.4rem .6rem}
.tellers dt{font-size:.78rem;color:var(--zacht)}.tellers dd{margin:0;font-size:1.25rem;font-weight:600}
.kaart{background:var(--kaart);border:1px solid var(--lijn);border-radius:.7rem;padding:.8rem;margin:.7rem 0}
.rijnr{font-weight:700}
.invoer{font-family:ui-monospace,Consolas,monospace;font-size:.9rem;overflow-wrap:anywhere;margin:.2rem 0;white-space:pre-wrap}
.status{font-size:.78rem;font-weight:600;padding:.08rem .5rem;border-radius:1rem;background:var(--grijs)}
.s-ok{background:var(--goedbg);color:var(--goed)}.s-partial,.s-conflict{background:var(--letbg);color:var(--let)}.s-invalid_input,.s-source_unavailable{background:var(--foutbg);color:var(--fout)}
.bronnen{display:grid;gap:.6rem;margin-top:.6rem}
@media (min-width:40rem){.bronnen{grid-template-columns:1fr 1fr}}
.bron{border-top:1px solid var(--lijn);padding-top:.5rem;min-width:0}
.velden{margin:0;font-size:.88rem}.velden dt{color:var(--zacht);margin-top:.3rem}.velden dd{margin:0;overflow-wrap:anywhere}
.verschil{border-left:3px solid var(--teal);padding-left:.6rem;margin:.5rem 0;font-size:.9rem;overflow-wrap:anywhere}
.verschil p{margin:.1rem 0}.verschil ul{margin:.2rem 0;padding-left:1.1rem}
.d-changed{font-weight:600}
.uitleg{margin-top:2rem;border-top:1px solid var(--lijn)}
.uitleg ul{padding-left:1.1rem}.uitleg li{margin:.4rem 0}
code{font-family:ui-monospace,Consolas,monospace;font-size:.88em;overflow-wrap:anywhere}