/* Gedeelde huisstijl van Koersbescherming.
   Zoek (koersbescherming.nl) en kassa (kassa.koersbescherming.nl) laden
   allebei dit bestand, zodat een bezoeker die van de ene naar de andere
   site loopt geen ander merk ziet. De kassa serveert haar eigen kopie uit
   haar eigen boom: haar pagina's moeten renderen ook als de zoekdienst
   plat ligt. */
:root{
  --paper:#F7F6F2;
  --ink:#1E2B3A;
  --ink-soft:#5A6B7E;
  --line:#C9CFD6;
  --floor:#1F7A5C;
  --warn:#B4540A;
  --card:#FFFFFF;
  --mono:ui-monospace,"SF Mono","Cascadia Mono","Consolas",monospace;
  --body:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
[hidden]{display:none!important}
html{scroll-behavior:smooth}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto} *{transition:none!important}}
body{background:var(--paper);color:var(--ink);font-family:var(--body);line-height:1.5;padding-bottom:80px}
.wrap{max-width:860px;margin:0 auto;padding:0 16px}
header.bar{position:sticky;top:0;z-index:50;background:var(--ink);color:#fff;padding:10px 0}
header.bar .wrap{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.brand{font-family:var(--mono);font-size:14px;letter-spacing:.04em;color:#fff;text-decoration:none}
.brand b{color:#8FD8BC}
.barlinks{display:flex;gap:14px;align-items:center}
.barlinks a{font-family:var(--mono);font-size:12px;color:#AEB9C6;text-decoration:none}
.barlinks a:hover{color:#fff}
.toggle{font-family:var(--mono);font-size:12px;background:transparent;color:#FFE28A;border:1px dashed #FFE28A;border-radius:4px;padding:5px 10px;cursor:pointer}
.toggle:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--floor);outline-offset:2px}
.panel{background:var(--card);border:1px solid var(--line);border-radius:10px;padding:20px;margin-bottom:14px}
label{display:block;font-size:13px;font-weight:600;margin:14px 0 5px}
label:first-of-type{margin-top:0}
.hint{font-weight:400;color:var(--ink-soft)}
input[type=number],input[type=email],select{width:100%;max-width:340px;padding:10px 12px;border:1px solid var(--line);border-radius:6px;font-size:15px;font-family:var(--body);background:#fff;color:var(--ink)}
.btn{padding:12px 22px;border-radius:6px;border:1px solid var(--ink);background:var(--ink);color:#fff;font-size:15px;cursor:pointer;text-decoration:none;display:inline-block}
.btn.ghost{background:#fff;color:var(--ink)}
.btn.pay{background:var(--floor);border-color:var(--floor)}
.btn[disabled]{opacity:.55;cursor:default}
.payerr{color:var(--warn);font-size:13px;margin-top:8px}
footer.disc{margin-top:34px;border-top:1px solid var(--line);padding-top:14px;font-size:11.5px;color:var(--ink-soft)}
footer.disc a{color:var(--ink-soft)}
.paynotice{margin-top:10px;padding:9px 11px;border-left:3px solid var(--floor);background:#EDF6F1;border-radius:0 6px 6px 0;font-size:13.5px;line-height:1.5;color:var(--ink)}
