/* celf-plan: huisstijl CELF Opvoeden (petrol, roomwit, abrikoos, limoen; Trebuchet MS en Segoe UI, systeemfonts).
   Zelfde opbouw en klassen als static/style.css (MarketingBuddy), zodat app.js ongewijzigd werkt. */
:root{--petrol:#163F43;--petrol-2:#1F5257;--roomwit:#FAF7F0;--wit:#fff;--abrikoos:#FFAF87;--abrikoos-zacht:#FFE6D9;--limoen:#DFE99A;--limoen-zacht:#F1F5D2;
  --tekst:#163F43;--tekst-zacht:#3E5F62;--lijn:rgba(22,63,67,.16);--grijs:#6B8285;
  --kop:"Trebuchet MS","Lucida Grande","Lucida Sans Unicode",system-ui,sans-serif;--romp:"Segoe UI",system-ui,-apple-system,"Helvetica Neue",Arial,sans-serif;}
*{box-sizing:border-box;}
[hidden]{display:none !important;}
html,body{margin:0;}
body{font-family:var(--romp);color:var(--tekst);background:var(--roomwit);-webkit-font-smoothing:antialiased;line-height:1.5;}
body.embed{background:var(--roomwit);}
:focus-visible{outline:3px solid var(--abrikoos);outline-offset:2px;}
.mbp{max-width:760px;margin:0 auto;padding:40px 20px 56px;display:flex;flex-direction:column;gap:20px;}
body.embed .mbp{padding:24px clamp(16px,4vw,28px) 28px;}
/* in het venster op de site: geen logo (staat al op de pagina), wel titel en uitleg */
body.embed .mbp-logo{display:none;}
body.embed .mbp-titel{font-size:26px;padding-right:40px;}

/* kop */
.mbp-kop{display:flex;flex-direction:column;gap:10px;}
.mbp-logo{color:var(--petrol);width:110px;margin-bottom:8px;}
.mbp-logo svg{display:block;width:100%;height:auto;}
.mbp-titel{margin:0;font-family:var(--kop);font-size:36px;line-height:1.1;font-weight:400;letter-spacing:-.012em;color:var(--petrol);}
.mbp-intro{margin:0;color:var(--tekst-zacht);font-size:16px;max-width:60ch;}
.mbp-feiten{list-style:none;margin:2px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:8px;}
.mbp-feiten li{font-size:13px;font-weight:600;color:var(--petrol);background:var(--limoen-zacht);border-radius:999px;padding:6px 12px;}
.mbp-demo{margin:0;padding:8px 12px;border-radius:10px;background:var(--abrikoos-zacht);color:var(--petrol);font-size:13px;}

/* stappen */
.mbp-stappen{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;}
.mbp-stappen li{display:flex;align-items:center;gap:10px;padding:10px 12px;border-radius:14px;background:var(--wit);border:1.5px solid var(--lijn);color:var(--grijs);font-size:14px;font-weight:600;}
.mbp-stappen b{flex:none;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;font-size:13px;background:var(--roomwit);color:var(--grijs);}
.mbp-stappen li.is-actief{color:var(--petrol);border-color:var(--petrol);}
.mbp-stappen li.is-actief b{background:var(--petrol);color:var(--roomwit);}
.mbp-stappen li.is-klaar{color:var(--petrol);}
.mbp-stappen li.is-klaar b{background:var(--abrikoos);color:var(--petrol);}

