
.krb-form,.krb-wrap{--krb-primary:#0b1220;--krb-accent:#2f80ed;--krb-muted:#64748b;--krb-border:#dbe3ef;--krb-bg:#f6f8fb;--krb-card:#fff;--krb-title-color:#0b1220;--krb-text-color:#142033;box-sizing:border-box;width:100%;max-width:100%;-webkit-text-size-adjust:100%;font-size:var(--krb-body-size,16px);color:var(--krb-text-color)}
.krb-form *,.krb-form *:before,.krb-form *:after,.krb-wrap *,.krb-wrap *:before,.krb-wrap *:after{box-sizing:border-box}
.krb-tool{max-width:1180px;margin:0 auto 32px;background:linear-gradient(180deg,var(--krb-bg) 0%,var(--krb-card) 42%);border:1px solid var(--krb-border);border-radius:24px;padding:24px;box-shadow:0 18px 45px rgba(15,23,42,.10);overflow:hidden}
.krb-tool-header{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:24px;align-items:center;margin-bottom:20px;padding:24px;border-radius:20px;background:linear-gradient(135deg,var(--krb-primary),#1f2a44);color:var(--krb-header-text,#fff)}
.krb-eyebrow{margin:0 0 8px;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#9cc2ff}
.krb-tool-header h2{margin:0 0 8px;color:var(--krb-header-text,#fff);font-size:var(--krb-title-size,30px);line-height:1.1}
.krb-tool-header p{margin:0;max-width:760px;color:rgba(255,255,255,.82)}
.krb-progress span{display:block;margin-bottom:10px;font-weight:800;color:var(--krb-header-text,#fff)}
.krb-progress div{height:10px;border-radius:999px;background:rgba(255,255,255,.18);overflow:hidden}.krb-progress i{display:block;height:100%;width:25%;border-radius:999px;background:#78aefc;transition:width .25s ease}
.krb-steps{display:flex;gap:10px;overflow-x:auto;overflow-y:hidden;padding:4px 2px 16px;margin:0 0 8px;-webkit-overflow-scrolling:touch}.krb-step{appearance:none;border:1px solid var(--krb-border);background:#fff;color:var(--krb-muted);border-radius:999px;padding:10px 14px;font-weight:900;white-space:nowrap;cursor:pointer;min-height:42px}.krb-step.is-active{background:var(--krb-primary);border-color:var(--krb-primary);color:#fff}.krb-step.is-done{border-color:#b9d4ff;color:var(--krb-accent);background:#eef6ff}
.krb-panel{display:none;border:0;margin:0;padding:24px;background:var(--krb-card);border-radius:20px;box-shadow:0 0 0 1px var(--krb-border)}.krb-panel.is-active{display:block}.krb-panel legend{float:left;width:100%;margin:0 0 8px;padding:0;font-weight:900;font-size:clamp(20px,2.4vw,22px);color:var(--krb-title-color)}.krb-panel-intro{clear:both;margin:0 0 22px;color:var(--krb-muted);line-height:1.5}
.krb-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.krb-field{display:block;margin:0;min-width:0}.krb-field>span,.krb-card label span{display:block;font-weight:800;margin-bottom:8px;color:var(--krb-title-color);line-height:1.3}.krb-field>span b{color:#dc2626;margin-left:3px}
.krb-form input[type=text],.krb-form input[type=email],.krb-form input[type=number],.krb-form input[type=date],.krb-form select,.krb-form textarea,.krb-card input{display:block;width:100%;max-width:100%;min-height:48px;border:1px solid #cbd5e1;border-radius:13px;background:#fff;padding:12px 14px;font-size:16px;line-height:1.35;color:#0f172a;outline:none;box-shadow:none}.krb-form textarea{resize:vertical;min-height:86px}.krb-form select{appearance:none;background-image:linear-gradient(45deg,transparent 50%,#64748b 50%),linear-gradient(135deg,#64748b 50%,transparent 50%);background-position:calc(100% - 18px) 21px,calc(100% - 12px) 21px;background-size:6px 6px,6px 6px;background-repeat:no-repeat;padding-right:40px}.krb-form input:focus,.krb-form select:focus,.krb-form textarea:focus{border-color:var(--krb-accent);box-shadow:0 0 0 4px rgba(47,128,237,.13)}
.krb-input-wrap{position:relative;display:block;width:100%}.krb-input-wrap em,.krb-rcd-row label em{position:absolute;right:14px;top:50%;transform:translateY(-50%);font-style:normal;color:var(--krb-muted);font-weight:900;pointer-events:none}.krb-input-wrap input[type=number],.krb-rcd-row label input[type=number]{padding-right:72px!important}
.krb-checklist{display:grid;gap:14px}.krb-checkitem{display:grid;grid-template-columns:minmax(230px,.8fr) minmax(0,1.6fr);gap:16px;padding:16px;border:1px solid var(--krb-border);border-radius:18px;background:#fff}.krb-checkitem-main strong{display:block;font-size:17px;color:var(--krb-title-color);margin-bottom:8px}.krb-photo-badge,.krb-rule-badge,.krb-attention-badge{display:inline-flex;margin:4px 5px 0 0;padding:5px 8px;border-radius:999px;font-size:12px;font-weight:900}.krb-photo-badge{background:#eef6ff;color:#1d4ed8}.krb-rule-badge{background:#fef2f2;color:#b91c1c}.krb-attention-badge{background:#fffbeb;color:#92400e}.krb-checkitem-fields{display:grid;grid-template-columns:minmax(160px,.7fr) minmax(220px,1fr) minmax(170px,.8fr);gap:12px;align-items:start}
.krb-inline-upload{display:block;border:2px dashed #bfd0e6;border-radius:14px;background:#f8fbff;padding:12px;cursor:pointer}.krb-inline-upload input{position:absolute;left:-9999px}.krb-inline-upload span{display:block;font-weight:900;color:var(--krb-accent)}.krb-inline-upload small{display:block;color:var(--krb-muted);font-weight:700;margin-top:4px}
.krb-rcd-table{display:grid;gap:8px}.krb-rcd-head,.krb-rcd-row{display:grid;grid-template-columns:50px 1fr 1fr 1.2fr;gap:10px;align-items:center}.krb-rcd-head{font-weight:900;color:var(--krb-muted);padding:0 8px}.krb-rcd-row{background:#fff;border:1px solid var(--krb-border);border-radius:14px;padding:10px}.krb-rcd-row label{position:relative;display:block}
.krb-summary-box{padding:18px;border-radius:18px;background:#f8fbff;border:1px solid var(--krb-border)}.krb-summary-box h3{margin:0 0 10px}.krb-summary-box p{margin:8px 0}.krb-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:18px}.krb-button,.krb-form button{appearance:none;display:inline-flex!important;align-items:center;justify-content:center;min-height:48px;border:0!important;border-radius:14px!important;padding:13px 20px!important;background:var(--krb-primary)!important;color:#fff!important;font-weight:900!important;line-height:1.2!important;cursor:pointer;text-decoration:none!important;text-align:center}.krb-button--ghost{background:#eef2f7!important;color:#111827!important}.krb-button--submit{background:var(--krb-accent)!important}.krb-form [hidden],.krb-actions [hidden]{display:none!important}
.krb-notice{max-width:1180px;margin:0 auto 16px;border-radius:14px;padding:14px 16px;font-weight:800}.krb-notice--success{background:#ecfdf5;color:#065f46;border:1px solid #a7f3d0}.krb-notice--warning{background:#fffbeb;color:#92400e;border:1px solid #fde68a}.krb-wrap .krb-card{max-width:980px;border:1px solid var(--krb-border);border-radius:16px;padding:20px;margin:0 0 22px;background:#fff}.krb-wrap .krb-card label{display:block;margin-bottom:14px}.krb-wrap table{background:#fff}
.krb-submit-overlay{position:fixed;inset:0;z-index:999999;display:none;align-items:center;justify-content:center;padding:24px;background:rgba(15,23,42,.55);backdrop-filter:blur(8px)}.krb-is-submitting .krb-submit-overlay{display:flex}.krb-submit-modal{width:min(460px,100%);border-radius:22px;background:#fff;padding:28px;text-align:center;box-shadow:0 24px 70px rgba(15,23,42,.28);border:1px solid var(--krb-border);color:var(--krb-text-color)}.krb-submit-modal strong{display:block;margin:14px 0 8px;font-size:22px;color:var(--krb-title-color)}.krb-submit-modal p{margin:0 0 18px;color:var(--krb-muted);line-height:1.5}.krb-submit-spinner{display:inline-block;width:48px;height:48px;border-radius:50%;border:5px solid #e5e7eb;border-top-color:var(--krb-accent);animation:krbSubmitSpin .8s linear infinite}.krb-submit-progress{height:9px;overflow:hidden;border-radius:999px;background:#eef2f7}.krb-submit-progress i{display:block;width:42%;height:100%;border-radius:999px;background:var(--krb-accent);animation:krbSubmitProgress 1.1s ease-in-out infinite}@keyframes krbSubmitSpin{to{transform:rotate(360deg)}}@keyframes krbSubmitProgress{0%{transform:translateX(-110%)}50%{transform:translateX(80%)}100%{transform:translateX(260%)}}
@media(max-width:900px){.krb-tool-header{grid-template-columns:1fr}.krb-grid{grid-template-columns:1fr}.krb-checkitem{grid-template-columns:1fr}.krb-checkitem-fields{grid-template-columns:1fr}.krb-rcd-head,.krb-rcd-row{grid-template-columns:34px 1fr}}
@media(max-width:760px){html body .krb-form.krb-tool{width:calc(100vw - 8px)!important;max-width:none!important;margin-left:calc(50% - 50vw + 4px)!important;margin-right:calc(50% - 50vw + 4px)!important;padding:10px!important;border-radius:16px!important}.krb-tool-header{display:block;margin-bottom:14px;padding:14px!important;border-radius:14px!important}.krb-panel{padding:14px!important;border-radius:14px}.krb-steps{margin:0!important;padding:2px 8px 12px 8px!important;scrollbar-width:none}.krb-actions{position:sticky;left:0;right:0;bottom:0;z-index:20;display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:16px -10px -10px;padding:10px;background:rgba(255,255,255,.96);border-top:1px solid var(--krb-border);backdrop-filter:blur(10px)}.krb-button--submit{grid-column:1/-1}.krb-submit-overlay{padding:16px;align-items:flex-end}.krb-submit-modal{padding:24px 20px;border-radius:20px}.krb-rcd-head{display:none}.krb-rcd-row{grid-template-columns:1fr}.krb-rcd-row strong:before{content:"Meting "}}

.krb-admin-filter{clear:both;margin:18px 0;padding:14px;border:1px solid #dbe3ef;background:#fff;border-radius:10px}
.krb-admin-filter form{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
.krb-admin-filter input[type=search]{min-width:320px}
.krb-customer-group{clear:both;margin:22px 0 28px;padding:16px;background:#fff;border:1px solid #dbe3ef;border-radius:14px}
.krb-customer-group h2{margin:0 0 12px;font-size:20px}
.krb-customer-group h2 small{font-size:13px;color:#64748b;font-weight:500;margin-left:8px}
.krb-inline-admin-form{display:flex;gap:6px;align-items:center;margin-top:6px}
.krb-inline-admin-form input[type=date]{max-width:150px}
@media(max-width:760px){.krb-admin-filter form{display:grid}.krb-admin-filter input[type=search]{min-width:0;width:100%}.krb-customer-group{padding:10px;overflow-x:auto}}

.krb-standalone-reinspection{margin:0;background:#f6f8fb}
.krb-standalone-wrap{max-width:1180px;margin:24px auto;padding:0 16px}
@media(max-width:760px){.krb-standalone-wrap{margin:0;padding:0}}


/* v2.1.4 - herkeuringsscherm layout fix */
.krb-standalone-reinspection{
  margin:0!important;
  padding:0!important;
  background:#f6f8fb!important;
  overflow-x:hidden!important;
}
.krb-standalone-reinspection .krb-standalone-wrap{
  width:100%!important;
  max-width:1180px!important;
  margin:24px auto!important;
  padding:0 16px!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}
.krb-standalone-reinspection .krb-form.krb-tool{
  width:100%!important;
  max-width:100%!important;
  margin:0 auto 32px!important;
  overflow:hidden!important;
}
.krb-standalone-reinspection .krb-panel{
  width:100%!important;
  max-width:100%!important;
  overflow:hidden!important;
}
.krb-standalone-reinspection .krb-checklist{
  width:100%!important;
  max-width:100%!important;
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:16px!important;
}
.krb-standalone-reinspection .krb-checkitem{
  width:100%!important;
  max-width:100%!important;
  display:grid!important;
  grid-template-columns:minmax(220px,.7fr) minmax(0,1.3fr)!important;
  gap:18px!important;
  position:static!important;
  transform:none!important;
  margin:0!important;
  float:none!important;
  clear:both!important;
  overflow:hidden!important;
}
.krb-standalone-reinspection .krb-checkitem-main,
.krb-standalone-reinspection .krb-checkitem-fields{
  min-width:0!important;
  max-width:100%!important;
}
.krb-standalone-reinspection .krb-checkitem-fields{
  display:grid!important;
  grid-template-columns:minmax(160px,.7fr) minmax(220px,1fr) minmax(170px,.8fr)!important;
  gap:12px!important;
}
.krb-standalone-reinspection .krb-checkitem-fields select,
.krb-standalone-reinspection .krb-checkitem-fields textarea,
.krb-standalone-reinspection .krb-checkitem-fields input,
.krb-standalone-reinspection .krb-inline-upload{
  max-width:100%!important;
  min-width:0!important;
}
@media(max-width:900px){
  .krb-standalone-reinspection .krb-checkitem,
  .krb-standalone-reinspection .krb-checkitem-fields{
    grid-template-columns:1fr!important;
  }
}
@media(max-width:760px){
  .krb-standalone-reinspection .krb-standalone-wrap{
    margin:0!important;
    padding:0!important;
  }
  .krb-standalone-reinspection .krb-form.krb-tool{
    width:calc(100vw - 8px)!important;
    max-width:none!important;
    margin-left:4px!important;
    margin-right:4px!important;
  }
}

.krb-reinspection-link-tools{display:grid;grid-template-columns:minmax(180px,1fr) auto auto;gap:6px;margin-top:8px;align-items:center}
.krb-reinspection-link-tools input{width:100%;max-width:320px}
@media(max-width:760px){.krb-reinspection-link-tools{grid-template-columns:1fr}.krb-reinspection-link-tools input{max-width:none}}

.krb-payment-link-tools{grid-template-columns:minmax(180px,1fr) auto auto auto auto}
@media(max-width:900px){.krb-payment-link-tools{grid-template-columns:1fr}}

.krb-complete-screen .krb-panel{margin-top:20px}
.krb-complete-screen .krb-button{width:auto}


/* v2.3.0 - overzichtelijke admin tabs, nette toggles en info-iconen */
.krb-admin-settings .krb-settings-form{
  max-width:1180px;
}
.krb-settings-tabs{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:18px 0 16px;
  padding:8px;
  background:#fff;
  border:1px solid #dbe3ef;
  border-radius:14px;
}
.krb-settings-tab{
  border:0!important;
  border-radius:10px!important;
  padding:10px 14px!important;
  background:#eef2f7!important;
  color:#334155!important;
  font-weight:800!important;
  cursor:pointer;
}
.krb-settings-tab.is-active{
  background:#0b1220!important;
  color:#fff!important;
}
.krb-settings-panel{
  display:none;
}
.krb-settings-panel.is-active{
  display:block;
}
.krb-admin-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px 18px;
}
.krb-admin-field{
  display:block;
}
.krb-admin-field--wide{
  margin-top:16px;
}
.krb-admin-field>span,
.krb-wrap .krb-card label>span{
  display:flex!important;
  align-items:center;
  gap:7px;
  margin-bottom:7px;
  font-weight:800;
  color:#111827;
}
.krb-info{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  width:18px;
  height:18px;
  border-radius:50%;
  background:#e8f1ff;
  color:#1d4ed8;
  font-size:12px;
  font-style:normal;
  font-weight:900;
  line-height:1;
  cursor:help;
}
.krb-info:hover:after,
.krb-info:focus:after{
  content:attr(data-tip);
  position:absolute;
  left:50%;
  bottom:calc(100% + 8px);
  transform:translateX(-50%);
  z-index:9999;
  width:260px;
  max-width:70vw;
  padding:10px 12px;
  border-radius:10px;
  background:#0b1220;
  color:#fff;
  box-shadow:0 12px 30px rgba(15,23,42,.22);
  font-size:12px;
  font-weight:600;
  line-height:1.35;
  white-space:normal;
}
.krb-info:hover:before,
.krb-info:focus:before{
  content:"";
  position:absolute;
  left:50%;
  bottom:calc(100% + 2px);
  transform:translateX(-50%);
  border:6px solid transparent;
  border-top-color:#0b1220;
  z-index:10000;
}
.krb-switch-row{
  position:relative;
  display:grid!important;
  grid-template-columns:52px minmax(0,auto) 22px;
  align-items:center;
  gap:10px;
  padding:14px 16px;
  border:1px solid #dbe3ef;
  border-radius:14px;
  background:#fff;
  margin:0!important;
}
.krb-switch-row--wide{
  margin:0 0 18px!important;
}
.krb-switch-row input[type=checkbox]{
  position:absolute!important;
  opacity:0!important;
  pointer-events:none!important;
  width:1px!important;
  height:1px!important;
  margin:0!important;
}
.krb-switch-ui{
  position:relative;
  width:46px;
  height:26px;
  border-radius:999px;
  background:#cbd5e1;
  transition:.18s ease;
  box-shadow:inset 0 0 0 1px rgba(15,23,42,.08);
}
.krb-switch-ui:before{
  content:"";
  position:absolute;
  top:3px;
  left:3px;
  width:20px;
  height:20px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 2px 6px rgba(15,23,42,.20);
  transition:.18s ease;
}
.krb-switch-row input[type=checkbox]:checked + .krb-switch-ui{
  background:#2f80ed;
}
.krb-switch-row input[type=checkbox]:checked + .krb-switch-ui:before{
  transform:translateX(20px);
}
.krb-switch-row strong{
  font-weight:800;
  color:#111827;
}
.krb-shortcode-list{
  display:grid;
  grid-template-columns:minmax(190px,auto) 1fr;
  gap:10px 14px;
  align-items:center;
}
.krb-shortcode-list code{
  display:inline-block;
  padding:8px 10px;
  border-radius:8px;
  background:#f1f5f9;
}
@media(max-width:900px){
  .krb-admin-grid{
    grid-template-columns:1fr;
  }
  .krb-shortcode-list{
    grid-template-columns:1fr;
  }
}
@media(max-width:760px){
  .krb-settings-tabs{
    overflow-x:auto;
    flex-wrap:nowrap;
    -webkit-overflow-scrolling:touch;
  }
  .krb-settings-tab{
    white-space:nowrap;
  }
  .krb-info:hover:after,
  .krb-info:focus:after{
    left:auto;
    right:0;
    transform:none;
  }
}


/* v2.3.1 - actieve stap duidelijker, inactieve stappen lichter */
.krb-step{
  background:#eef2f7!important;
  border-color:#dbe3ef!important;
  color:#64748b!important;
  box-shadow:none!important;
  opacity:.72;
  transition:background .18s ease,color .18s ease,border-color .18s ease,opacity .18s ease,box-shadow .18s ease,transform .18s ease;
}
.krb-step:hover{
  opacity:.92;
  background:#e2e8f0!important;
  color:#334155!important;
}
.krb-step.is-active{
  background:var(--krb-primary,#0b1220)!important;
  border-color:var(--krb-primary,#0b1220)!important;
  color:#fff!important;
  opacity:1;
  box-shadow:0 10px 24px rgba(15,23,42,.22)!important;
  transform:translateY(-1px);
}
.krb-step.is-done:not(.is-active){
  background:#eaf3ff!important;
  border-color:#bfdbfe!important;
  color:#1d4ed8!important;
  opacity:.88;
}


/* v2.3.2 - afgeronde stappen zelfde stijl als inactief, geen slagschaduwen */
.krb-step,
.krb-step.is-done,
.krb-step.is-done:not(.is-active){
  background:#eef2f7!important;
  border-color:#dbe3ef!important;
  color:#64748b!important;
  opacity:.72!important;
  box-shadow:none!important;
  transform:none!important;
}
.krb-step:hover,
.krb-step.is-done:hover,
.krb-step.is-done:not(.is-active):hover{
  background:#e2e8f0!important;
  border-color:#cbd5e1!important;
  color:#334155!important;
  opacity:.92!important;
  box-shadow:none!important;
  transform:none!important;
}
.krb-step.is-active{
  background:var(--krb-primary,#0b1220)!important;
  border-color:var(--krb-primary,#0b1220)!important;
  color:#fff!important;
  opacity:1!important;
  box-shadow:none!important;
  transform:none!important;
}


/* v2.3.3 - uniforme fontgrootte voor velden en placeholders */
.krb-form input,
.krb-form select,
.krb-form textarea,
.krb-form button,
.krb-form .krb-button,
.krb-wrap input,
.krb-wrap select,
.krb-wrap textarea,
.krb-wrap button,
.krb-wrap .button,
.krb-admin-settings input,
.krb-admin-settings select,
.krb-admin-settings textarea{
  font-size:16px!important;
  line-height:1.35!important;
}

.krb-form input::placeholder,
.krb-form textarea::placeholder,
.krb-wrap input::placeholder,
.krb-wrap textarea::placeholder,
.krb-admin-settings input::placeholder,
.krb-admin-settings textarea::placeholder{
  font-size:16px!important;
  line-height:1.35!important;
  color:#94a3b8!important;
  opacity:1!important;
}

.krb-form input::-webkit-input-placeholder,
.krb-form textarea::-webkit-input-placeholder,
.krb-wrap input::-webkit-input-placeholder,
.krb-wrap textarea::-webkit-input-placeholder{
  font-size:16px!important;
  line-height:1.35!important;
  color:#94a3b8!important;
}

.krb-form input::-moz-placeholder,
.krb-form textarea::-moz-placeholder,
.krb-wrap input::-moz-placeholder,
.krb-wrap textarea::-moz-placeholder{
  font-size:16px!important;
  line-height:1.35!important;
  color:#94a3b8!important;
  opacity:1!important;
}

.krb-form input:-ms-input-placeholder,
.krb-form textarea:-ms-input-placeholder,
.krb-wrap input:-ms-input-placeholder,
.krb-wrap textarea:-ms-input-placeholder{
  font-size:16px!important;
  line-height:1.35!important;
  color:#94a3b8!important;
}

.krb-input-wrap em,
.krb-rcd-row label em{
  font-size:16px!important;
  line-height:1.35!important;
}

.krb-inline-upload span,
.krb-inline-upload small,
.krb-photo-badge,
.krb-rule-badge,
.krb-attention-badge{
  line-height:1.35!important;
}

/* iOS/Safari: voorkom afwijkende rendering van datum/number/search velden */
.krb-form input[type="date"],
.krb-form input[type="number"],
.krb-form input[type="search"],
.krb-wrap input[type="date"],
.krb-wrap input[type="number"],
.krb-wrap input[type="search"]{
  font-size:16px!important;
  min-height:48px!important;
  -webkit-text-size-adjust:100%;
}


/* v2.3.4 - compacter formulier, consistente veldfonts en betere responsive layout */
.krb-tool{
  padding:18px!important;
  border-radius:20px!important;
}
.krb-tool-header{
  padding:18px 22px!important;
  margin-bottom:16px!important;
  border-radius:18px!important;
}
.krb-tool-header h2{
  color:#ffffff!important;
  background:transparent!important;
  font-size:clamp(26px,3vw,34px)!important;
  line-height:1.08!important;
  letter-spacing:-.02em!important;
  margin:0 0 6px!important;
}
.krb-tool-header p{
  font-size:15px!important;
  line-height:1.45!important;
}
.krb-eyebrow{
  color:#dbeafe!important;
  font-size:11px!important;
  line-height:1.2!important;
}

/* Eén basismaat voor alle invulvelden en placeholderteksten */
.krb-form{
  --krb-field-font-size:15px;
  --krb-field-line-height:1.35;
}
.krb-form input,
.krb-form select,
.krb-form textarea,
.krb-form button,
.krb-form .krb-button,
.krb-input-wrap em,
.krb-rcd-row label em,
.krb-inline-upload span,
.krb-inline-upload small{
  font-size:var(--krb-field-font-size)!important;
  line-height:var(--krb-field-line-height)!important;
}
.krb-form input::placeholder,
.krb-form textarea::placeholder{
  font-size:var(--krb-field-font-size)!important;
  line-height:var(--krb-field-line-height)!important;
  color:#94a3b8!important;
  opacity:1!important;
}
.krb-form input::-webkit-input-placeholder,
.krb-form textarea::-webkit-input-placeholder{
  font-size:var(--krb-field-font-size)!important;
  line-height:var(--krb-field-line-height)!important;
  color:#94a3b8!important;
}
.krb-form input::-moz-placeholder,
.krb-form textarea::-moz-placeholder{
  font-size:var(--krb-field-font-size)!important;
  line-height:var(--krb-field-line-height)!important;
  color:#94a3b8!important;
  opacity:1!important;
}
.krb-form input:-ms-input-placeholder,
.krb-form textarea:-ms-input-placeholder{
  font-size:var(--krb-field-font-size)!important;
  line-height:var(--krb-field-line-height)!important;
  color:#94a3b8!important;
}

/* Compacter: minder loze hoogte zonder tapbaarheid te slopen */
.krb-panel{
  padding:18px!important;
  border-radius:17px!important;
}
.krb-panel legend{
  font-size:21px!important;
  margin-bottom:6px!important;
}
.krb-panel-intro{
  font-size:15px!important;
  margin-bottom:16px!important;
  line-height:1.45!important;
}
.krb-steps{
  gap:8px!important;
  padding-bottom:12px!important;
}
.krb-step{
  min-height:42px!important;
  padding:9px 14px!important;
  font-size:15px!important;
}
.krb-checklist{
  gap:10px!important;
}
.krb-checkitem{
  grid-template-columns:minmax(210px,.75fr) minmax(0,1.75fr)!important;
  gap:14px!important;
  padding:13px 14px!important;
  border-radius:15px!important;
  align-items:center!important;
}
.krb-checkitem-main strong{
  font-size:16px!important;
  line-height:1.25!important;
  margin-bottom:5px!important;
}
.krb-checkitem-fields{
  grid-template-columns:minmax(150px,.72fr) minmax(190px,1fr) minmax(170px,.8fr)!important;
  gap:10px!important;
  align-items:stretch!important;
}
.krb-form input[type=text],
.krb-form input[type=email],
.krb-form input[type=number],
.krb-form input[type=date],
.krb-form input[type=search],
.krb-form select,
.krb-form textarea{
  min-height:42px!important;
  padding:9px 11px!important;
  border-radius:10px!important;
}
.krb-form textarea{
  min-height:42px!important;
  height:42px!important;
  resize:vertical!important;
}
.krb-inline-upload{
  min-height:42px!important;
  padding:8px 11px!important;
  border-radius:12px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
}
.krb-photo-badge,
.krb-rule-badge,
.krb-attention-badge{
  font-size:12px!important;
  padding:4px 8px!important;
}
.krb-actions{
  margin-top:14px!important;
}
.krb-button,
.krb-form button{
  min-height:44px!important;
  padding:10px 16px!important;
  border-radius:12px!important;
}

/* Tablet: minder breedteproblemen; velden onder elkaar waar nodig */
@media(max-width:1100px){
  .krb-checkitem{
    grid-template-columns:1fr!important;
    align-items:start!important;
  }
  .krb-checkitem-fields{
    grid-template-columns:1fr 1fr!important;
  }
  .krb-checkitem-fields .krb-inline-upload{
    grid-column:1/-1!important;
  }
}
@media(max-width:900px){
  .krb-tool-header{
    grid-template-columns:1fr!important;
  }
  .krb-progress{
    margin-top:14px!important;
  }
  .krb-checkitem-fields{
    grid-template-columns:1fr!important;
  }
  .krb-form textarea{
    height:74px!important;
    min-height:74px!important;
  }
}

/* Mobiel: schermbreedte maximaal benutten, maar niet propperig */
@media(max-width:760px){
  html body .krb-form.krb-tool{
    width:calc(100vw - 8px)!important;
    margin-left:calc(50% - 50vw + 4px)!important;
    margin-right:calc(50% - 50vw + 4px)!important;
    padding:8px!important;
    border-radius:14px!important;
  }
  .krb-tool-header{
    padding:14px!important;
    border-radius:14px!important;
  }
  .krb-tool-header h2{
    font-size:24px!important;
    line-height:1.1!important;
  }
  .krb-tool-header p{
    font-size:14px!important;
  }
  .krb-panel{
    padding:13px!important;
    border-radius:14px!important;
  }
  .krb-panel legend{
    font-size:20px!important;
  }
  .krb-checkitem{
    padding:12px!important;
    gap:10px!important;
  }
  .krb-checkitem-fields{
    gap:9px!important;
  }
  .krb-form input,
  .krb-form select,
  .krb-form textarea,
  .krb-form button,
  .krb-form .krb-button,
  .krb-input-wrap em,
  .krb-rcd-row label em{
    font-size:16px!important; /* iOS: geen auto-zoom */
  }
  .krb-form input::placeholder,
  .krb-form textarea::placeholder{
    font-size:16px!important;
  }
  .krb-form input[type=text],
  .krb-form input[type=email],
  .krb-form input[type=number],
  .krb-form input[type=date],
  .krb-form input[type=search],
  .krb-form select{
    min-height:44px!important;
  }
  .krb-actions{
    margin-top:12px!important;
  }
}


/* v2.3.5 - fotonummer verwijderd + datumvelden/placeholder font gelijkgetrokken */
.krb-form input[type="date"],
.krb-form input[type="date"]::-webkit-datetime-edit,
.krb-form input[type="date"]::-webkit-datetime-edit-fields-wrapper,
.krb-form input[type="date"]::-webkit-datetime-edit-text,
.krb-form input[type="date"]::-webkit-datetime-edit-month-field,
.krb-form input[type="date"]::-webkit-datetime-edit-day-field,
.krb-form input[type="date"]::-webkit-datetime-edit-year-field,
.krb-form input[type="date"]::-webkit-calendar-picker-indicator,
.krb-wrap input[type="date"],
.krb-wrap input[type="date"]::-webkit-datetime-edit,
.krb-wrap input[type="date"]::-webkit-datetime-edit-fields-wrapper,
.krb-wrap input[type="date"]::-webkit-datetime-edit-text,
.krb-wrap input[type="date"]::-webkit-datetime-edit-month-field,
.krb-wrap input[type="date"]::-webkit-datetime-edit-day-field,
.krb-wrap input[type="date"]::-webkit-datetime-edit-year-field,
.krb-wrap input[type="date"]::-webkit-calendar-picker-indicator{
  font-size:var(--krb-field-font-size,15px)!important;
  line-height:var(--krb-field-line-height,1.35)!important;
  font-family:inherit!important;
}

.krb-form input[type="date"]::-webkit-calendar-picker-indicator,
.krb-wrap input[type="date"]::-webkit-calendar-picker-indicator{
  opacity:.65;
  transform:scale(.9);
}

.krb-form input::placeholder,
.krb-form textarea::placeholder,
.krb-wrap input::placeholder,
.krb-wrap textarea::placeholder{
  font-family:inherit!important;
  font-size:var(--krb-field-font-size,15px)!important;
  line-height:var(--krb-field-line-height,1.35)!important;
}

@media(max-width:760px){
  .krb-form input[type="date"],
  .krb-form input[type="date"]::-webkit-datetime-edit,
  .krb-form input[type="date"]::-webkit-datetime-edit-fields-wrapper,
  .krb-form input[type="date"]::-webkit-datetime-edit-text,
  .krb-form input[type="date"]::-webkit-datetime-edit-month-field,
  .krb-form input[type="date"]::-webkit-datetime-edit-day-field,
  .krb-form input[type="date"]::-webkit-datetime-edit-year-field{
    font-size:16px!important;
    line-height:1.35!important;
  }
}


/* v2.3.6 - WordPress colorpicker in admin */
.krb-admin-settings .wp-picker-container{
  display:block;
}
.krb-admin-settings .wp-picker-container .wp-color-result.button{
  min-height:34px!important;
  margin:0 6px 6px 0!important;
  border-radius:8px!important;
}
.krb-admin-settings .wp-picker-container input.wp-color-picker{
  width:96px!important;
  min-height:34px!important;
  font-size:14px!important;
}
.krb-admin-settings .wp-picker-holder{
  position:relative;
  z-index:20;
}


/* v2.3.7 - kleurisolatie tegen thema/website-CSS
   De tool gebruikt CSS-variabelen uit de backend en wint nu van globale theme styling. */
#top .krb-form.krb-tool,
body .krb-form.krb-tool,
.krb-form.krb-tool{
  background:linear-gradient(180deg,var(--krb-bg,#f6f8fb) 0%,var(--krb-card,#fff) 42%)!important;
  border-color:var(--krb-border,#dbe3ef)!important;
  color:var(--krb-text-color,#142033)!important;
}

#top .krb-form.krb-tool .krb-tool-header,
body .krb-form.krb-tool .krb-tool-header,
.krb-form.krb-tool .krb-tool-header{
  background:radial-gradient(circle at top right,rgba(47,128,237,.18),transparent 34%),linear-gradient(135deg,var(--krb-primary,#0b1220),#1f2a44)!important;
  color:var(--krb-header-text,#fff)!important;
  border-color:transparent!important;
}

#top .krb-form.krb-tool .krb-tool-header h1,
#top .krb-form.krb-tool .krb-tool-header h2,
#top .krb-form.krb-tool .krb-tool-header h3,
#top .krb-form.krb-tool .krb-tool-header p,
#top .krb-form.krb-tool .krb-tool-header span,
body .krb-form.krb-tool .krb-tool-header h1,
body .krb-form.krb-tool .krb-tool-header h2,
body .krb-form.krb-tool .krb-tool-header h3,
body .krb-form.krb-tool .krb-tool-header p,
body .krb-form.krb-tool .krb-tool-header span,
.krb-form.krb-tool .krb-tool-header h1,
.krb-form.krb-tool .krb-tool-header h2,
.krb-form.krb-tool .krb-tool-header h3,
.krb-form.krb-tool .krb-tool-header p,
.krb-form.krb-tool .krb-tool-header span{
  color:var(--krb-header-text,#fff)!important;
  border-color:transparent!important;
}

#top .krb-form.krb-tool .krb-eyebrow,
body .krb-form.krb-tool .krb-eyebrow,
.krb-form.krb-tool .krb-eyebrow{
  color:color-mix(in srgb,var(--krb-header-text,#fff) 76%,var(--krb-accent,#2f80ed))!important;
}

#top .krb-form.krb-tool .krb-progress i,
body .krb-form.krb-tool .krb-progress i,
.krb-form.krb-tool .krb-progress i{
  background:var(--krb-accent,#2f80ed)!important;
}

#top .krb-form.krb-tool .krb-panel,
#top .krb-form.krb-tool .krb-checkitem,
#top .krb-form.krb-tool .krb-rcd-row,
#top .krb-form.krb-tool .krb-summary-box,
#top .krb-form.krb-tool .krb-submit-modal,
body .krb-form.krb-tool .krb-panel,
body .krb-form.krb-tool .krb-checkitem,
body .krb-form.krb-tool .krb-rcd-row,
body .krb-form.krb-tool .krb-summary-box,
body .krb-form.krb-tool .krb-submit-modal,
.krb-form.krb-tool .krb-panel,
.krb-form.krb-tool .krb-checkitem,
.krb-form.krb-tool .krb-rcd-row,
.krb-form.krb-tool .krb-summary-box,
.krb-form.krb-tool .krb-submit-modal{
  background:var(--krb-card,#fff)!important;
  border-color:var(--krb-border,#dbe3ef)!important;
  color:var(--krb-text-color,#142033)!important;
}

#top .krb-form.krb-tool legend,
#top .krb-form.krb-tool .krb-panel legend,
#top .krb-form.krb-tool .krb-checkitem-main strong,
#top .krb-form.krb-tool .krb-field > span,
#top .krb-form.krb-tool .krb-submit-modal strong,
body .krb-form.krb-tool legend,
body .krb-form.krb-tool .krb-panel legend,
body .krb-form.krb-tool .krb-checkitem-main strong,
body .krb-form.krb-tool .krb-field > span,
body .krb-form.krb-tool .krb-submit-modal strong,
.krb-form.krb-tool legend,
.krb-form.krb-tool .krb-panel legend,
.krb-form.krb-tool .krb-checkitem-main strong,
.krb-form.krb-tool .krb-field > span,
.krb-form.krb-tool .krb-submit-modal strong{
  color:var(--krb-title-color,#0b1220)!important;
}

#top .krb-form.krb-tool .krb-panel-intro,
#top .krb-form.krb-tool .krb-inline-upload small,
#top .krb-form.krb-tool .krb-submit-modal p,
body .krb-form.krb-tool .krb-panel-intro,
body .krb-form.krb-tool .krb-inline-upload small,
body .krb-form.krb-tool .krb-submit-modal p,
.krb-form.krb-tool .krb-panel-intro,
.krb-form.krb-tool .krb-inline-upload small,
.krb-form.krb-tool .krb-submit-modal p{
  color:var(--krb-muted,#64748b)!important;
}

#top .krb-form.krb-tool input,
#top .krb-form.krb-tool select,
#top .krb-form.krb-tool textarea,
body .krb-form.krb-tool input,
body .krb-form.krb-tool select,
body .krb-form.krb-tool textarea,
.krb-form.krb-tool input,
.krb-form.krb-tool select,
.krb-form.krb-tool textarea{
  background:#fff!important;
  color:var(--krb-text-color,#142033)!important;
  border-color:var(--krb-border,#dbe3ef)!important;
  box-shadow:none!important;
}

#top .krb-form.krb-tool input:focus,
#top .krb-form.krb-tool select:focus,
#top .krb-form.krb-tool textarea:focus,
body .krb-form.krb-tool input:focus,
body .krb-form.krb-tool select:focus,
body .krb-form.krb-tool textarea:focus,
.krb-form.krb-tool input:focus,
.krb-form.krb-tool select:focus,
.krb-form.krb-tool textarea:focus{
  border-color:var(--krb-accent,#2f80ed)!important;
  box-shadow:0 0 0 4px color-mix(in srgb,var(--krb-accent,#2f80ed) 18%,transparent)!important;
}

#top .krb-form.krb-tool .krb-button,
#top .krb-form.krb-tool button.krb-button,
body .krb-form.krb-tool .krb-button,
body .krb-form.krb-tool button.krb-button,
.krb-form.krb-tool .krb-button,
.krb-form.krb-tool button.krb-button{
  background:var(--krb-primary,#0b1220)!important;
  border-color:var(--krb-primary,#0b1220)!important;
  color:#fff!important;
}

#top .krb-form.krb-tool .krb-button--submit,
body .krb-form.krb-tool .krb-button--submit,
.krb-form.krb-tool .krb-button--submit{
  background:var(--krb-accent,#2f80ed)!important;
  border-color:var(--krb-accent,#2f80ed)!important;
  color:#fff!important;
}

#top .krb-form.krb-tool .krb-button--ghost,
body .krb-form.krb-tool .krb-button--ghost,
.krb-form.krb-tool .krb-button--ghost{
  background:#eef2f7!important;
  border-color:#eef2f7!important;
  color:#111827!important;
}

#top .krb-form.krb-tool .krb-step,
body .krb-form.krb-tool .krb-step,
.krb-form.krb-tool .krb-step{
  background:#eef2f7!important;
  border-color:var(--krb-border,#dbe3ef)!important;
  color:var(--krb-muted,#64748b)!important;
}

#top .krb-form.krb-tool .krb-step.is-active,
body .krb-form.krb-tool .krb-step.is-active,
.krb-form.krb-tool .krb-step.is-active{
  background:var(--krb-primary,#0b1220)!important;
  border-color:var(--krb-primary,#0b1220)!important;
  color:#fff!important;
}

#top .krb-form.krb-tool .krb-inline-upload,
body .krb-form.krb-tool .krb-inline-upload,
.krb-form.krb-tool .krb-inline-upload{
  background:color-mix(in srgb,var(--krb-accent,#2f80ed) 5%,#fff)!important;
  border-color:var(--krb-border,#dbe3ef)!important;
  color:var(--krb-text-color,#142033)!important;
}

#top .krb-form.krb-tool .krb-inline-upload span,
body .krb-form.krb-tool .krb-inline-upload span,
.krb-form.krb-tool .krb-inline-upload span{
  color:var(--krb-accent,#2f80ed)!important;
}

/* Fallback voor browsers zonder color-mix */
@supports not (color: color-mix(in srgb, #000 50%, #fff)){
  #top .krb-form.krb-tool .krb-eyebrow,
  body .krb-form.krb-tool .krb-eyebrow,
  .krb-form.krb-tool .krb-eyebrow{
    color:#dbeafe!important;
  }
  #top .krb-form.krb-tool input:focus,
  #top .krb-form.krb-tool select:focus,
  #top .krb-form.krb-tool textarea:focus,
  body .krb-form.krb-tool input:focus,
  body .krb-form.krb-tool select:focus,
  body .krb-form.krb-tool textarea:focus,
  .krb-form.krb-tool input:focus,
  .krb-form.krb-tool select:focus,
  .krb-form.krb-tool textarea:focus{
    box-shadow:0 0 0 4px rgba(47,128,237,.14)!important;
  }
}


/* v2.3.8 - eenheden buiten het invoerveld als nette addon */
#top .krb-form.krb-tool .krb-input-wrap,
body .krb-form.krb-tool .krb-input-wrap,
.krb-form.krb-tool .krb-input-wrap{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:stretch!important;
  width:100%!important;
  gap:0!important;
}

#top .krb-form.krb-tool .krb-input-wrap input,
body .krb-form.krb-tool .krb-input-wrap input,
.krb-form.krb-tool .krb-input-wrap input{
  width:100%!important;
  min-width:0!important;
  border-top-right-radius:0!important;
  border-bottom-right-radius:0!important;
  padding-right:12px!important;
  margin:0!important;
}

#top .krb-form.krb-tool .krb-input-wrap em,
body .krb-form.krb-tool .krb-input-wrap em,
.krb-form.krb-tool .krb-input-wrap em{
  position:static!important;
  inset:auto!important;
  transform:none!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:52px!important;
  min-height:42px!important;
  padding:0 12px!important;
  margin:0!important;
  border:1px solid var(--krb-border,#dbe3ef)!important;
  border-left:0!important;
  border-radius:0 10px 10px 0!important;
  background:#f8fafc!important;
  color:var(--krb-muted,#64748b)!important;
  font-style:normal!important;
  font-weight:800!important;
  line-height:1!important;
  white-space:nowrap!important;
  pointer-events:none!important;
}

/* Aardlekmeting-tabel gebruikt label > input + em; maak daar dezelfde addon-opbouw van */
#top .krb-form.krb-tool .krb-rcd-row label,
body .krb-form.krb-tool .krb-rcd-row label,
.krb-form.krb-tool .krb-rcd-row label{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  align-items:stretch!important;
  width:100%!important;
}

#top .krb-form.krb-tool .krb-rcd-row label input,
body .krb-form.krb-tool .krb-rcd-row label input,
.krb-form.krb-tool .krb-rcd-row label input{
  border-top-right-radius:0!important;
  border-bottom-right-radius:0!important;
  padding-right:12px!important;
}

#top .krb-form.krb-tool .krb-rcd-row label em,
body .krb-form.krb-tool .krb-rcd-row label em,
.krb-form.krb-tool .krb-rcd-row label em{
  position:static!important;
  inset:auto!important;
  transform:none!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-width:52px!important;
  min-height:42px!important;
  padding:0 12px!important;
  border:1px solid var(--krb-border,#dbe3ef)!important;
  border-left:0!important;
  border-radius:0 10px 10px 0!important;
  background:#f8fafc!important;
  color:var(--krb-muted,#64748b)!important;
  font-style:normal!important;
  font-weight:800!important;
  line-height:1!important;
  white-space:nowrap!important;
  pointer-events:none!important;
}

@media(max-width:760px){
  #top .krb-form.krb-tool .krb-input-wrap em,
  body .krb-form.krb-tool .krb-input-wrap em,
  .krb-form.krb-tool .krb-input-wrap em,
  #top .krb-form.krb-tool .krb-rcd-row label em,
  body .krb-form.krb-tool .krb-rcd-row label em,
  .krb-form.krb-tool .krb-rcd-row label em{
    min-height:44px!important;
    min-width:50px!important;
    font-size:16px!important;
  }
}


/* v2.3.9 - aardlekmetingen: standaard 4 regels, extra regels optioneel */
.krb-form.krb-tool .krb-rcd-head,
.krb-form.krb-tool .krb-rcd-row{
  grid-template-columns:50px 1fr 1fr 1.2fr auto!important;
}
.krb-form.krb-tool .krb-rcd-row[hidden]{
  display:none!important;
}
.krb-rcd-actions{
  display:flex;
  align-items:center;
  gap:12px;
  margin-top:12px;
  flex-wrap:wrap;
}
.krb-rcd-actions small{
  color:var(--krb-muted,#64748b);
  font-weight:700;
}
.krb-button--small,
.krb-form button.krb-button--small{
  min-height:38px!important;
  padding:8px 12px!important;
  font-size:14px!important;
  border-radius:10px!important;
}
.krb-rcd-remove{
  white-space:nowrap;
}
@media(max-width:900px){
  .krb-form.krb-tool .krb-rcd-head{
    display:none!important;
  }
  .krb-form.krb-tool .krb-rcd-row{
    grid-template-columns:34px 1fr!important;
  }
  .krb-form.krb-tool .krb-rcd-row > input[type="text"],
  .krb-form.krb-tool .krb-rcd-row .krb-rcd-remove{
    grid-column:2/-1!important;
  }
}
@media(max-width:760px){
  .krb-rcd-actions{
    display:grid;
    grid-template-columns:1fr;
  }
  .krb-rcd-actions .krb-button{
    width:100%;
  }
}


/* v2.3.10 - overzicht stap 4 netter opgesomd */
.krb-review-summary{
  padding:18px!important;
}
.krb-review-summary h3{
  margin:0 0 14px!important;
  font-size:20px!important;
  line-height:1.25!important;
  color:var(--krb-title-color,#0b1220)!important;
}
.krb-review-list{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
  margin:0!important;
  padding:0!important;
  list-style:none!important;
}
.krb-review-list li{
  position:relative!important;
  display:grid!important;
  grid-template-columns:140px minmax(0,1fr)!important;
  gap:10px!important;
  align-items:start!important;
  margin:0!important;
  padding:12px 13px!important;
  border:1px solid var(--krb-border,#dbe3ef)!important;
  border-radius:13px!important;
  background:#fff!important;
  color:var(--krb-text-color,#142033)!important;
}
.krb-review-list li:before{
  content:"";
  width:8px;
  height:8px;
  border-radius:50%;
  background:var(--krb-accent,#2f80ed);
  position:absolute;
  left:12px;
  top:18px;
}
.krb-review-label{
  display:block!important;
  padding-left:16px!important;
  font-weight:900!important;
  color:var(--krb-title-color,#0b1220)!important;
  line-height:1.25!important;
}
.krb-review-text{
  display:block!important;
  color:var(--krb-text-color,#142033)!important;
  line-height:1.45!important;
}
.krb-review-text strong{
  font-weight:900!important;
  color:var(--krb-title-color,#0b1220)!important;
}
@media(max-width:980px){
  .krb-review-list{
    grid-template-columns:1fr!important;
  }
}
@media(max-width:760px){
  .krb-review-summary{
    padding:13px!important;
  }
  .krb-review-list{
    gap:8px!important;
  }
  .krb-review-list li{
    grid-template-columns:1fr!important;
    gap:5px!important;
    padding:11px 12px!important;
  }
  .krb-review-label{
    padding-left:16px!important;
  }
}


/* v2.4.0 - compactere admin knoppen, betaallink-formulier en NAW-editor */
.krb-wrap .widefat .button,
.krb-wrap .widefat .button-primary,
.krb-wrap .widefat .button-link-delete{
  min-height:28px!important;
  height:auto!important;
  padding:3px 8px!important;
  font-size:12px!important;
  line-height:1.45!important;
  border-radius:5px!important;
  margin:1px 2px 3px 0!important;
  white-space:nowrap!important;
}
.krb-wrap .widefat td,
.krb-wrap .widefat th{
  vertical-align:top!important;
  padding:8px 9px!important;
}
.krb-payment-create-form{
  display:grid;
  grid-template-columns:minmax(180px,1fr) auto;
  gap:5px;
  align-items:center;
  margin:0 0 5px;
  max-width:420px;
}
.krb-payment-create-form select{
  min-height:30px!important;
  height:30px!important;
  padding:2px 28px 2px 8px!important;
  font-size:12px!important;
  max-width:100%;
}
.krb-payment-link-tools{
  display:grid!important;
  grid-template-columns:minmax(160px,1fr) auto auto auto!important;
  gap:4px!important;
  align-items:center!important;
  max-width:520px;
}
.krb-payment-link-tools input,
.krb-reinspection-link-tools input{
  min-height:28px!important;
  height:28px!important;
  font-size:12px!important;
  padding:3px 6px!important;
}
.krb-admin-edit-panel{
  margin:16px 0 18px;
  padding:16px;
  border:1px solid #dbe3ef;
  border-radius:12px;
  background:#fff;
  max-width:980px;
}
.krb-admin-edit-panel h2{
  margin:0 0 6px;
}
.krb-admin-edit-panel p{
  margin-top:6px;
}
@media(max-width:1100px){
  .krb-payment-create-form,
  .krb-payment-link-tools{
    grid-template-columns:1fr!important;
  }
}


/* v2.4.1 - backend compacter en gelijkgetrokken met kleine PDF/mail knoppen */
.krb-wrap{
  font-size:13px!important;
}
.krb-wrap h1{
  font-size:22px!important;
  margin:10px 0 12px!important;
}
.krb-wrap h2{
  font-size:17px!important;
  margin:0 0 8px!important;
}
.krb-admin-filter{
  padding:10px 12px!important;
  margin:10px 0 12px!important;
  border-radius:8px!important;
}
.krb-admin-filter input,
.krb-admin-filter select{
  min-height:32px!important;
  height:32px!important;
  padding:4px 9px!important;
  font-size:13px!important;
}
.krb-admin-filter .button,
.krb-wrap .button,
.krb-wrap .button-primary,
.krb-wrap .button-secondary,
.krb-wrap .button-link-delete,
.krb-wrap a.button,
.krb-wrap button.button{
  min-height:28px!important;
  height:auto!important;
  padding:3px 8px!important;
  font-size:12px!important;
  line-height:1.45!important;
  border-radius:4px!important;
  margin:1px 2px 3px 0!important;
  vertical-align:middle!important;
  box-shadow:none!important;
}
.krb-wrap .widefat{
  font-size:12.5px!important;
}
.krb-wrap .widefat th{
  font-weight:700!important;
}
.krb-wrap .widefat td,
.krb-wrap .widefat th{
  padding:7px 8px!important;
  line-height:1.35!important;
  vertical-align:top!important;
}
.krb-customer-group{
  padding:12px!important;
  margin:14px 0 18px!important;
  border-radius:10px!important;
}
.krb-customer-group h2{
  font-size:17px!important;
  margin:0 0 8px!important;
}
.krb-customer-group h2 small{
  font-size:12px!important;
}
.krb-payment-create-form{
  display:grid!important;
  grid-template-columns:minmax(155px,1fr) auto!important;
  gap:4px!important;
  align-items:center!important;
  max-width:410px!important;
  margin:0 0 4px!important;
}
.krb-payment-create-form select{
  min-height:28px!important;
  height:28px!important;
  padding:2px 26px 2px 7px!important;
  font-size:12px!important;
  border-radius:4px!important;
}
.krb-payment-link-tools,
.krb-reinspection-link-tools{
  gap:4px!important;
  margin-top:4px!important;
}
.krb-payment-link-tools input,
.krb-reinspection-link-tools input{
  min-height:28px!important;
  height:28px!important;
  padding:3px 6px!important;
  font-size:12px!important;
  border-radius:4px!important;
}
.krb-admin-edit-panel{
  max-width:860px!important;
  padding:12px!important;
  margin:10px 0 14px!important;
  border-radius:9px!important;
}
.krb-admin-edit-panel p{
  font-size:12.5px!important;
  margin:4px 0 10px!important;
}
.krb-admin-edit-panel .krb-admin-grid{
  gap:10px 14px!important;
}
.krb-admin-edit-panel .krb-admin-field>span{
  font-size:12.5px!important;
  margin-bottom:4px!important;
}
.krb-admin-edit-panel input{
  min-height:32px!important;
  height:32px!important;
  padding:4px 8px!important;
  font-size:13px!important;
  border-radius:4px!important;
}
@media(max-width:1100px){
  .krb-payment-create-form,
  .krb-payment-link-tools,
  .krb-reinspection-link-tools{
    grid-template-columns:1fr!important;
    max-width:none!important;
  }
}


/* v2.5.1 - compactere opmaak-tab en colorpicker isolatie */
.krb-admin-settings .krb-card{
  padding:16px!important;
  border-radius:12px!important;
}
.krb-admin-settings .krb-card h2{
  font-size:18px!important;
  margin:0 0 6px!important;
}
.krb-admin-settings .krb-card .description{
  font-size:12.5px!important;
  line-height:1.4!important;
  margin:0 0 12px!important;
}
.krb-admin-settings .krb-admin-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:12px 16px!important;
}
.krb-admin-settings .krb-admin-field>span,
.krb-admin-settings .krb-card label>span{
  font-size:12.5px!important;
  margin-bottom:5px!important;
  line-height:1.25!important;
}
.krb-admin-settings input[type="text"],
.krb-admin-settings input[type="password"],
.krb-admin-settings input[type="number"],
.krb-admin-settings input[type="email"],
.krb-admin-settings select,
.krb-admin-settings textarea{
  min-height:32px!important;
  padding:4px 8px!important;
  font-size:13px!important;
  line-height:1.3!important;
  border-radius:5px!important;
}

/* WP colorpicker reset: voorkom dat site/admin CSS de knop uitrekt of vervormt */
.krb-admin-settings .wp-picker-container{
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  flex-wrap:wrap!important;
  max-width:100%!important;
  line-height:1!important;
}
.krb-admin-settings .wp-picker-container .wp-color-result.button,
.krb-admin-settings .wp-picker-container .wp-color-result{
  position:relative!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  width:118px!important;
  min-width:118px!important;
  max-width:118px!important;
  height:30px!important;
  min-height:30px!important;
  max-height:30px!important;
  padding:0!important;
  margin:0!important;
  overflow:hidden!important;
  border:1px solid #8c8f94!important;
  border-radius:5px!important;
  background:#f6f7f7!important;
  box-shadow:none!important;
  vertical-align:middle!important;
  text-decoration:none!important;
}
.krb-admin-settings .wp-picker-container .wp-color-result.button:before,
.krb-admin-settings .wp-picker-container .wp-color-result:before{
  content:""!important;
  position:absolute!important;
  inset:0 auto 0 0!important;
  display:block!important;
  width:34px!important;
  height:100%!important;
  border-right:1px solid rgba(0,0,0,.16)!important;
  background:var(--krb-picker-color,#fff)!important;
}
.krb-admin-settings .wp-picker-container .wp-color-result-text{
  display:block!important;
  width:auto!important;
  height:auto!important;
  margin:0 0 0 34px!important;
  padding:0 8px!important;
  border:0!important;
  background:transparent!important;
  color:#1d2327!important;
  font-size:12px!important;
  line-height:30px!important;
  font-weight:600!important;
  text-align:left!important;
  white-space:nowrap!important;
}
.krb-admin-settings .wp-picker-container input.wp-color-picker,
.krb-admin-settings input.wp-color-picker{
  width:82px!important;
  min-width:82px!important;
  max-width:82px!important;
  height:30px!important;
  min-height:30px!important;
  padding:3px 6px!important;
  font-size:12px!important;
  line-height:1.2!important;
  border-radius:5px!important;
}
.krb-admin-settings .wp-picker-container .wp-picker-clear,
.krb-admin-settings .wp-picker-container .wp-picker-default{
  height:30px!important;
  min-height:30px!important;
  padding:3px 8px!important;
  font-size:12px!important;
  line-height:1.4!important;
  border-radius:5px!important;
  margin:0!important;
}
.krb-admin-settings .wp-picker-holder{
  position:absolute!important;
  z-index:99999!important;
  margin-top:34px!important;
}
.krb-admin-settings .iris-picker{
  box-shadow:0 12px 32px rgba(15,23,42,.22)!important;
}

/* Maak de swatchkleur zichtbaar via inline style fallback van WP colorpicker */
.krb-admin-settings .wp-picker-container .wp-color-result[style]{
  background-image:none!important;
}
.krb-admin-settings .wp-picker-container .wp-color-result[style]:before{
  background:inherit!important;
}

/* Logo URL mag de volle breedte pakken binnen de compacte grid */
.krb-admin-settings input[name="krb_settings[pdf_logo_url]"]{
  min-width:100%!important;
}

@media(max-width:1180px){
  .krb-admin-settings .krb-admin-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:760px){
  .krb-admin-settings .krb-admin-grid{
    grid-template-columns:1fr!important;
  }
  .krb-admin-settings .wp-picker-holder{
    position:relative!important;
    margin-top:8px!important;
  }
}


/* v2.5.2 - duidelijke kleurvelden met label, uitleg en huidige kleurwaarde */
.krb-admin-settings [data-krb-admin-panel="style"] .krb-admin-grid{
  grid-template-columns:repeat(2,minmax(240px,1fr))!important;
  gap:14px 18px!important;
  align-items:start!important;
}
.krb-admin-settings [data-krb-admin-panel="style"] .krb-admin-field{
  display:grid!important;
  grid-template-columns:1fr!important;
  align-content:start!important;
  min-height:auto!important;
  padding:0!important;
}
.krb-admin-settings [data-krb-admin-panel="style"] .krb-admin-field > span{
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  min-height:20px!important;
  margin:0 0 6px!important;
  color:#111827!important;
  font-size:13px!important;
  line-height:1.25!important;
  font-weight:800!important;
  white-space:normal!important;
}
.krb-admin-settings [data-krb-admin-panel="style"] .krb-info{
  width:17px!important;
  height:17px!important;
  min-width:17px!important;
  font-size:11px!important;
}

/* WP colorpicker: maak knop leesbaar, kort en niet afhankelijk van site-CSS */
.krb-admin-settings [data-krb-admin-panel="style"] .wp-picker-container{
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  flex-wrap:wrap!important;
  width:100%!important;
  min-height:32px!important;
  line-height:1!important;
}
.krb-admin-settings [data-krb-admin-panel="style"] .wp-picker-container .wp-color-result,
.krb-admin-settings [data-krb-admin-panel="style"] .wp-picker-container .wp-color-result.button{
  display:inline-flex!important;
  align-items:center!important;
  width:128px!important;
  min-width:128px!important;
  max-width:128px!important;
  height:32px!important;
  min-height:32px!important;
  max-height:32px!important;
  padding:0!important;
  margin:0!important;
  border:1px solid #8c8f94!important;
  border-radius:6px!important;
  background:#fff!important;
  box-shadow:none!important;
  overflow:hidden!important;
  text-decoration:none!important;
}
.krb-admin-settings [data-krb-admin-panel="style"] .wp-picker-container .wp-color-result:before,
.krb-admin-settings [data-krb-admin-panel="style"] .wp-picker-container .wp-color-result.button:before{
  content:""!important;
  display:block!important;
  position:static!important;
  width:36px!important;
  min-width:36px!important;
  height:100%!important;
  border:0!important;
  border-right:1px solid rgba(0,0,0,.18)!important;
  background:var(--krb-picker-color,#ffffff)!important;
}
.krb-admin-settings [data-krb-admin-panel="style"] .wp-picker-container .wp-color-result-text{
  display:block!important;
  flex:1 1 auto!important;
  min-width:0!important;
  height:32px!important;
  margin:0!important;
  padding:0 7px!important;
  border:0!important;
  background:#fff!important;
  color:#1d2327!important;
  font-size:11.5px!important;
  line-height:32px!important;
  font-weight:700!important;
  text-align:left!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
.krb-admin-settings [data-krb-admin-panel="style"] input.wp-color-picker{
  width:86px!important;
  min-width:86px!important;
  max-width:86px!important;
  height:32px!important;
  min-height:32px!important;
  padding:4px 6px!important;
  font-size:12px!important;
  line-height:1.2!important;
  border-radius:5px!important;
}
.krb-admin-settings [data-krb-admin-panel="style"] .wp-picker-clear,
.krb-admin-settings [data-krb-admin-panel="style"] .wp-picker-default{
  height:32px!important;
  min-height:32px!important;
  padding:4px 8px!important;
  font-size:12px!important;
  line-height:1.3!important;
  border-radius:5px!important;
  margin:0!important;
}
.krb-admin-settings [data-krb-admin-panel="style"] .krb-color-value{
  display:inline-block!important;
  margin-top:4px!important;
  color:#64748b!important;
  font-size:11.5px!important;
  font-weight:700!important;
  line-height:1.2!important;
  letter-spacing:.01em!important;
}
.krb-admin-settings [data-krb-admin-panel="style"] .wp-picker-holder{
  z-index:999999!important;
}
.krb-admin-settings [data-krb-admin-panel="style"] .iris-picker{
  max-width:260px!important;
}

/* Logo URL mag duidelijk onder z'n eigen label staan */
.krb-admin-settings [data-krb-admin-panel="style"] input[name="krb_settings[pdf_logo_url]"]{
  width:100%!important;
  max-width:100%!important;
}

@media(max-width:900px){
  .krb-admin-settings [data-krb-admin-panel="style"] .krb-admin-grid{
    grid-template-columns:1fr!important;
  }
}


/* v2.5.3 - korte beschrijving bij elk kleurveld */
.krb-admin-settings [data-krb-admin-panel="style"] .krb-admin-field{
  gap:0!important;
}
.krb-admin-settings [data-krb-admin-panel="style"] .krb-admin-field > span{
  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
  height:auto!important;
  overflow:visible!important;
  margin-bottom:3px!important;
}
.krb-admin-settings [data-krb-admin-panel="style"] .krb-color-purpose{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  margin:0 0 6px!important;
  color:#334155!important;
  font-size:12px!important;
  font-weight:700!important;
  line-height:1.25!important;
}
.krb-admin-settings [data-krb-admin-panel="style"] .krb-color-value{
  display:block!important;
  margin-top:5px!important;
  color:#64748b!important;
  font-size:11.5px!important;
  font-weight:700!important;
  line-height:1.2!important;
}
.krb-admin-settings [data-krb-admin-panel="style"] .wp-picker-container{
  margin-top:0!important;
}


/* v2.5.4 - kleurveld-omschrijvingen expliciet zichtbaar */
.krb-admin-settings [data-krb-admin-panel="style"] .krb-admin-field{
  display:block!important;
  position:relative!important;
  min-height:0!important;
  padding:0!important;
  overflow:visible!important;
}
.krb-admin-settings [data-krb-admin-panel="style"] .krb-admin-field > span{
  display:none!important; /* dubbele labelregel verbergen; caption hieronder is leidend */
}
.krb-admin-settings [data-krb-admin-panel="style"] .krb-color-caption{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  height:auto!important;
  min-height:0!important;
  margin:0 0 7px!important;
  padding:0!important;
  overflow:visible!important;
  color:#111827!important;
  background:transparent!important;
  border:0!important;
  position:relative!important;
  z-index:2!important;
}
.krb-admin-settings [data-krb-admin-panel="style"] .krb-color-caption strong{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  margin:0 0 2px!important;
  padding:0!important;
  color:#111827!important;
  font-size:13px!important;
  font-weight:800!important;
  line-height:1.25!important;
  white-space:normal!important;
}
.krb-admin-settings [data-krb-admin-panel="style"] .krb-color-caption small{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  margin:0!important;
  padding:0!important;
  color:#64748b!important;
  font-size:11.5px!important;
  font-weight:600!important;
  line-height:1.3!important;
  white-space:normal!important;
}
.krb-admin-settings [data-krb-admin-panel="style"] .krb-admin-grid{
  grid-template-columns:repeat(2,minmax(260px,1fr))!important;
  gap:16px 24px!important;
  align-items:start!important;
}
.krb-admin-settings [data-krb-admin-panel="style"] .wp-picker-container{
  margin-top:0!important;
}
.krb-admin-settings [data-krb-admin-panel="style"] .krb-color-value{
  display:block!important;
  margin-top:5px!important;
  color:#475569!important;
  font-size:11.5px!important;
  font-weight:800!important;
  line-height:1.2!important;
}
@media(max-width:900px){
  .krb-admin-settings [data-krb-admin-panel="style"] .krb-admin-grid{
    grid-template-columns:1fr!important;
  }
}


/* v2.5.5 - definitieve expliciete opmaak kleurvelden */
.krb-admin-settings [data-krb-admin-panel="style"] .krb-color-settings-grid{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(300px,1fr))!important;
  gap:14px 24px!important;
  align-items:start!important;
  margin-top:14px!important;
}
.krb-admin-settings [data-krb-admin-panel="style"] .krb-color-setting{
  display:grid!important;
  grid-template-columns:minmax(180px,1fr) auto!important;
  grid-template-areas:
    "text picker"
    "text value"!important;
  column-gap:14px!important;
  row-gap:4px!important;
  align-items:center!important;
  padding:10px 12px!important;
  border:1px solid #dbe3ef!important;
  border-radius:10px!important;
  background:#fff!important;
  min-height:74px!important;
}
.krb-admin-settings [data-krb-admin-panel="style"] .krb-color-setting__text{
  grid-area:text!important;
  display:block!important;
  min-width:0!important;
}
.krb-admin-settings [data-krb-admin-panel="style"] .krb-color-setting__text strong{
  display:block!important;
  margin:0 0 3px!important;
  color:#111827!important;
  font-size:13px!important;
  font-weight:800!important;
  line-height:1.25!important;
}
.krb-admin-settings [data-krb-admin-panel="style"] .krb-color-setting__text small{
  display:block!important;
  color:#64748b!important;
  font-size:11.5px!important;
  font-weight:600!important;
  line-height:1.3!important;
}
.krb-admin-settings [data-krb-admin-panel="style"] .krb-color-setting .wp-picker-container{
  grid-area:picker!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:6px!important;
  width:auto!important;
  min-width:0!important;
  margin:0!important;
}
.krb-admin-settings [data-krb-admin-panel="style"] .krb-color-setting .wp-color-result,
.krb-admin-settings [data-krb-admin-panel="style"] .krb-color-setting .wp-color-result.button{
  width:132px!important;
  min-width:132px!important;
  max-width:132px!important;
  height:32px!important;
  min-height:32px!important;
  max-height:32px!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
  border-radius:6px!important;
  box-shadow:none!important;
}
.krb-admin-settings [data-krb-admin-panel="style"] .krb-color-setting .wp-color-result:before{
  width:38px!important;
  min-width:38px!important;
  background:var(--krb-picker-color,#fff)!important;
}
.krb-admin-settings [data-krb-admin-panel="style"] .krb-color-setting .wp-color-result-text{
  font-size:12px!important;
  font-weight:800!important;
  line-height:32px!important;
  padding:0 8px!important;
  color:#1d2327!important;
  background:#fff!important;
}
.krb-admin-settings [data-krb-admin-panel="style"] .krb-color-setting input.wp-color-picker{
  width:88px!important;
  min-width:88px!important;
  height:30px!important;
  min-height:30px!important;
  font-size:12px!important;
}
.krb-admin-settings [data-krb-admin-panel="style"] .krb-color-setting .krb-color-value{
  grid-area:value!important;
  display:block!important;
  justify-self:end!important;
  margin:0!important;
  color:#475569!important;
  font-size:11.5px!important;
  font-weight:800!important;
  line-height:1.2!important;
}
.krb-admin-settings [data-krb-admin-panel="style"] .krb-color-setting--logo{
  grid-template-columns:1fr!important;
  grid-template-areas:"text" "picker"!important;
}
.krb-admin-settings [data-krb-admin-panel="style"] .krb-color-setting--logo input{
  grid-area:picker!important;
  width:100%!important;
  max-width:100%!important;
}
.krb-admin-settings [data-krb-admin-panel="style"] .wp-picker-holder{
  z-index:999999!important;
}
@media(max-width:1100px){
  .krb-admin-settings [data-krb-admin-panel="style"] .krb-color-settings-grid{
    grid-template-columns:1fr!important;
  }
}
@media(max-width:760px){
  .krb-admin-settings [data-krb-admin-panel="style"] .krb-color-setting{
    grid-template-columns:1fr!important;
    grid-template-areas:"text" "picker" "value"!important;
  }
  .krb-admin-settings [data-krb-admin-panel="style"] .krb-color-setting .wp-picker-container{
    justify-content:flex-start!important;
  }
  .krb-admin-settings [data-krb-admin-panel="style"] .krb-color-setting .krb-color-value{
    justify-self:start!important;
  }
}

/* v2.5.6 - PDF vernieuwen knop blijft compact */
.krb-wrap .widefat a[href*="krb_v2_regenerate_pdf"]{
  border-color:#64748b!important;
  color:#334155!important;
  background:#fff!important;
}

/* v2.5.8 - rapport PDF tekst kleiner: admin-knop blijft compact */
.krb-wrap .widefat a[href*="krb_v2_regenerate_pdf"]{
  white-space:nowrap!important;
}


/* v2.5.9 - herbezoek plannen: knop pas actief bij toekomstige datum */
.krb-inline-admin-form{
  display:flex!important;
  align-items:center!important;
  gap:5px!important;
  flex-wrap:wrap!important;
  margin-top:5px!important;
}
.krb-inline-admin-form input[type="date"]{
  width:132px!important;
  min-width:132px!important;
  height:28px!important;
  min-height:28px!important;
  padding:3px 6px!important;
  font-size:12px!important;
  line-height:1.2!important;
  border-radius:4px!important;
}
.krb-wrap .widefat .krb-plan-revisit-button{
  max-width:172px!important;
  white-space:normal!important;
  text-align:center!important;
  line-height:1.18!important;
}
.krb-wrap .widefat .krb-plan-revisit-button:disabled,
.krb-wrap .widefat .krb-plan-revisit-button.is-disabled{
  opacity:.45!important;
  cursor:not-allowed!important;
  pointer-events:none!important;
  background:#f1f5f9!important;
  border-color:#cbd5e1!important;
  color:#64748b!important;
}


/* v2.6.0 - monteursbeheer en mailflow */
.krb-tech-list{
  display:grid;
  gap:8px;
  margin:12px 0;
}
.krb-tech-row{
  display:grid;
  grid-template-columns:minmax(180px,1fr) minmax(220px,1fr) auto;
  gap:8px;
  align-items:end;
  padding:10px;
  border:1px solid #dbe3ef;
  border-radius:10px;
  background:#fff;
}
.krb-tech-row label span{
  display:block;
  margin-bottom:4px;
  font-size:12px;
  font-weight:800;
  color:#111827;
}
.krb-tech-row input{
  width:100%;
  min-height:30px!important;
  height:30px!important;
  padding:4px 8px!important;
  font-size:13px!important;
  border-radius:5px!important;
}
.krb-tech-row .button{
  min-height:30px!important;
  height:30px!important;
  padding:4px 8px!important;
  font-size:12px!important;
}
@media(max-width:900px){
  .krb-tech-row{
    grid-template-columns:1fr;
  }
}


/* v2.6.1 - NAW wijzigen: monteur als dropdown */
.krb-admin-edit-panel select{
  min-height:32px!important;
  height:32px!important;
  padding:4px 28px 4px 8px!important;
  font-size:13px!important;
  border-radius:4px!important;
  max-width:100%!important;
}

/* v2.7.0 - btw/tarievenvelden compact houden */
.krb-admin-settings input[name="krb_settings[vat_percentage]"],
.krb-admin-settings input[name="krb_settings[tariff_reinspection]"]{
  max-width:140px!important;
}


/* v2.7.1 - header/progress tekstkleur afdwingen vanuit admininstelling */
#top .krb-form.krb-tool .krb-tool-header,
body .krb-form.krb-tool .krb-tool-header,
.krb-form.krb-tool .krb-tool-header{
  color:var(--krb-header-text,#ffffff)!important;
}

#top .krb-form.krb-tool .krb-tool-header h1,
#top .krb-form.krb-tool .krb-tool-header h2,
#top .krb-form.krb-tool .krb-tool-header h3,
#top .krb-form.krb-tool .krb-tool-header p,
#top .krb-form.krb-tool .krb-tool-header span,
#top .krb-form.krb-tool .krb-tool-header strong,
#top .krb-form.krb-tool .krb-tool-header b,
#top .krb-form.krb-tool .krb-progress,
#top .krb-form.krb-tool .krb-progress span,
#top .krb-form.krb-tool .krb-progress strong,
body .krb-form.krb-tool .krb-tool-header h1,
body .krb-form.krb-tool .krb-tool-header h2,
body .krb-form.krb-tool .krb-tool-header h3,
body .krb-form.krb-tool .krb-tool-header p,
body .krb-form.krb-tool .krb-tool-header span,
body .krb-form.krb-tool .krb-tool-header strong,
body .krb-form.krb-tool .krb-tool-header b,
body .krb-form.krb-tool .krb-progress,
body .krb-form.krb-tool .krb-progress span,
body .krb-form.krb-tool .krb-progress strong,
.krb-form.krb-tool .krb-tool-header h1,
.krb-form.krb-tool .krb-tool-header h2,
.krb-form.krb-tool .krb-tool-header h3,
.krb-form.krb-tool .krb-tool-header p,
.krb-form.krb-tool .krb-tool-header span,
.krb-form.krb-tool .krb-tool-header strong,
.krb-form.krb-tool .krb-tool-header b,
.krb-form.krb-tool .krb-progress,
.krb-form.krb-tool .krb-progress span,
.krb-form.krb-tool .krb-progress strong{
  color:var(--krb-header-text,#ffffff)!important;
  text-shadow:none!important;
}

#top .krb-form.krb-tool .krb-progress > span,
body .krb-form.krb-tool .krb-progress > span,
.krb-form.krb-tool .krb-progress > span{
  opacity:1!important;
  font-weight:800!important;
}


/* v2.7.2 - betaallink voor herkeuring in admin */
.krb-reinspection-payment-form{
  margin-top:6px!important;
}
.krb-payment-inline-label{
  display:flex!important;
  align-items:center!important;
  min-height:28px!important;
  padding:3px 8px!important;
  border:1px solid #dbe3ef!important;
  border-radius:4px!important;
  background:#f8fafc!important;
  color:#334155!important;
  font-size:12px!important;
  font-weight:700!important;
  line-height:1.25!important;
}
@media(max-width:1100px){
  .krb-payment-inline-label{
    width:100%!important;
  }
}


/* v2.8.0 - praktijklog, status/audit en compacte beheerslagen */
.krb-log-details{margin-top:7px;max-width:360px}.krb-log-details summary{cursor:pointer;font-size:12px;font-weight:800;color:#334155}.krb-log-details ul{margin:6px 0 0;padding:0;list-style:none;display:grid;gap:4px}.krb-log-details li{padding:5px 7px;border-left:3px solid #cbd5e1;background:#f8fafc;border-radius:5px;font-size:11.5px;line-height:1.25}.krb-log-details li strong{display:block;color:#111827}.krb-log-details li span,.krb-log-details li em,.krb-log-details li small{display:block;color:#64748b;font-style:normal}.krb-log-success{border-left-color:#16a34a!important}.krb-log-error{border-left-color:#dc2626!important}.krb-log-warning{border-left-color:#f59e0b!important}.krb-muted{color:#64748b;font-size:12px}.krb-admin-settings [data-krb-admin-panel="operations"] .krb-admin-grid{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:900px){.krb-admin-settings [data-krb-admin-panel="operations"] .krb-admin-grid{grid-template-columns:1fr}}


/* v2.8.1 - centrale mailtemplates */
.krb-mailtemplates-card .krb-template-tags{
  display:flex;
  flex-wrap:wrap;
  gap:6px;
  align-items:center;
  padding:10px 12px;
  margin:12px 0 16px;
  border:1px solid #dbe3ef;
  border-radius:10px;
  background:#f8fafc;
}
.krb-mailtemplates-card .krb-template-tags strong{
  margin-right:6px;
  color:#111827;
}
.krb-mailtemplates-card .krb-template-tags code{
  padding:4px 6px;
  border-radius:6px;
  background:#fff;
  font-size:12px;
}
.krb-mail-template-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
.krb-mail-template-block{
  padding:14px;
  border:1px solid #dbe3ef;
  border-radius:12px;
  background:#fff;
}
.krb-mail-template-block h3{
  margin:0 0 10px!important;
  font-size:15px!important;
}
.krb-mail-template-block textarea{
  width:100%!important;
  min-height:138px!important;
  font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace!important;
  font-size:12.5px!important;
}
@media(max-width:1000px){
  .krb-mail-template-grid{
    grid-template-columns:1fr;
  }
}


/* v2.8.2 - zichtbare status waarom betaallink herkeuring wel/niet beschikbaar is */
.krb-payment-state{
  display:block!important;
  margin:6px 0 4px!important;
  padding:6px 8px!important;
  border-radius:6px!important;
  font-size:12px!important;
  font-weight:700!important;
  line-height:1.3!important;
}
.krb-payment-state--warning{
  color:#92400e!important;
  background:#fff7ed!important;
  border:1px solid #fed7aa!important;
}
.krb-payment-state--muted{
  color:#475569!important;
  background:#f8fafc!important;
  border:1px solid #dbe3ef!important;
}


/* v2.8.3 - gesplitste betaalmailtemplates */
.krb-mail-template-block .description{
  margin:0 0 10px!important;
  font-size:12px!important;
  line-height:1.35!important;
  color:#64748b!important;
}


/* v2.8.4 - eerste herkeuring inbegrepen, tweede/herhaalde herkeuring betaald */
.krb-payment-state--included{
  color:#166534!important;
  background:#f0fdf4!important;
  border:1px solid #bbf7d0!important;
}


/* v2.8.5 - betere datumkiezer met maand- en jaarselectie */
.krb-date-enhanced{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:6px!important;
  align-items:center!important;
  width:100%!important;
}
.krb-date-enhanced input[type="date"],
.krb-date-enhanced input.krb-date-input{
  width:100%!important;
  min-width:0!important;
}
.krb-date-trigger{
  min-height:42px!important;
  height:42px!important;
  padding:0 11px!important;
  border:1px solid var(--krb-border,#dbe3ef)!important;
  border-radius:10px!important;
  background:#f8fafc!important;
  color:var(--krb-text-color,#142033)!important;
  font-size:13px!important;
  font-weight:800!important;
  line-height:1!important;
  cursor:pointer!important;
  white-space:nowrap!important;
}
.krb-date-trigger:hover,
.krb-date-trigger:focus{
  border-color:var(--krb-accent,#2f80ed)!important;
  outline:none!important;
}
.krb-calendar-popover{
  position:absolute!important;
  z-index:999999!important;
  width:320px!important;
  max-width:calc(100vw - 24px)!important;
  padding:12px!important;
  border:1px solid #dbe3ef!important;
  border-radius:14px!important;
  background:#fff!important;
  box-shadow:0 18px 45px rgba(15,23,42,.22)!important;
  box-sizing:border-box!important;
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif!important;
}
.krb-calendar-head{
  display:grid!important;
  grid-template-columns:34px 1fr 34px!important;
  gap:8px!important;
  align-items:center!important;
  margin-bottom:10px!important;
}
.krb-calendar-nav{
  width:34px!important;
  height:34px!important;
  border:1px solid #dbe3ef!important;
  border-radius:9px!important;
  background:#f8fafc!important;
  color:#142033!important;
  font-size:22px!important;
  font-weight:900!important;
  line-height:1!important;
  cursor:pointer!important;
}
.krb-calendar-title{
  display:grid!important;
  grid-template-columns:1fr 88px!important;
  gap:7px!important;
}
.krb-calendar-title select{
  width:100%!important;
  min-height:34px!important;
  height:34px!important;
  padding:4px 28px 4px 8px!important;
  border:1px solid #dbe3ef!important;
  border-radius:9px!important;
  background:#fff!important;
  color:#142033!important;
  font-size:13px!important;
  font-weight:800!important;
}
.krb-calendar-days{
  display:grid!important;
  grid-template-columns:repeat(7,1fr)!important;
  gap:4px!important;
}
.krb-calendar-days strong{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  height:24px!important;
  color:#64748b!important;
  font-size:11px!important;
  font-weight:900!important;
}
.krb-calendar-empty{
  display:block!important;
  height:34px!important;
}
.krb-calendar-day{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  height:34px!important;
  border:1px solid transparent!important;
  border-radius:9px!important;
  background:#fff!important;
  color:#142033!important;
  font-size:13px!important;
  font-weight:800!important;
  cursor:pointer!important;
}
.krb-calendar-day:hover,
.krb-calendar-day:focus{
  border-color:#2f80ed!important;
  outline:none!important;
}
.krb-calendar-day.is-today{
  border-color:#94a3b8!important;
}
.krb-calendar-day.is-selected{
  background:#2f80ed!important;
  border-color:#2f80ed!important;
  color:#fff!important;
}
.krb-calendar-day.is-disabled,
.krb-calendar-day:disabled{
  opacity:.28!important;
  cursor:not-allowed!important;
  background:#f1f5f9!important;
}
.krb-calendar-foot{
  display:flex!important;
  justify-content:space-between!important;
  gap:8px!important;
  margin-top:10px!important;
}
.krb-calendar-foot button{
  min-height:32px!important;
  padding:5px 9px!important;
  border:1px solid #dbe3ef!important;
  border-radius:9px!important;
  background:#f8fafc!important;
  color:#142033!important;
  font-size:12px!important;
  font-weight:800!important;
  cursor:pointer!important;
}
.krb-calendar-foot button:disabled{
  opacity:.4!important;
  cursor:not-allowed!important;
}
.krb-inline-admin-form .krb-date-enhanced{
  width:auto!important;
  grid-template-columns:132px auto!important;
}
.krb-inline-admin-form .krb-date-trigger{
  min-height:28px!important;
  height:28px!important;
  padding:0 8px!important;
  border-radius:4px!important;
  font-size:12px!important;
}
@media(max-width:760px){
  .krb-date-enhanced{
    grid-template-columns:1fr!important;
  }
  .krb-date-trigger{
    width:100%!important;
  }
  .krb-inline-admin-form .krb-date-enhanced{
    width:100%!important;
    grid-template-columns:1fr!important;
  }
}


/* v2.8.6 - custom datumkiezer vervangt native kalender volledig */
.krb-date-enhanced{
  grid-template-columns:minmax(0,1fr) 42px!important;
}
.krb-date-trigger{
  width:42px!important;
  min-width:42px!important;
  max-width:42px!important;
  padding:0!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  font-size:18px!important;
  overflow:hidden!important;
}
.krb-date-trigger span{
  display:block!important;
  line-height:1!important;
}
.krb-date-enhanced input[type="text"].krb-date-input{
  padding-right:12px!important;
}
.krb-date-input::-webkit-calendar-picker-indicator{
  display:none!important;
  opacity:0!important;
  pointer-events:none!important;
}
.krb-date-input::-webkit-inner-spin-button,
.krb-date-input::-webkit-clear-button{
  display:none!important;
}
.krb-inline-admin-form .krb-date-enhanced{
  grid-template-columns:132px 28px!important;
}
.krb-inline-admin-form .krb-date-trigger{
  width:28px!important;
  min-width:28px!important;
  max-width:28px!important;
  font-size:14px!important;
}
@media(max-width:760px){
  .krb-date-enhanced{
    grid-template-columns:minmax(0,1fr) 42px!important;
  }
  .krb-inline-admin-form .krb-date-enhanced{
    grid-template-columns:minmax(0,1fr) 34px!important;
  }
  .krb-inline-admin-form .krb-date-trigger{
    width:34px!important;
    min-width:34px!important;
    max-width:34px!important;
    height:34px!important;
    min-height:34px!important;
  }
}


/* v2.8.7 - Nederlandse datumnotatie en nette icon-uitlijning */
.krb-date-enhanced{
  grid-template-columns:minmax(0,1fr) 44px!important;
  align-items:stretch!important;
}
.krb-date-trigger{
  width:44px!important;
  min-width:44px!important;
  max-width:44px!important;
  height:auto!important;
  min-height:100%!important;
  align-self:stretch!important;
  padding:0!important;
  border-radius:10px!important;
}
.krb-date-trigger span{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:100%!important;
  height:100%!important;
}
.krb-date-trigger svg{
  width:20px!important;
  height:20px!important;
  display:block!important;
  fill:currentColor!important;
}
.krb-date-enhanced input.krb-date-input{
  min-height:42px!important;
}
.krb-form .krb-date-enhanced input.krb-date-input{
  min-height:58px!important;
}
.krb-form .krb-date-trigger{
  min-height:58px!important;
  border-radius:14px!important;
}
.krb-inline-admin-form .krb-date-enhanced{
  grid-template-columns:132px 30px!important;
}
.krb-inline-admin-form .krb-date-trigger{
  width:30px!important;
  min-width:30px!important;
  max-width:30px!important;
  min-height:28px!important;
  height:auto!important;
  border-radius:4px!important;
}
.krb-inline-admin-form .krb-date-trigger svg{
  width:15px!important;
  height:15px!important;
}
@media(max-width:760px){
  .krb-date-enhanced{
    grid-template-columns:minmax(0,1fr) 44px!important;
  }
}


/* v2.8.8 - datumicoon zonder donkere achtergrond, duidelijker zichtbaar */
.krb-date-enhanced{
  align-items:center!important;
}
.krb-date-trigger{
  background:transparent!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
  outline:none!important;
  color:#111827!important;
  width:38px!important;
  min-width:38px!important;
  max-width:38px!important;
  min-height:42px!important;
  height:42px!important;
  padding:0!important;
  margin:0!important;
  align-self:center!important;
  justify-self:start!important;
  border-radius:0!important;
  line-height:1!important;
}
.krb-form .krb-date-trigger{
  min-height:58px!important;
  height:58px!important;
}
.krb-date-trigger:hover,
.krb-date-trigger:focus{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  color:#000!important;
  transform:none!important;
}
.krb-date-trigger span{
  width:100%!important;
  height:100%!important;
}
.krb-date-trigger svg{
  width:22px!important;
  height:22px!important;
  fill:#111827!important;
}
.krb-inline-admin-form .krb-date-trigger{
  width:26px!important;
  min-width:26px!important;
  max-width:26px!important;
  min-height:28px!important;
  height:28px!important;
}
.krb-inline-admin-form .krb-date-trigger svg{
  width:16px!important;
  height:16px!important;
}
@media(max-width:760px){
  .krb-date-trigger{
    width:36px!important;
    min-width:36px!important;
    max-width:36px!important;
  }
}


/* v2.8.9 - datumicoon definitief losgekoppeld van button/theme CSS */
.krb-date-enhanced > .krb-date-trigger,
#top .krb-date-enhanced > .krb-date-trigger,
body .krb-date-enhanced > .krb-date-trigger{
  all:unset!important;
  box-sizing:border-box!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:44px!important;
  min-width:44px!important;
  max-width:44px!important;
  height:58px!important;
  min-height:58px!important;
  max-height:58px!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  outline:none!important;
  color:#000!important;
  cursor:pointer!important;
  opacity:1!important;
  appearance:none!important;
  -webkit-appearance:none!important;
}
.krb-date-enhanced > .krb-date-trigger:hover,
.krb-date-enhanced > .krb-date-trigger:focus,
.krb-date-enhanced > .krb-date-trigger:active,
#top .krb-date-enhanced > .krb-date-trigger:hover,
#top .krb-date-enhanced > .krb-date-trigger:focus,
#top .krb-date-enhanced > .krb-date-trigger:active{
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
  outline:2px solid transparent!important;
  color:#000!important;
  opacity:1!important;
}
.krb-date-enhanced > .krb-date-trigger:focus-visible{
  outline:2px solid #2f80ed!important;
  outline-offset:2px!important;
  border-radius:6px!important;
}
.krb-date-enhanced > .krb-date-trigger span{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:28px!important;
  height:28px!important;
  color:#000!important;
  background:transparent!important;
  opacity:1!important;
}
.krb-date-enhanced > .krb-date-trigger svg{
  display:block!important;
  width:24px!important;
  height:24px!important;
  fill:#000!important;
  color:#000!important;
  opacity:1!important;
}
.krb-date-enhanced > .krb-date-trigger svg path{
  fill:#000!important;
  opacity:1!important;
}
.krb-inline-admin-form .krb-date-enhanced > .krb-date-trigger{
  width:30px!important;
  min-width:30px!important;
  max-width:30px!important;
  height:30px!important;
  min-height:30px!important;
  max-height:30px!important;
}
.krb-inline-admin-form .krb-date-enhanced > .krb-date-trigger svg{
  width:18px!important;
  height:18px!important;
}


/* v2.8.10 - datumicoon weer in het veld rechts, subtieler en strakker */
.krb-date-enhanced,
#top .krb-date-enhanced,
body .krb-date-enhanced{
  position:relative!important;
  display:block!important;
  width:100%!important;
}

.krb-date-enhanced input.krb-date-input,
#top .krb-date-enhanced input.krb-date-input,
body .krb-date-enhanced input.krb-date-input{
  width:100%!important;
  padding-right:54px!important;
  box-sizing:border-box!important;
}

.krb-date-enhanced > .krb-date-trigger,
#top .krb-date-enhanced > .krb-date-trigger,
body .krb-date-enhanced > .krb-date-trigger{
  all:unset!important;
  position:absolute!important;
  right:14px!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  box-sizing:border-box!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:22px!important;
  min-width:22px!important;
  max-width:22px!important;
  height:22px!important;
  min-height:22px!important;
  max-height:22px!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  outline:none!important;
  color:#344054!important;
  cursor:pointer!important;
  opacity:.9!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  z-index:3!important;
}

.krb-date-enhanced > .krb-date-trigger:hover,
.krb-date-enhanced > .krb-date-trigger:focus,
.krb-date-enhanced > .krb-date-trigger:active,
#top .krb-date-enhanced > .krb-date-trigger:hover,
#top .krb-date-enhanced > .krb-date-trigger:focus,
#top .krb-date-enhanced > .krb-date-trigger:active{
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
  outline:none!important;
  color:#142033!important;
  opacity:1!important;
}

.krb-date-enhanced > .krb-date-trigger:focus-visible{
  outline:2px solid rgba(47,128,237,.22)!important;
  outline-offset:4px!important;
  border-radius:4px!important;
}

.krb-date-enhanced > .krb-date-trigger span{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:22px!important;
  height:22px!important;
  color:inherit!important;
  background:transparent!important;
  opacity:1!important;
}

.krb-date-enhanced > .krb-date-trigger svg{
  display:block!important;
  width:20px!important;
  height:20px!important;
  color:inherit!important;
  opacity:1!important;
}

.krb-date-enhanced > .krb-date-trigger svg rect,
.krb-date-enhanced > .krb-date-trigger svg line{
  fill:none!important;
  stroke:currentColor!important;
  stroke-width:1.8!important;
  stroke-linecap:round!important;
  stroke-linejoin:round!important;
  vector-effect:non-scaling-stroke!important;
}

.krb-inline-admin-form .krb-date-enhanced input.krb-date-input{
  padding-right:28px!important;
}

.krb-inline-admin-form .krb-date-enhanced > .krb-date-trigger{
  right:7px!important;
  width:16px!important;
  min-width:16px!important;
  max-width:16px!important;
  height:16px!important;
  min-height:16px!important;
  max-height:16px!important;
}

.krb-inline-admin-form .krb-date-enhanced > .krb-date-trigger span,
.krb-inline-admin-form .krb-date-enhanced > .krb-date-trigger svg{
  width:16px!important;
  height:16px!important;
}

@media(max-width:760px){
  .krb-date-enhanced input.krb-date-input{
    padding-right:48px!important;
  }
  .krb-date-enhanced > .krb-date-trigger{
    right:12px!important;
  }
}


/* v2.9.0 - certificaatflow */
.krb-certificate-admin{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:5px!important;
  align-items:center!important;
  margin-top:6px!important;
  padding-top:6px!important;
  border-top:1px solid #e2e8f0!important;
}
.krb-certificate-admin small{
  display:block!important;
  width:100%!important;
  color:#475569!important;
  font-size:11.5px!important;
  line-height:1.35!important;
  font-weight:700!important;
}
.krb-certificate-admin .button{
  margin:0!important;
}


/* v2.9.1 - nette admin checkboxes, los van frontend/theme checkbox styling */
.krb-admin-settings .krb-admin-checkbox-field{
  display:block!important;
}

.krb-admin-settings .krb-admin-checkbox-field input[type="checkbox"],
#wpbody-content .krb-admin-settings .krb-admin-checkbox-field input[type="checkbox"]{
  all:unset!important;
  box-sizing:border-box!important;
  display:inline-grid!important;
  place-content:center!important;
  width:18px!important;
  height:18px!important;
  min-width:18px!important;
  min-height:18px!important;
  margin:8px 8px 0 0!important;
  padding:0!important;
  border:1px solid #94a3b8!important;
  border-radius:4px!important;
  background:#fff!important;
  color:#fff!important;
  cursor:pointer!important;
  vertical-align:middle!important;
  appearance:none!important;
  -webkit-appearance:none!important;
}

.krb-admin-settings .krb-admin-checkbox-field input[type="checkbox"]::before,
#wpbody-content .krb-admin-settings .krb-admin-checkbox-field input[type="checkbox"]::before{
  content:""!important;
  width:9px!important;
  height:5px!important;
  border-left:2px solid #fff!important;
  border-bottom:2px solid #fff!important;
  transform:rotate(-45deg) scale(0)!important;
  transform-origin:center!important;
  transition:transform .12s ease!important;
  margin-top:-1px!important;
}

.krb-admin-settings .krb-admin-checkbox-field input[type="checkbox"]:checked,
#wpbody-content .krb-admin-settings .krb-admin-checkbox-field input[type="checkbox"]:checked{
  background:#0ea5e9!important;
  border-color:#0284c7!important;
}

.krb-admin-settings .krb-admin-checkbox-field input[type="checkbox"]:checked::before,
#wpbody-content .krb-admin-settings .krb-admin-checkbox-field input[type="checkbox"]:checked::before{
  transform:rotate(-45deg) scale(1)!important;
}

.krb-admin-settings .krb-admin-checkbox-field input[type="checkbox"]:focus,
.krb-admin-settings .krb-admin-checkbox-field input[type="checkbox"]:focus-visible,
#wpbody-content .krb-admin-settings .krb-admin-checkbox-field input[type="checkbox"]:focus,
#wpbody-content .krb-admin-settings .krb-admin-checkbox-field input[type="checkbox"]:focus-visible{
  outline:2px solid rgba(14,165,233,.25)!important;
  outline-offset:2px!important;
  box-shadow:none!important;
}

.krb-admin-settings .krb-admin-checkbox-field input[type="checkbox"] + small,
.krb-admin-settings .krb-admin-checkbox-field input[type="checkbox"] + span{
  display:inline!important;
}


/* v2.9.2 - certificaatvoorbeeld in backend */
.krb-certificate-preview-wrap{
  margin-top:18px!important;
  padding-top:16px!important;
  border-top:1px solid #dbe3ef!important;
}
.krb-certificate-preview-wrap h3{
  margin:0 0 4px!important;
  font-size:17px!important;
}
.krb-cert-preview{
  width:100%!important;
  max-width:920px!important;
  margin-top:14px!important;
  background:#fff!important;
  border:1px solid var(--krb-cert-border,#dbe3ef)!important;
  border-radius:12px!important;
  overflow:hidden!important;
  box-shadow:0 10px 30px rgba(15,23,42,.08)!important;
  color:var(--krb-cert-text,#142033)!important;
}
.krb-cert-preview-header{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 180px!important;
  gap:22px!important;
  align-items:center!important;
  padding:26px 30px!important;
  background:var(--krb-cert-header,#0b1220)!important;
  color:#fff!important;
}
.krb-cert-preview-kicker{
  display:block!important;
  margin-bottom:8px!important;
  color:#dbeafe!important;
  font-size:11px!important;
  font-weight:900!important;
  letter-spacing:.12em!important;
}
.krb-cert-preview-header h4{
  margin:0 0 8px!important;
  color:#fff!important;
  font-size:25px!important;
  line-height:1.12!important;
}
.krb-cert-preview-header p{
  margin:0!important;
  color:#dbeafe!important;
  font-size:13px!important;
  line-height:1.45!important;
}
.krb-cert-preview-logo{
  min-height:72px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:12px!important;
  background:#fff!important;
  color:var(--krb-cert-text,#142033)!important;
  border-radius:4px!important;
  text-align:center!important;
}
.krb-cert-preview-logo img{
  max-width:150px!important;
  max-height:54px!important;
  object-fit:contain!important;
}
.krb-cert-preview-accent{
  height:8px!important;
  background:var(--krb-cert-accent,#2f80ed)!important;
}
.krb-cert-preview-body{
  padding:26px 30px 30px!important;
  background:#fff!important;
}
.krb-cert-preview-card{
  margin-bottom:16px!important;
  padding:16px 16px 14px!important;
  border:1px solid var(--krb-cert-border,#dbe3ef)!important;
  border-left:6px solid var(--krb-cert-accent,#2f80ed)!important;
  background:#fff!important;
}
.krb-cert-preview-card h5{
  margin:0 0 12px!important;
  color:var(--krb-cert-text,#142033)!important;
  font-size:15px!important;
  font-weight:900!important;
}
.krb-cert-preview-card dl{
  display:grid!important;
  grid-template-columns:210px minmax(0,1fr)!important;
  gap:0!important;
  margin:0!important;
}
.krb-cert-preview-card dt,
.krb-cert-preview-card dd{
  margin:0!important;
  padding:8px 10px!important;
  font-size:13px!important;
  line-height:1.35!important;
}
.krb-cert-preview-card dt{
  color:var(--krb-cert-muted,#64748b)!important;
  font-weight:800!important;
}
.krb-cert-preview-card dd{
  color:var(--krb-cert-text,#142033)!important;
  font-weight:650!important;
}
.krb-cert-preview-card dt:nth-of-type(odd),
.krb-cert-preview-card dd:nth-of-type(odd){
  background:var(--krb-cert-row,#f8fafc)!important;
}
.krb-cert-preview-footer{
  display:flex!important;
  justify-content:space-between!important;
  gap:16px!important;
  padding:12px 30px!important;
  border-top:1px solid var(--krb-cert-border,#dbe3ef)!important;
  color:var(--krb-cert-muted,#64748b)!important;
  font-size:11px!important;
  font-weight:700!important;
}
@media(max-width:900px){
  .krb-cert-preview-header{
    grid-template-columns:1fr!important;
  }
  .krb-cert-preview-card dl{
    grid-template-columns:1fr!important;
  }
  .krb-cert-preview-card dt{
    padding-bottom:2px!important;
  }
  .krb-cert-preview-card dd{
    padding-top:2px!important;
  }
}


/* v2.9.3 - duidelijkere badges en keuring-specifieke velden */
.krb-form.krb-tool .krb-photo-badge,
.krb-form.krb-tool .krb-rule-badge,
.krb-form.krb-tool .krb-attention-badge{
  display:inline-flex!important;
  align-items:center!important;
  gap:4px!important;
  margin:5px 6px 0 0!important;
  padding:5px 9px!important;
  border-radius:999px!important;
  font-size:12px!important;
  line-height:1.15!important;
  font-weight:900!important;
  opacity:1!important;
  filter:none!important;
  text-shadow:none!important;
  white-space:nowrap!important;
}
.krb-form.krb-tool .krb-photo-badge{
  background:#dbeafe!important;
  color:#1e40af!important;
  border:1px solid #bfdbfe!important;
}
.krb-form.krb-tool .krb-rule-badge{
  background:#fee2e2!important;
  color:#991b1b!important;
  border:1px solid #fecaca!important;
}
.krb-form.krb-tool .krb-attention-badge{
  background:#fef3c7!important;
  color:#92400e!important;
  border:1px solid #fde68a!important;
}
.krb-checkitem[hidden],
.krb-panel[hidden],
.is-krb-hidden-by-scope{
  display:none!important;
}
.krb-field select[data-krb-scope-select]{
  font-weight:800!important;
}


/* v2.9.4 - zichtbare stappen dynamisch hernummerd */
.krb-step[hidden]{
  display:none!important;
}


/* v2.9.5 - strakkere velden + number spinners verwijderen */
.krb-form input[type="number"],
.krb-form input[type="text"],
.krb-form input[type="email"],
.krb-form input[type="tel"],
.krb-form input[type="date"],
.krb-form select,
.krb-form textarea,
.krb-wrap input[type="number"],
.krb-wrap input[type="text"],
.krb-wrap input[type="email"],
.krb-wrap input[type="tel"],
.krb-wrap input[type="date"],
.krb-wrap select,
.krb-wrap textarea{
  font-size:16px!important;
  line-height:1.35!important;
  box-sizing:border-box!important;
}

/* Browser-spinners bij number velden weg. Waarde blijft numeriek; alleen de lelijke UI is weg. */
.krb-form input[type="number"],
.krb-wrap input[type="number"]{
  appearance:textfield!important;
  -moz-appearance:textfield!important;
}

.krb-form input[type="number"]::-webkit-outer-spin-button,
.krb-form input[type="number"]::-webkit-inner-spin-button,
.krb-wrap input[type="number"]::-webkit-outer-spin-button,
.krb-wrap input[type="number"]::-webkit-inner-spin-button{
  -webkit-appearance:none!important;
  appearance:none!important;
  margin:0!important;
  display:none!important;
}

/* Unitvelden: input en eenheid exact dezelfde hoogte. */
.krb-form .krb-unit,
.krb-form .krb-unit-field,
.krb-form .krb-input-unit,
.krb-form .krb-field-unit,
.krb-form .krb-measure-field,
.krb-form .krb-value-unit,
.krb-form label:has(> input[type="number"] + span),
.krb-wrap .krb-unit,
.krb-wrap .krb-unit-field,
.krb-wrap .krb-input-unit,
.krb-wrap .krb-field-unit,
.krb-wrap .krb-measure-field,
.krb-wrap .krb-value-unit,
.krb-wrap label:has(> input[type="number"] + span){
  display:flex!important;
  align-items:stretch!important;
  min-height:48px!important;
}

.krb-form .krb-unit input,
.krb-form .krb-unit-field input,
.krb-form .krb-input-unit input,
.krb-form .krb-field-unit input,
.krb-form .krb-measure-field input,
.krb-form .krb-value-unit input,
.krb-form label:has(> input[type="number"] + span) > input[type="number"],
.krb-wrap .krb-unit input,
.krb-wrap .krb-unit-field input,
.krb-wrap .krb-input-unit input,
.krb-wrap .krb-field-unit input,
.krb-wrap .krb-measure-field input,
.krb-wrap .krb-value-unit input,
.krb-wrap label:has(> input[type="number"] + span) > input[type="number"]{
  height:48px!important;
  min-height:48px!important;
  border-top-right-radius:0!important;
  border-bottom-right-radius:0!important;
  border-right:0!important;
  flex:1 1 auto!important;
  min-width:0!important;
}

/* De eenheidaanduiding rechts: ms, mA, Ω, Volt, MΩ enz. */
.krb-form .krb-unit span,
.krb-form .krb-unit-field span,
.krb-form .krb-input-unit span,
.krb-form .krb-field-unit span,
.krb-form .krb-measure-field span,
.krb-form .krb-value-unit span,
.krb-form label:has(> input[type="number"] + span) > span,
.krb-wrap .krb-unit span,
.krb-wrap .krb-unit-field span,
.krb-wrap .krb-input-unit span,
.krb-wrap .krb-field-unit span,
.krb-wrap .krb-measure-field span,
.krb-wrap .krb-value-unit span,
.krb-wrap label:has(> input[type="number"] + span) > span{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  height:48px!important;
  min-height:48px!important;
  min-width:56px!important;
  padding:0 14px!important;
  border:1px solid var(--krb-border,#dbe3ef)!important;
  border-left:0!important;
  border-top-right-radius:10px!important;
  border-bottom-right-radius:10px!important;
  background:#f8fafc!important;
  color:#64748b!important;
  font-size:16px!important;
  font-weight:800!important;
  line-height:1!important;
  box-sizing:border-box!important;
  white-space:nowrap!important;
}

/* Aardlekmetingen specifiek compacter en gelijkmatiger. */
.krb-form .krb-rcd-row{
  align-items:center!important;
}

.krb-form .krb-rcd-row label{
  min-height:48px!important;
}

.krb-form .krb-rcd-row input[type="number"],
.krb-form .krb-rcd-row input[type="text"],
.krb-form .krb-rcd-row textarea{
  height:48px!important;
  min-height:48px!important;
}

.krb-form .krb-rcd-row textarea{
  resize:vertical!important;
  padding-top:12px!important;
}

/* Firefox fallback wanneer :has deels anders rendered: voorkom losse donkere spinner-vlakjes. */
@-moz-document url-prefix(){
  .krb-form input[type="number"],
  .krb-wrap input[type="number"]{
    -moz-appearance:textfield!important;
    appearance:textfield!important;
  }
}

/* Mobiel: behoud tikbare hoogte, maar hou het netjes compact. */
@media(max-width:760px){
  .krb-form .krb-unit,
  .krb-form .krb-unit-field,
  .krb-form .krb-input-unit,
  .krb-form .krb-field-unit,
  .krb-form .krb-measure-field,
  .krb-form .krb-value-unit,
  .krb-form label:has(> input[type="number"] + span){
    min-height:46px!important;
  }

  .krb-form .krb-unit input,
  .krb-form .krb-unit-field input,
  .krb-form .krb-input-unit input,
  .krb-form .krb-field-unit input,
  .krb-form .krb-measure-field input,
  .krb-form .krb-value-unit input,
  .krb-form label:has(> input[type="number"] + span) > input[type="number"],
  .krb-form .krb-unit span,
  .krb-form .krb-unit-field span,
  .krb-form .krb-input-unit span,
  .krb-form .krb-field-unit span,
  .krb-form .krb-measure-field span,
  .krb-form .krb-value-unit span,
  .krb-form label:has(> input[type="number"] + span) > span{
    height:46px!important;
    min-height:46px!important;
  }
}


/* v2.9.6 - unitlabels ook voor checklistvelden en aardlekmetingen gelijk trekken
   De HTML gebruikt hier <em> als eenheid, niet <span>. Daarom won de oude absolute positionering nog. */
.krb-form .krb-input-wrap,
.krb-form .krb-rcd-row label,
.krb-wrap .krb-input-wrap,
.krb-wrap .krb-rcd-row label{
  position:relative!important;
  display:flex!important;
  align-items:stretch!important;
  width:100%!important;
  min-height:48px!important;
}

.krb-form .krb-input-wrap input[type="number"],
.krb-form .krb-rcd-row label input[type="number"],
.krb-wrap .krb-input-wrap input[type="number"],
.krb-wrap .krb-rcd-row label input[type="number"]{
  display:block!important;
  flex:1 1 auto!important;
  min-width:0!important;
  width:100%!important;
  height:48px!important;
  min-height:48px!important;
  padding:10px 14px!important;
  padding-right:14px!important;
  border:1px solid var(--krb-border,#dbe3ef)!important;
  border-right:0!important;
  border-top-right-radius:0!important;
  border-bottom-right-radius:0!important;
  border-top-left-radius:10px!important;
  border-bottom-left-radius:10px!important;
  box-sizing:border-box!important;
}

.krb-form .krb-input-wrap em,
.krb-form .krb-rcd-row label em,
.krb-wrap .krb-input-wrap em,
.krb-wrap .krb-rcd-row label em{
  position:static!important;
  inset:auto!important;
  right:auto!important;
  top:auto!important;
  transform:none!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 auto!important;
  height:48px!important;
  min-height:48px!important;
  min-width:64px!important;
  padding:0 14px!important;
  border:1px solid var(--krb-border,#dbe3ef)!important;
  border-left:0!important;
  border-top-right-radius:10px!important;
  border-bottom-right-radius:10px!important;
  background:#f8fafc!important;
  color:#64748b!important;
  font-style:normal!important;
  font-size:16px!important;
  font-weight:800!important;
  line-height:1!important;
  white-space:nowrap!important;
  box-sizing:border-box!important;
  pointer-events:none!important;
}

/* Checklistregels met korte eenheden zoals Ω/MΩ/Volt/AMP strakker uitlijnen. */
.krb-form .krb-checkitem .krb-input-wrap{
  max-width:100%!important;
}

.krb-form .krb-checkitem .krb-input-wrap em{
  min-width:72px!important;
}

/* Aardlekmetingen compacter: ms en mA hoeven minder breed te zijn. */
.krb-form .krb-rcd-row label em{
  min-width:54px!important;
}

/* Voorkom dat eerdere padding-right voor absolute labels weer ruimte inpikt. */
.krb-form .krb-input-wrap input[type=number],
.krb-form .krb-rcd-row label input[type=number]{
  padding-right:14px!important;
}

@media(max-width:760px){
  .krb-form .krb-input-wrap,
  .krb-form .krb-rcd-row label,
  .krb-wrap .krb-input-wrap,
  .krb-wrap .krb-rcd-row label{
    min-height:46px!important;
  }

  .krb-form .krb-input-wrap input[type="number"],
  .krb-form .krb-rcd-row label input[type="number"],
  .krb-form .krb-input-wrap em,
  .krb-form .krb-rcd-row label em{
    height:46px!important;
    min-height:46px!important;
  }

  .krb-form .krb-checkitem .krb-input-wrap em{
    min-width:64px!important;
  }
}


/* v2.9.7 - meerdere keuringtypes aanvinken */
.krb-scope-checkboxes{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:10px!important;
  width:100%!important;
}
.krb-scope-choice{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  min-height:56px!important;
  padding:10px 14px!important;
  border:1px solid var(--krb-border,#dbe3ef)!important;
  border-radius:13px!important;
  background:#fff!important;
  color:var(--krb-text-color,#142033)!important;
  cursor:pointer!important;
  box-sizing:border-box!important;
}
.krb-scope-choice input[type="checkbox"]{
  all:unset!important;
  box-sizing:border-box!important;
  display:inline-grid!important;
  place-content:center!important;
  width:20px!important;
  height:20px!important;
  min-width:20px!important;
  margin:0 10px 0 0!important;
  border:1px solid #94a3b8!important;
  border-radius:5px!important;
  background:#fff!important;
}
.krb-scope-choice input[type="checkbox"]::before{
  content:""!important;
  width:10px!important;
  height:6px!important;
  border-left:2px solid #fff!important;
  border-bottom:2px solid #fff!important;
  transform:rotate(-45deg) scale(0)!important;
  transition:transform .12s ease!important;
  margin-top:-2px!important;
}
.krb-scope-choice input[type="checkbox"]:checked{
  border-color:var(--krb-accent,#2f80ed)!important;
  background:var(--krb-accent,#2f80ed)!important;
}
.krb-scope-choice input[type="checkbox"]:checked::before{
  transform:rotate(-45deg) scale(1)!important;
}
.krb-scope-choice input[type="checkbox"]:focus-visible{
  outline:3px solid rgba(47,128,237,.22)!important;
  outline-offset:2px!important;
}
.krb-scope-choice:has(input[type="checkbox"]:checked){
  border-color:var(--krb-accent,#2f80ed)!important;
  box-shadow:0 0 0 4px rgba(47,128,237,.12)!important;
}
.krb-scope-choice span{
  font-size:16px!important;
  font-weight:800!important;
  line-height:1.25!important;
}
.krb-scope-error{
  grid-column:1/-1!important;
  display:block!important;
  color:#b91c1c!important;
  font-size:13px!important;
  font-weight:800!important;
  margin-top:2px!important;
}
.krb-scope-error[hidden]{
  display:none!important;
}
.krb-scope-checkboxes.has-error .krb-scope-choice{
  border-color:#fecaca!important;
}
@media(max-width:900px){
  .krb-scope-checkboxes{
    grid-template-columns:1fr!important;
  }
}


/* v2.9.8 - geselecteerde keuringtypes duidelijker maken */
.krb-form.krb-tool .krb-scope-choice{
  color:var(--krb-text-color,#142033)!important;
  border-color:var(--krb-border,#dbe3ef)!important;
  background:#fff!important;
  box-shadow:none!important;
}

.krb-form.krb-tool .krb-scope-choice span{
  color:var(--krb-text-color,#142033)!important;
}

.krb-form.krb-tool .krb-scope-choice input[type="checkbox"]{
  position:relative!important;
  width:22px!important;
  height:22px!important;
  min-width:22px!important;
  border:2px solid #cbd5e1!important;
  border-radius:6px!important;
  background:#fff!important;
  box-shadow:none!important;
}

/* Vinkje met pseudo-element kan door theme-CSS soms sneuvelen; daarom dubbel uitgevoerd. */
.krb-form.krb-tool .krb-scope-choice input[type="checkbox"]::before{
  content:""!important;
  position:absolute!important;
  left:5px!important;
  top:3px!important;
  width:8px!important;
  height:12px!important;
  border:solid #fff!important;
  border-width:0 3px 3px 0!important;
  transform:rotate(45deg) scale(0)!important;
  transform-origin:center!important;
  margin:0!important;
  transition:transform .12s ease!important;
}

.krb-form.krb-tool .krb-scope-choice input[type="checkbox"]:checked{
  background:var(--krb-accent,#2f80ed)!important;
  border-color:var(--krb-accent,#2f80ed)!important;
}

.krb-form.krb-tool .krb-scope-choice input[type="checkbox"]:checked::before{
  transform:rotate(45deg) scale(1)!important;
}

.krb-form.krb-tool .krb-scope-choice.is-selected,
.krb-form.krb-tool .krb-scope-choice:has(input[type="checkbox"]:checked){
  border-color:var(--krb-accent,#2f80ed)!important;
  background:rgba(47,128,237,.08)!important;
  box-shadow:0 0 0 4px rgba(47,128,237,.14)!important;
}

.krb-form.krb-tool .krb-scope-choice.is-selected span,
.krb-form.krb-tool .krb-scope-choice:has(input[type="checkbox"]:checked) span{
  color:var(--krb-text-color,#142033)!important;
  font-weight:900!important;
}

/* Tekst mag nooit rood worden door externe required/error styling zolang het veld geldig is. */
.krb-form.krb-tool .krb-scope-checkboxes:not(.has-error) .krb-scope-choice span{
  color:var(--krb-text-color,#142033)!important;
}

.krb-form.krb-tool .krb-scope-checkboxes.has-error .krb-scope-choice span{
  color:#991b1b!important;
}

/* Extra zichtbaar statuslabel in geselecteerde kaart. */
.krb-form.krb-tool .krb-scope-choice.is-selected::after,
.krb-form.krb-tool .krb-scope-choice:has(input[type="checkbox"]:checked)::after{
  content:"Gekozen"!important;
  margin-left:auto!important;
  padding:4px 8px!important;
  border-radius:999px!important;
  background:var(--krb-accent,#2f80ed)!important;
  color:#fff!important;
  font-size:11px!important;
  font-weight:900!important;
  line-height:1!important;
}

@media(max-width:760px){
  .krb-form.krb-tool .krb-scope-choice.is-selected::after,
  .krb-form.krb-tool .krb-scope-choice:has(input[type="checkbox"]:checked)::after{
    display:none!important;
  }
}


/* v2.9.9 - keuringtype checkboxes compacter + zichtbaar vinkje zonder overlappend label */
.krb-form.krb-tool .krb-scope-checkboxes{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:10px!important;
  align-items:stretch!important;
}

.krb-form.krb-tool .krb-scope-choice{
  min-height:54px!important;
  padding:10px 14px!important;
  gap:10px!important;
  overflow:hidden!important;
  white-space:nowrap!important;
}

.krb-form.krb-tool .krb-scope-choice::after,
.krb-form.krb-tool .krb-scope-choice.is-selected::after,
.krb-form.krb-tool .krb-scope-choice:has(input[type="checkbox"]:checked)::after{
  content:none!important;
  display:none!important;
}

.krb-form.krb-tool .krb-scope-choice input[type="checkbox"]{
  all:unset!important;
  box-sizing:border-box!important;
  display:inline-block!important;
  position:relative!important;
  flex:0 0 22px!important;
  width:22px!important;
  height:22px!important;
  min-width:22px!important;
  min-height:22px!important;
  margin:0!important;
  border:2px solid #cbd5e1!important;
  border-radius:6px!important;
  background-color:#fff!important;
  background-image:none!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-size:14px 14px!important;
  box-shadow:none!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  cursor:pointer!important;
}

.krb-form.krb-tool .krb-scope-choice input[type="checkbox"]::before{
  content:none!important;
  display:none!important;
}

.krb-form.krb-tool .krb-scope-choice input[type="checkbox"]:checked{
  border-color:var(--krb-accent,#2f80ed)!important;
  background-color:var(--krb-accent,#2f80ed)!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round' d='M4 10.5l4 4 8-9'/%3E%3C/svg%3E")!important;
}

.krb-form.krb-tool .krb-scope-choice.is-selected,
.krb-form.krb-tool .krb-scope-choice:has(input[type="checkbox"]:checked){
  border-color:var(--krb-accent,#2f80ed)!important;
  background:rgba(47,128,237,.08)!important;
  box-shadow:0 0 0 3px rgba(47,128,237,.12)!important;
}

.krb-form.krb-tool .krb-scope-choice span{
  display:block!important;
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  color:var(--krb-text-color,#142033)!important;
  font-size:16px!important;
  font-weight:850!important;
  line-height:1.2!important;
}

/* Als de container smaller wordt: automatisch naar 2 of 1 kolom, in plaats van proppen. */
@media(max-width:1120px){
  .krb-form.krb-tool .krb-scope-checkboxes{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:760px){
  .krb-form.krb-tool .krb-scope-checkboxes{
    grid-template-columns:1fr!important;
  }
  .krb-form.krb-tool .krb-scope-choice span{
    text-overflow:clip!important;
    white-space:normal!important;
  }
}


/* v2.9.10 - vinkje als echt element, niet afhankelijk van native checkbox rendering */
.krb-form.krb-tool .krb-scope-choice{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  min-width:0!important;
}

/* Native checkbox blijft aanwezig voor formulier/keyboard, maar is visueel uit de layout. */
.krb-form.krb-tool .krb-scope-choice > input[type="checkbox"]{
  position:absolute!important;
  left:14px!important;
  top:50%!important;
  width:24px!important;
  height:24px!important;
  margin:0!important;
  transform:translateY(-50%)!important;
  opacity:0!important;
  z-index:2!important;
  cursor:pointer!important;
}

/* Dit is het zichtbare checkboxvakje. */
.krb-form.krb-tool .krb-scope-choice > .krb-scope-check{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  flex:0 0 24px!important;
  width:24px!important;
  height:24px!important;
  margin:0 12px 0 0!important;
  border:2px solid #cbd5e1!important;
  border-radius:7px!important;
  background:#fff!important;
  box-sizing:border-box!important;
  pointer-events:none!important;
  position:relative!important;
}

/* Het daadwerkelijke vinkje. */
.krb-form.krb-tool .krb-scope-choice > .krb-scope-check::after{
  content:""!important;
  display:block!important;
  width:7px!important;
  height:12px!important;
  border:solid #fff!important;
  border-width:0 3px 3px 0!important;
  transform:rotate(45deg) scale(0)!important;
  transform-origin:center!important;
  margin-top:-2px!important;
  transition:transform .12s ease!important;
}

/* Geselecteerd: blauw vak + wit vinkje. Dit werkt ook als de browser native checkbox styling negeert. */
.krb-form.krb-tool .krb-scope-choice.is-selected > .krb-scope-check,
.krb-form.krb-tool .krb-scope-choice:has(> input[type="checkbox"]:checked) > .krb-scope-check{
  border-color:var(--krb-accent,#2f80ed)!important;
  background:var(--krb-accent,#2f80ed)!important;
}

.krb-form.krb-tool .krb-scope-choice.is-selected > .krb-scope-check::after,
.krb-form.krb-tool .krb-scope-choice:has(> input[type="checkbox"]:checked) > .krb-scope-check::after{
  transform:rotate(45deg) scale(1)!important;
}

/* Focusring op het zichtbare vakje. */
.krb-form.krb-tool .krb-scope-choice > input[type="checkbox"]:focus-visible + .krb-scope-check{
  outline:3px solid rgba(47,128,237,.25)!important;
  outline-offset:2px!important;
}

/* Tekst krijgt genoeg ruimte; geen ellipsis tenzij het echt niet anders kan. */
.krb-form.krb-tool .krb-scope-choice > span{
  flex:1 1 auto!important;
  min-width:0!important;
  overflow:visible!important;
  text-overflow:clip!important;
  white-space:nowrap!important;
}

/* Bij 3 kolommen toch te krap? Dan sneller naar 2 kolommen. */
@media(max-width:1280px){
  .krb-form.krb-tool .krb-scope-checkboxes{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:760px){
  .krb-form.krb-tool .krb-scope-checkboxes{
    grid-template-columns:1fr!important;
  }
  .krb-form.krb-tool .krb-scope-choice > span{
    white-space:normal!important;
  }
}

/* v3.0.0 - uitgebreide keuringsflow */
.krb-visma-note{margin:12px 0 16px!important;padding:12px 14px!important;border:1px solid #bfdbfe!important;border-radius:12px!important;background:#eff6ff!important;color:#1e3a8a!important}.krb-visma-note p{margin:4px 0 0!important;color:#334155!important;font-size:13px!important}
.krb-combo-fields{display:grid!important;grid-template-columns:1fr 1fr!important;gap:8px!important;width:100%!important}.krb-combo-fields--wide{grid-template-columns:150px minmax(0,1fr)!important}.krb-combo-fields input,.krb-combo-fields select{width:100%!important;min-width:0!important}
.krb-free-notes{margin-top:22px!important;padding-top:18px!important;border-top:1px solid var(--krb-border,#dbe3ef)!important}.krb-free-notes h3{margin:0 0 4px!important;font-size:22px!important;color:var(--krb-title-color,#0b1220)!important}
.krb-free-note-row{display:grid!important;grid-template-columns:40px 260px minmax(260px,1fr) 260px auto!important;gap:10px!important;align-items:center!important;margin-top:10px!important;padding:12px!important;border:1px solid var(--krb-border,#dbe3ef)!important;border-radius:14px!important;background:#fff!important}.krb-free-note-row strong{font-weight:900!important}.krb-free-note-row textarea{min-height:48px!important}
@media(max-width:1100px){.krb-free-note-row{grid-template-columns:40px 1fr!important}.krb-free-note-row .krb-inline-upload,.krb-free-note-row textarea,.krb-free-note-row button{grid-column:2!important}}@media(max-width:760px){.krb-combo-fields,.krb-combo-fields--wide{grid-template-columns:1fr!important}.krb-free-note-row{grid-template-columns:1fr!important}.krb-free-note-row .krb-inline-upload,.krb-free-note-row textarea,.krb-free-note-row button{grid-column:auto!important}}

/* v3.0.1 - afronding Ymere/NEN3140/factuurflow */
.krb-single-checkbox{display:flex!important;align-items:center!important;gap:10px!important;min-height:48px!important;padding:10px 12px!important;border:1px solid var(--krb-border,#dbe3ef)!important;border-radius:12px!important;background:#fff!important}.krb-single-checkbox input[type="checkbox"]{width:20px!important;height:20px!important;min-width:20px!important}.krb-single-checkbox span{font-weight:800!important;color:var(--krb-text-color,#142033)!important}.krb-invoice-warning{width:100%!important;margin:6px 0!important;padding:6px 8px!important;border:1px solid #fed7aa!important;border-radius:8px!important;background:#fff7ed!important;color:#9a3412!important;font-size:11.5px!important;font-weight:800!important;line-height:1.35!important}


/* v3.0.3 - normvelden alleen tonen bij gekozen keuringtype */
.krb-field[data-krb-general-scope][hidden],
.krb-field[data-krb-ymere-only][hidden]{
  display:none!important;
}

/* v3.0.6 - controlepagina en elektrametingen */
.krb-form.krb-tool .krb-review-summary,
.krb-form.krb-tool .krb-review-summary *{color:var(--krb-text-color,#142033)!important;}
.krb-form.krb-tool .krb-review-summary strong{color:var(--krb-title-color,#0b1220)!important;}
.krb-elektra-measures{display:grid!important;gap:14px!important;margin-bottom:18px!important;}
.krb-elektra-measure-row{display:grid!important;grid-template-columns:minmax(230px,.8fr) minmax(0,1.6fr)!important;gap:16px!important;padding:16px!important;border:1px solid var(--krb-border,#dbe3ef)!important;border-radius:18px!important;background:#fff!important;}
@media(max-width:760px){.krb-elektra-measure-row{grid-template-columns:1fr!important}}


/* v3.0.9 - backend previews */
.krb-preview-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:center;
  padding:12px 0 18px;
}


/* v3.0.14 - live rapportstatus in laatste stap */
.krb-report-status{
  border:1px solid var(--krb-border);
  border-radius:18px;
  padding:18px 20px;
  margin:0 0 18px;
  background:#f8fafc;
  color:var(--krb-text-color);
}
.krb-report-status strong{
  display:block;
  font-size:20px;
  line-height:1.25;
  margin:0 0 6px;
}
.krb-report-status p{
  margin:0;
  color:var(--krb-muted);
}
.krb-report-status ul{
  margin:12px 0 0 18px;
  padding:0;
}
.krb-report-status li{
  margin:4px 0;
}
.krb-report-status--approved{
  border-color:#86efac;
  background:#f0fdf4;
}
.krb-report-status--approved strong{
  color:#166534;
}
.krb-report-status--failed{
  border-color:#fca5a5;
  background:#fef2f2;
}
.krb-report-status--failed strong{
  color:#991b1b;
}
.krb-report-status--pending{
  border-color:var(--krb-border);
  background:#f8fafc;
}


/* v3.0.15 - herkeuringsmonteur kiezen */
.krb-reinspection-link-form{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:flex-end;
  margin:0 0 8px;
}
.krb-reinspection-link-form label{
  display:flex;
  flex-direction:column;
  gap:4px;
  min-width:220px;
}
.krb-reinspection-link-form label span{
  font-size:12px;
  font-weight:700;
  color:#64748b;
}
.krb-reinspection-link-form select{
  max-width:320px;
}


/* v3.0.16 - rol Keuringen medewerker */
.krb-role-note{
  margin:10px 0 0;
  padding:10px 12px;
  border-left:4px solid #2f80ed;
  background:#f8fafc;
  color:#142033;
}


/* v3.0.18 - zichtbare mA invoer en fotoblokken */
.krb-rcd-row input,
.krb-elektra-measure-row input,
.krb-input-wrap input{
  color:#142033 !important;
  background:#ffffff !important;
  -webkit-text-fill-color:#142033 !important;
  opacity:1 !important;
}
.krb-inline-upload input[type="file"]{
  max-width:100%;
}
.krb-inline-upload small{
  display:block;
}


/* v3.0.19 - uniforme dropdown placeholders */
.krb-form select:invalid,
.krb-tool select:invalid{
  color:#64748b;
}
.krb-form select option,
.krb-tool select option{
  color:#142033;
}


/* v3.0.20 - ZS grenswaarde alleen tonen waar deze actief wordt gebruikt */
.krb-elektra-measure-row .krb-rule-badge{
  white-space:normal;
  line-height:1.25;
}


/* v3.0.21 - NEN3140 verbergen bij Object=Woning */
.is-krb-hidden-by-object{
  display:none !important;
}


/* v3.0.22 - admin datum/tijd duidelijker */
.krb-customer-group table td:first-child{
  white-space:nowrap;
}


/* v3.0.23 - aardlekmetingen mobiel gecorrigeerd */
.krb-rcd-row .krb-rcd-field{
  position:relative;
  display:block;
  min-width:0;
}
.krb-rcd-row .krb-rcd-field > span{
  display:none;
  margin:0 0 6px;
  font-size:13px;
  font-weight:800;
  color:var(--krb-muted);
}
.krb-rcd-row .krb-rcd-field--note input{
  padding-right:14px !important;
}
@media (max-width: 720px){
  .krb-rcd-head{
    display:none !important;
  }
  .krb-rcd-row{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:12px !important;
    padding:16px !important;
    overflow:hidden !important;
  }
  .krb-rcd-row > strong[data-krb-rcd-number]{
    display:block !important;
    width:100% !important;
    min-width:0 !important;
    white-space:normal !important;
    overflow:visible !important;
    color:#6b8e23;
    font-size:18px;
    line-height:1.25;
    margin:0 0 2px;
  }
  .krb-rcd-row > strong[data-krb-rcd-number]::before{
    content:"Meting ";
  }
  .krb-rcd-row .krb-rcd-field > span{
    display:block;
  }
  .krb-rcd-row .krb-rcd-field input{
    width:100% !important;
    min-width:0 !important;
    box-sizing:border-box !important;
  }
  .krb-rcd-row .krb-rcd-field em{
    right:14px;
  }
  .krb-rcd-row .krb-rcd-remove{
    width:100%;
  }
}


/* v3.0.24 - mobiele aardlekmetingen hard gecorrigeerd */
@media (max-width: 720px){
  .krb-form .krb-rcd-table{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    overflow:hidden !important;
  }

  .krb-form .krb-rcd-head{
    display:none !important;
  }

  .krb-form .krb-rcd-row{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    box-sizing:border-box !important;
    padding:18px !important;
    margin:0 0 14px !important;
    overflow:hidden !important;
    border-radius:18px !important;
  }

  .krb-form .krb-rcd-row > strong[data-krb-rcd-number]{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    margin:0 0 14px !important;
    padding:0 !important;
    white-space:normal !important;
    overflow:visible !important;
    text-indent:0 !important;
    color:#6b8e23 !important;
    font-size:22px !important;
    line-height:1.15 !important;
  }

  .krb-form .krb-rcd-row > strong[data-krb-rcd-number]::before{
    content:"Meting " !important;
  }

  .krb-form .krb-rcd-row .krb-rcd-field{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    box-sizing:border-box !important;
    margin:0 0 14px !important;
    padding:0 !important;
    position:relative !important;
    clear:both !important;
  }

  .krb-form .krb-rcd-row .krb-rcd-field > span{
    display:block !important;
    width:100% !important;
    margin:0 0 7px !important;
    padding:0 !important;
    color:#334155 !important;
    font-size:15px !important;
    font-weight:800 !important;
    line-height:1.25 !important;
    white-space:normal !important;
    overflow:visible !important;
  }

  .krb-form .krb-rcd-row .krb-rcd-field input{
    display:block !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    height:auto !important;
    min-height:54px !important;
    box-sizing:border-box !important;
    margin:0 !important;
    font-size:18px !important;
    line-height:1.35 !important;
  }

  .krb-form .krb-rcd-row .krb-rcd-field--ms input,
  .krb-form .krb-rcd-row .krb-rcd-field--ma input{
    padding-right:76px !important;
  }

  .krb-form .krb-rcd-row .krb-rcd-field--note input{
    padding-right:14px !important;
  }

  .krb-form .krb-rcd-row .krb-rcd-field em{
    position:absolute !important;
    right:14px !important;
    top:auto !important;
    bottom:15px !important;
    transform:none !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-width:44px !important;
    height:24px !important;
    padding:0 4px !important;
    border-left:1px solid #e2e8f0 !important;
    color:#64748b !important;
    background:#f8fafc !important;
    font-style:normal !important;
    font-weight:900 !important;
    line-height:1 !important;
    pointer-events:none !important;
  }

  .krb-form .krb-rcd-row .krb-rcd-remove{
    display:flex !important;
    width:100% !important;
    max-width:100% !important;
    margin-top:2px !important;
  }
}


/* v3.0.26 - online betalingen verwijderd, VISMA handmatig */
.krb-visma-note{
  border:1px solid #dbe3ef;
  background:#f8fafc;
  border-radius:14px;
  padding:14px 16px;
  margin:12px 0 18px;
}


/* v3.0.28 - afgiftedatum certificaat in backend */
.krb-certificate-send-form{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  align-items:flex-end;
  margin-top:8px;
}
.krb-certificate-send-form label{
  display:flex;
  flex-direction:column;
  gap:4px;
  min-width:190px;
}
.krb-certificate-send-form label span{
  font-size:12px;
  font-weight:700;
  color:#64748b;
}


/* v3.0.29 - repeaters voor groepen/aardlek en certificaatdata in admin */
.krb-repeat{display:grid;gap:10px;width:100%;}
.krb-repeat-row{display:grid;grid-template-columns:44px minmax(90px,.55fr) minmax(130px,.8fr) auto;gap:10px;align-items:center;}
.krb-repeat-row>strong{color:#6b8e23;font-size:18px;line-height:1.2;}
.krb-repeat-add{justify-self:start;}
.krb-certificate-send-form{display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end;margin-top:8px;}
.krb-certificate-send-form label{display:flex;flex-direction:column;gap:4px;}
.krb-certificate-send-form label span{font-size:12px;font-weight:800;color:#64748b;}
@media (max-width:720px){
  .krb-repeat-row{grid-template-columns:1fr;gap:8px;padding:12px;border:1px solid var(--krb-border);border-radius:14px;background:#fff;}
  .krb-repeat-row>strong::before{content:'Regel ';}
  .krb-repeat-row .krb-button{width:100%;}
}


/* v3.0.31 - verplichte keuringkeuze duidelijker zichtbaar */
.krb-form.krb-tool .krb-scope-error{
  display:block;
  grid-column:1 / -1;
  width:100%;
  box-sizing:border-box;
  margin:12px 0 0;
  padding:13px 15px;
  border:2px solid #dc2626;
  border-radius:14px;
  background:#fef2f2;
  color:#991b1b;
  font-size:15px;
  line-height:1.35;
  box-shadow:0 8px 22px rgba(220,38,38,.12);
}
.krb-form.krb-tool .krb-scope-error[hidden]{
  display:none !important;
}
.krb-form.krb-tool .krb-scope-error strong{
  display:block;
  margin:0 0 4px;
  color:#7f1d1d;
  font-size:16px;
  font-weight:900;
}
.krb-form.krb-tool .krb-scope-error span{
  display:block;
  color:#991b1b;
  font-weight:800;
}
.krb-form.krb-tool .krb-scope-checkboxes.has-error{
  padding:12px;
  border:2px solid #dc2626;
  border-radius:18px;
  background:#fff7f7;
  box-shadow:0 0 0 4px rgba(220,38,38,.10);
}
.krb-form.krb-tool .krb-scope-checkboxes.has-error .krb-scope-choice{
  border-color:#fecaca !important;
  background:#fff !important;
}
.krb-form.krb-tool .krb-scope-checkboxes.has-error .krb-scope-choice:hover{
  border-color:#dc2626 !important;
}
@media(max-width:760px){
  .krb-form.krb-tool .krb-scope-error{
    font-size:14px;
    padding:12px 13px;
  }
}


/* v3.0.32 - keuringkeuze melding alleen tonen na foutieve doorgang */
.krb-form.krb-tool .krb-scope-error,
.krb-form.krb-tool .krb-scope-error[hidden]{
  display:none !important;
}
.krb-form.krb-tool .krb-scope-checkboxes.has-error .krb-scope-error{
  display:block !important;
}
.krb-form.krb-tool .krb-scope-checkboxes:not(.has-error){
  border-color:transparent !important;
  background:transparent !important;
  box-shadow:none !important;
}


/* v3.0.33 - keuringmelding standaard echt verborgen */
.krb-form.krb-tool .krb-scope-error.is-krb-scope-error-hidden,
.krb-form.krb-tool .krb-scope-error[hidden],
.krb-form.krb-tool [data-krb-scope-error][hidden],
.krb-form.krb-tool [data-krb-scope-error][aria-hidden="true"]{
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
}
.krb-form.krb-tool .krb-scope-checkboxes:not(.has-error){
  border-color:transparent !important;
  background:transparent !important;
  box-shadow:none !important;
}
.krb-form.krb-tool .krb-scope-checkboxes.has-error .krb-scope-error:not([hidden]):not(.is-krb-scope-error-hidden){
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
}


/* v3.0.34 - foutstijl keuringkeuze pas na klikken op Volgende */
.krb-form.krb-tool .krb-scope-checkboxes.has-error:not(.is-krb-scope-touched){
  padding:0 !important;
  border-color:transparent !important;
  background:transparent !important;
  box-shadow:none !important;
}
.krb-form.krb-tool .krb-scope-checkboxes.has-error:not(.is-krb-scope-touched) .krb-scope-choice{
  border-color:#dbe3ef !important;
  background:#fff !important;
}
.krb-form.krb-tool .krb-scope-checkboxes.has-error:not(.is-krb-scope-touched) .krb-scope-choice span{
  color:var(--krb-text-color,#142033) !important;
}
.krb-form.krb-tool .krb-scope-checkboxes.has-error:not(.is-krb-scope-touched) .krb-scope-error,
.krb-form.krb-tool .krb-scope-checkboxes:not(.is-krb-scope-touched) .krb-scope-error{
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
}
.krb-form.krb-tool .krb-scope-checkboxes.has-error.is-krb-scope-touched{
  padding:12px !important;
  border:2px solid #dc2626 !important;
  border-radius:18px !important;
  background:#fff7f7 !important;
  box-shadow:0 0 0 4px rgba(220,38,38,.10) !important;
}
.krb-form.krb-tool .krb-scope-checkboxes.has-error.is-krb-scope-touched .krb-scope-error:not([hidden]):not(.is-krb-scope-error-hidden){
  display:block !important;
  visibility:visible !important;
  opacity:1 !important;
}


/* v3.0.35 - mobiele stappen/tabs onder elkaar */
@media (max-width: 767px){
  .krb-form.krb-tool .krb-steps-wrap{
    overflow:visible !important;
    width:100% !important;
    max-width:100% !important;
  }

  .krb-form.krb-tool .krb-steps{
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    gap:10px !important;
    width:100% !important;
    max-width:100% !important;
    overflow:visible !important;
    white-space:normal !important;
  }

  .krb-form.krb-tool .krb-step{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
    box-sizing:border-box !important;
    margin:0 !important;
    padding:14px 18px !important;
    white-space:normal !important;
    overflow:visible !important;
    text-align:left !important;
    line-height:1.25 !important;
  }

  .krb-form.krb-tool .krb-step[hidden]{
    display:none !important;
  }
}


/* v3.0.48 - nieuwe repeater-layout: volledige breedte, geen clipping */
.krb-form.krb-tool,
.krb-form.krb-tool *,
.krb-form.krb-tool *::before,
.krb-form.krb-tool *::after{
  box-sizing:border-box;
}

.krb-form.krb-tool .krb-checkitem,
.krb-form.krb-tool .krb-checkitem-main,
.krb-form.krb-tool .krb-checkitem-fields,
.krb-form.krb-tool .krb-repeat,
.krb-form.krb-tool .krb-repeat-row{
  min-width:0 !important;
  max-width:100% !important;
}

/* Basis: gewone inspectieregels blijven netjes in de kaart. */
.krb-form.krb-tool .krb-checkitem{
  overflow:visible !important;
}

/* Alleen de uitbreidbare onderdelen krijgen een eigen layout. */
.krb-form.krb-tool .krb-checkitem[data-krb-item-key="groups"],
.krb-form.krb-tool .krb-checkitem[data-krb-item-key="rcd_switches"],
.krb-form.krb-tool .krb-checkitem[data-krb-item-key="rcd_combi"]{
  display:grid !important;
  grid-template-columns:minmax(180px,230px) minmax(0,1fr) !important;
  gap:16px !important;
  align-items:start !important;
  padding:16px !important;
}

.krb-form.krb-tool .krb-checkitem[data-krb-item-key="groups"] .krb-checkitem-main,
.krb-form.krb-tool .krb-checkitem[data-krb-item-key="rcd_switches"] .krb-checkitem-main,
.krb-form.krb-tool .krb-checkitem[data-krb-item-key="rcd_combi"] .krb-checkitem-main{
  padding-top:4px !important;
}

.krb-form.krb-tool .krb-checkitem[data-krb-item-key="groups"] .krb-checkitem-fields,
.krb-form.krb-tool .krb-checkitem[data-krb-item-key="rcd_switches"] .krb-checkitem-fields,
.krb-form.krb-tool .krb-checkitem[data-krb-item-key="rcd_combi"] .krb-checkitem-fields{
  display:block !important;
  width:100% !important;
}

/* Oude algemene opmerking/foto van het hoofditem verbergen; elke regel heeft nu eigen opmerking/foto. */
.krb-form.krb-tool .krb-checkitem[data-krb-item-key="groups"] .krb-checkitem-fields > textarea,
.krb-form.krb-tool .krb-checkitem[data-krb-item-key="rcd_switches"] .krb-checkitem-fields > textarea,
.krb-form.krb-tool .krb-checkitem[data-krb-item-key="rcd_combi"] .krb-checkitem-fields > textarea,
.krb-form.krb-tool .krb-checkitem[data-krb-item-key="groups"] .krb-checkitem-fields > .krb-inline-upload:not(.krb-repeat-upload),
.krb-form.krb-tool .krb-checkitem[data-krb-item-key="rcd_switches"] .krb-checkitem-fields > .krb-inline-upload:not(.krb-repeat-upload),
.krb-form.krb-tool .krb-checkitem[data-krb-item-key="rcd_combi"] .krb-checkitem-fields > .krb-inline-upload:not(.krb-repeat-upload){
  display:none !important;
}

.krb-form.krb-tool .krb-repeat--with-details{
  display:flex !important;
  flex-direction:column !important;
  gap:12px !important;
  width:100% !important;
}

/* Desktop: regel 1 bevat de invulvelden over de volle rechterkolom; regel 2 is foto-upload over dezelfde breedte. */
.krb-form.krb-tool .krb-repeat--with-details .krb-repeat-row[hidden],
.krb-form.krb-tool .krb-repeat--with-details .krb-repeat-row.krb-repeat-row--extra[hidden]{
  display:none !important;
}

.krb-form.krb-tool .krb-repeat--with-details .krb-repeat-row:not([hidden]){
  display:grid !important;
  grid-template-columns:32px minmax(90px,.75fr) minmax(125px,1fr) minmax(260px,2.8fr) 96px !important;
  grid-template-areas:
    "nr amount type note remove"
    "nr photo  photo photo photo" !important;
  gap:8px 10px !important;
  align-items:center !important;
  width:100% !important;
  padding:0 0 12px !important;
  border-bottom:1px solid #eef2f7 !important;
  background:transparent !important;
}

.krb-form.krb-tool .krb-repeat--with-details .krb-repeat-row:last-of-type{
  border-bottom:0 !important;
  padding-bottom:0 !important;
}

.krb-form.krb-tool .krb-repeat--with-details .krb-repeat-row > strong{
  grid-area:nr !important;
  align-self:start !important;
  padding-top:13px !important;
  width:32px !important;
  text-align:center !important;
  color:#64748b !important;
  font-size:14px !important;
  font-weight:600 !important;
  line-height:1 !important;
}

.krb-form.krb-tool .krb-repeat--with-details .krb-repeat-row > strong::before{
  content:"" !important;
}

.krb-form.krb-tool .krb-repeat--with-details .krb-repeat-row > input:nth-of-type(1){
  grid-area:amount !important;
}

.krb-form.krb-tool .krb-repeat--with-details .krb-repeat-row > input:nth-of-type(2),
.krb-form.krb-tool .krb-repeat--with-details .krb-repeat-row > select{
  grid-area:type !important;
}

.krb-form.krb-tool .krb-repeat--with-details .krb-repeat-row > textarea{
  grid-area:note !important;
}

.krb-form.krb-tool .krb-repeat--with-details .krb-repeat-upload{
  grid-area:photo !important;
}

.krb-form.krb-tool .krb-repeat--with-details .krb-repeat-row .krb-button[data-krb-repeat-remove]{
  grid-area:remove !important;
}

.krb-form.krb-tool .krb-repeat--with-details .krb-repeat-row input,
.krb-form.krb-tool .krb-repeat--with-details .krb-repeat-row select,
.krb-form.krb-tool .krb-repeat--with-details .krb-repeat-row textarea{
  display:block !important;
  width:100% !important;
  min-width:0 !important;
  max-width:100% !important;
  height:42px !important;
  min-height:42px !important;
  padding:8px 12px !important;
  border-radius:10px !important;
  font-size:14px !important;
  font-weight:400 !important;
  line-height:1.25 !important;
}

.krb-form.krb-tool .krb-repeat--with-details .krb-repeat-row textarea{
  resize:vertical !important;
  overflow:auto !important;
}

.krb-form.krb-tool .krb-repeat--with-details .krb-repeat-upload{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  width:100% !important;
  min-width:0 !important;
  max-width:100% !important;
  min-height:42px !important;
  height:42px !important;
  padding:7px 12px !important;
  border-radius:10px !important;
  overflow:hidden !important;
  white-space:nowrap !important;
}

.krb-form.krb-tool .krb-repeat--with-details .krb-repeat-upload input{
  position:absolute !important;
  left:-9999px !important;
  width:1px !important;
  height:1px !important;
}

.krb-form.krb-tool .krb-repeat--with-details .krb-repeat-upload span{
  display:inline-block !important;
  flex:0 0 auto !important;
  font-size:13px !important;
  font-weight:500 !important;
  line-height:1 !important;
  margin:0 !important;
}

.krb-form.krb-tool .krb-repeat--with-details .krb-repeat-upload span::after{
  content:" toevoegen";
}

.krb-form.krb-tool .krb-repeat--with-details .krb-repeat-upload small{
  display:inline-block !important;
  flex:1 1 auto !important;
  min-width:0 !important;
  margin-left:8px !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
  font-size:12px !important;
  font-weight:500 !important;
  line-height:1 !important;
}

/* Verwijder terug als normale, compacte knop. */
.krb-form.krb-tool .krb-repeat--with-details .krb-repeat-row .krb-button[data-krb-repeat-remove]{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  justify-self:start !important;
  align-self:start !important;
  width:96px !important;
  min-width:96px !important;
  max-width:96px !important;
  height:42px !important;
  min-height:42px !important;
  padding:0 12px !important;
  border-radius:10px !important;
  background:#07132b !important;
  color:#fff !important;
  border:1px solid #07132b !important;
  text-indent:0 !important;
  overflow:hidden !important;
  white-space:nowrap !important;
  box-shadow:none !important;
  font-size:13px !important;
  font-weight:500 !important;
  line-height:1 !important;
}

.krb-form.krb-tool .krb-repeat--with-details .krb-repeat-row .krb-button[data-krb-repeat-remove]::after{
  content:none !important;
  display:none !important;
}

.krb-form.krb-tool .krb-repeat--with-details .krb-repeat-row .krb-button[data-krb-repeat-remove]:hover,
.krb-form.krb-tool .krb-repeat--with-details .krb-repeat-row .krb-button[data-krb-repeat-remove]:focus{
  background:#0b1d40 !important;
  color:#fff !important;
  border-color:#0b1d40 !important;
}

.krb-form.krb-tool .krb-repeat--with-details .krb-repeat-add{
  align-self:flex-start !important;
  width:auto !important;
  min-width:0 !important;
  height:38px !important;
  min-height:38px !important;
  padding:8px 14px !important;
  margin:0 0 0 42px !important;
  border-radius:10px !important;
  font-size:13px !important;
  font-weight:500 !important;
  line-height:1 !important;
}

/* Foto-only regels zoals Foto gasinstallatie: tekstveld krijgt prioriteit. */
.krb-form.krb-tool .krb-checkitem[data-krb-item-key="gas_installation_photo"] .krb-checkitem-fields{
  display:grid !important;
  grid-template-columns:minmax(0,2.4fr) minmax(210px,.8fr) !important;
  gap:10px !important;
  align-items:center !important;
}

.krb-form.krb-tool .krb-checkitem[data-krb-item-key="gas_installation_photo"] .krb-checkitem-fields > input[type="hidden"]{
  display:none !important;
}

/* Tablet: label bovenaan, velden blijven nog naast elkaar. */
@media (max-width: 1180px){
  .krb-form.krb-tool .krb-checkitem[data-krb-item-key="groups"],
  .krb-form.krb-tool .krb-checkitem[data-krb-item-key="rcd_switches"],
  .krb-form.krb-tool .krb-checkitem[data-krb-item-key="rcd_combi"]{
    grid-template-columns:1fr !important;
  }

  .krb-form.krb-tool .krb-repeat--with-details .krb-repeat-row:not([hidden]){
    grid-template-columns:32px minmax(0,.8fr) minmax(0,1fr) minmax(0,1.7fr) 96px !important;
  }
}

/* Mobiel: dezelfde velden, maar logisch gestapeld per regel. */
@media (max-width: 760px){
  .krb-form.krb-tool .krb-checkitem[data-krb-item-key="groups"],
  .krb-form.krb-tool .krb-checkitem[data-krb-item-key="rcd_switches"],
  .krb-form.krb-tool .krb-checkitem[data-krb-item-key="rcd_combi"]{
    padding:13px !important;
  }

  .krb-form.krb-tool .krb-repeat--with-details .krb-repeat-row:not([hidden]){
    grid-template-columns:28px minmax(0,1fr) !important;
    grid-template-areas:
      "nr amount"
      "nr type"
      "nr note"
      "nr photo"
      "nr remove" !important;
    gap:8px !important;
    padding-bottom:12px !important;
  }

  .krb-form.krb-tool .krb-repeat--with-details .krb-repeat-row > strong{
    width:28px !important;
    padding-top:13px !important;
  }

  .krb-form.krb-tool .krb-repeat--with-details .krb-repeat-row .krb-button[data-krb-repeat-remove]{
    justify-self:start !important;
    width:auto !important;
    max-width:100% !important;
  }

  .krb-form.krb-tool .krb-repeat--with-details .krb-repeat-add{
    margin-left:0 !important;
  }

  .krb-form.krb-tool .krb-checkitem[data-krb-item-key="gas_installation_photo"] .krb-checkitem-fields{
    grid-template-columns:1fr !important;
  }
}


/* v3.0.51 - logo-selectievelden */
.krb-logo-picker{
  display:flex;
  gap:8px;
  align-items:center;
  width:100%;
}
.krb-logo-picker input{
  flex:1 1 auto;
  min-width:0;
}
.krb-logo-picker .button{
  flex:0 0 auto;
}
@media(max-width:720px){
  .krb-logo-picker{
    display:block;
  }
  .krb-logo-picker .button{
    margin-top:8px;
  }
}


/* v3.0.52 - VISMA upload zonder bedragveld */
.krb-admin-field--wide small{
  display:block;
  margin-top:6px;
  color:#64748b;
}


/* v3.0.53 - VISMA upload zonder bedragveld */
.krb-admin-field--wide small{display:block;margin-top:6px;color:#64748b;}


/* v3.0.58 - compacter documentoverzicht */
.krb-documents-refresh-button{
  background:#f59e0b !important;
  border-color:#d97706 !important;
  color:#111827 !important;
  font-weight:700 !important;
}
.krb-documents-refresh-button:hover,
.krb-documents-refresh-button:focus{
  background:#d97706 !important;
  border-color:#b45309 !important;
  color:#ffffff !important;
}
.krb-scope-file-links{
  display:inline-flex !important;
  flex-direction:row !important;
  flex-wrap:nowrap !important;
  gap:6px !important;
  align-items:center !important;
  margin:6px 0 0 0 !important;
  white-space:nowrap !important;
}
.krb-scope-file-links .button{
  margin:0 !important;
  white-space:nowrap !important;
}
.krb-certificate-admin .krb-scope-file-links{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:6px !important;
  margin:8px 0 !important;
}
.krb-certificate-send-form{
  display:grid !important;
  grid-template-columns:minmax(150px,1fr) minmax(150px,1fr) auto !important;
  gap:10px 12px !important;
  align-items:end !important;
  max-width:100% !important;
}
.krb-certificate-send-form label span{
  font-size:13px !important;
  line-height:1.2 !important;
}
.krb-certificate-send-form input[type="date"]{
  min-height:38px !important;
  height:38px !important;
  padding:6px 10px !important;
  font-size:15px !important;
  line-height:1.2 !important;
}
.krb-certificate-send-form button{
  min-height:38px !important;
  height:38px !important;
  padding:6px 12px !important;
  font-size:13px !important;
  line-height:1.2 !important;
}
@media(max-width:900px){
  .krb-certificate-send-form{
    grid-template-columns:1fr !important;
  }
}


/* v3.0.59 - documentkeuze bij mailen */
.krb-certificate-send-form{
  grid-template-columns:minmax(140px,.85fr) minmax(140px,.85fr) minmax(190px,1fr) auto !important;
}
.krb-certificate-send-form select{
  min-height:38px !important;
  height:38px !important;
  padding:6px 10px !important;
  font-size:14px !important;
  line-height:1.2 !important;
}
@media(max-width:1050px){
  .krb-certificate-send-form{
    grid-template-columns:1fr 1fr !important;
  }
  .krb-certificate-send-form button{
    justify-self:start !important;
  }
}
@media(max-width:700px){
  .krb-certificate-send-form{
    grid-template-columns:1fr !important;
  }
}


/* v3.0.60 - factuurstatus in NAW/VISMA scherm */
.krb-invoice-admin-grid{
  align-items:end;
}
.krb-admin-field--checkbox .krb-admin-check{
  display:flex;
  align-items:center;
  gap:8px;
  min-height:38px;
  margin-top:4px;
  font-weight:600;
}
.krb-admin-field--checkbox input[type="checkbox"]{
  width:18px;
  height:18px;
}
.krb-invoice-number-field.krb-is-hidden{
  display:none !important;
}


/* v3.0.61 - factuurstatus duidelijk zichtbaar in NAW-paneel */
.krb-invoice-admin-grid .krb-admin-field--checkbox{
  background:#f8fafc;
  border:1px solid #dbe3ef;
  border-radius:10px;
  padding:10px 12px;
}
.krb-invoice-admin-grid .krb-admin-check{
  color:#142033;
}
.krb-invoice-number-field:not(.krb-is-hidden){
  display:block !important;
}


/* v3.0.62 - factuurstatus direct zichtbaar bij documentmail */
.krb-certificate-send-form{
  grid-template-columns:minmax(132px,.7fr) minmax(132px,.7fr) minmax(170px,.9fr) minmax(150px,.8fr) minmax(190px,1fr) auto !important;
}
.krb-certificate-send-form .krb-certificate-invoice-check,
.krb-certificate-send-form .krb-invoice-number-field{
  min-width:0;
}
.krb-mini-check{
  display:flex;
  gap:7px;
  align-items:center;
  min-height:38px;
  padding:6px 8px;
  border:1px solid #dbe3ef;
  border-radius:8px;
  background:#f8fafc;
  color:#142033;
  font-size:13px;
  line-height:1.2;
  white-space:nowrap;
}
.krb-mini-check input[type="checkbox"]{
  width:16px;
  height:16px;
  margin:0;
}
.krb-certificate-send-form .krb-invoice-number-field.krb-is-hidden{
  display:none !important;
}
.krb-certificate-send-form .krb-invoice-number-field:not(.krb-is-hidden){
  display:block !important;
}
.krb-certificate-send-form input[type="text"]{
  min-height:38px !important;
  height:38px !important;
  padding:6px 10px !important;
  font-size:14px !important;
  line-height:1.2 !important;
}
@media(max-width:1320px){
  .krb-certificate-send-form{
    grid-template-columns:1fr 1fr 1fr !important;
  }
}
@media(max-width:820px){
  .krb-certificate-send-form{
    grid-template-columns:1fr !important;
  }
}


/* v3.0.63 - PDF/mail blok opnieuw compact opgebouwd binnen tabelcel */
.krb-certificate-admin{
  display:block !important;
  max-width:100% !important;
  min-width:0 !important;
  overflow:visible !important;
}
.krb-certificate-send-form{
  display:grid !important;
  grid-template-columns:minmax(120px,170px) minmax(120px,170px) minmax(180px,240px) minmax(170px,260px) minmax(130px,170px) !important;
  grid-auto-flow:row !important;
  gap:8px 10px !important;
  align-items:end !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  margin:12px 0 0 !important;
  overflow:visible !important;
}
.krb-certificate-send-form input[type="hidden"]{
  display:none !important;
}
.krb-certificate-send-form label{
  display:block !important;
  min-width:0 !important;
  max-width:100% !important;
  margin:0 !important;
}
.krb-certificate-send-form label > span{
  display:block !important;
  margin:0 0 4px !important;
  font-size:12px !important;
  line-height:1.15 !important;
  font-weight:600 !important;
  color:#64748b !important;
  white-space:normal !important;
}
.krb-certificate-send-form .krb-cert-date-field{
  grid-row:1 !important;
}
.krb-certificate-send-form .krb-certificate-invoice-check{
  grid-row:1 !important;
}
.krb-certificate-send-form .krb-invoice-number-field{
  grid-row:1 !important;
}
.krb-certificate-send-form .krb-documents-choice-field{
  grid-column:3 / span 2 !important;
  grid-row:2 !important;
}
.krb-certificate-send-form .krb-documents-mail-button{
  grid-column:5 !important;
  grid-row:2 !important;
  align-self:end !important;
  justify-self:start !important;
  width:auto !important;
  min-width:150px !important;
  max-width:100% !important;
}
.krb-certificate-send-form input[type="date"],
.krb-certificate-send-form input[type="text"],
.krb-certificate-send-form select{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  height:36px !important;
  min-height:36px !important;
  padding:5px 8px !important;
  font-size:13px !important;
  line-height:1.2 !important;
  border-radius:6px !important;
  box-sizing:border-box !important;
}
.krb-certificate-send-form .krb-mini-check{
  display:flex !important;
  align-items:center !important;
  gap:6px !important;
  width:100% !important;
  min-height:36px !important;
  height:36px !important;
  padding:5px 8px !important;
  border:1px solid #dbe3ef !important;
  border-radius:6px !important;
  background:#f8fafc !important;
  color:#142033 !important;
  font-size:12px !important;
  line-height:1.15 !important;
  white-space:normal !important;
  box-sizing:border-box !important;
}
.krb-certificate-send-form .krb-mini-check input[type="checkbox"]{
  flex:0 0 16px !important;
  width:16px !important;
  height:16px !important;
  margin:0 !important;
}
.krb-certificate-send-form .krb-invoice-number-field.krb-is-hidden{
  display:none !important;
}
.krb-certificate-send-form .krb-invoice-number-field:not(.krb-is-hidden){
  display:block !important;
}
.krb-certificate-send-form .krb-documents-mail-button.button.button-primary{
  height:36px !important;
  min-height:36px !important;
  padding:5px 12px !important;
  font-size:13px !important;
  line-height:1.2 !important;
  border-radius:6px !important;
  white-space:nowrap !important;
}
@media(max-width:1500px){
  .krb-certificate-send-form{
    grid-template-columns:minmax(110px,1fr) minmax(110px,1fr) minmax(160px,1fr) minmax(150px,1fr) !important;
  }
  .krb-certificate-send-form .krb-documents-choice-field{
    grid-column:1 / span 2 !important;
    grid-row:2 !important;
  }
  .krb-certificate-send-form .krb-documents-mail-button{
    grid-column:3 / span 2 !important;
    grid-row:2 !important;
  }
}
@media(max-width:1100px){
  .krb-certificate-send-form{
    grid-template-columns:1fr 1fr !important;
  }
  .krb-certificate-send-form .krb-cert-date-field,
  .krb-certificate-send-form .krb-certificate-invoice-check,
  .krb-certificate-send-form .krb-invoice-number-field,
  .krb-certificate-send-form .krb-documents-choice-field,
  .krb-certificate-send-form .krb-documents-mail-button{
    grid-column:auto !important;
    grid-row:auto !important;
  }
}
@media(max-width:720px){
  .krb-certificate-send-form{
    grid-template-columns:1fr !important;
  }
}


/* v3.0.64 - dashboard compacter en klanten inklapbaar */
.krb-customer-group{
  margin:14px 0 !important;
  border:1px solid #dbe3ef !important;
  border-radius:12px !important;
  background:#fff !important;
  overflow:hidden !important;
}
.krb-customer-toggle{
  all:unset !important;
  box-sizing:border-box !important;
  display:grid !important;
  grid-template-columns:minmax(220px,1fr) auto auto !important;
  gap:14px !important;
  align-items:center !important;
  width:100% !important;
  padding:14px 16px !important;
  cursor:pointer !important;
  background:#f8fafc !important;
  border-bottom:1px solid #dbe3ef !important;
}
.krb-customer-toggle-main strong{
  display:block !important;
  font-size:17px !important;
  line-height:1.2 !important;
  color:#142033 !important;
}
.krb-customer-toggle-main small{
  display:block !important;
  margin-top:3px !important;
  color:#64748b !important;
  font-size:12px !important;
}
.krb-customer-toggle-meta{
  color:#64748b !important;
  font-weight:600 !important;
  font-size:13px !important;
}
.krb-customer-toggle-action{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-width:88px !important;
  padding:7px 10px !important;
  border-radius:8px !important;
  background:#0085ba !important;
  color:#fff !important;
  font-size:13px !important;
  font-weight:600 !important;
}
.krb-customer-collapsed .krb-customer-details{
  display:none !important;
}
.krb-customer-group:not(.krb-customer-collapsed) .krb-customer-toggle-action::before{
  content:'Inklappen' !important;
}
.krb-customer-group:not(.krb-customer-collapsed) .krb-customer-toggle-action{
  font-size:0 !important;
}
.krb-customer-details{
  padding:0 !important;
  overflow-x:auto !important;
}

/* v3.0.64 - factuurstatus hoort in dashboard/PDF-mail blok, niet in NAW */
.krb-certificate-send-form{
  display:grid !important;
  grid-template-columns:120px 120px minmax(170px,220px) minmax(140px,190px) minmax(180px,230px) auto !important;
  gap:8px !important;
  align-items:end !important;
  max-width:100% !important;
  margin-top:10px !important;
}
.krb-certificate-send-form label{
  min-width:0 !important;
  max-width:100% !important;
}
.krb-certificate-send-form label > span{
  display:block !important;
  font-size:12px !important;
  line-height:1.15 !important;
  margin:0 0 4px !important;
  color:#64748b !important;
  font-weight:700 !important;
}
.krb-certificate-send-form input[type="date"],
.krb-certificate-send-form input[type="text"],
.krb-certificate-send-form select{
  width:100% !important;
  min-height:34px !important;
  height:34px !important;
  padding:5px 8px !important;
  font-size:13px !important;
  line-height:1.2 !important;
  box-sizing:border-box !important;
}
.krb-certificate-send-form .krb-mini-check{
  display:flex !important;
  align-items:center !important;
  gap:6px !important;
  min-height:34px !important;
  height:34px !important;
  padding:5px 8px !important;
  border:1px solid #dbe3ef !important;
  border-radius:7px !important;
  background:#f8fafc !important;
  font-size:12px !important;
  line-height:1.1 !important;
  white-space:nowrap !important;
  box-sizing:border-box !important;
}
.krb-certificate-send-form .krb-mini-check input[type="checkbox"]{
  width:15px !important;
  height:15px !important;
  min-width:15px !important;
  min-height:15px !important;
  margin:0 !important;
}
.krb-certificate-send-form .krb-invoice-number-field.krb-is-hidden{
  display:none !important;
}
.krb-certificate-send-form .krb-invoice-number-field:not(.krb-is-hidden){
  display:block !important;
}
.krb-certificate-send-form .krb-documents-mail-button{
  min-height:34px !important;
  height:34px !important;
  padding:5px 12px !important;
  font-size:13px !important;
  white-space:nowrap !important;
}
@media(max-width:1500px){
  .krb-certificate-send-form{
    grid-template-columns:120px 120px minmax(170px,1fr) minmax(140px,1fr) !important;
  }
  .krb-certificate-send-form .krb-documents-choice-field{grid-column:1 / span 2 !important;}
  .krb-certificate-send-form .krb-documents-mail-button{grid-column:3 / span 2 !important;justify-self:start !important;}
}
@media(max-width:900px){
  .krb-customer-toggle{grid-template-columns:1fr !important;gap:8px !important;}
  .krb-customer-toggle-action{justify-self:start !important;}
  .krb-certificate-send-form{grid-template-columns:1fr 1fr !important;}
  .krb-certificate-send-form .krb-documents-choice-field,
  .krb-certificate-send-form .krb-documents-mail-button{grid-column:auto !important;}
}
@media(max-width:560px){
  .krb-certificate-send-form{grid-template-columns:1fr !important;}
}


/* v3.0.65 - regelgebaseerd inspectie-dashboard */
.krb-admin-filter--dashboard form{
  display:grid !important;
  grid-template-columns:minmax(220px,1.6fr) repeat(6,minmax(130px,1fr)) auto auto !important;
  gap:8px !important;
  align-items:center !important;
}
.krb-admin-filter--dashboard input,
.krb-admin-filter--dashboard select{
  max-width:100% !important;
  min-height:34px !important;
}
.krb-dashboard-count{
  clear:both;
  margin:14px 0 8px;
  color:#64748b;
  font-weight:600;
}
.krb-inspections-table{
  table-layout:auto;
  width:100%;
}
.krb-inspections-table th,
.krb-inspections-table td{
  vertical-align:top !important;
}
.krb-inspections-table .krb-col-toggle{width:34px;}
.krb-row-toggle{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:28px;
  height:28px;
  border:1px solid #dbe3ef !important;
  border-radius:7px;
  background:#fff;
  color:#0f172a;
  cursor:pointer;
}
.krb-row-toggle .dashicons{font-size:17px;width:17px;height:17px;line-height:17px;}
.krb-inspection-detail-row>td{
  background:#f8fafc !important;
  padding:14px !important;
}
.krb-row-detail-grid{
  display:grid;
  grid-template-columns:minmax(260px,1.2fr) minmax(260px,1fr);
  gap:12px;
  align-items:start;
}
.krb-row-detail-card{
  background:#fff;
  border:1px solid #dbe3ef;
  border-radius:12px;
  padding:14px;
  min-width:0;
}
.krb-row-detail-card h3{
  margin:0 0 10px;
  font-size:15px;
  color:#142033;
}
.krb-row-detail-card--log{grid-column:1 / -1;}
.krb-result-failed{color:#b91c1c;}
.krb-result-approved{color:#047857;}
.krb-pill{
  display:inline-flex;
  align-items:center;
  min-height:22px;
  padding:3px 8px;
  border-radius:999px;
  font-size:12px;
  font-weight:700;
}
.krb-pill--ok{background:#dcfce7;color:#166534;}
.krb-pill--muted{background:#e5e7eb;color:#475569;}
.krb-dashboard-docs,
.krb-dashboard-docs .krb-scope-file-links{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:6px !important;
  align-items:center !important;
  margin:0 !important;
}
.krb-dashboard-docs .button{margin:0 !important;}
.krb-certificate-send-form--compact{
  display:grid !important;
  grid-template-columns:minmax(130px,.8fr) minmax(130px,.8fr) minmax(170px,1fr) auto !important;
  gap:8px !important;
  align-items:end !important;
}
.krb-certificate-send-form--compact label span,
.krb-dashboard-invoice-form label span{
  display:block;
  margin-bottom:4px;
  font-size:12px;
  font-weight:700;
  color:#64748b;
}
.krb-certificate-send-form--compact input,
.krb-certificate-send-form--compact select,
.krb-dashboard-invoice-form input[type="text"]{
  min-height:34px !important;
  height:34px !important;
  padding:5px 8px !important;
  font-size:13px !important;
}
.krb-certificate-send-form--compact button,
.krb-dashboard-invoice-form button{
  min-height:34px !important;
  height:34px !important;
  padding:5px 10px !important;
  font-size:13px !important;
}
.krb-dashboard-invoice-form{
  display:grid;
  grid-template-columns:minmax(190px,auto) minmax(170px,1fr) minmax(190px,1fr) auto;
  gap:8px;
  align-items:end;
}
.krb-dashboard-invoice-form .krb-mini-check{
  margin:0;
  min-height:34px;
  padding:6px 9px;
}
.krb-dashboard-invoice-form .krb-invoice-number-field.krb-is-hidden{display:none !important;}
.krb-dashboard-invoice-form .krb-invoice-number-field:not(.krb-is-hidden){display:block !important;}
@media(max-width:1400px){
  .krb-admin-filter--dashboard form{grid-template-columns:minmax(220px,1fr) repeat(3,minmax(130px,1fr));}
  .krb-row-detail-grid{grid-template-columns:1fr;}
  .krb-certificate-send-form--compact,.krb-dashboard-invoice-form{grid-template-columns:1fr 1fr;}
}
@media(max-width:760px){
  .krb-admin-filter--dashboard form{grid-template-columns:1fr !important;}
  .krb-inspections-table{display:block;overflow-x:auto;white-space:nowrap;}
  .krb-inspection-detail-row>td{white-space:normal;}
  .krb-certificate-send-form--compact,.krb-dashboard-invoice-form{grid-template-columns:1fr !important;}
}


/* v3.0.66 - strak regeloverzicht en dashboard-detail zonder overflow */
.krb-inspections-dashboard{
  max-width:100% !important;
  overflow-x:hidden !important;
}
.krb-admin-filter--dashboard{
  max-width:100% !important;
  overflow:hidden !important;
}
.krb-admin-filter--dashboard form{
  display:grid !important;
  grid-template-columns:minmax(240px,1.7fr) repeat(5,minmax(130px,1fr)) auto auto !important;
  gap:8px !important;
  align-items:center !important;
}
.krb-admin-filter--dashboard input,
.krb-admin-filter--dashboard select,
.krb-admin-filter--dashboard .button{
  width:100% !important;
  max-width:100% !important;
  min-height:34px !important;
  height:34px !important;
  box-sizing:border-box !important;
}
.krb-admin-filter--dashboard .button{
  width:auto !important;
  padding:4px 12px !important;
  line-height:24px !important;
}

.krb-inspections-table{
  width:100% !important;
  table-layout:fixed !important;
  border-collapse:collapse !important;
}
.krb-inspections-table th,
.krb-inspections-table td{
  padding:10px 9px !important;
  vertical-align:top !important;
  overflow-wrap:anywhere !important;
  word-break:normal !important;
}
.krb-inspections-table th:nth-child(1),.krb-inspections-table td:nth-child(1){width:34px !important;}
.krb-inspections-table th:nth-child(2),.krb-inspections-table td:nth-child(2){width:52px !important;}
.krb-inspections-table th:nth-child(3),.krb-inspections-table td:nth-child(3){width:118px !important;}
.krb-inspections-table th:nth-child(4),.krb-inspections-table td:nth-child(4){width:160px !important;}
.krb-inspections-table th:nth-child(5),.krb-inspections-table td:nth-child(5){width:150px !important;}
.krb-inspections-table th:nth-child(6),.krb-inspections-table td:nth-child(6){width:105px !important;}
.krb-inspections-table th:nth-child(7),.krb-inspections-table td:nth-child(7){width:112px !important;}
.krb-inspections-table th:nth-child(8),.krb-inspections-table td:nth-child(8){width:150px !important;}
.krb-inspections-table th:nth-child(9),.krb-inspections-table td:nth-child(9){width:100px !important;}
.krb-inspections-table th:nth-child(10),.krb-inspections-table td:nth-child(10){width:260px !important;}
.krb-inspections-table th:nth-child(11),.krb-inspections-table td:nth-child(11){width:128px !important;}

.krb-dashboard-docs,
.krb-dashboard-docs .krb-scope-file-links{
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:wrap !important;
  gap:5px !important;
  margin:0 !important;
  align-items:center !important;
}
.krb-dashboard-docs .button,
.krb-inspections-table td:nth-child(11) .button{
  min-height:30px !important;
  height:30px !important;
  padding:3px 9px !important;
  font-size:12px !important;
  line-height:22px !important;
  margin:0 0 5px 0 !important;
  white-space:nowrap !important;
}

.krb-inspection-detail-row > td{
  padding:12px !important;
  background:#f8fafc !important;
  overflow:visible !important;
}
.krb-row-detail-grid{
  display:grid !important;
  grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr) !important;
  gap:12px !important;
  align-items:start !important;
  width:100% !important;
  max-width:100% !important;
  box-sizing:border-box !important;
}
.krb-row-detail-card{
  min-width:0 !important;
  max-width:100% !important;
  overflow:hidden !important;
  padding:12px !important;
  border-radius:10px !important;
}
.krb-row-detail-card h3{
  margin:0 0 8px !important;
  font-size:15px !important;
  line-height:1.2 !important;
}
.krb-row-detail-card small{
  font-size:12px !important;
  line-height:1.35 !important;
}

.krb-certificate-send-form--compact{
  display:grid !important;
  grid-template-columns:minmax(115px,.7fr) minmax(115px,.7fr) minmax(170px,1fr) minmax(150px,auto) !important;
  gap:8px !important;
  align-items:end !important;
  width:100% !important;
  max-width:100% !important;
}
.krb-certificate-send-form--compact label,
.krb-dashboard-invoice-form label{
  min-width:0 !important;
  max-width:100% !important;
}
.krb-certificate-send-form--compact label span,
.krb-dashboard-invoice-form label span{
  display:block !important;
  margin:0 0 4px !important;
  color:#64748b !important;
  font-size:12px !important;
  font-weight:700 !important;
  line-height:1.15 !important;
}
.krb-certificate-send-form--compact input[type="date"],
.krb-certificate-send-form--compact select,
.krb-dashboard-invoice-form input[type="text"]{
  width:100% !important;
  min-width:0 !important;
  height:34px !important;
  min-height:34px !important;
  padding:5px 8px !important;
  font-size:13px !important;
  line-height:1.2 !important;
  box-sizing:border-box !important;
}
.krb-certificate-send-form--compact .button-primary{
  min-height:34px !important;
  height:34px !important;
  padding:5px 11px !important;
  font-size:13px !important;
  line-height:22px !important;
  white-space:nowrap !important;
}

/* Factuurkaart: twee nette kolommen, knop nooit meer buiten beeld. */
.krb-dashboard-invoice-form{
  display:grid !important;
  grid-template-columns:minmax(190px,.85fr) minmax(160px,1fr) !important;
  grid-template-areas:
    "check number"
    "pdf pdf"
    "download save" !important;
  gap:8px 10px !important;
  align-items:end !important;
  width:100% !important;
  max-width:100% !important;
}
.krb-dashboard-invoice-form .krb-mini-check{
  grid-area:check !important;
  display:flex !important;
  align-items:center !important;
  gap:7px !important;
  width:100% !important;
  max-width:100% !important;
  min-height:34px !important;
  height:34px !important;
  padding:6px 9px !important;
  margin:0 !important;
  box-sizing:border-box !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  border:1px solid #dbe3ef !important;
  border-radius:8px !important;
  background:#f8fafc !important;
  color:#142033 !important;
  font-size:13px !important;
  line-height:1.1 !important;
}
.krb-dashboard-invoice-form .krb-mini-check input[type="checkbox"]{
  width:16px !important;
  height:16px !important;
  min-width:16px !important;
  min-height:16px !important;
  margin:0 !important;
}
.krb-dashboard-invoice-form .krb-invoice-number-field{
  grid-area:number !important;
}
.krb-dashboard-invoice-form label:not(.krb-mini-check):has(input[type="file"]){
  grid-area:pdf !important;
}
.krb-dashboard-invoice-form input[type="file"]{
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  font-size:12px !important;
  line-height:1.2 !important;
  box-sizing:border-box !important;
}
.krb-dashboard-invoice-form a.button{
  grid-area:download !important;
  justify-self:start !important;
}
.krb-dashboard-invoice-form button.button{
  grid-area:save !important;
  justify-self:end !important;
  min-height:34px !important;
  height:34px !important;
  padding:5px 11px !important;
  font-size:13px !important;
  line-height:22px !important;
  white-space:nowrap !important;
}
.krb-dashboard-invoice-form .krb-invoice-number-field.krb-is-hidden{
  display:none !important;
}
.krb-dashboard-invoice-form .krb-invoice-number-field:not(.krb-is-hidden){
  display:block !important;
}

@media(max-width:1500px){
  .krb-admin-filter--dashboard form{
    grid-template-columns:minmax(220px,1fr) repeat(3,minmax(130px,1fr)) auto auto !important;
  }
  .krb-row-detail-grid{
    grid-template-columns:1fr !important;
  }
  .krb-certificate-send-form--compact{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  .krb-certificate-send-form--compact .button-primary{
    justify-self:start !important;
  }
}
@media(max-width:1050px){
  .krb-inspections-dashboard{
    overflow-x:auto !important;
  }
  .krb-inspections-table{
    min-width:1180px !important;
  }
}
@media(max-width:760px){
  .krb-admin-filter--dashboard form,
  .krb-certificate-send-form--compact,
  .krb-dashboard-invoice-form{
    grid-template-columns:1fr !important;
  }
  .krb-dashboard-invoice-form{
    grid-template-areas:"check" "number" "pdf" "download" "save" !important;
  }
  .krb-dashboard-invoice-form button.button{
    justify-self:start !important;
  }
}


/* v3.0.68 - dashboard-detail strakker en zonder overlap */
.krb-inspections-dashboard{
  overflow-x:auto !important;
}

.krb-admin-filter--dashboard form{
  display:grid !important;
  grid-template-columns:minmax(260px,2fr) repeat(5,minmax(145px,1fr)) auto auto !important;
  gap:8px !important;
  align-items:center !important;
}
.krb-admin-filter--dashboard input,
.krb-admin-filter--dashboard select{
  width:100% !important;
  max-width:100% !important;
  height:34px !important;
  min-height:34px !important;
  font-size:13px !important;
  box-sizing:border-box !important;
}
.krb-admin-filter--dashboard .button{
  height:34px !important;
  min-height:34px !important;
  padding:4px 12px !important;
  font-size:13px !important;
  line-height:24px !important;
  white-space:nowrap !important;
}

.krb-inspections-table{
  min-width:1280px !important;
  table-layout:fixed !important;
}
.krb-inspections-table th,
.krb-inspections-table td{
  box-sizing:border-box !important;
}
.krb-inspections-table th:nth-child(10),
.krb-inspections-table td:nth-child(10){
  width:300px !important;
}
.krb-dashboard-docs,
.krb-dashboard-docs .krb-scope-file-links{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:6px !important;
}
.krb-dashboard-docs .button{
  min-height:28px !important;
  height:28px !important;
  padding:2px 8px !important;
  font-size:12px !important;
  line-height:22px !important;
}

/* Detailrij: kaarten onder elkaar. Dit voorkomt dat mail- en factuurblokken elkaar klem zetten. */
.krb-inspection-detail-row > td{
  padding:14px !important;
  background:#f8fafc !important;
  overflow:visible !important;
}
.krb-row-detail-grid{
  display:grid !important;
  grid-template-columns:1fr !important;
  gap:12px !important;
  width:100% !important;
  max-width:100% !important;
}
.krb-row-detail-card{
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  overflow:visible !important;
  box-sizing:border-box !important;
  padding:14px !important;
  border:1px solid #dbe3ef !important;
  border-radius:12px !important;
  background:#ffffff !important;
}
.krb-row-detail-card h3{
  margin:0 0 10px !important;
  font-size:15px !important;
  line-height:1.2 !important;
}

/* Documenten mailen: één rustige compacte regel op desktop, stapelt pas wanneer nodig. */
.krb-certificate-send-form--compact{
  display:grid !important;
  grid-template-columns:minmax(135px,.75fr) minmax(135px,.75fr) minmax(220px,1.15fr) auto !important;
  gap:10px !important;
  align-items:end !important;
  width:100% !important;
  max-width:100% !important;
}
.krb-certificate-send-form--compact label{
  min-width:0 !important;
  max-width:100% !important;
}
.krb-certificate-send-form--compact label span,
.krb-dashboard-invoice-form label span{
  display:block !important;
  margin:0 0 4px !important;
  color:#64748b !important;
  font-size:12px !important;
  font-weight:700 !important;
  line-height:1.15 !important;
}
.krb-certificate-send-form--compact input[type="date"],
.krb-certificate-send-form--compact select{
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  height:34px !important;
  min-height:34px !important;
  padding:5px 8px !important;
  font-size:13px !important;
  box-sizing:border-box !important;
}
.krb-certificate-send-form--compact .button-primary{
  justify-self:start !important;
  width:auto !important;
  min-width:150px !important;
  height:34px !important;
  min-height:34px !important;
  padding:5px 12px !important;
  font-size:13px !important;
  line-height:22px !important;
  white-space:nowrap !important;
}

/* Factuurkaart: vaste nette rijen zonder knellende file-upload of knop. */
.krb-dashboard-invoice-form{
  display:grid !important;
  grid-template-columns:minmax(230px,.85fr) minmax(190px,.75fr) minmax(260px,1.25fr) auto auto !important;
  grid-template-areas:"check number upload download save" !important;
  gap:10px !important;
  align-items:end !important;
  width:100% !important;
  max-width:100% !important;
  overflow:visible !important;
}
.krb-dashboard-invoice-form .krb-mini-check{
  grid-area:check !important;
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
  width:100% !important;
  max-width:100% !important;
  height:34px !important;
  min-height:34px !important;
  padding:5px 10px !important;
  margin:0 !important;
  box-sizing:border-box !important;
  border:1px solid #dbe3ef !important;
  border-radius:8px !important;
  background:#f8fafc !important;
  color:#142033 !important;
  font-size:13px !important;
  line-height:1.1 !important;
  white-space:nowrap !important;
}
.krb-dashboard-invoice-form .krb-mini-check input[type="checkbox"]{
  width:16px !important;
  min-width:16px !important;
  height:16px !important;
  min-height:16px !important;
  margin:0 !important;
}
.krb-dashboard-invoice-form .krb-invoice-number-field{
  grid-area:number !important;
}
.krb-dashboard-invoice-form .krb-invoice-number-field.krb-is-hidden{
  display:none !important;
}
.krb-dashboard-invoice-form .krb-invoice-number-field:not(.krb-is-hidden){
  display:block !important;
}
.krb-dashboard-invoice-form .krb-dashboard-invoice-upload{
  grid-area:upload !important;
}
.krb-dashboard-invoice-form input[type="text"],
.krb-dashboard-invoice-form input[type="file"]{
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  height:34px !important;
  min-height:34px !important;
  padding:5px 8px !important;
  font-size:13px !important;
  line-height:1.2 !important;
  box-sizing:border-box !important;
}
.krb-dashboard-invoice-form input[type="file"]{
  padding:4px 6px !important;
}
.krb-dashboard-invoice-form a.button{
  grid-area:download !important;
  justify-self:start !important;
}
.krb-dashboard-invoice-form button.button{
  grid-area:save !important;
  justify-self:start !important;
}
.krb-dashboard-invoice-form a.button,
.krb-dashboard-invoice-form button.button{
  width:auto !important;
  min-width:86px !important;
  height:34px !important;
  min-height:34px !important;
  padding:5px 11px !important;
  font-size:13px !important;
  line-height:22px !important;
  white-space:nowrap !important;
  box-sizing:border-box !important;
}

@media(max-width:1500px){
  .krb-admin-filter--dashboard form{
    grid-template-columns:minmax(230px,1.4fr) repeat(3,minmax(145px,1fr)) auto auto !important;
  }
  .krb-dashboard-invoice-form{
    grid-template-columns:minmax(230px,1fr) minmax(190px,1fr) minmax(260px,1.2fr) auto !important;
    grid-template-areas:
      "check number upload upload"
      "download save save save" !important;
  }
}
@media(max-width:1050px){
  .krb-inspections-table{
    min-width:1180px !important;
  }
  .krb-certificate-send-form--compact,
  .krb-dashboard-invoice-form{
    grid-template-columns:1fr 1fr !important;
  }
  .krb-dashboard-invoice-form{
    grid-template-areas:
      "check number"
      "upload upload"
      "download save" !important;
  }
}
@media(max-width:760px){
  .krb-admin-filter--dashboard form,
  .krb-certificate-send-form--compact,
  .krb-dashboard-invoice-form{
    grid-template-columns:1fr !important;
  }
  .krb-dashboard-invoice-form{
    grid-template-areas:
      "check"
      "number"
      "upload"
      "download"
      "save" !important;
  }
  .krb-certificate-send-form--compact .button-primary,
  .krb-dashboard-invoice-form a.button,
  .krb-dashboard-invoice-form button.button{
    justify-self:start !important;
  }
}


/* v3.0.70 - factuurblok in uitgeklapte klantregel strak en compact */
.krb-row-detail-card--invoice{
  padding:14px 16px !important;
}
.krb-row-detail-card--invoice h3{
  margin:0 0 12px !important;
  font-size:16px !important;
}
.krb-dashboard-invoice-form--clean{
  display:grid !important;
  grid-template-columns:minmax(230px,260px) minmax(190px,230px) minmax(260px,360px) auto !important;
  grid-template-areas:none !important;
  gap:10px 12px !important;
  align-items:end !important;
  justify-content:start !important;
  width:100% !important;
  max-width:980px !important;
  overflow:visible !important;
}
.krb-dashboard-invoice-form--clean > input[type="hidden"]{
  display:none !important;
}
.krb-dashboard-invoice-form--clean .krb-mini-check,
.krb-dashboard-invoice-form--clean .krb-invoice-number-field,
.krb-dashboard-invoice-form--clean .krb-dashboard-invoice-upload,
.krb-dashboard-invoice-form--clean .krb-invoice-actions{
  grid-area:auto !important;
  min-width:0 !important;
  max-width:100% !important;
  box-sizing:border-box !important;
}
.krb-dashboard-invoice-form--clean .krb-mini-check{
  display:flex !important;
  align-items:center !important;
  gap:8px !important;
  width:100% !important;
  height:38px !important;
  min-height:38px !important;
  padding:7px 10px !important;
  margin:0 !important;
  border:1px solid #dbe3ef !important;
  border-radius:8px !important;
  background:#f8fafc !important;
  color:#142033 !important;
  font-size:13px !important;
  line-height:1.2 !important;
  white-space:nowrap !important;
}
.krb-dashboard-invoice-form--clean .krb-mini-check span{
  display:inline !important;
  margin:0 !important;
  color:#142033 !important;
  font-size:13px !important;
  font-weight:600 !important;
  line-height:1.2 !important;
}
.krb-dashboard-invoice-form--clean .krb-mini-check input[type="checkbox"]{
  width:16px !important;
  min-width:16px !important;
  height:16px !important;
  min-height:16px !important;
  margin:0 !important;
}
.krb-dashboard-invoice-form--clean .krb-invoice-number-field.krb-is-hidden{
  display:none !important;
}
.krb-dashboard-invoice-form--clean .krb-invoice-number-field:not(.krb-is-hidden){
  display:block !important;
}
.krb-dashboard-invoice-form--clean label span:not(.screen-reader-text){
  display:block !important;
  margin:0 0 4px !important;
  color:#64748b !important;
  font-size:12px !important;
  font-weight:700 !important;
  line-height:1.15 !important;
}
.krb-dashboard-invoice-form--clean input[type="text"],
.krb-dashboard-invoice-form--clean input[type="file"]{
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  height:38px !important;
  min-height:38px !important;
  padding:6px 9px !important;
  font-size:13px !important;
  line-height:1.2 !important;
  box-sizing:border-box !important;
}
.krb-dashboard-invoice-form--clean input[type="file"]{
  padding:5px 8px !important;
  background:#fff !important;
}
.krb-dashboard-invoice-form--clean .krb-invoice-actions{
  display:flex !important;
  gap:8px !important;
  align-items:flex-end !important;
  justify-content:flex-start !important;
  height:38px !important;
}
.krb-dashboard-invoice-form--clean .krb-invoice-actions .button{
  grid-area:auto !important;
  width:auto !important;
  min-width:84px !important;
  height:38px !important;
  min-height:38px !important;
  padding:6px 12px !important;
  font-size:13px !important;
  line-height:24px !important;
  white-space:nowrap !important;
  box-sizing:border-box !important;
}
@media(max-width:1180px){
  .krb-dashboard-invoice-form--clean{
    grid-template-columns:minmax(220px,260px) minmax(190px,1fr) !important;
    max-width:720px !important;
  }
  .krb-dashboard-invoice-form--clean .krb-dashboard-invoice-upload{
    grid-column:1 / 2 !important;
  }
  .krb-dashboard-invoice-form--clean .krb-invoice-actions{
    grid-column:2 / 3 !important;
  }
}
@media(max-width:760px){
  .krb-dashboard-invoice-form--clean{
    grid-template-columns:1fr !important;
    max-width:100% !important;
  }
  .krb-dashboard-invoice-form--clean .krb-dashboard-invoice-upload,
  .krb-dashboard-invoice-form--clean .krb-invoice-actions{
    grid-column:auto !important;
  }
  .krb-dashboard-invoice-form--clean .krb-invoice-actions{
    height:auto !important;
    flex-wrap:wrap !important;
  }
}


/* v3.0.71 - VISMA upload links uitlijnen in factuurblok */
.krb-row-detail-card--invoice{
  overflow:hidden !important;
}
.krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean{
  display:grid !important;
  grid-template-columns:minmax(230px,280px) minmax(200px,250px) auto minmax(0,1fr) !important;
  grid-template-areas:
    "check number actions spacer"
    "upload upload upload spacer" !important;
  gap:10px 12px !important;
  align-items:end !important;
  justify-content:start !important;
  width:100% !important;
  max-width:100% !important;
}
.krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean .krb-mini-check{
  grid-area:check !important;
}
.krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean .krb-invoice-number-field{
  grid-area:number !important;
}
.krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean .krb-dashboard-invoice-upload{
  grid-area:upload !important;
  justify-self:start !important;
  align-self:start !important;
  width:100% !important;
  max-width:560px !important;
  margin:0 !important;
}
.krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean .krb-invoice-actions{
  grid-area:actions !important;
  justify-self:start !important;
  align-self:end !important;
  margin:0 !important;
}
.krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean .krb-dashboard-invoice-upload span{
  text-align:left !important;
}
.krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean .krb-dashboard-invoice-upload input[type="file"]{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
}
@media(max-width:900px){
  .krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean{
    grid-template-columns:1fr !important;
    grid-template-areas:
      "check"
      "number"
      "actions"
      "upload" !important;
  }
  .krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean .krb-dashboard-invoice-upload{
    max-width:100% !important;
  }
}


/* v3.0.72 - factuurblok definitief links uitgelijnd en compact */
.krb-row-detail-card--invoice{
  padding:14px 16px !important;
  overflow:visible !important;
}
.krb-row-detail-card--invoice h3{
  margin:0 0 12px !important;
}
.krb-row-detail-card--invoice .krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean{
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:wrap !important;
  align-items:flex-end !important;
  justify-content:flex-start !important;
  gap:10px 12px !important;
  width:100% !important;
  max-width:100% !important;
  margin:0 !important;
  grid-template-columns:none !important;
  grid-template-areas:none !important;
}
.krb-row-detail-card--invoice .krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean > input[type="hidden"]{
  display:none !important;
}
.krb-row-detail-card--invoice .krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean .krb-mini-check{
  order:1 !important;
  flex:0 0 270px !important;
  grid-area:auto !important;
  align-self:flex-end !important;
  width:270px !important;
  max-width:270px !important;
  height:38px !important;
  min-height:38px !important;
  margin:0 !important;
  box-sizing:border-box !important;
}
.krb-row-detail-card--invoice .krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean .krb-invoice-number-field{
  order:2 !important;
  flex:0 1 250px !important;
  grid-area:auto !important;
  width:250px !important;
  max-width:250px !important;
  min-width:200px !important;
  margin:0 !important;
  box-sizing:border-box !important;
}
.krb-row-detail-card--invoice .krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean .krb-invoice-number-field.krb-is-hidden{
  display:none !important;
}
.krb-row-detail-card--invoice .krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean .krb-invoice-number-field:not(.krb-is-hidden){
  display:block !important;
}
.krb-row-detail-card--invoice .krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean label.krb-dashboard-invoice-upload,
.krb-row-detail-card--invoice .krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean label.krb-dashboard-invoice-upload:not(.krb-mini-check):has(input[type="file"]){
  order:3 !important;
  flex:1 1 430px !important;
  grid-area:auto !important;
  justify-self:start !important;
  align-self:flex-end !important;
  width:auto !important;
  max-width:560px !important;
  min-width:300px !important;
  margin:0 !important;
  box-sizing:border-box !important;
}
.krb-row-detail-card--invoice .krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean .krb-invoice-actions{
  order:4 !important;
  flex:0 0 auto !important;
  grid-area:auto !important;
  display:flex !important;
  align-items:flex-end !important;
  justify-content:flex-start !important;
  gap:8px !important;
  height:auto !important;
  min-height:38px !important;
  margin:0 !important;
  box-sizing:border-box !important;
}
.krb-row-detail-card--invoice .krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean label span:not(.screen-reader-text){
  display:block !important;
  margin:0 0 4px !important;
  color:#64748b !important;
  font-size:12px !important;
  font-weight:700 !important;
  line-height:1.15 !important;
  text-align:left !important;
}
.krb-row-detail-card--invoice .krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean .krb-mini-check span{
  display:inline !important;
  margin:0 !important;
  color:#142033 !important;
  font-size:13px !important;
  font-weight:600 !important;
  line-height:1.2 !important;
  white-space:nowrap !important;
}
.krb-row-detail-card--invoice .krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean input[type="text"]{
  width:100% !important;
  height:38px !important;
  min-height:38px !important;
  padding:6px 9px !important;
  font-size:13px !important;
  line-height:1.2 !important;
  box-sizing:border-box !important;
}
.krb-row-detail-card--invoice .krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean input[type="file"]{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  height:38px !important;
  min-height:38px !important;
  padding:5px 8px !important;
  font-size:13px !important;
  line-height:1.2 !important;
  box-sizing:border-box !important;
  background:#fff !important;
}
.krb-row-detail-card--invoice .krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean .krb-invoice-actions .button{
  width:auto !important;
  min-width:86px !important;
  height:38px !important;
  min-height:38px !important;
  padding:6px 12px !important;
  font-size:13px !important;
  line-height:24px !important;
  white-space:nowrap !important;
  box-sizing:border-box !important;
}
@media(max-width:980px){
  .krb-row-detail-card--invoice .krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean .krb-mini-check,
  .krb-row-detail-card--invoice .krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean .krb-invoice-number-field,
  .krb-row-detail-card--invoice .krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean label.krb-dashboard-invoice-upload,
  .krb-row-detail-card--invoice .krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean label.krb-dashboard-invoice-upload:not(.krb-mini-check):has(input[type="file"]){
    flex:1 1 100% !important;
    width:100% !important;
    max-width:100% !important;
    min-width:0 !important;
  }
  .krb-row-detail-card--invoice .krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean .krb-invoice-actions{
    flex:0 0 auto !important;
  }
}

/* v3.0.73 - documenten alleen in uitgeklapte detailweergave en compactere actiekolom */
.krb-docs-collapsed-note{
  display:inline-block;
  color:#64748b;
  font-size:12px;
  font-weight:600;
  white-space:nowrap;
}
.krb-detail-doc-links,
.krb-detail-doc-links .krb-scope-file-links{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
  align-items:center !important;
  margin:0 0 10px !important;
}
.krb-detail-doc-links .button{
  margin:0 !important;
}
.krb-row-actions{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:8px !important;
  align-items:flex-start !important;
}
.krb-row-actions .button{
  margin:0 !important;
  white-space:nowrap !important;
}
@media(min-width:1180px){
  .krb-row-actions{
    min-width:220px;
  }
}

/* v3.0.74 - compactere dashboardregel, documenten-selectie bij losse PDF's, geldigheid op eigen regel */
.krb-inspections-table th:nth-child(10),
.krb-inspections-table td:nth-child(10){
  width:110px !important;
  white-space:nowrap !important;
}
.krb-inspections-table th:nth-child(11),
.krb-inspections-table td:nth-child(11){
  width:200px !important;
}
.krb-row-actions{
  display:grid !important;
  grid-template-columns:repeat(2,max-content) !important;
  gap:6px !important;
  justify-content:flex-start !important;
  align-content:start !important;
  min-width:168px !important;
}
.krb-row-actions .button,
.krb-row-actions .button-link-delete{
  margin:0 !important;
}
.krb-detail-doc-links,
.krb-detail-doc-links .krb-scope-file-links{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:10px !important;
  align-items:center !important;
}
.krb-documents-mail-inline,
.krb-certificate-dates-form{
  display:grid !important;
  grid-template-columns:minmax(260px, 420px) auto !important;
  gap:14px !important;
  align-items:end !important;
  margin-top:14px !important;
}
.krb-documents-mail-inline .krb-doc-mail-choice,
.krb-certificate-dates-form label{
  display:flex !important;
  flex-direction:column !important;
  gap:6px !important;
  margin:0 !important;
}
.krb-certificate-dates-form{
  grid-template-columns:minmax(180px, 240px) minmax(180px, 240px) auto !important;
  padding-top:14px !important;
  border-top:1px solid #dbe3ef !important;
}
.krb-documents-mail-inline select,
.krb-certificate-dates-form input[type="date"]{
  width:100% !important;
  min-height:42px !important;
}
.krb-documents-mail-inline .button,
.krb-certificate-dates-form .button{
  min-height:42px !important;
  align-self:end !important;
}
.krb-row-detail-card--invoice .krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean{
  display:grid !important;
  grid-template-columns:minmax(240px, 320px) minmax(240px, 320px) minmax(260px, 1fr) auto !important;
  gap:16px !important;
  align-items:end !important;
}
.krb-row-detail-card--invoice .krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean .krb-mini-check,
.krb-row-detail-card--invoice .krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean .krb-invoice-number-field,
.krb-row-detail-card--invoice .krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean label.krb-dashboard-invoice-upload,
.krb-row-detail-card--invoice .krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean .krb-invoice-actions{
  width:100% !important;
  min-width:0 !important;
  margin:0 !important;
}
.krb-row-detail-card--invoice .krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean .krb-dashboard-invoice-upload{
  justify-self:start !important;
  text-align:left !important;
}
.krb-row-detail-card--invoice .krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean .krb-invoice-actions{
  justify-self:start !important;
  justify-content:flex-start !important;
}
.krb-row-detail-card--invoice .krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean input[type="file"]{
  width:100% !important;
}
@media (max-width: 1300px){
  .krb-row-actions{
    grid-template-columns:1fr !important;
  }
}
@media (max-width: 960px){
  .krb-documents-mail-inline,
  .krb-certificate-dates-form,
  .krb-row-detail-card--invoice .krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean{
    grid-template-columns:1fr !important;
  }
  .krb-row-actions{
    min-width:0 !important;
  }
}

/* v3.0.75 - normale knopbreedte in document- en geldigheidsblok */
.krb-documents-mail-inline,
.krb-certificate-dates-form{
  justify-content:start !important;
  justify-items:start !important;
}
.krb-documents-mail-inline{
  grid-template-columns:minmax(260px,420px) max-content !important;
}
.krb-certificate-dates-form{
  grid-template-columns:minmax(180px,240px) minmax(180px,240px) max-content !important;
}
.krb-documents-mail-inline .button,
.krb-documents-mail-inline .button-primary,
.krb-certificate-dates-form .button,
.krb-certificate-dates-form .button-primary{
  width:auto !important;
  min-width:0 !important;
  max-width:max-content !important;
  justify-self:start !important;
  align-self:end !important;
  padding:6px 14px !important;
  white-space:nowrap !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
}
.krb-documents-mail-inline .button-primary{
  min-width:150px !important;
}
.krb-certificate-dates-form .button{
  min-width:90px !important;
}
@media(max-width:960px){
  .krb-documents-mail-inline,
  .krb-certificate-dates-form{
    grid-template-columns:1fr !important;
    justify-items:stretch !important;
  }
  .krb-documents-mail-inline .button,
  .krb-certificate-dates-form .button{
    width:auto !important;
    justify-self:start !important;
  }
}

/* v3.0.77 - compacte knoppen naast bijbehorende velden */
.krb-row-detail-card .button,
.krb-row-detail-card .button-primary{
  width:auto !important;
  min-width:132px !important;
  max-width:max-content !important;
  height:40px !important;
  min-height:40px !important;
  padding:8px 18px !important;
  line-height:22px !important;
  text-align:center !important;
  white-space:nowrap !important;
  justify-self:start !important;
  align-self:end !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  box-sizing:border-box !important;
}

.krb-documents-mail-inline{
  display:grid !important;
  grid-template-columns:320px auto !important;
  justify-content:start !important;
  align-items:end !important;
  gap:14px !important;
  width:auto !important;
  max-width:100% !important;
  margin-top:12px !important;
}
.krb-documents-mail-inline .krb-doc-mail-choice{
  width:320px !important;
  max-width:320px !important;
  margin:0 !important;
}
.krb-documents-mail-inline select{
  width:100% !important;
  height:40px !important;
  min-height:40px !important;
}
.krb-documents-mail-inline .button{
  margin:0 !important;
}

.krb-certificate-dates-form{
  display:grid !important;
  grid-template-columns:260px 260px auto !important;
  justify-content:start !important;
  align-items:end !important;
  gap:14px !important;
  width:auto !important;
  max-width:100% !important;
  margin-top:16px !important;
  padding-top:14px !important;
  border-top:1px solid #dbe3ef !important;
}
.krb-certificate-dates-form label{
  width:260px !important;
  max-width:260px !important;
  margin:0 !important;
}
.krb-certificate-dates-form input[type="date"]{
  width:100% !important;
  height:40px !important;
  min-height:40px !important;
}
.krb-certificate-dates-form .button{
  margin:0 !important;
}

.krb-row-detail-card--invoice .krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean{
  display:grid !important;
  grid-template-columns:290px 280px 420px auto !important;
  justify-content:start !important;
  align-items:end !important;
  gap:16px !important;
  width:auto !important;
  max-width:100% !important;
}
.krb-row-detail-card--invoice .krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean .krb-mini-check{
  width:290px !important;
  max-width:290px !important;
  height:40px !important;
  min-height:40px !important;
  margin:0 !important;
  box-sizing:border-box !important;
}
.krb-row-detail-card--invoice .krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean .krb-invoice-number-field{
  width:280px !important;
  max-width:280px !important;
  margin:0 !important;
}
.krb-row-detail-card--invoice .krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean .krb-dashboard-invoice-upload{
  width:420px !important;
  max-width:420px !important;
  margin:0 !important;
  justify-self:start !important;
  text-align:left !important;
}
.krb-row-detail-card--invoice .krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean input[type="text"]{
  width:100% !important;
  height:40px !important;
  min-height:40px !important;
}
.krb-row-detail-card--invoice .krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean input[type="file"]{
  width:100% !important;
  max-width:100% !important;
  height:40px !important;
  min-height:40px !important;
}
.krb-row-detail-card--invoice .krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean .krb-invoice-actions{
  width:auto !important;
  max-width:max-content !important;
  justify-self:start !important;
  justify-content:flex-start !important;
  margin:0 !important;
}
.krb-row-detail-card--invoice .krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean .krb-invoice-actions .button{
  margin:0 !important;
}

@media (max-width: 1180px){
  .krb-documents-mail-inline,
  .krb-certificate-dates-form,
  .krb-row-detail-card--invoice .krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean{
    grid-template-columns:1fr !important;
    width:100% !important;
  }
  .krb-documents-mail-inline .krb-doc-mail-choice,
  .krb-certificate-dates-form label,
  .krb-row-detail-card--invoice .krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean .krb-mini-check,
  .krb-row-detail-card--invoice .krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean .krb-invoice-number-field,
  .krb-row-detail-card--invoice .krb-dashboard-invoice-form.krb-dashboard-invoice-form--clean .krb-dashboard-invoice-upload{
    width:100% !important;
    max-width:100% !important;
  }
  .krb-row-detail-card .button,
  .krb-row-detail-card .button-primary{
    max-width:max-content !important;
  }
}


/* v3.0.82 - vaste PDF-bijlagen in instellingen */
.krb-supplemental-pdf-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(260px,1fr));
  gap:14px;
}
.krb-supplemental-pdf-field{
  background:#f8fafc;
  border:1px solid #dbe3ef;
  border-radius:12px;
  padding:14px;
}
.krb-supplemental-pdf-field input[type="file"]{
  margin-top:8px;
}
.krb-supplemental-pdf-field small{
  display:block;
  margin-top:8px;
  color:#64748b;
}
@media(max-width:900px){
  .krb-supplemental-pdf-grid{
    grid-template-columns:1fr;
  }
}

/* v3.0.90 - tussentijds opslaan */
.krb-autosave-status{
  margin-top:12px;
  padding:10px 12px;
  border:1px solid var(--krb-border,#dbe3ef);
  border-radius:10px;
  background:rgba(255,255,255,.82);
  color:var(--krb-muted,#64748b);
  font-size:13px;
  line-height:1.35;
}
.krb-autosave-status.is-ok{
  border-color:rgba(34,197,94,.35);
  background:rgba(240,253,244,.9);
  color:#166534;
}
.krb-autosave-status.is-warning{
  border-color:rgba(245,158,11,.4);
  background:rgba(255,251,235,.95);
  color:#92400e;
}
.krb-autosave-status.is-saving{
  border-color:rgba(47,128,237,.35);
  background:rgba(239,246,255,.95);
  color:#1d4ed8;
}
