/* Karma Mobility — module-nacht: de boekingsmodule in de nachtlaag. Versie: 2026-08-02 */
body.kmodule{ background:var(--k-nacht,#0A130E); color:var(--k-creme,#F2EEE4) }
body.kmodule main, body.kmodule .kmwrap{ background:transparent }
body.kmodule h1, body.kmodule h2, body.kmodule .kvboekkop{
  font-family:'Cormorant Garamond',Georgia,serif; font-weight:300; color:var(--k-creme,#F2EEE4) }
body.kmodule p, body.kmodule label, body.kmodule .kmextra__oms{ color:var(--k-dim,#9DA89E) }

/* knoppen: nooit meer paginabreed */
body.kmodule .kmknop{ width:auto !important; background:#2E6B3E; color:#fff;
  box-shadow:0 6px 22px rgba(76,175,110,.25) }
body.kmodule .kmknop:hover{ background:#4CAF6E }
body.kmodule .kmknop + .kmknop{ margin-left:.6rem }
body.kmodule .kmform button.kmknop, body.kmodule .kvform .kmknop{ width:100% !important; max-width:420px }

/* buskaarten in het boekformulier */
body.kmodule .kmkaart{ background:var(--k-vlak,#101E15); border:1px solid var(--k-rand,#22352A);
  border-radius:14px; transition:transform .35s cubic-bezier(.22,.8,.24,1), border-color .35s, box-shadow .35s }
body.kmodule .kmkaart:hover{ transform:translateY(-4px); border-color:rgba(76,175,110,.5);
  box-shadow:0 14px 40px rgba(0,0,0,.45) }
body.kmodule .kmkaart__type{ color:#9FD9AE; letter-spacing:.22em; text-transform:uppercase; font-size:.68rem }
body.kmodule .kmkaart__naam{ color:var(--k-creme,#F2EEE4); font-family:'Cormorant Garamond',Georgia,serif;
  font-weight:600; font-size:1.25rem }
body.kmodule .kmkaart__sub{ color:var(--k-dim,#9DA89E) }
body.kmodule .kmkaart__prijs{ color:var(--k-lamp,#FFE9C4); font-family:'IBM Plex Mono',ui-monospace,monospace;
  font-size:1.02rem }
body.kmodule .kmkaart__meta{ color:var(--k-dim,#9DA89E); font-size:.8rem }
body.kmodule .kmkaart__live{ color:#9FD9AE }
body.kmodule .kmkaart__live--bezet{ color:#D9A05B }
body.kmodule input[type=radio]:checked + .kmkaart__rand, body.kmodule .kmkaart:has(input:checked){
  border-color:#4CAF6E; box-shadow:0 0 0 1px #4CAF6E inset, 0 14px 40px rgba(0,0,0,.45) }

/* formuliervelden */
body.kmodule input[type=text], body.kmodule input[type=email], body.kmodule input[type=tel],
body.kmodule input[type=date], body.kmodule input[type=time], body.kmodule input[type=number],
body.kmodule input[type=password], body.kmodule select, body.kmodule textarea{
  background:var(--k-diep,#0C1710); border:1px solid var(--k-rand,#22352A); color:var(--k-creme,#F2EEE4);
  border-radius:10px; padding:.75rem .9rem; font-family:'Outfit',sans-serif }
body.kmodule input:focus, body.kmodule select:focus, body.kmodule textarea:focus{
  outline:none; border-color:#4CAF6E; box-shadow:0 0 0 3px rgba(76,175,110,.18) }
body.kmodule ::placeholder{ color:rgba(157,168,158,.6) }

/* extra's, meldingen, tabellen, checkout */
body.kmodule .kmextra__item{ background:var(--k-vlak,#101E15); border:1px solid var(--k-rand,#22352A); border-radius:12px }
body.kmodule .kmextra__prijs{ color:var(--k-lamp,#FFE9C4); font-family:'IBM Plex Mono',ui-monospace,monospace }
body.kmodule .kmwaarschuwing{ background:rgba(217,107,91,.12); border:1px solid rgba(217,107,91,.45); color:#F0C9C0; border-radius:10px }
body.kmodule .kvtabel th{ background:var(--k-diep,#0C1710); color:var(--k-creme,#F2EEE4) }
body.kmodule .kvtabel td{ border-color:var(--k-rand,#22352A) }
body.kmodule .kmboeking__rij{ border-color:var(--k-rand,#22352A) }
body.kmodule .kmcheck{ color:var(--k-dim,#9DA89E) }
body.kmodule a:not(.kmknop){ color:#9FD9AE }
body.kmodule a:not(.kmknop):hover{ color:#fff }

/* generiek vangnet voor inline-lichte vlakken binnen de module */
body.kmodule [style*="background:#fff"], body.kmodule [style*="background: #fff"]{ background:var(--k-vlak,#101E15) !important }
body.kmodule [style*="color:#0F2318"]{ color:var(--k-creme,#F2EEE4) !important }
