/* ===== Uitkoopcalculator: v2-patroon ===== */
.kmk-uk .kmk-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 14px}
.uk-live{position:sticky;top:8px;z-index:5;background:var(--navy);color:#fff;border-radius:16px;padding:18px 22px;margin:0 0 22px;text-align:center;box-shadow:0 10px 30px rgba(13,43,69,.22)}
.uk-live__label{display:block;font-size:12.5px;opacity:.82;margin-bottom:4px;letter-spacing:.02em}
.uk-live__bedrag{display:block;font-family:var(--f-head);font-size:26px;font-weight:800;line-height:1.15}
.uk-live__sub{display:block;font-size:12.5px;opacity:.85;margin-top:6px;line-height:1.45}
.kmk-uk .vb-stap{margin:0 0 26px}
.kmk-uk .vb-stap__kop{display:flex;align-items:center;gap:11px;margin:0 0 4px}
.kmk-uk .vb-stap__nr{flex:0 0 auto;width:28px;height:28px;border-radius:50%;background:var(--navy);color:#fff;display:grid;place-items:center;font-family:var(--f-head);font-size:15px;font-weight:800}
.kmk-uk .vb-stap__kop h2{margin:0;font-family:var(--f-head);font-size:19px;color:var(--navy)}
.kmk-uk .vb-stap__hint{font-size:13.5px;color:var(--muted);margin:0 0 12px;line-height:1.5}
.uk-kaart{border:1px solid var(--border);border-radius:14px;padding:16px 18px;background:#fff;box-shadow:0 2px 8px rgba(13,43,69,.05)}
.uk-wkeuze{display:flex;flex-wrap:wrap;gap:7px;margin:6px 0 0}
.kmk-uk[class] .uk-wkeuze button{font-size:13px;font-weight:600;color:var(--navy)!important;background:#fff!important;border:1.5px solid var(--border)!important;border-radius:10px!important;padding:10px 14px!important;cursor:pointer;transition:all .13s}
.kmk-uk[class] .uk-wkeuze button.on{background:var(--navy)!important;color:#fff!important;border-color:var(--navy)!important}
.uk-chip{display:inline-block;background:var(--papier-2);border:1px solid var(--border);border-radius:999px;padding:7px 14px;font-size:13px;color:var(--navy);font-weight:600;margin:12px 0 0}
.kmk-uk .vb-keuzekaarten{display:grid;gap:10px}
.kmk-uk[class] .vb-keuzekaarten button{font-family:var(--f-body);text-align:left;background:#fff!important;border:1.5px solid var(--border)!important;border-radius:13px!important;padding:15px 17px!important;cursor:pointer;transition:all .14s;display:block;width:100%}
.kmk-uk[class] .vb-keuzekaarten button.on{border-color:var(--navy)!important;background:var(--papier-2)!important;box-shadow:0 0 0 2px var(--navy) inset}
.kmk-uk .vb-keuzekaarten button b{display:block;font-size:14.5px;color:var(--navy);font-weight:700;margin-bottom:3px}
.kmk-uk .vb-keuzekaarten button span{display:block;font-size:12.5px;color:var(--muted);line-height:1.45}
.kmk-uk .vb-check{display:flex;gap:10px;align-items:flex-start;font-size:13.5px;color:var(--ink);cursor:pointer;margin-top:8px}
.kmk-uk .vb-check input{width:18px;height:18px;margin-top:1px;accent-color:var(--blue);flex:0 0 auto}
.kmk-uk .vb-check small{display:block;color:var(--muted);margin-top:2px}
.kmk-uk .vb-losse{border:1px solid var(--border);border-radius:12px;overflow:hidden;margin-top:12px}
.kmk-uk .vb-losse summary{padding:13px 16px;font-size:13.5px;font-weight:600;color:var(--navy);cursor:pointer;background:var(--papier-2);list-style:none}
.kmk-uk .vb-losse summary::-webkit-details-marker{display:none}
.kmk-uk .vb-losse summary::before{content:"+ ";font-weight:800;color:var(--blue)}
.kmk-uk .vb-losse[open] summary::before{content:"\2013 "}
.kmk-uk .vb-losse__in{padding:14px 16px}
.uk-stop{border-radius:14px;padding:18px 20px;margin:0 0 14px;text-align:center;font-family:var(--f-head)}
.uk-stop b{display:block;font-size:20px;margin-bottom:4px}
.uk-stop span{font-family:var(--f-body);font-size:13.5px;line-height:1.5;display:block}
.uk-stop--groen{background:#E8F5EC;border:1.5px solid #2E8B57;color:#1F5E3A}
.uk-stop--oranje{background:#FFF4E0;border:1.5px solid #D98E04;color:#8A5A00}
.uk-stop--rood{background:#FCEBE8;border:1.5px solid #B4462A;color:#7C2D18}
.uk-tot{background:var(--papier-2);border:1px solid var(--border);border-radius:13px;padding:15px 18px;margin:14px 0}
.uk-tot .rij{display:flex;justify-content:space-between;font-size:14px;padding:4px 0;gap:14px}
.uk-tot .rij.groot{font-family:var(--f-head);font-size:16px;color:var(--navy);font-weight:800;border-top:1px solid var(--border);margin-top:6px;padding-top:10px}
.uk-bijsluiter{background:var(--papier-2);border:1px solid var(--border);border-radius:10px;padding:12px 15px;font-size:12.5px;color:var(--muted);line-height:1.55;margin:12px 0}
@media(max-width:560px){
  .kmk-uk .kmk-grid{grid-template-columns:1fr}
  .uk-live__bedrag{font-size:23px}
}
