/* Grijze basis. Kleur en stijl komen later als aparte laag (blueprint §9). */
:root { --tekst: #1c1c1e; --zacht: #6e6e73; --lijn: #d1d1d6; --vlak: #f2f2f7; --fout: #b00020; }
* { box-sizing: border-box; }
body { margin: 0; font: 17px/1.45 -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
       color: var(--tekst); background: var(--vlak); }
.vlak { max-width: 28rem; margin: 0 auto; padding: max(1.5rem, env(safe-area-inset-top)) 1.25rem 2rem; }
h1 { font-size: 1.75rem; margin: 0 0 1rem; }
.knop { display: block; width: 100%; min-height: 44px; padding: .75rem 1rem; border-radius: 12px;
        border: 1px solid var(--lijn); background: #fff; color: var(--tekst); font: inherit;
        text-align: center; text-decoration: none; cursor: pointer; margin: .75rem 0; }
.knop.hoofd { background: var(--tekst); color: #fff; border-color: var(--tekst); font-weight: 600; }
.knop.licht { background: transparent; }
.formulier { display: grid; gap: .75rem; margin: .75rem 0; }
.formulier input, label input { display: block; width: 100%; min-height: 44px; padding: .6rem .75rem;
        border: 1px solid var(--lijn); border-radius: 10px; font: inherit; background: #fff; }
label { display: block; color: var(--zacht); font-size: .95rem; }
.melding { color: var(--zacht); }
.fout { color: var(--fout); font-weight: 600; }
.reserve summary { min-height: 44px; display: flex; align-items: center; cursor: pointer; color: var(--zacht); }
.lijst { padding: 0; list-style: none; }
.lijst li { padding: .75rem 0; border-bottom: 1px solid var(--lijn); }
.klein { color: var(--zacht); font-size: .85rem; }
a { color: inherit; }
h2 { font-size: 1.2rem; margin: 1.75rem 0 .5rem; }
.voortgang { width: 100%; height: 12px; }
.kader { background: #fff; border: 1px solid var(--lijn); border-radius: 12px; padding: .75rem 1rem; }
.sleutel { width: 100%; min-height: 44px; font: 14px/1.3 ui-monospace, Menlo, monospace; padding: .5rem;
           border: 1px solid var(--lijn); border-radius: 8px; }
select { display: block; width: 100%; min-height: 44px; font: inherit; border-radius: 10px;
         border: 1px solid var(--lijn); background: #fff; padding: .5rem; }
code { font-size: .9em; }
