.kaart { background: #fff; border: 1px solid #e7e5e4; border-radius: 0.75rem; }
.bedrag { font-variant-numeric: tabular-nums; white-space: nowrap; }
.veld { width: 100%; border: 1px solid #d6d3d1; border-radius: 0.5rem; padding: 0.45rem 0.65rem; font-size: 0.875rem; background: #fff; }
.veld:focus { outline: 2px solid #2f8a6c33; border-color: #2f8a6c; }
.knop { display: inline-flex; align-items: center; gap: 0.4rem; border-radius: 0.5rem; padding: 0.5rem 0.9rem; font-size: 0.875rem; font-weight: 500; background: #24745a; color: #fff; }
.knop:hover { background: #1c5c48; }
.knop-licht { display: inline-flex; align-items: center; gap: 0.4rem; border-radius: 0.5rem; padding: 0.5rem 0.9rem; font-size: 0.875rem; font-weight: 500; background: #fff; color: #44403c; border: 1px solid #d6d3d1; }
.knop-licht:hover { background: #f5f5f4; }
.label { display: block; font-size: 0.75rem; font-weight: 500; color: #57534e; margin-bottom: 0.25rem; }
.tabel th { text-align: left; font-size: 0.7rem; text-transform: uppercase; letter-spacing: 0.04em; color: #78716c; font-weight: 600; padding: 0.6rem 0.75rem; border-bottom: 1px solid #e7e5e4; }
.tabel td { padding: 0.55rem 0.75rem; border-bottom: 1px solid #f5f5f4; font-size: 0.875rem; vertical-align: top; }
.tabel tr:last-child td { border-bottom: 0; }
.rubriek { font-variant-numeric: tabular-nums; font-weight: 600; color: #1c5c48; width: 2.5rem; }

@media print {
    body { background: #fff; }
    .kaart { border-color: #ccc; break-inside: avoid; }
    main { padding: 0; max-width: none; }
}