/* kaarten */
.mbp-kaart{background:var(--wit);border-radius:24px;padding:26px;box-shadow:0 1px 2px rgba(22,63,67,.06),0 12px 32px -12px rgba(22,63,67,.18);}
#stap-kies{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,220px);gap:28px;}
.mbp-maandnav{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;}
.mbp-maand{margin:0;font-family:var(--kop);font-size:19px;font-weight:400;color:var(--petrol);}
.mbp-nav{width:40px;height:40px;border:1.5px solid var(--lijn);border-radius:50%;background:var(--wit);font-size:24px;line-height:1;cursor:pointer;color:var(--petrol);}
.mbp-nav:hover:not(:disabled){background:var(--roomwit);}
.mbp-nav:disabled{opacity:.3;cursor:default;}
.mbp-weekdagen,.mbp-dagen{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:6px;}
.mbp-weekdagen span{font-size:12px;color:var(--grijs);text-align:center;text-transform:uppercase;letter-spacing:.06em;padding:4px 0;}
.mbp-dag{height:46px;border:1.5px solid transparent;border-radius:12px;background:transparent;font:inherit;font-size:15px;font-weight:600;color:var(--petrol);cursor:pointer;transition:background .12s,transform .12s;}
button.mbp-dag:not(:disabled){background:var(--limoen-zacht);border-color:var(--limoen);}
button.mbp-dag:not(:disabled):hover{background:var(--limoen);transform:translateY(-1px);}
.mbp-dag--gekozen:not(:disabled){background:var(--petrol) !important;color:var(--roomwit);border-color:var(--petrol) !important;}
.mbp-dag--dicht{color:#b9c4c5;font-weight:400;cursor:default;}
.mbp-dag--leeg{display:block;}
.mbp-laden,.mbp-melding{grid-column:1/-1;margin:8px 0 0;color:var(--grijs);font-size:14px;}
.mbp-tijden{border-left:1px solid var(--lijn);padding-left:28px;}
.mbp-dagtitel{margin:0 0 6px;font-family:var(--kop);font-size:19px;font-weight:400;color:var(--petrol);}
.mbp-hint{margin:0 0 14px;font-size:14px;color:var(--tekst-zacht);}
.mbp-slots{display:flex;flex-direction:column;gap:8px;max-height:380px;overflow:auto;}
.mbp-slot{min-height:46px;border:1.5px solid var(--petrol);border-radius:999px;background:var(--wit);font:inherit;font-weight:600;font-size:15px;color:var(--petrol);cursor:pointer;transition:background .12s;}
.mbp-slot:hover{background:var(--petrol);color:var(--roomwit);}

/* formulier */
.mbp-terug{border:0;background:none;font:inherit;color:var(--petrol);cursor:pointer;padding:0;margin-bottom:12px;font-weight:600;}
.mbp-gekozen{margin:0 0 18px;padding:12px 16px;border-radius:14px;background:var(--limoen-zacht);font-weight:600;color:var(--petrol);}
.mbp-velden{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px;margin-bottom:16px;}
.mbp-breed{grid-column:1/-1;}
.mbp-form label{display:flex;flex-direction:column;gap:6px;font-size:15px;font-weight:600;color:var(--petrol);}
.mbp-form label span{font-weight:400;color:var(--tekst-zacht);}
.mbp-form input,.mbp-form textarea{font:400 16px/1.4 var(--romp);padding:13px 16px;border:1.5px solid var(--lijn);border-radius:12px;background:var(--roomwit);color:var(--tekst);width:100%;}
.mbp-form input:focus,.mbp-form textarea:focus{outline:none;border-color:var(--petrol);box-shadow:0 0 0 4px rgba(223,233,154,.8);}
.mbp-hp{position:absolute;left:-9999px;width:1px;height:1px;opacity:0;}
.mbp-bekend{margin:0 0 14px;padding:12px 16px;border-radius:12px;background:var(--roomwit);font-size:15px;overflow-wrap:anywhere;}
.mbp-wijzig{border:0;background:none;padding:0;margin-left:6px;font:inherit;font-size:14px;color:var(--petrol);text-decoration:underline;cursor:pointer;}
.mbp-knop{width:100%;min-height:54px;border:2px solid var(--petrol);border-radius:999px;background:var(--petrol);color:var(--roomwit);font:600 16px/1 var(--romp);cursor:pointer;transition:background .2s;}
.mbp-knop:hover{background:var(--petrol-2);border-color:var(--petrol-2);}
.mbp-knop:disabled{opacity:.6;cursor:default;}
.mbp-fout{margin:0 0 12px;padding:12px 16px;border-radius:12px;background:var(--abrikoos-zacht);color:#7a2e10;font-size:14px;}
.mbp-klein{margin:12px 0 0;font-size:13.5px;color:var(--tekst-zacht);}
.mbp-klein a{color:var(--petrol);text-decoration-color:var(--abrikoos);text-decoration-thickness:2px;text-underline-offset:3px;}

/* klaar */
.mbp-vink{display:block;width:44px;height:44px;border-radius:50%;background:var(--abrikoos);margin-bottom:12px;position:relative;}
.mbp-vink::after{content:"";position:absolute;left:16px;top:10px;width:9px;height:18px;border:solid var(--petrol);border-width:0 3px 3px 0;transform:rotate(45deg);}
.mbp-klaar p{color:var(--tekst-zacht);}

@media (max-width:759.98px){
  .mbp{gap:16px;padding:24px 16px 40px;}
  .mbp-titel{font-size:28px;}
  body.embed .mbp-titel{font-size:23px;}
  .mbp-stappen{gap:6px;}
  .mbp-stappen li{flex-direction:column;gap:6px;padding:8px 6px;font-size:12px;text-align:center;}
  .mbp-kaart{padding:18px 16px;border-radius:20px;}
  #stap-kies{grid-template-columns:minmax(0,1fr);gap:20px;}
  .mbp-tijden{border-left:0;padding-left:0;border-top:1px solid var(--lijn);padding-top:18px;}
  .mbp-slots{max-height:none;flex-direction:row;flex-wrap:wrap;}
  .mbp-slot{flex:1 1 calc(33.333% - 6px);}
  .mbp-velden{grid-template-columns:minmax(0,1fr);}
}
