:root{
  --navy:#0b1630;
  --navy2:#132548;
  --gold:#c69a42;
  --gold2:#ad8234;
  --bg:#f4f6f9;
  --text:#142033;
  --muted:#667085;
  --white:#fff;
  --danger:#b42318;
  --green:#067647;
  --line:#e2e7ee;
}
*{box-sizing:border-box}
body{margin:0;font-family:Segoe UI,Arial,sans-serif;color:var(--text);background:var(--bg)}
a{color:#244a80}
.hidden{display:none!important}
.small{font-size:14px}

.auth-page{min-height:100vh;display:grid;place-items:center;padding:24px;background:linear-gradient(145deg,#eef1f5,#dfe5ec)}
.auth-card{width:min(430px,100%);background:white;border-radius:18px;padding:34px;box-shadow:0 18px 50px rgba(20,32,51,.16)}
.brand-logo{display:block;max-width:290px;width:78%;height:auto;margin:0 auto 24px}
h1{margin:0 0 8px}
h2{margin:0}
.muted{color:var(--muted)}
label{display:block;font-weight:600;margin:18px 0 0}
input{width:100%;margin-top:7px;padding:13px 14px;border:1px solid #cfd6df;border-radius:10px;font-size:16px;background:white}
button{border:0;border-radius:10px;padding:13px 16px;background:var(--navy);color:white;font-size:16px;font-weight:700;cursor:pointer}
button:hover{background:var(--navy2)}
.auth-card button{width:100%;margin-top:22px}
.small-link{display:block;text-align:center;margin-top:18px;color:#244a80}
.alert,.success{padding:11px 13px;border-radius:9px;margin:15px 0}
.alert{background:#fee4e2;color:var(--danger)}
.success{background:#dcfae6;color:var(--green)}

.topbar{
  min-height:76px;background:white;border-bottom:1px solid #e6e9ee;
  display:flex;align-items:center;justify-content:space-between;padding:10px 28px;gap:20px
}
.topbar img{height:52px;max-width:260px;object-fit:contain}
.top-actions{display:flex;gap:18px;align-items:center;flex-wrap:wrap}
.top-actions a{color:#244a80;text-decoration:none;font-weight:600}

.dashboard{max-width:1050px;margin:48px auto;padding:0 24px}
.panel{background:white;border:1px solid var(--line);border-radius:14px;padding:20px;margin-top:24px}
.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-top:28px}
.tile{
  display:flex;gap:18px;align-items:center;text-decoration:none;color:inherit;background:white;
  border:1px solid var(--line);border-radius:16px;padding:24px;box-shadow:0 8px 24px rgba(20,32,51,.06);
  transition:.15s ease
}
.tile:hover{border-color:#c8a45c;transform:translateY(-1px)}
.tile-icon{font-size:34px;min-width:42px;text-align:center}
.tile h2{margin:0 0 5px}
.tile p{margin:0;color:var(--muted)}

.manage{max-width:1100px}
.page-heading,.card-heading{display:flex;align-items:center;justify-content:space-between;gap:18px}
.admin-card{
  background:#fff;border:1px solid var(--line);border-radius:16px;padding:24px;margin-top:22px;
  box-shadow:0 8px 24px rgba(20,32,51,.04)
}
.gold-button{background:var(--gold);color:#fff}
.gold-button:hover{background:var(--gold2)}
.secondary-button{background:#eef2f6;color:#243348}
.secondary-button:hover{background:#dde4ec}
.danger-button{background:#b42318}
.danger-button:hover{background:#912018}
.compact{width:auto!important;margin:0!important;padding:10px 16px}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}
.form-grid .full{grid-column:1/-1}

.access-box{margin-top:22px;padding:18px;border:1px solid var(--line);border-radius:12px;background:#fafbfc}
.access-box h3{margin:0 0 10px}
.radio-line,.switch-line{
  display:flex;align-items:center;gap:10px;margin:10px 0;font-weight:500
}
.radio-line input,.switch-line input,.user-check input{width:auto;margin:0}
.user-picker{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px;
  margin-top:14px;padding-top:14px;border-top:1px solid var(--line)
}
.user-check{
  display:flex;align-items:center;gap:10px;margin:0;padding:11px 12px;border:1px solid var(--line);
  border-radius:10px;background:#fff;font-weight:500
}
.user-check span{display:flex;flex-direction:column;gap:2px}
.user-check small{font-weight:400;color:var(--muted)}
.form-actions{display:flex;gap:10px;margin-top:22px;flex-wrap:wrap}

.widget-list{display:flex;flex-direction:column;gap:10px;margin-top:16px}
.widget-row{
  width:100%;display:flex;align-items:center;gap:14px;text-align:left;background:#fff;color:var(--text);
  border:1px solid var(--line);padding:16px;border-radius:12px
}
.widget-row:hover{background:#fafbfc;border-color:#c8a45c}
.widget-row-icon{font-size:30px;min-width:42px;text-align:center}
.widget-row-main{flex:1;min-width:0}
.widget-row-title{font-weight:750;font-size:17px;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.widget-row-desc{color:var(--muted);font-weight:400;margin-top:3px}
.widget-row-meta{color:#475467;font-size:13px;font-weight:500;margin-top:7px}
.widget-row-arrow{font-size:28px;color:#98a2b3}
.badge{
  display:inline-block;background:#f4ead4;color:#775a1f;border-radius:999px;padding:3px 8px;
  font-size:11px;font-weight:700
}
.muted-badge{background:#eef2f6;color:#667085}

@media (max-width:700px){
  .topbar{align-items:flex-start;flex-direction:column;padding:14px 18px}
  .topbar img{height:46px}
  .dashboard{margin:30px auto;padding:0 16px}
  .page-heading,.card-heading{align-items:flex-start;flex-direction:column}
  .form-grid{grid-template-columns:1fr}
  .form-grid .full{grid-column:auto}
}


/* v3: groepen, externe links en icoonkiezer */
select{
  width:100%;margin-top:7px;padding:13px 14px;border:1px solid #cfd6df;
  border-radius:10px;font-size:16px;background:white;color:var(--text)
}
.tabs{display:flex;gap:8px;margin-top:24px;flex-wrap:wrap}
.tab{
  background:#eef2f6;color:#344054;padding:10px 16px;border-radius:999px;font-size:14px
}
.tab:hover{background:#e1e7ee}
.tab.active{background:var(--navy);color:#fff}
.tab-panel{margin-top:20px}
.section-head{
  display:flex;justify-content:space-between;align-items:center;gap:18px;margin-bottom:4px
}
.icon-line{display:flex;gap:8px;align-items:end}
.icon-line input{flex:1}
.icon-button{margin-top:7px!important;width:auto!important}
.icon-picker{
  grid-column:1/-1;display:flex;flex-wrap:wrap;gap:8px;padding:14px;margin-top:10px;
  background:#fafbfc;border:1px solid var(--line);border-radius:12px
}
.icon-choice{
  width:48px!important;height:44px;padding:0!important;margin:0!important;
  display:grid;place-items:center;background:#fff;color:#111;border:1px solid var(--line);
  font-size:24px;border-radius:10px
}
.icon-choice:hover{background:#f4ead4;border-color:#c69a42}
.blue-badge{background:#eaf2ff;color:#175cd3}
.static-row{cursor:default}
.static-row:hover{background:#fff;border-color:var(--line)}
@media (max-width:700px){
  .section-head{align-items:flex-start;flex-direction:column}
}


/* v5 - categorieën en eenvoudige tegelvolgorde */
.dashboard-sections{display:flex;flex-direction:column;gap:34px;margin-top:28px}
.dashboard-section{display:block}
.section-title{
  margin:0 0 14px;
  padding-bottom:9px;
  border-bottom:2px solid #e5d2a5;
  color:var(--navy);
  font-size:20px;
}
.dashboard-section .tiles{margin-top:0}
.widget-move{display:flex;flex-direction:column;gap:5px;flex:0 0 auto}
.move-button{
  width:36px!important;height:31px!important;padding:0!important;margin:0!important;
  border-radius:8px!important;background:#eef2f6!important;color:#344054!important;
  font-size:17px!important;line-height:1!important
}
.move-button:hover{background:#e2e8f0!important}


/* v5.1 - echte categorie-dropdown en beheerfilter */
.dashboard-filter{
  margin-top:22px;
  padding:18px;
  background:#fff;
  border:1px solid var(--line);
  border-radius:14px;
}
.filter-title{font-weight:750;margin-bottom:12px;color:var(--navy)}
.filter-controls{display:flex;align-items:end;gap:12px;flex-wrap:wrap}
.filter-controls label{margin:0;min-width:220px}
.filter-controls select{margin-top:6px}
#filterInfo{margin-top:10px}
@media (max-width:700px){
  .filter-controls{align-items:stretch;flex-direction:column}
  .filter-controls label{width:100%;min-width:0}
}


/* v5.2 - werkende volgordepijlen + datum/tijd + Roosendaal weer */
.clickable-row{cursor:pointer}
.dashboard-title-row{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:24px;
}
.dashboard-status{
  display:flex;
  align-items:stretch;
  gap:18px;
  padding:14px 17px;
  border:1px solid var(--line);
  border-radius:14px;
  background:#fff;
  box-shadow:0 6px 18px rgba(20,32,51,.04);
  min-width:410px;
}
.status-block{
  display:flex;
  flex-direction:column;
  gap:3px;
}
.status-label{
  color:var(--muted);
  font-size:12px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.status-block strong{font-size:15px;color:var(--navy)}
.status-block > span:last-child{font-size:13px;color:#475467}
.status-divider{width:1px;background:var(--line)}
.weather-block{min-width:165px}

@media (max-width:850px){
  .dashboard-title-row{flex-direction:column}
  .dashboard-status{width:100%;min-width:0}
}
@media (max-width:520px){
  .dashboard-status{flex-direction:column;gap:10px}
  .status-divider{height:1px;width:100%}
}


/* v5.3 - categorieën als complete blokken verplaatsen */
.category-order-list{
  display:flex;
  flex-direction:column;
  gap:8px;
  margin-top:16px;
}
.category-order-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:13px 14px;
  border:1px solid var(--line);
  border-radius:11px;
  background:#fafbfc;
}
.category-order-main{
  display:flex;
  flex-direction:column;
  gap:3px;
}
.category-order-actions{
  display:flex;
  gap:6px;
}

.mail-page{max-width:1250px}.mail-status{border-radius:999px;padding:8px 12px;font-size:13px;font-weight:700;background:#eef2f6;color:#475467}.mail-status.ready{background:#dcfae6;color:#067647}.mail-status.not-ready{background:#fee4e2;color:#b42318}.mail-tabs{display:flex;gap:8px;margin-top:24px}.mail-layout{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(320px,.8fr);gap:22px}.mail-compose textarea{width:100%;margin-top:7px;padding:13px 14px;border:1px solid #cfd6df;border-radius:10px;font:inherit;resize:vertical}.order-match-list{display:flex;flex-direction:column;gap:9px;margin-top:14px}.supplier-match{display:flex;flex-direction:column;gap:2px;padding:12px 13px;border-radius:10px;background:#f4ead4;color:#5d461c}.supplier-match span{font-size:13px}.order-check{display:flex;gap:10px;align-items:flex-start;margin:0;padding:12px;border:1px solid var(--line);border-radius:10px;background:#fff;font-weight:500}.order-check input{width:auto;margin:3px 0 0}.order-check span{display:flex;flex-direction:column;gap:3px}.order-check small{color:var(--muted);font-weight:400}@media(max-width:900px){.mail-layout{grid-template-columns:1fr}}

/* v6.3 verzendstatus + opnieuw inzien */
.order-check.order-sent{border-color:#9ad5ad;background:#f4fbf6}
.sent-ok{color:#067647!important;font-weight:700!important}
.sent-row{width:100%;text-align:left}
.sent-detail{margin-bottom:18px}
.sent-meta{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:14px 0}
.sent-meta>div{display:flex;flex-direction:column;gap:4px;padding:11px 13px;background:#f8fafc;border-radius:10px}
.sent-body{white-space:normal;padding:16px;background:#fff;border:1px solid var(--line);border-radius:10px;line-height:1.55;min-height:80px}
.sent-attachments{margin-top:16px}
.sent-attachments ul{margin:8px 0 0;padding-left:20px}
@media(max-width:700px){.sent-meta{grid-template-columns:1fr}}

/* v6.4 - handmatige afzendernaam */
.mail-from-hint{margin-top:-7px;margin-bottom:10px;padding-left:2px}

/* v6.5 mailcategorieën */
.mail-order-category{margin-top:18px}
.mail-order-category-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px;padding:9px 11px;border-radius:9px;background:#f2f4f7;color:#344054;font-weight:800}
.mail-order-category-title strong{display:inline-flex;min-width:26px;height:26px;align-items:center;justify-content:center;border-radius:999px;background:#fff;border:1px solid var(--line);font-size:12px}
.mail-order-category-list{display:flex;flex-direction:column;gap:8px}
.sent-category .mail-order-category-title{background:#eaf8ef;color:#067647}

/* v6.8 controlelaag */
.mail-control{
  display:flex;flex-direction:column;gap:3px;
  margin:14px 0 4px;padding:11px 13px;border-radius:10px;
  border:1px solid var(--line);background:#f8fafc;color:#475467;font-size:13px
}
.mail-control.healthy{background:#ecfdf3;border-color:#abefc6;color:#067647}
.mail-control.warning{background:#fffaeb;border-color:#fedf89;color:#93370d}
.mail-control strong{font-size:13px}

/* v6.9 historische migratie */
.historical-panel{margin:14px 0}
.historical-panel h2{margin:0}
.historical-warning{margin:12px 0;padding:10px 12px;border-radius:9px;background:#fffaeb;border:1px solid #fedf89;color:#93370d;font-size:13px}
.historical-list{display:flex;flex-direction:column;gap:8px;margin:12px 0}
.historical-row{display:flex;align-items:flex-start;gap:10px;padding:11px 12px;border:1px solid var(--line);border-radius:10px;background:#fff;cursor:pointer}
.historical-row input{margin-top:3px}
.historical-row span{display:flex;flex-direction:column;gap:3px}
.historical-row small{color:#667085}


/* Leveranciersportal v1 */
.supplier-auth-page{
  min-height:100vh;display:grid;place-items:center;padding:24px;
  background:linear-gradient(145deg,#0b1630 0%,#152746 55%,#213b62 100%);
}
.supplier-auth-card{
  width:min(440px,100%);background:#fff;border-radius:18px;padding:34px;
  box-shadow:0 22px 60px rgba(0,0,0,.25)
}
.supplier-logo{height:48px;max-width:210px;object-fit:contain;object-position:left center;margin-bottom:26px}
.supplier-kicker{font-size:12px;font-weight:800;letter-spacing:.12em;color:#b38734;margin-bottom:6px}
.supplier-auth-card h1{margin:0 0 7px;color:#0b1630}
.supplier-login-form{display:flex;flex-direction:column;gap:15px;margin-top:24px}
.supplier-security{margin:22px 0 0;text-align:center}

.supplier-portal-page{background:#f4f6f8;min-height:100vh;color:#182230}
.supplier-topbar{
  height:76px;background:#fff;border-bottom:1px solid #e4e7ec;
  display:flex;align-items:center;justify-content:space-between;padding:0 max(22px,calc((100vw - 1180px)/2));
  position:sticky;top:0;z-index:10
}
.supplier-brand{display:flex;align-items:center;gap:14px}
.supplier-brand img{height:38px;max-width:170px;object-fit:contain}
.supplier-brand div{display:flex;flex-direction:column}
.supplier-brand strong{color:#0b1630}.supplier-brand span{font-size:12px;color:#667085}
.supplier-top-actions{display:flex;align-items:center;gap:18px;font-size:14px}
.supplier-top-actions a{color:#344054;text-decoration:none;font-weight:700}
.supplier-shell{max-width:1180px;margin:0 auto;padding:34px 22px 60px}
.supplier-hero{
  display:flex;justify-content:space-between;align-items:center;gap:24px;
  background:linear-gradient(135deg,#fff 0%,#fbf6ea 100%);
  border:1px solid #e4e7ec;border-radius:18px;padding:28px;margin-bottom:24px
}
.supplier-hero h1{margin:0 0 6px;color:#0b1630;font-size:30px}
.supplier-stat{
  min-width:150px;padding:16px 20px;border-radius:14px;background:#0b1630;color:#fff;
  display:flex;flex-direction:column;gap:2px;text-align:center
}
.supplier-stat span{font-size:12px;color:#cbd5e1;text-transform:uppercase;letter-spacing:.06em}
.supplier-stat strong{font-size:30px}
.supplier-panel{background:#fff;border:1px solid #e4e7ec;border-radius:16px;padding:22px}
.supplier-panel-heading{display:flex;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:18px}
.supplier-panel-heading h2{margin:0;color:#0b1630}
.supplier-order-list{display:flex;flex-direction:column;gap:9px}
.supplier-order-row{
  width:100%;border:1px solid #e4e7ec;background:#fff;border-radius:12px;padding:15px 16px;
  display:grid;grid-template-columns:1fr 170px 24px;align-items:center;gap:18px;text-align:left;cursor:pointer
}
.supplier-order-row:hover{border-color:#d5b46d;background:#fffdf8}
.supplier-order-row>div:first-child{display:flex;flex-direction:column;gap:4px}
.supplier-order-row>div:first-child span{font-size:13px;color:#667085}
.supplier-order-delivery{display:flex;flex-direction:column;gap:2px}
.supplier-order-delivery span{font-size:11px;text-transform:uppercase;color:#98a2b3;font-weight:700}
.supplier-order-delivery strong{font-size:14px}
.supplier-chevron{font-size:25px;color:#98a2b3}
.supplier-empty{padding:28px;text-align:center;color:#667085;background:#f8fafc;border-radius:12px}
.supplier-back{border:0;background:none;padding:0;color:#667085;font-weight:700;cursor:pointer;margin-bottom:9px}
.supplier-order-meta{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:22px}
.supplier-order-meta>div{padding:12px 14px;background:#f8fafc;border-radius:10px;display:flex;flex-direction:column;gap:3px}
.supplier-order-meta span{font-size:11px;color:#667085;text-transform:uppercase;font-weight:700}
.supplier-table-wrap{overflow:auto}
.supplier-order-table{width:100%;border-collapse:collapse;font-size:13px}
.supplier-order-table th{background:#0b1630;color:#fff;text-align:left;padding:10px;border:1px solid #203454}
.supplier-order-table td{padding:10px;border:1px solid #e4e7ec;white-space:nowrap}
.supplier-order-table tr:nth-child(even) td{background:#f8fafc}

.supplier-admin-page{max-width:1250px}
.supplier-admin-grid{display:grid;grid-template-columns:minmax(340px,.8fr) minmax(0,1.2fr);gap:22px}
.supplier-account-list{display:flex;flex-direction:column;gap:8px;margin-top:14px}
.supplier-account-row{
  width:100%;border:1px solid var(--line);border-radius:11px;background:#fff;
  padding:12px 13px;display:flex;align-items:center;gap:12px;text-align:left;cursor:pointer
}
.supplier-account-row:hover{background:#fafafa;border-color:#d4b16a}
.supplier-account-icon{width:42px;height:42px;border-radius:10px;background:#f5ead2;display:grid;place-items:center;font-size:20px}
.supplier-account-main{display:flex;flex-direction:column;gap:2px;flex:1}
.supplier-account-main span{font-size:13px;color:#475467}.supplier-account-main small{color:#667085}
.checkline{display:flex!important;flex-direction:row!important;align-items:center;gap:8px}
.checkline input{width:auto!important;margin:0!important}

@media(max-width:850px){
  .supplier-admin-grid{grid-template-columns:1fr}
  .supplier-order-meta{grid-template-columns:1fr 1fr}
  .supplier-order-row{grid-template-columns:1fr 120px 20px}
}
@media(max-width:600px){
  .supplier-topbar{height:auto;padding:14px 16px;align-items:flex-start}
  .supplier-brand div{display:none}
  .supplier-top-actions{flex-direction:column;align-items:flex-end;gap:3px}
  .supplier-hero{align-items:stretch;flex-direction:column}
  .supplier-stat{min-width:0}
  .supplier-order-row{grid-template-columns:1fr 18px}
  .supplier-order-delivery{display:none}
  .supplier-order-meta{grid-template-columns:1fr}
}


/* =========================================================
   OUWERKERK GLAS - LEVERANCIERSPORTAL V2
   ========================================================= */
:root{
  --og-blue:#2457e6;
  --og-blue-2:#143cba;
  --og-navy:#0a1733;
  --og-sky:#eaf1ff;
  --og-cyan:#74a7ff;
  --og-gold:#d6aa52;
  --og-bg:#f4f7fc;
  --og-card:#ffffff;
  --og-text:#162033;
  --og-muted:#667085;
  --og-line:#dce3ee;
  --og-success:#16834d;
  --og-success-bg:#e9f8ef;
}
html[data-theme="dark"]{
  --og-bg:#09111f;
  --og-card:#101b2d;
  --og-text:#edf3ff;
  --og-muted:#a9b7cc;
  --og-line:#263650;
  --og-sky:#152849;
  --og-success-bg:#123725;
}
.supplier-auth-page,
.supplier-portal-page{
  color:var(--og-text)!important;
  background:var(--og-bg)!important;
}
.supplier-auth-page{
  background:
    radial-gradient(circle at 20% 20%,rgba(80,130,255,.38),transparent 34%),
    linear-gradient(145deg,#07142f 0%,#12366f 55%,#2457e6 100%)!important;
}
html[data-theme="dark"] .supplier-auth-page{
  background:
    radial-gradient(circle at 20% 20%,rgba(45,93,210,.28),transparent 35%),
    linear-gradient(145deg,#050a13 0%,#0a1733 62%,#102759 100%)!important;
}
.supplier-auth-card,
.supplier-panel,
.supplier-hero{
  color:var(--og-text)!important;
  background:var(--og-card)!important;
  border-color:var(--og-line)!important;
}
.supplier-auth-card label,
.supplier-login-form label{
  color:var(--og-text)!important;
}
.supplier-auth-card input,
.supplier-login-form input,
.supplier-question-textarea{
  color:var(--og-text)!important;
  background:var(--og-card)!important;
  border:1px solid var(--og-line)!important;
}
.supplier-auth-card input::placeholder,
.supplier-question-textarea::placeholder{color:var(--og-muted)!important}
.supplier-copy,.supplier-subtle,.supplier-security{color:var(--og-muted)!important}
.supplier-glass-mark{display:flex;align-items:center;gap:12px;margin-bottom:28px}
.glass-icon{
  width:52px;height:52px;border-radius:14px;
  background:linear-gradient(145deg,var(--og-blue),#5f8cff);
  color:#fff;display:grid;place-items:center;font-weight:900;letter-spacing:.04em;
  box-shadow:0 8px 22px rgba(36,87,230,.28)
}
.glass-icon.small{width:42px;height:42px;border-radius:11px;font-size:13px}
.supplier-glass-mark>div:last-child{display:flex;flex-direction:column;gap:2px}
.supplier-glass-mark strong,.supplier-brand strong{color:var(--og-navy)!important;letter-spacing:.06em}
html[data-theme="dark"] .supplier-glass-mark strong,
html[data-theme="dark"] .supplier-brand strong{color:#edf3ff!important}
.supplier-glass-mark span,.supplier-brand span{color:var(--og-muted)!important}
.supplier-kicker{color:var(--og-blue)!important}
.supplier-primary-button{
  border:0;border-radius:10px;padding:11px 16px;
  background:linear-gradient(135deg,var(--og-blue),var(--og-blue-2));
  color:#fff!important;font-weight:800;cursor:pointer;text-decoration:none
}
.supplier-primary-button:hover{filter:brightness(1.05)}
.supplier-primary-button.compact{padding:9px 13px}
.supplier-secondary-button{
  border:1px solid var(--og-line);border-radius:10px;padding:9px 13px;
  background:var(--og-card);color:var(--og-text)!important;font-weight:750;cursor:pointer
}
.supplier-theme-toggle{
  width:38px;height:38px;border-radius:999px;border:1px solid var(--og-line);
  background:var(--og-card);color:var(--og-text)!important;font-size:18px;cursor:pointer
}
.supplier-auth-theme{position:fixed;right:20px;top:20px;z-index:20}
.supplier-topbar{
  background:var(--og-card)!important;
  border-color:var(--og-line)!important;
}
.supplier-top-actions span,.supplier-top-actions a{color:var(--og-text)!important}
.supplier-shell{color:var(--og-text)!important}
.supplier-hero{
  background:
    linear-gradient(135deg,var(--og-card) 0%,var(--og-sky) 100%)!important;
  border-left:5px solid var(--og-blue)!important;
}
.supplier-hero h1,.supplier-panel h2,.supplier-question-section h3{color:var(--og-text)!important}
.supplier-hero-stats{display:flex;gap:10px}
.supplier-stat{
  background:var(--og-navy)!important;color:#fff!important;
  min-width:130px
}
.supplier-stat span{color:#cbd6ec!important}
.supplier-stat.accent{background:linear-gradient(135deg,var(--og-blue),var(--og-blue-2))!important}
.supplier-order-row{
  color:var(--og-text)!important;
  background:var(--og-card)!important;
  border-color:var(--og-line)!important;
}
.supplier-order-row:hover{background:var(--og-sky)!important;border-color:var(--og-blue)!important}
.supplier-order-row.is-new{border-left:4px solid var(--og-blue)!important}
.supplier-order-main{display:flex;flex-direction:column;gap:5px}
.supplier-order-titleline{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.supplier-order-titleline strong,.supplier-order-delivery strong{color:var(--og-text)!important}
.supplier-order-main>span,.supplier-order-delivery span{color:var(--og-muted)!important}
.supplier-status{
  display:inline-flex;align-items:center;padding:4px 9px;border-radius:999px;
  font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.05em
}
.supplier-status.nieuw{background:var(--og-blue);color:#fff}
.supplier-status.akkoord{background:var(--og-success-bg);color:var(--og-success);border:1px solid rgba(22,131,77,.25)}
.supplier-order-meta>div{
  background:var(--og-sky)!important;color:var(--og-text)!important
}
.supplier-order-meta span{color:var(--og-muted)!important}
.supplier-order-table{color:var(--og-text)!important}
.supplier-order-table th{
  background:linear-gradient(135deg,var(--og-blue-2),var(--og-blue))!important;
  color:#fff!important;border-color:#3f6ae6!important
}
.supplier-order-table td{
  background:var(--og-card)!important;color:var(--og-text)!important;border-color:var(--og-line)!important
}
.supplier-order-table tr:nth-child(even) td{background:var(--og-sky)!important}
.supplier-empty{background:var(--og-sky)!important;color:var(--og-muted)!important}
.supplier-back{color:var(--og-blue)!important}
.detail-heading{align-items:center}
.detail-title h2{margin:0}
.supplier-status-actions{display:flex;gap:8px}
.supplier-question-section{
  margin-top:28px;padding-top:24px;border-top:1px solid var(--og-line)
}
.supplier-section-heading{display:flex;justify-content:space-between;gap:16px;margin-bottom:14px}
.supplier-question-textarea{width:100%;padding:13px;border-radius:11px;resize:vertical;font:inherit}
.supplier-question-actions{display:flex;justify-content:flex-end;margin-top:10px}
.supplier-question-history{display:flex;flex-direction:column;gap:9px;margin:14px 0}
.supplier-question-item{
  padding:12px 14px;border-radius:11px;background:var(--og-sky);
  border:1px solid var(--og-line);color:var(--og-text)
}
.supplier-question-item>div{display:flex;justify-content:space-between;gap:10px}
.supplier-question-item span{font-size:12px;color:var(--og-muted)}
.supplier-question-item p{margin:8px 0 0;white-space:pre-wrap}
@media(max-width:700px){
  .supplier-hero-stats{width:100%}
  .supplier-stat{flex:1;min-width:0}
  .detail-heading{align-items:flex-start;flex-direction:column}
}

/* Leveranciersportal v3 - beheercontrast + logo */
.supplier-account-main strong{color:#0b1630!important;opacity:1!important}
.supplier-account-row{color:#0b1630!important;background:#fff!important}
.supplier-account-row .supplier-chevron{color:#98a2b3!important}
.supplier-login-logo-wrap{display:flex;justify-content:center;margin:0 0 28px}
.supplier-login-logo{display:block;width:min(330px,92%);max-height:115px;object-fit:contain}
.supplier-header-logo{display:block;width:160px;max-height:48px;object-fit:contain;object-position:left center}


/* Leveranciersportal v3.1 - dark mode login contrast */
html[data-theme="dark"] .supplier-auth-card h1,
html[data-theme="dark"] .supplier-auth-card h2,
html[data-theme="dark"] .supplier-auth-card h3{
  color:#edf3ff!important;
}
html[data-theme="dark"] .supplier-auth-card{
  color:#edf3ff!important;
}


/* Leveranciersportal v3.2 - nette theme toggle */
.supplier-theme-toggle{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  padding:0!important;
  line-height:1!important;
  font-family:Arial,Helvetica,sans-serif!important;
  font-size:19px!important;
  text-align:center!important;
  vertical-align:middle!important;
}
html[data-theme="dark"] .supplier-theme-toggle{
  background:#17243a!important;
  border-color:#334764!important;
  color:#ffd76a!important;
}
html[data-theme="light"] .supplier-theme-toggle{
  background:#ffffff!important;
  color:#18335f!important;
}


/* Leveranciersportal v3.3 - categorieën Nieuw / Akkoord / Afgerond */
.supplier-status.nieuw{
  background:#123fb8!important;
  color:#ffffff!important;
  border:1px solid #0d3194!important;
  box-shadow:0 1px 2px rgba(18,63,184,.18);
}
.supplier-status.afgerond{
  background:#e7e9ee!important;
  color:#344054!important;
  border:1px solid #c9ced8!important;
}
html[data-theme="dark"] .supplier-status.afgerond{
  background:#29364b!important;
  color:#e8eef8!important;
  border-color:#40516d!important;
}
.supplier-stat.approved{background:linear-gradient(135deg,#16834d,#0f6b3d)!important}
.supplier-stat.done{background:linear-gradient(135deg,#667085,#475467)!important}
.supplier-order-category{margin:0 0 24px}
.supplier-order-category:last-child{margin-bottom:0}
.supplier-order-category-heading{
  display:flex;align-items:center;justify-content:space-between;
  margin:0 0 10px;padding:10px 12px;border-radius:10px;
  border:1px solid var(--og-line);background:var(--og-sky)
}
.supplier-order-category-heading>div{display:flex;align-items:center;gap:10px}
.supplier-order-category-heading h3{margin:0;color:var(--og-text)!important;font-size:16px}
.supplier-order-category-heading span{
  display:inline-flex;min-width:25px;height:25px;padding:0 8px;align-items:center;justify-content:center;
  border-radius:999px;background:var(--og-card);color:var(--og-muted);font-size:12px;font-weight:800
}
.category-nieuw .supplier-order-category-heading{border-left:4px solid #123fb8}
.category-akkoord .supplier-order-category-heading{border-left:4px solid #16834d}
.category-afgerond .supplier-order-category-heading{border-left:4px solid #667085}
.supplier-order-category-list{display:flex;flex-direction:column;gap:8px}
.supplier-category-empty{
  padding:14px 16px;border:1px dashed var(--og-line);border-radius:10px;
  color:var(--og-muted);background:var(--og-card);font-size:13px
}
.supplier-order-row.status-nieuw{border-left:4px solid #123fb8!important}
.supplier-order-row.status-akkoord{border-left:4px solid #16834d!important}
.supplier-order-row.status-afgerond{border-left:4px solid #98a2b3!important;opacity:.88}
.supplier-complete-button{
  border:0;border-radius:10px;padding:9px 13px;
  background:linear-gradient(135deg,#16834d,#0f6b3d);
  color:#fff!important;font-weight:800;cursor:pointer
}
@media(max-width:950px){
  .supplier-hero-stats{display:grid!important;grid-template-columns:1fr 1fr;width:100%}
}

/* Delta: leveranciersportal wachtwoordherstel */
.supplier-forgot-link{display:block;text-align:center;margin-top:12px;color:#2457e6;font-weight:700;text-decoration:none}
.supplier-forgot-link:hover{text-decoration:underline}
.supplier-success-alert{margin:0 0 16px;padding:12px 14px;border-radius:10px;background:#dcfae6;border:1px solid #a6e9bc;color:#067647;font-weight:700;font-size:14px}
html[data-theme="dark"] .supplier-forgot-link{color:#8fb1ff}
html[data-theme="dark"] .supplier-success-alert{background:#123d2a;border-color:#246b49;color:#b7f5ce}


/* =========================================================
   BEDRIJFSINVENTARIS V1
   ========================================================= */
.inventory-shell{max-width:1320px}
.inventory-heading-actions{display:flex;gap:10px;flex-wrap:wrap}
.inventory-stats{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin:0 0 20px}
.inventory-stat{border:1px solid var(--line);background:#fff;border-radius:13px;padding:15px 16px;text-align:left;cursor:pointer;color:#344054}
.inventory-stat span{display:block;font-size:12px;font-weight:750;color:#667085;margin-bottom:3px}
.inventory-stat strong{font-size:27px;color:#101828}
.inventory-stat.active{border-color:#d0a84e;box-shadow:0 0 0 2px rgba(208,168,78,.15)}
.inventory-stat.warning strong{color:#b54708}.inventory-stat.danger strong{color:#b42318}
.inventory-toolbar{display:flex;gap:10px;align-items:center;justify-content:space-between;margin-bottom:14px}
.inventory-search-wrap{flex:1}.inventory-search-wrap .search{width:100%}
.inventory-list{display:flex;flex-direction:column;gap:8px}
.inventory-row{width:100%;display:grid;grid-template-columns:145px minmax(200px,1fr) minmax(140px,.7fr) 140px 20px;gap:14px;align-items:center;text-align:left;border:1px solid var(--line);background:#fff;border-radius:11px;padding:12px 14px;cursor:pointer}
.inventory-row:hover{border-color:#d4b16a;background:#fffdf8}
.inventory-code{font-family:Consolas,monospace;font-size:12px;font-weight:800;color:#344054;letter-spacing:.03em}
.inventory-row-main{display:flex;flex-direction:column;gap:2px}.inventory-row-main strong{color:#101828}.inventory-row-main span,.inventory-row-location{font-size:13px;color:#667085}
.inventory-status{display:inline-flex;align-items:center;justify-content:center;padding:5px 9px;border-radius:999px;font-size:11px;font-weight:800;background:#f2f4f7;color:#475467;white-space:nowrap}
.inventory-status.in-gebruik{background:#ecfdf3;color:#067647}.inventory-status.storing{background:#fff4e5;color:#b54708}.inventory-status.reparatie{background:#eef4ff;color:#2457e6}.inventory-status.buiten-gebruik{background:#fef3f2;color:#b42318}.inventory-status.afgevoerd{background:#eaecf0;color:#475467}
.inventory-dialog{width:min(820px,calc(100vw - 30px));max-height:90vh;border:0;border-radius:16px;padding:22px;box-shadow:0 22px 70px rgba(0,0,0,.25)}
.inventory-dialog::backdrop{background:rgba(16,24,40,.48)}
.inventory-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}
.inventory-wide{grid-column:1/-1}.inventory-form-grid textarea{resize:vertical}
.inventory-detail-heading{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:20px}
.inventory-titleline{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.inventory-titleline h2{margin:0}.inventory-service-number{margin-top:5px;font:800 13px Consolas,monospace;color:#667085}
.inventory-detail-actions{display:flex;gap:8px}
.inventory-detail-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:18px}
.inventory-info-card,.inventory-code-card,.inventory-notes-card{border:1px solid var(--line);border-radius:13px;padding:18px;background:#fff}
.inventory-info-card h3,.inventory-code-card h3,.inventory-notes-card h3{margin:0 0 14px}
.inventory-info-card dl{display:grid;grid-template-columns:150px 1fr;gap:8px 14px;margin:0}.inventory-info-card dt{color:#667085;font-size:13px}.inventory-info-card dd{margin:0;font-weight:650}
.inventory-code-card{text-align:center}.inventory-code-card #qrCode{display:flex;justify-content:center;margin:6px 0 8px}.inventory-code-card #barcode{width:100%;max-width:280px}.inventory-code-card>strong{display:block;font:900 15px Consolas,monospace;margin-top:5px}
.inventory-notes-card{margin-top:18px}.inventory-notes-card p{white-space:pre-wrap;margin:0;color:#475467}
.inventory-history-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:18px}.inventory-history-grid>section{border:1px solid var(--line);border-radius:13px;padding:18px}.inventory-history-grid h3{margin:0 0 12px}
.inventory-fault-list,.inventory-log{display:flex;flex-direction:column;gap:8px}.inventory-fault{padding:11px 12px;border-radius:10px;background:#f8fafc;border:1px solid var(--line)}.inventory-fault.open{border-left:4px solid #d97706}.inventory-fault.done{border-left:4px solid #16834d}
.inventory-fault-top{display:flex;justify-content:space-between;gap:12px}.inventory-fault small{display:block;color:#667085;margin-top:4px}.inventory-resolve{display:flex;gap:8px;margin-top:10px}.inventory-resolve input{flex:1}
.inventory-log>div{padding:10px 12px;border-left:3px solid #d4b16a;background:#f8fafc;border-radius:7px}.inventory-log strong{display:block;font-size:13px}.inventory-log span{display:block;color:#667085;font-size:11px;margin-top:3px}
.scan-dialog video{width:100%;max-height:55vh;background:#111;border-radius:12px;object-fit:cover}
.fault-shell{max-width:900px}.fault-lookup-card,.fault-device-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:22px}.fault-lookup-card{margin-bottom:18px}.fault-lookup-row{display:flex;gap:9px;margin-top:6px}.fault-lookup-row input{flex:1;font:800 16px Consolas,monospace;letter-spacing:.03em}
.fault-device-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.fault-device-head h2{margin:4px 0}.fault-device-head p{margin:0;color:#667085}.fault-device-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:18px 0}.fault-device-meta>div{display:flex;flex-direction:column;gap:3px;background:#f8fafc;border-radius:10px;padding:12px}.fault-device-meta span{font-size:11px;color:#667085;text-transform:uppercase;font-weight:750}
.fault-device-card textarea{resize:vertical}.fault-submit{width:100%;border:0;border-radius:11px;background:#b42318;color:#fff;font-weight:850;padding:13px 16px;cursor:pointer;margin-top:10px}.fault-submit:hover{background:#912018}
.fault-success{text-align:center;padding:26px}.fault-success>div{width:58px;height:58px;border-radius:50%;background:#dcfae6;color:#067647;display:grid;place-items:center;margin:0 auto 12px;font-size:30px;font-weight:900}.fault-success h2{margin:0 0 7px}
@media(max-width:900px){.inventory-stats{grid-template-columns:1fr 1fr}.inventory-row{grid-template-columns:125px 1fr 125px 20px}.inventory-row-location{display:none}.inventory-detail-grid,.inventory-history-grid{grid-template-columns:1fr}.fault-device-meta{grid-template-columns:1fr}}
@media(max-width:620px){.inventory-form-grid{grid-template-columns:1fr}.inventory-wide{grid-column:auto}.inventory-row{grid-template-columns:1fr 110px 18px}.inventory-code{grid-column:1/-1}.inventory-row-main span{font-size:12px}.inventory-toolbar,.fault-lookup-row{flex-direction:column;align-items:stretch}.inventory-stat{padding:12px}.inventory-stat strong{font-size:23px}.inventory-detail-heading{flex-direction:column}.inventory-detail-actions{width:100%}.inventory-detail-actions button{flex:1}}


/* Bedrijfsinventaris v1.1 - categoriecodes + notitiechat */
.inventory-code-wrap{display:flex;align-items:center;gap:7px;flex-wrap:wrap}
.inventory-category-code{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:34px;padding:3px 7px;border-radius:7px;
  background:#eaf1ff;color:#173d9a;border:1px solid #c9d8ff;
  font-size:10px;font-weight:900;letter-spacing:.06em
}
.inventory-notes-thread{
  margin-top:18px;border:1px solid var(--line);border-radius:13px;padding:18px;background:#f8fafc
}
.inventory-notes-heading h3{margin:0}
.inventory-notes-heading p{margin:3px 0 0}
.inventory-note-bubbles{display:flex;flex-direction:column;gap:10px;margin:16px 0}
.inventory-note-bubble{
  position:relative;align-self:flex-start;max-width:min(78%,720px);
  padding:11px 13px 10px;border-radius:14px 14px 14px 4px;
  background:#fff;border:1px solid var(--line);box-shadow:0 1px 2px rgba(16,24,40,.04)
}
.inventory-note-bubble.mine{
  align-self:flex-end;border-radius:14px 14px 4px 14px;
  background:#eef4ff;border-color:#cddcff
}
.inventory-note-meta{display:flex;gap:10px;align-items:center;justify-content:space-between;margin-bottom:5px}
.inventory-note-meta strong{font-size:12px;color:#344054}
.inventory-note-meta span{font-size:10px;color:#98a2b3}
.inventory-note-bubble p{white-space:pre-wrap;margin:0;color:#344054;line-height:1.45;font-size:13px}
.inventory-note-edit{
  border:0;background:transparent;color:#2457e6;padding:5px 0 0;
  font-size:11px;font-weight:750;cursor:pointer
}
.inventory-note-compose{display:flex;gap:10px;align-items:flex-end}
.inventory-note-compose textarea{flex:1;resize:vertical;min-height:74px}
@media(max-width:620px){
  .inventory-note-bubble,.inventory-note-bubble.mine{max-width:94%}
  .inventory-note-compose{flex-direction:column;align-items:stretch}
}

/* Inventaris v1.3 */
.inventory-new-category{grid-column:1/-1;display:grid;grid-template-columns:2fr 1fr auto;gap:10px;align-items:end;padding:12px;border:1px dashed #d6a94a;border-radius:10px;background:#fffaf0}
.inventory-new-category.hidden{display:none!important}
.inventory-notes-history{margin-top:18px}
.inventory-note-list{margin:14px 0}
.inventory-note-history-item{position:relative;padding-right:110px!important}
.inventory-note-history-item .inventory-note-edit{position:absolute;right:10px;top:50%;transform:translateY(-50%)}
.inventory-note-compose{margin-top:12px}
@media(max-width:650px){.inventory-new-category{grid-template-columns:1fr}.inventory-note-history-item{padding-right:12px!important;padding-bottom:48px!important}.inventory-note-history-item .inventory-note-edit{top:auto;bottom:9px;right:9px;transform:none}}


/* Bedrijfsinventaris v1.4 - afdelingen + storing UX */
.fault-my-devices{
  background:#fff;border:1px solid var(--line);border-radius:15px;padding:20px;margin-bottom:18px
}
.fault-my-devices-heading h2{margin:0 0 3px}
.fault-device-picker{display:flex;flex-direction:column;gap:8px;margin-top:12px}
.fault-device-choice{
  width:100%;display:grid;grid-template-columns:1fr 135px 20px;gap:12px;align-items:center;
  padding:12px 14px;border:1px solid var(--line);background:#fff;border-radius:11px;text-align:left;cursor:pointer
}
.fault-device-choice:hover{background:#f8fafc;border-color:#d4b16a}
.fault-device-choice>div{display:flex;flex-direction:column;gap:3px}
.fault-device-choice strong{color:#101828}
.fault-device-choice span:not(.inventory-status):not(.supplier-chevron){font-size:12px;color:#667085}
.fault-description-label{display:block;margin-top:18px;font-weight:800;color:#101828}
.fault-description-box{
  margin-top:7px;border:1px solid #cfd8e6;background:#f8fafc;border-radius:12px;
  padding:12px;transition:.15s ease
}
.fault-description-box:focus-within{
  border-color:#2457e6;box-shadow:0 0 0 3px rgba(36,87,230,.12);background:#fff
}
.fault-description-box textarea{
  width:100%;min-height:130px;border:0!important;outline:0!important;box-shadow:none!important;
  resize:vertical;background:transparent!important;color:#172033;font:inherit;line-height:1.5;padding:0!important
}
.fault-description-box textarea::placeholder{color:#98a2b3}
.fault-description-help{display:block;margin-top:8px;padding-top:8px;border-top:1px solid #e4e7ec;color:#667085;font-size:11px;font-weight:500}
@media(max-width:620px){
  .fault-device-choice{grid-template-columns:1fr 20px}
  .fault-device-choice .inventory-status{grid-column:1}
}


/* =========================================================
   PLANNING V1
   ========================================================= */
.planning-shell{max-width:1400px}
.planning-header{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px}
.planning-header h1{margin:0}.planning-header p{margin:6px 0 0}
.planning-toolbar{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:12px}
.planning-nav{display:flex;align-items:center;gap:8px}.planning-nav h2{margin:0 0 0 8px;text-transform:capitalize}
.planning-view-switch{display:flex;background:#edf1f5;border-radius:10px;padding:3px}
.planning-view{border:0;background:transparent;color:#475467;border-radius:8px;padding:7px 12px;font-weight:750;cursor:pointer}
.planning-view.active{background:#fff;color:#101828;box-shadow:0 1px 3px rgba(16,24,40,.12)}
.planning-calendar-card{background:#fff;border:1px solid var(--line);border-radius:15px;overflow:hidden}
.planning-weekdays{display:grid;grid-template-columns:repeat(7,1fr);background:#f8fafc;border-bottom:1px solid var(--line)}
.planning-weekdays div{padding:9px 10px;text-align:center;color:#667085;font-size:12px;font-weight:800;text-transform:uppercase}
.planning-grid{display:grid;grid-template-columns:repeat(7,1fr)}
.planning-day{min-height:132px;padding:8px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);cursor:pointer;background:#fff}
.planning-day:nth-child(7n){border-right:0}.planning-day:hover{background:#fbfcfe}.planning-day.outside{background:#fafafa;color:#98a2b3}
.planning-day.today .planning-day-number{background:#173d9a;color:#fff}
.planning-day-number{width:27px;height:27px;border-radius:50%;display:grid;place-items:center;font-size:12px;font-weight:800;margin-bottom:5px}
.planning-day-events{display:flex;flex-direction:column;gap:4px}
.planning-event-chip{width:100%;border:0;border-left:4px solid var(--event);background:color-mix(in srgb,var(--event) 10%,white);border-radius:6px;padding:5px 6px;text-align:left;color:#344054;font-size:11px;font-weight:750;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer}
.planning-event-chip span{font-weight:500;margin-right:5px;color:#667085}.planning-more{font-size:10px;color:#667085;padding:2px 5px}
.planning-agenda{display:flex;flex-direction:column}.planning-agenda-row{display:grid;grid-template-columns:105px 5px 1fr auto 18px;gap:12px;align-items:center;padding:13px 16px;border:0;border-bottom:1px solid var(--line);background:#fff;text-align:left;cursor:pointer}
.planning-agenda-row:hover{background:#f8fafc}.planning-agenda-date{display:flex;flex-direction:column}.planning-agenda-date span,.planning-agenda-main span{font-size:12px;color:#667085;margin-top:2px}.planning-agenda-color{height:38px;border-radius:4px}
.planning-agenda-main{display:flex;flex-direction:column}.planning-agenda-users{display:flex}.planning-agenda-users span{width:28px;height:28px;border-radius:50%;background:#173d9a;color:#fff;display:grid;place-items:center;font-weight:800;font-size:11px;border:2px solid #fff;margin-left:-5px}
.planning-dialog{width:min(760px,calc(100vw - 28px));max-height:92vh;border:0;border-radius:16px;padding:22px;box-shadow:0 24px 70px rgba(0,0,0,.28)}
.planning-dialog::backdrop{background:rgba(16,24,40,.5)}
.planning-form{display:grid;grid-template-columns:1fr 1fr;gap:12px}.planning-wide{grid-column:1/-1}.planning-category-button{align-self:end;margin-bottom:2px}
.planning-person-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.planning-person-heading button{border:0;background:transparent;color:#2457e6;font-weight:750;cursor:pointer}
.planning-user-picker{display:grid;grid-template-columns:1fr 1fr;gap:7px;max-height:220px;overflow:auto}
.planning-user{display:flex!important;flex-direction:row!important;gap:9px!important;align-items:center;padding:9px 10px;border:1px solid var(--line);border-radius:9px;background:#fff;cursor:pointer}
.planning-user input{width:auto!important}.planning-avatar{width:32px;height:32px;border-radius:50%;background:#eef4ff;color:#173d9a;display:grid;place-items:center;font-weight:900}
.planning-user>span:last-child{display:flex;flex-direction:column}.planning-user small{color:#667085}.planning-dialog-actions{justify-content:space-between}
@media(max-width:850px){.planning-day{min-height:105px}.planning-event-chip{font-size:10px}.planning-agenda-row{grid-template-columns:90px 5px 1fr 18px}.planning-agenda-users{display:none}}
@media(max-width:650px){.planning-header,.planning-toolbar{flex-direction:column;align-items:stretch}.planning-nav{flex-wrap:wrap}.planning-nav h2{width:100%;margin:7px 0 0}.planning-weekdays div{font-size:10px;padding:7px 2px}.planning-day{min-height:85px;padding:4px}.planning-day-number{width:23px;height:23px}.planning-event-chip{padding:4px;font-size:9px}.planning-event-chip span{display:none}.planning-form,.planning-user-picker{grid-template-columns:1fr}.planning-wide{grid-column:auto}.planning-category-button{width:100%}}


/* =========================================================
   PLANNING V2 - persoonlijke agenda's / mobiel / delen
   ========================================================= */
.planning-v2-header{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;margin-bottom:18px}
.planning-v2-header h1{margin:0}.planning-v2-header p{margin:5px 0 0}.planning-header-actions{display:flex;gap:8px;flex-wrap:wrap}
.planning-v2-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px}
.planning-v2-layout{display:grid;grid-template-columns:220px minmax(0,1fr);gap:14px}
.planning-sidebar{background:#fff;border:1px solid var(--line);border-radius:14px;padding:14px;height:max-content;position:sticky;top:92px}
.planning-sidebar-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.planning-sidebar-title button{border:0;background:transparent;color:#2457e6;font-weight:750;cursor:pointer}
.planning-sidebar.collapsed #calendarFilters,.planning-sidebar.collapsed .planning-sidebar-help{display:none}.planning-sidebar-help{font-size:11px;color:#667085;line-height:1.4;margin-top:10px}
.planning-filter{display:flex!important;flex-direction:row!important;align-items:center;gap:8px;padding:8px 5px;cursor:pointer}.planning-filter input{width:auto!important}.planning-filter-dot{width:11px;height:11px;border-radius:50%;flex:0 0 auto}.planning-filter>span:last-child{display:flex;flex-direction:column}.planning-filter small{color:#667085;font-size:10px}
.planning-v2-content{min-width:0}.planning-v2-dialog{width:min(800px,calc(100vw - 24px))}
.planning-description-card{padding:12px 14px;border:1px solid var(--line);border-radius:11px;background:#f8fafc}.planning-description-card label{display:block;margin-bottom:7px;font-weight:800}.planning-description-card textarea{width:100%;border:0!important;outline:0;background:transparent!important;padding:0!important;resize:vertical;line-height:1.5;min-height:90px}
.planning-section-label{font-weight:800;margin-bottom:7px}.planning-calendar-picker{display:grid;grid-template-columns:1fr 1fr;gap:7px}.planning-schedule-cal{display:flex!important;flex-direction:row!important;align-items:center;gap:8px;padding:9px 10px;border:1px solid var(--line);border-radius:9px;cursor:pointer}.planning-schedule-cal input{width:auto!important}
.planning-template-row{display:flex;gap:8px}.planning-template-row select{flex:1}.planning-event-extra-actions{display:flex;gap:8px;padding:12px 0;border-top:1px solid var(--line);margin-top:8px}
.planning-share-head,.planning-share-row{display:grid;grid-template-columns:1fr 90px 100px;gap:10px;align-items:center}.planning-share-head{padding:8px 10px;color:#667085;font-size:11px;font-weight:800;text-transform:uppercase}.planning-share-row{padding:10px;border-top:1px solid var(--line)}.planning-share-row>div{display:flex;flex-direction:column}.planning-share-row span{font-size:11px;color:#667085}.planning-share-row input{justify-self:center;width:18px;height:18px}
.planning-mobile-add{display:none;position:fixed;right:20px;bottom:20px;width:56px;height:56px;border:0;border-radius:50%;background:#173d9a;color:#fff;font-size:28px;box-shadow:0 7px 22px rgba(23,61,154,.34);z-index:25}
@media(max-width:900px){.planning-v2-layout{grid-template-columns:180px minmax(0,1fr)}.planning-day{min-height:100px}}
@media(max-width:700px){
 .planning-topbar{position:sticky;top:0;z-index:20}.planning-v2-header{flex-direction:column}.planning-header-actions{width:100%}.planning-header-actions button{flex:1}
 .planning-v2-bar{flex-direction:column;align-items:stretch}.planning-nav{display:grid;grid-template-columns:auto 1fr auto}.planning-nav #today{grid-column:2}.planning-nav h2{grid-column:1/-1;margin:6px 0 0;text-align:center}
 .planning-view-switch{width:100%}.planning-view{flex:1}.planning-v2-layout{display:block}.planning-sidebar{position:static;margin-bottom:10px}.planning-sidebar.collapsed{padding-bottom:10px}
 .planning-calendar-card{border-radius:12px}.planning-agenda-row{grid-template-columns:82px 5px 1fr 16px;padding:12px 10px}.planning-agenda-main strong{font-size:14px}.planning-agenda-main span{font-size:11px}
 .planning-mobile-add{display:block}.planning-dialog{width:calc(100vw - 12px);max-height:96vh;padding:16px;border-radius:14px}.planning-form{grid-template-columns:1fr}.planning-wide{grid-column:auto}
 .planning-calendar-picker{grid-template-columns:1fr}.planning-template-row{flex-direction:column}.planning-event-extra-actions{flex-wrap:wrap}.planning-dialog-actions{position:sticky;bottom:-16px;background:#fff;padding:12px 0 3px;z-index:3}
 .planning-share-head,.planning-share-row{grid-template-columns:1fr 68px 76px}.planning-share-head{font-size:9px;padding-left:4px;padding-right:4px}
}


/* Planning v2.2 - agenda contrast */
.planning-agenda-row,
.planning-agenda-row:link,
.planning-agenda-row:visited{
  background:#ffffff!important;
  color:#101828!important;
}
.planning-agenda-row strong{
  color:#101828!important;
}
.planning-agenda-row .planning-agenda-date strong{
  color:#101828!important;
}
.planning-agenda-row .planning-agenda-date span,
.planning-agenda-row .planning-agenda-main span{
  color:#667085!important;
}
.planning-agenda-row .supplier-chevron{
  color:#98a2b3!important;
}
.planning-agenda-row:hover{
  background:#f8fafc!important;
  color:#101828!important;
}


/* Planning v2.3 - initialen + templates */
.planning-event-chip{
  display:flex!important;
  align-items:center;
  gap:5px;
}
.planning-chip-text{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.planning-chip-time{margin-right:4px}
.planning-event-avatars{
  display:flex;
  align-items:center;
  flex:0 0 auto;
}
.planning-person-avatar{
  width:30px;height:30px;border-radius:50%;
  display:grid;place-items:center;
  background:var(--avatar,#173d9a);
  color:#fff!important;
  font-size:10px;font-weight:900;
  border:2px solid #fff;
  margin-left:-5px;
  box-shadow:0 1px 2px rgba(16,24,40,.12)
}
.planning-event-avatars .planning-person-avatar:first-child{margin-left:0}
.planning-event-avatars.small .planning-person-avatar{
  width:20px;height:20px;font-size:8px;border-width:1.5px;margin-left:-4px
}
.planning-person-avatar.more{background:#667085}
.planning-agenda-row{
  grid-template-columns:105px 5px minmax(0,1fr) auto 18px!important;
}
.planning-template-delete:disabled{
  opacity:.45;
  cursor:not-allowed;
}
@media(max-width:700px){
  .planning-agenda-row{
    grid-template-columns:78px 5px minmax(0,1fr) auto 16px!important;
  }
  .planning-person-avatar{
    width:26px;height:26px;font-size:9px;
  }
  .planning-event-avatars.small .planning-person-avatar{
    width:18px;height:18px;font-size:7px;
  }
  .planning-template-row{
    display:grid!important;
    grid-template-columns:1fr 1fr;
  }
  .planning-template-row select{grid-column:1/-1}
}


/* Planning v2.4 - categoriekleuren + meerdere herinneringen */
#category{
  border-left:7px solid #2457e6!important;
  transition:border-left-color .15s ease;
}
.planning-category-actions{display:flex;align-items:end;gap:7px;padding-top:19px}
.planning-category-actions button:disabled{opacity:.45;cursor:not-allowed}
.planning-event-chip{
  border-left:5px solid var(--event,#2457e6)!important;
  background:color-mix(in srgb,var(--event,#2457e6) 13%,white)!important;
  color:#101828!important;
}
.planning-agenda-color{border-radius:999px}
.planning-reminder-card{
  padding:13px 14px;border:1px solid var(--line);border-radius:11px;background:#f8fafc
}
.planning-reminder-heading{display:flex;justify-content:space-between;align-items:center;gap:10px}
.planning-reminder-heading>div{display:flex;flex-direction:column}
.planning-reminder-heading span{font-size:11px;color:#667085;margin-top:2px}
.planning-reminder-rows{display:flex;flex-direction:column;gap:7px;margin-top:10px}
.planning-reminder-row{display:grid;grid-template-columns:110px 1fr 34px;gap:7px;align-items:center}
.planning-reminder-row input,.planning-reminder-row select{margin:0}
.planning-reminder-remove{
  width:34px;height:34px;border:1px solid #f0c9c5;border-radius:8px;background:#fff;color:#b42318;
  font-size:20px;line-height:1;cursor:pointer
}
.planning-reminder-empty{font-size:12px;color:#667085;padding:8px 0}
@media(max-width:700px){
  .planning-category-actions{padding-top:0}
  .planning-reminder-heading{align-items:flex-start}
  .planning-reminder-row{grid-template-columns:80px 1fr 34px}
}


/* Planning v2.5 - zichtbare kleurkiezers + persoonlijke kleur */
.planning-own-color{
  display:flex!important;
  flex-direction:row!important;
  align-items:center;
  gap:8px;
  padding:6px 9px;
  border:1px solid var(--line);
  border-radius:9px;
  background:#fff;
  color:#344054;
  font-size:12px;
  font-weight:750;
}
.planning-own-color input[type="color"]{
  width:34px!important;
  height:28px!important;
  padding:1px!important;
  border:0!important;
  background:transparent!important;
  cursor:pointer;
}
.planning-new-category{
  display:grid;
  grid-template-columns:1.6fr 1fr auto;
  gap:10px;
  align-items:end;
  padding:13px 14px;
  border:1px dashed #d3a746;
  border-radius:11px;
  background:#fffaf0;
}
.planning-new-category.hidden{display:none!important}
.planning-color-picker-row{
  display:flex;
  align-items:center;
  gap:9px;
  min-height:38px;
}
.planning-color-picker-row input[type="color"]{
  width:52px!important;
  height:36px!important;
  padding:2px!important;
  cursor:pointer;
}
.planning-color-picker-row span{
  font-family:Consolas,monospace;
  color:#475467;
  font-size:12px;
  font-weight:750;
}
.planning-new-category-actions{
  display:flex;
  gap:7px;
  align-items:center;
}
@media(max-width:700px){
  .planning-own-color{flex:1;justify-content:center}
  .planning-new-category{grid-template-columns:1fr}
  .planning-new-category-actions button{flex:1}
}

/* Planning v2.6 */
#category{border-left-width:7px!important;border-left-style:solid!important}
#durationHint{display:block;margin-top:5px;color:#667085;font-size:11px;font-weight:600}

/* Planning v2.7.2 - series + maandweekend fix
   OUWERKERK PLANNING WEEKEND V2.7.2
   Belangrijk: deze flex-styling geldt alleen voor de weekdagkeuze in het herhaalformulier.
   De .planning-weekdays boven de maandkalender behoudt daardoor zijn 7-koloms grid (Ma-Zo). */
#repeatWeekdaysWrap.planning-weekdays{display:flex;gap:7px;align-items:center;flex-wrap:wrap;padding:8px 0}
#repeatWeekdaysWrap.planning-weekdays>span{font-weight:750;margin-right:4px}
#repeatWeekdaysWrap.planning-weekdays label{display:flex;flex-direction:row;align-items:center;gap:4px;padding:7px 9px;border:1px solid var(--line);border-radius:8px;background:#fff}
#repeatWeekdaysWrap.planning-weekdays input{width:auto!important;margin:0!important}


/* Planning v2.7.1 - categoriekleur editmodus */
#category{
  border-left-width:7px!important;
  border-left-style:solid!important;
  /* border-left-color wordt live door planning.html gezet */
}


/* Mail v7.0 - leverancier zoeken */
.mail-recipient-wrap{position:relative}
.mail-recipient-wrap>input{width:100%}
.mail-supplier-suggestions{
  position:absolute;
  top:calc(100% + 5px);
  left:0;
  right:0;
  z-index:40;
  background:#fff;
  border:1px solid var(--line);
  border-radius:10px;
  box-shadow:0 12px 30px rgba(16,24,40,.16);
  overflow:hidden;
  max-height:300px;
  overflow-y:auto;
}
.mail-supplier-suggestions.hidden{display:none!important}
.mail-supplier-option{
  width:100%;
  border:0;
  border-bottom:1px solid #eef1f5;
  background:#fff;
  padding:10px 12px;
  text-align:left;
  cursor:pointer;
  display:flex;
  flex-direction:column;
  gap:2px;
}
.mail-supplier-option:last-child{border-bottom:0}
.mail-supplier-option:hover{background:#f8fafc}
.mail-supplier-option strong{color:#101828;font-size:13px}
.mail-supplier-option span{color:#667085;font-size:12px}


/* Mail v7.1 - verzendsecties + afzenderbevestiging */
.mail-order-section{
  margin-top:14px;
  border:1px solid var(--line);
  border-radius:11px;
  overflow:hidden;
  background:#fff;
}
.mail-order-section-heading{
  display:flex;
  align-items:center;
  gap:8px;
  padding:10px 11px;
  background:#f8fafc;
  border-bottom:1px solid var(--line);
  color:#344054;
  font-size:12px;
}
.mail-order-section-dot{
  width:9px;height:9px;border-radius:50%;flex:0 0 auto;
}
.mail-order-section-dot.pending{background:#d97706}
.mail-order-section-dot.sent{background:#16a34a}
.mail-order-count{
  margin-left:auto;
  min-width:24px;
  height:22px;
  padding:0 7px;
  display:grid;
  place-items:center;
  border-radius:999px;
  background:#e9eef5;
  color:#475467;
  font-size:11px;
  font-weight:800;
}
.mail-order-section-list{padding:6px}
.mail-order-section-list .order-check{margin:0 0 6px}
.mail-order-section-list .order-check:last-child{margin-bottom:0}
.mail-order-empty{padding:8px 7px;margin:0}
.sent-section .mail-order-section-heading{background:#f6fbf7}
.mail-from-preview{
  display:block;
  margin-top:5px;
  color:#667085;
  font-weight:650;
}

/* Muziek v0.1 heeft pagina-specifieke player-CSS. */

/* Planning v2.7.3 - maandgrid robuust bij lange/veel afspraken
   OUWERKERK PLANNING GRID V2.7.3 */
.planning-weekdays{grid-template-columns:repeat(7,minmax(0,1fr))!important}
.planning-grid{grid-template-columns:repeat(7,minmax(0,1fr))!important}
.planning-day{min-width:0}
.planning-day-events{min-width:0}
.planning-event-chip{min-width:0}

/* =========================================================
   Offertes & Facturen V1.0 - native portalmodule
   Visueel verwant aan Bestellingen, binnen de portal-shell.
   ========================================================= */
.finance-shell{max-width:1160px;margin-top:34px;margin-bottom:60px}.finance-page-head,.finance-editor-toolbar,.finance-current-title,.finance-card-head{display:flex;align-items:center;justify-content:space-between;gap:18px}.finance-page-head{margin-bottom:22px}.finance-page-head h1{margin:3px 0 5px;font-size:30px}.finance-kicker,.finance-current-label{font-size:11px;font-weight:900;letter-spacing:.12em;color:#2457e6}.finance-head-actions,.finance-editor-actions{display:flex;gap:9px;flex-wrap:wrap}.finance-primary{border:0;border-radius:10px;background:#315cf5;color:#fff;font-weight:800;padding:11px 16px;cursor:pointer;box-shadow:0 5px 16px rgba(49,92,245,.15)}.finance-primary:hover{background:#234be0}.finance-primary.compact{padding:9px 14px}.finance-card,.finance-inner-card{background:#fff;border:1px solid #dfe5ee;border-radius:14px}.finance-card{padding:20px}.finance-inner-card{padding:18px;margin-top:13px}.finance-inner-card h3{margin:0 0 16px;font-size:17px}.finance-card-head h2,.finance-card-head h3{margin:0}.finance-search input{min-width:290px}.finance-table-wrap{overflow:auto;margin-top:14px}.finance-list-table{width:100%;border-collapse:collapse}.finance-list-table th{background:#e8efff;color:#234cbf;font-size:12px;text-align:left;padding:10px 12px;border-bottom:1px solid #b8cbff}.finance-list-table td{padding:12px;border-bottom:1px solid #e7ebf1;font-size:13px}.finance-list-table tbody tr{cursor:pointer}.finance-list-table tbody tr:hover{background:#f8faff}.finance-list-table .num{text-align:right}.finance-empty{text-align:center;padding:34px;color:#667085}.finance-badge{display:inline-flex;padding:5px 9px;border-radius:999px;background:#eef2f6;font-size:11px;font-weight:800;text-transform:capitalize}.finance-badge.verzonden{background:#e8f0ff;color:#2447a7}.finance-badge.betaald,.finance-badge.geaccepteerd{background:#e9f8ef;color:#16733a}.finance-badge.vervallen,.finance-badge.afgewezen{background:#fff0f0;color:#aa2b2b}.finance-editor-toolbar{margin-bottom:12px}.finance-current-frame{border:2px solid #315cf5;border-radius:17px;background:#f3f6ff;padding:15px}.finance-current-title{margin:5px 2px 4px}.finance-current-title h2{margin:0 0 4px}.finance-status label{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:800}.finance-status select{min-width:135px}.finance-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 16px}.finance-form-grid label,.finance-text-grid label{display:flex;flex-direction:column;gap:6px;font-size:12px;color:#475467}.finance-form-grid .wide{grid-column:1/-1}.finance-form-grid input,.finance-form-grid select,.finance-text-grid textarea,.finance-search input,.finance-status select,.money-input,.finance-item-row>input,.finance-item-row>select,.finance-item-main input,.finance-item-main textarea,.finance-dialog input,.finance-dialog select{border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#101828;font:inherit;padding:9px 10px;outline:none}.finance-form-grid input:focus,.finance-form-grid select:focus,.finance-text-grid textarea:focus,.finance-item-row input:focus,.finance-item-row select:focus,.finance-item-main input:focus,.finance-item-main textarea:focus,.finance-dialog input:focus,.finance-dialog select:focus{border-color:#315cf5;box-shadow:0 0 0 3px rgba(49,92,245,.09)}.finance-customer-row{display:grid;grid-template-columns:1fr auto;gap:8px}.field-help{font-size:10px;color:#667085}.finance-items-head,.finance-item-row{display:grid;grid-template-columns:minmax(280px,1.7fr) 90px 130px 95px 125px 38px;gap:10px;align-items:start}.finance-items-head{background:#dbe7ff;color:#234cbf;margin:0 -18px;padding:8px 18px;font-size:11px;font-weight:800}.finance-item-row{padding:12px 0;border-bottom:1px solid #e7ebf1}.finance-item-main{display:grid;gap:6px}.finance-item-main textarea{resize:vertical;min-height:55px}.finance-item-row>input,.finance-item-row>select{width:100%}.money-input{display:flex;align-items:center;gap:4px;padding:0 7px}.money-input input{border:0!important;box-shadow:none!important;padding:9px 0!important;min-width:0;width:100%}.i-total{text-align:right;padding-top:10px}.finance-remove{border:0;background:#fff0f0;color:#b42318;border-radius:8px;font-size:19px;line-height:34px;width:34px;height:34px;cursor:pointer}.finance-totals{width:min(460px,100%);margin:18px 0 2px auto;display:grid;gap:4px}.finance-totals>div{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:7px 10px}.finance-totals label{display:flex;align-items:center;gap:8px}.finance-totals input{width:100px;border:1px solid #cbd5e1;border-radius:7px;padding:7px}.finance-totals .grand{background:#e1ebff;border:1px solid #9eb8ff;border-radius:8px;font-size:16px}.finance-text-grid{display:grid;gap:14px}.finance-text-grid textarea{width:100%;resize:vertical}.finance-preview-card{overflow:hidden}.finance-document-preview{background:#fff;border:1px solid #e1e6ee;box-shadow:0 10px 30px rgba(16,24,40,.06);padding:38px;max-width:900px;margin:10px auto 4px;color:#101828}.doc-head{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:15px;border-bottom:2px solid #315cf5;padding-bottom:17px}.doc-head img{width:112px;height:64px;object-fit:contain;object-position:left center}.doc-brand strong,.doc-brand span,.doc-type strong,.doc-type span{display:block}.doc-brand span{font-size:11px;color:#667085;margin-top:3px}.doc-type{text-align:right}.doc-type strong{font-size:19px}.doc-type span{color:#315cf5;font-weight:800;margin-top:4px}.doc-meta{display:grid;grid-template-columns:2fr 1fr 1fr;gap:12px;margin:20px 0}.doc-meta>div{border:1px solid #b8cbff;background:#f6f8ff;border-radius:9px;padding:10px}.doc-meta span{display:block;font-size:9px;color:#315cf5;font-weight:900;letter-spacing:.05em}.doc-meta strong{display:block;margin-top:4px;font-size:13px}.doc-meta small{display:block;color:#667085;margin-top:3px}.finance-document-preview>h2{font-size:22px;margin:21px 0 12px}.finance-document-preview table{width:100%;border-collapse:collapse}.finance-document-preview th{background:#dbe7ff;color:#234cbf;text-align:left;padding:8px;font-size:10px}.finance-document-preview td{padding:10px 8px;border-bottom:1px solid #e6eaf0;font-size:11px;vertical-align:top}.finance-document-preview td:not(:first-child),.finance-document-preview th:not(:first-child){text-align:right}.finance-document-preview td small{display:block;color:#667085;margin-top:4px;white-space:pre-wrap}.doc-empty{text-align:center!important;color:#667085}.doc-totals{width:330px;margin:16px 0 14px auto}.doc-totals>div{display:flex;justify-content:space-between;padding:5px 7px;font-size:12px}.doc-totals .doc-grand{background:#e1ebff;border:1px solid #9eb8ff;border-radius:7px;font-size:14px;margin-top:4px}.doc-payment{border:1px solid #9eb8ff;background:#f3f6ff;border-radius:9px;padding:12px 14px;margin-top:18px}.doc-payment strong,.doc-payment span,.doc-payment small{display:block}.doc-payment span{font-size:13px;margin-top:4px}.doc-payment small{color:#667085;margin-top:3px}.doc-note{margin-top:15px;border-top:1px solid #e6eaf0;padding-top:12px}.doc-note strong{font-size:11px;color:#315cf5;text-transform:uppercase}.doc-note p{font-size:11px;line-height:1.55;margin:6px 0 0}.finance-dialog{width:min(790px,94vw);border:0;border-radius:16px;padding:22px;box-shadow:0 25px 80px rgba(16,24,40,.25)}.finance-dialog::backdrop{background:rgba(16,24,40,.45)}.customer-grid{margin-top:18px}.finance-dialog-actions{display:flex;justify-content:space-between;gap:10px;margin-top:18px}.finance-customer-list{margin-top:20px;padding-top:16px;border-top:1px solid #e7ebf1}.finance-customer-list>div{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:9px}.finance-customer-list button{border:1px solid #dfe5ee;background:#fff;border-radius:9px;padding:9px 10px;text-align:left;display:flex;justify-content:space-between;cursor:pointer}.finance-customer-list button:hover{border-color:#9eb8ff;background:#f8faff}.finance-customer-list button strong,.finance-customer-list button small{display:block}.finance-customer-list button small{color:#667085;margin-top:3px}.finance-notice{padding:10px 13px;margin-bottom:12px;border-radius:9px;background:#e9f8ef;color:#16733a;font-weight:700;font-size:12px}.finance-notice.bad{background:#fff0f0;color:#aa2b2b}
@media(max-width:900px){.finance-page-head,.finance-editor-toolbar,.finance-current-title{align-items:flex-start;flex-direction:column}.finance-form-grid{grid-template-columns:1fr}.finance-form-grid .wide{grid-column:auto}.finance-items-head{display:none}.finance-item-row{grid-template-columns:1fr 1fr}.finance-item-main{grid-column:1/-1}.i-total{text-align:left}.finance-customer-list>div{grid-template-columns:1fr}.doc-meta{grid-template-columns:1fr}.finance-document-preview{padding:20px}.finance-search input{min-width:0;width:100%}}@media(max-width:560px){.finance-shell{padding:0 12px}.finance-current-frame{padding:10px}.finance-inner-card{padding:13px}.finance-customer-row{grid-template-columns:1fr}.finance-item-row{grid-template-columns:1fr}.finance-item-main{grid-column:auto}.finance-head-actions,.finance-editor-actions{width:100%}.finance-head-actions button,.finance-editor-actions button{flex:1}.doc-head{grid-template-columns:1fr}.doc-type{text-align:left}.doc-head img{width:95px}.doc-totals{width:100%}}

/* =========================================================
   Offertes & Facturen V1.1 - beheer, klanten en nette regels
   ========================================================= */
.finance-link-button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;box-sizing:border-box}
.finance-manage-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:0 0 14px}
.finance-stat{background:#fff;border:1px solid #dfe5ee;border-radius:12px;padding:15px 17px;box-shadow:0 4px 14px rgba(16,24,40,.03)}
.finance-stat span{display:block;font-size:11px;color:#667085;font-weight:700;margin-bottom:5px}.finance-stat strong{font-size:24px;color:#101828}
.finance-manage-head{align-items:flex-end}.finance-list-table tbody tr td:first-child strong{color:#101828}
.finance-document-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.finance-lines-card{overflow:hidden}.finance-lines-card>.finance-card-head{padding-bottom:14px}
.finance-items-head,.finance-item-row{grid-template-columns:minmax(300px,1fr) 90px 130px 95px 130px 38px;column-gap:10px}
.finance-items-head{margin:0 -18px;padding:9px 18px}
.finance-items{display:grid;gap:0}
.finance-item-row{padding:14px 0 16px;align-items:center;border-bottom:1px solid #e3e8ef}
.finance-item-row>.i-desc,.finance-item-row>.i-qty,.finance-item-row>.i-vat{height:42px;box-sizing:border-box}
.finance-item-row>.money-input{height:42px;box-sizing:border-box}
.finance-item-row>.i-total{padding:0;text-align:right;align-self:center;font-size:14px;color:#101828}
.finance-item-row>.finance-remove{align-self:center}
.finance-item-row>.i-details{grid-column:1/5;width:100%;box-sizing:border-box;min-height:58px;margin-top:-2px;resize:vertical;border:1px solid #d7dee9;border-radius:8px;background:#fbfcfe;color:#344054;font:inherit;padding:9px 10px;outline:none}
.finance-item-row>.i-details:focus{border-color:#315cf5;box-shadow:0 0 0 3px rgba(49,92,245,.09);background:#fff}
.finance-totals-wrap{display:flex;justify-content:flex-end;padding-top:10px}.finance-totals{margin:10px 0 2px;width:min(470px,100%)}
.finance-customer-list button,.finance-customer-list button strong,.finance-customer-list button span{color:#101828!important}
.finance-customers-layout{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr);gap:16px;align-items:start}
.finance-customer-editor{position:sticky;top:18px}.finance-customer-cards{display:grid;gap:9px;margin-top:14px}
.finance-customer-card{width:100%;border:1px solid #dfe5ee;background:#fff;border-radius:11px;padding:13px 14px;display:flex;align-items:center;justify-content:space-between;gap:16px;text-align:left;cursor:pointer;color:#101828!important}
.finance-customer-card:hover{border-color:#9eb8ff;background:#f8faff}.finance-customer-card strong,.finance-customer-card span,.finance-customer-card small{display:block;color:#101828!important}
.finance-customer-card span{font-size:12px;margin-top:4px}.finance-customer-card small{font-size:11px;color:#667085!important;margin-top:3px}
.finance-customer-term{min-width:105px;text-align:right}.finance-customer-term span{font-size:10px;color:#667085!important;margin:0 0 3px}.finance-customer-term strong{font-size:12px}
@media(max-width:900px){.finance-manage-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-customers-layout{grid-template-columns:1fr}.finance-customer-editor{position:static}.finance-item-row{grid-template-columns:1fr 90px 120px}.finance-item-row>.i-desc{grid-column:1/-1}.finance-item-row>.i-vat{grid-column:1}.finance-item-row>.i-total{grid-column:2;text-align:left}.finance-item-row>.finance-remove{grid-column:3;justify-self:end}.finance-item-row>.i-details{grid-column:1/-1}}
@media(max-width:560px){.finance-manage-stats{grid-template-columns:1fr 1fr}.finance-customer-card{align-items:flex-start;flex-direction:column}.finance-customer-term{text-align:left}.finance-item-row{grid-template-columns:1fr 1fr}.finance-item-row>.i-desc,.finance-item-row>.i-details{grid-column:1/-1}.finance-item-row>.money-input{grid-column:1}.finance-item-row>.i-qty{grid-column:2}.finance-item-row>.i-vat{grid-column:1}.finance-item-row>.i-total{grid-column:2;text-align:right}.finance-item-row>.finance-remove{grid-column:2;justify-self:end}.finance-document-grid{grid-template-columns:1fr}}

/* =========================================================
   OFFERTES / FACTUREN V1.2 - klantdossier + klantportaal
   ========================================================= */
.doc-head-business{grid-template-columns:125px minmax(0,1fr) auto;align-items:start}
.doc-head-business img{width:115px;height:72px}
.doc-company-details{font-size:10px;line-height:1.5;color:#344054;padding-top:1px}
.doc-company-details strong,.doc-company-details span{display:block}
.doc-company-details strong{font-size:11px;color:#101828;margin-bottom:2px}
.finance-customer-detail-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(330px,.65fr);gap:16px;align-items:start;margin-bottom:16px}
.finance-customer-detail-shell textarea{width:100%;resize:vertical}
.finance-customer-documents-card{margin-top:0}
.finance-portal-state{margin:4px 0 16px}
.finance-portal-active,.finance-portal-inactive{border:1px solid #dfe5ee;border-radius:10px;padding:11px 13px;background:#f8fafc}
.finance-portal-active{border-color:#9ed8b2;background:#f0fbf4}.finance-portal-active strong,.finance-portal-active span,.finance-portal-inactive strong,.finance-portal-inactive span{display:block}.finance-portal-active span,.finance-portal-inactive span{font-size:11px;color:#667085;margin-top:3px}
.finance-portal-url{margin-top:14px;padding-top:12px;border-top:1px solid #e7ebf1;font-size:12px;color:#475467}.finance-portal-url code{background:#f2f4f7;border-radius:5px;padding:3px 6px;color:#344054}
.danger-text{color:#b42318!important}
.customer-login-theme{margin-top:18px;width:100%}
.customer-portal-documents{display:grid;gap:9px;margin-top:12px}
.customer-portal-document{width:100%;border:1px solid var(--supplier-border,#dfe5ee);background:var(--supplier-card,#fff);border-radius:12px;padding:14px 15px;display:flex;justify-content:space-between;align-items:center;gap:16px;text-align:left;color:inherit;cursor:pointer}
.customer-portal-document:hover{border-color:#86a7ff;transform:translateY(-1px)}
.customer-portal-document strong,.customer-portal-document small,.customer-doc-type{display:block}.customer-portal-document small{margin-top:4px;color:var(--supplier-muted,#667085)}
.customer-doc-type{font-size:10px;font-weight:800;letter-spacing:.06em;color:#315cf5;text-transform:uppercase;margin-bottom:3px}.customer-doc-right{text-align:right;display:flex;align-items:flex-end;flex-direction:column;gap:7px;min-width:120px}
.customer-portal-meta{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0}.customer-portal-meta>div{border:1px solid var(--supplier-border,#dfe5ee);background:var(--supplier-card,#fff);border-radius:10px;padding:11px}.customer-portal-meta span,.customer-portal-meta strong{display:block}.customer-portal-meta span{font-size:10px;color:var(--supplier-muted,#667085);text-transform:uppercase;font-weight:800}.customer-portal-meta strong{margin-top:4px}
.customer-portal-lines{border-top:1px solid var(--supplier-border,#dfe5ee);margin-top:8px}.customer-portal-lines>div{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:18px;align-items:start;padding:12px 2px;border-bottom:1px solid var(--supplier-border,#dfe5ee)}.customer-portal-lines small{display:block;color:var(--supplier-muted,#667085);margin-top:4px;white-space:pre-wrap}.customer-portal-page .doc-payment{color:inherit;background:var(--supplier-card,#fff);border-color:#86a7ff}
html[data-theme="dark"] .customer-portal-document,html[data-theme="dark"] .customer-portal-meta>div,html[data-theme="dark"] .customer-portal-page .doc-payment{background:#162033;border-color:#34445f;color:#edf3ff}.customer-portal-page .finance-badge{color:#101828}
@media(max-width:900px){.finance-customer-detail-grid{grid-template-columns:1fr}.customer-portal-meta{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.doc-head-business{grid-template-columns:1fr}.customer-portal-document{align-items:flex-start;flex-direction:column}.customer-doc-right{text-align:left;align-items:flex-start}.customer-portal-meta{grid-template-columns:1fr}.customer-portal-lines>div{grid-template-columns:1fr}.customer-portal-lines>div>span,.customer-portal-lines>div>strong{text-align:left}}

/* =========================================================
   OFFERTES / FACTUREN V1.3 - nette regels, standaardteksten,
   snelle klantaanmaak en verificatie-login
   ========================================================= */
.finance-items{gap:12px}.finance-item-row{display:block!important;padding:0!important;border:0!important}.finance-item-grid{display:grid;grid-template-columns:minmax(280px,1.7fr) 90px 145px 95px 135px 38px;gap:10px 12px;align-items:end;padding:14px;border:1px solid #dfe5ee;border-radius:12px;background:#fbfcff}.finance-item-row:focus-within .finance-item-grid{border-color:#b8cbff;box-shadow:0 0 0 3px rgba(49,92,245,.06);background:#fff}.finance-item-field{display:flex;flex-direction:column;gap:6px;min-width:0;font-size:10px;font-weight:800;color:#667085;text-transform:uppercase;letter-spacing:.025em}.finance-item-field input,.finance-item-field select,.finance-item-field textarea{width:100%;box-sizing:border-box;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#101828;font:inherit;font-size:13px;font-weight:500;text-transform:none;letter-spacing:normal;padding:9px 10px;outline:none}.finance-item-field input:focus,.finance-item-field select:focus,.finance-item-field textarea:focus{border-color:#315cf5;box-shadow:0 0 0 3px rgba(49,92,245,.09)}.finance-item-field .money-input{height:40px;background:#fff;box-sizing:border-box}.finance-item-field .money-input input{height:auto}.finance-item-product{grid-column:1}.finance-item-details{grid-column:1/6}.finance-item-details small{font-weight:600;text-transform:none;letter-spacing:0}.finance-item-total{height:40px;display:flex;flex-direction:column;align-items:flex-end;justify-content:center;padding-bottom:1px}.finance-item-total span{font-size:10px;font-weight:800;color:#667085;text-transform:uppercase}.finance-item-total strong{font-size:14px;color:#101828;margin-top:3px}.finance-item-delete{align-self:end;margin-bottom:3px}.finance-lines-card{overflow:visible}.finance-lines-card>.finance-card-head{margin-bottom:2px}.finance-totals-wrap{padding-top:4px}.finance-totals{border-top:1px solid #e7ebf1;padding-top:12px}
.finance-quick-customer-dialog{width:min(760px,94vw)}.finance-quick-customer-dialog .finance-card-head{align-items:flex-start}.finance-quick-customer-dialog .finance-remove{flex:0 0 auto}.finance-credential-box{margin-top:16px;border:1px solid #9eb8ff;background:#f3f6ff;border-radius:10px;padding:12px 14px;color:#101828}.finance-credential-box strong,.finance-credential-box span,.finance-credential-box small{display:block}.finance-credential-box span{margin-top:5px}.finance-credential-box code{display:inline-block;background:#fff;border:1px solid #cbd5e1;border-radius:5px;padding:2px 6px;font-weight:900;letter-spacing:.06em}.finance-credential-box small{margin-top:7px;color:#667085;line-height:1.45}.finance-settings-shell{max-width:1000px}.finance-settings-card{margin-bottom:14px}.finance-settings-actions{position:sticky;bottom:12px;display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:18px;padding:12px 14px;background:rgba(255,255,255,.96);border:1px solid #dfe5ee;border-radius:12px;box-shadow:0 10px 30px rgba(16,24,40,.08);backdrop-filter:blur(8px)}.finance-settings-card input{border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#101828;font:inherit;padding:9px 10px;outline:none}.finance-settings-card input:focus{border-color:#315cf5;box-shadow:0 0 0 3px rgba(49,92,245,.09)}
@media(max-width:980px){.finance-item-grid{grid-template-columns:minmax(220px,1fr) 85px 130px 90px 120px 38px}.finance-item-details{grid-column:1/6}}
@media(max-width:760px){.finance-item-grid{grid-template-columns:1fr 1fr}.finance-item-product,.finance-item-details{grid-column:1/-1}.finance-item-total{align-items:flex-start}.finance-item-delete{grid-column:2;justify-self:end}.finance-settings-actions{position:static;align-items:stretch;flex-direction:column}}

/* =========================================================
   OFFERTES & FACTUREN V1.4 - gerichte correcties
   ========================================================= */
.finance-badge.nietig{background:#f2f4f7;color:#667085;text-decoration:line-through}
.finance-manage-tools{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.finance-manage-tools .secondary-button.active{background:#eef2f6;border-color:#98a2b3}.finance-manage-tools #voidCount{display:inline-flex;min-width:20px;height:20px;align-items:center;justify-content:center;margin-left:4px;border-radius:999px;background:#e4e7ec;font-size:10px}.finance-invoice-amounts{margin:0 0 14px}.finance-period-select{display:flex;align-items:center;gap:8px;font-size:12px;font-weight:800;color:#475467}.finance-period-select select{border:1px solid #cbd5e1;border-radius:8px;background:#fff;padding:9px 10px;color:#101828}.finance-amount-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:16px}.finance-amount-stats>div{border:1px solid #dfe5ee;border-radius:12px;padding:16px;background:#fbfcff}.finance-amount-stats span{display:block;font-size:11px;color:#667085;font-weight:800}.finance-amount-stats strong{display:block;margin-top:7px;font-size:22px;color:#101828}

/* De regel-editor gebruikt één voorspelbaar grid. Hiermee overschrijven we
   bewust de oudere regelstijlen zonder andere portalonderdelen te wijzigen. */
.finance-lines-card .finance-items{display:grid!important;gap:12px!important}.finance-lines-card .finance-item-row{display:block!important;padding:0!important;border:0!important;min-width:0}.finance-lines-card .finance-item-grid{display:grid!important;grid-template-columns:minmax(0,1fr) 86px 138px 92px 126px 38px!important;grid-template-areas:"product qty price vat total delete" "details details details details details .";gap:10px 12px!important;align-items:end!important;padding:14px!important;border:1px solid #dfe5ee!important;border-radius:12px!important;background:#fbfcff!important;box-sizing:border-box!important;min-width:0!important}.finance-lines-card .finance-item-grid>*{min-width:0!important}.finance-lines-card .finance-item-product{grid-area:product!important}.finance-lines-card .finance-item-qty{grid-area:qty!important}.finance-lines-card .finance-item-price{grid-area:price!important}.finance-lines-card .finance-item-vat{grid-area:vat!important}.finance-lines-card .finance-item-total{grid-area:total!important;height:40px!important;align-items:flex-end!important;justify-content:center!important;padding:0!important}.finance-lines-card .finance-item-delete{grid-area:delete!important;align-self:end!important;margin:0 0 3px!important}.finance-lines-card .finance-item-details{grid-area:details!important}.finance-lines-card .finance-item-field{display:flex!important;flex-direction:column!important;gap:6px!important;font-size:10px!important;font-weight:800!important;color:#667085!important;text-transform:uppercase!important;letter-spacing:.025em!important}.finance-lines-card .finance-item-field input,.finance-lines-card .finance-item-field select,.finance-lines-card .finance-item-field textarea{display:block!important;width:100%!important;max-width:100%!important;box-sizing:border-box!important;border:1px solid #cbd5e1!important;border-radius:8px!important;background:#fff!important;color:#101828!important;font:inherit!important;font-size:13px!important;font-weight:500!important;text-transform:none!important;letter-spacing:normal!important;padding:9px 10px!important;outline:none!important}.finance-lines-card .finance-item-field .money-input{display:flex!important;align-items:center!important;width:100%!important;height:40px!important;box-sizing:border-box!important;border:1px solid #cbd5e1!important;border-radius:8px!important;background:#fff!important;padding:0 9px!important}.finance-lines-card .finance-item-field .money-input input{border:0!important;padding:9px 0!important;box-shadow:none!important}.finance-lines-card .finance-item-details textarea{min-height:62px!important;resize:vertical!important}.finance-lines-card .finance-item-total span{font-size:10px!important;font-weight:800!important;color:#667085!important;text-transform:uppercase!important}.finance-lines-card .finance-item-total strong{font-size:14px!important;color:#101828!important;margin-top:3px!important;white-space:nowrap!important}

.finance-document-preview .doc-head img{width:145px;height:82px}.finance-document-preview .doc-type .doc-number-only{font-size:18px;color:#101828;font-weight:900;white-space:nowrap}.finance-document-preview .doc-lines-table{display:table!important;width:100%!important;table-layout:fixed!important}.finance-document-preview .doc-lines-table th:nth-child(1),.finance-document-preview .doc-lines-table td:nth-child(1){width:46%;text-align:left!important}.finance-document-preview .doc-lines-table th:nth-child(2),.finance-document-preview .doc-lines-table td:nth-child(2){width:10%}.finance-document-preview .doc-lines-table th:nth-child(3),.finance-document-preview .doc-lines-table td:nth-child(3){width:15%}.finance-document-preview .doc-lines-table th:nth-child(4),.finance-document-preview .doc-lines-table td:nth-child(4){width:10%}.finance-document-preview .doc-lines-table th:nth-child(5),.finance-document-preview .doc-lines-table td:nth-child(5){width:19%}.finance-document-preview .doc-lines-table tr{display:table-row!important}.finance-document-preview .doc-lines-table th,.finance-document-preview .doc-lines-table td{display:table-cell!important;word-break:normal!important;overflow-wrap:anywhere!important}

.customer-password-rules{font-size:11px;line-height:1.5;color:var(--supplier-muted,#667085);margin-top:-4px}.customer-portal-lines-table{overflow-x:auto}.customer-portal-lines-table .customer-line-head,.customer-portal-lines-table .customer-line-row{display:grid!important;grid-template-columns:minmax(220px,1fr) 72px 112px 72px 120px!important;gap:12px!important;align-items:start!important}.customer-portal-lines-table .customer-line-head{padding:9px 2px!important;font-size:10px;font-weight:900;text-transform:uppercase;color:var(--supplier-muted,#667085);border-bottom:1px solid var(--supplier-border,#dfe5ee)}.customer-portal-lines-table .customer-line-row>span,.customer-portal-lines-table .customer-line-row>strong{text-align:right}.customer-portal-lines-table .customer-line-row>div{text-align:left}.customer-quote-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px;padding-top:16px;border-top:1px solid var(--supplier-border,#dfe5ee)}.customer-reject-button{color:#b42318}.customer-confetti{position:fixed;inset:0;z-index:9999;pointer-events:none;overflow:hidden}.customer-confetti span{position:absolute;top:-8vh;font-size:18px;animation:customer-confetti-fall 2.4s cubic-bezier(.2,.7,.3,1) forwards}.customer-confetti span:nth-child(4n+1){color:#315cf5}.customer-confetti span:nth-child(4n+2){color:#f4b400}.customer-confetti span:nth-child(4n+3){color:#14a44d}.customer-confetti span:nth-child(4n){color:#e83e8c}@keyframes customer-confetti-fall{0%{transform:translateY(-10vh) rotate(0deg);opacity:1}100%{transform:translateY(115vh) rotate(760deg);opacity:.85}}

@media print{.finance-document-preview .doc-head{grid-template-columns:auto 1fr auto!important}.finance-document-preview .doc-meta{grid-template-columns:2fr 1fr 1fr!important}.finance-document-preview .doc-lines-table{display:table!important}.finance-document-preview .doc-lines-table tr{display:table-row!important}.finance-document-preview .doc-lines-table th,.finance-document-preview .doc-lines-table td{display:table-cell!important}}
@media(max-width:900px){.finance-amount-stats{grid-template-columns:1fr}.finance-lines-card .finance-item-grid{grid-template-columns:minmax(0,1fr) 86px 132px!important;grid-template-areas:"product product product" "qty price vat" "details details details" "total total delete"!important}.finance-lines-card .finance-item-total{align-items:flex-start!important}.finance-lines-card .finance-item-delete{justify-self:end!important}.customer-portal-lines-table .customer-line-head,.customer-portal-lines-table .customer-line-row{min-width:650px}}
@media(max-width:560px){.finance-manage-tools{width:100%;align-items:stretch;flex-direction:column}.finance-manage-tools .finance-search input{width:100%}.finance-lines-card .finance-item-grid{grid-template-columns:1fr 1fr!important;grid-template-areas:"product product" "qty vat" "price price" "details details" "total delete"!important}.finance-lines-card .finance-item-delete{justify-self:end!important}.finance-document-preview .doc-head img{width:120px;height:70px}.customer-quote-actions{flex-direction:column-reverse}.customer-quote-actions button{width:100%}}

/* =========================================================
   OFFERTES & FACTUREN V1.5
   Stabiele regel-editor, vaste financiële navigatie en klantportaal
   ========================================================= */
.finance-module-nav{position:sticky;top:0;z-index:40;display:flex;justify-content:center;gap:8px;padding:9px 18px;background:rgba(255,255,255,.96);border-bottom:1px solid #e2e8f0;backdrop-filter:blur(10px)}
.finance-module-nav a{display:inline-flex;align-items:center;justify-content:center;min-width:112px;padding:9px 16px;border:1px solid #d5deeb;border-radius:10px;background:#fff;color:#234a85;text-decoration:none;font-weight:800;font-size:13px}
.finance-module-nav a:hover,.finance-module-nav a.active{background:#315cf5;border-color:#315cf5;color:#fff;box-shadow:0 5px 15px rgba(49,92,245,.18)}

/* Regel-editor: één gedeelde kop en exact dezelfde kolommen per regel. */
.finance-lines-card{overflow-x:auto!important}
.finance-item-editor-head,.finance-item-editor{display:grid;grid-template-columns:minmax(240px,1fr) 82px 132px 82px 112px 122px 38px;column-gap:10px;min-width:900px;box-sizing:border-box}
.finance-item-editor-head{align-items:end;margin:12px 0 0;padding:0 12px 7px;color:#52627a;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.035em;border-bottom:1px solid #dfe6f1}
.finance-items{display:block!important;min-width:900px}
.finance-lines-card .finance-item-row{display:block!important;padding:0!important;border:0!important;margin:0!important;min-width:900px!important}
.finance-lines-card .finance-item-editor{align-items:center;padding:12px;border-bottom:1px solid #e3e8ef;background:#fff}
.finance-lines-card .finance-item-row:last-child .finance-item-editor{border-bottom:0}
.finance-lines-card .finance-item-cell{min-width:0;display:flex;align-items:center;height:42px}
.finance-lines-card .finance-item-cell input,.finance-lines-card .finance-item-cell select{width:100%;height:40px;min-width:0;box-sizing:border-box;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#101828;padding:8px 10px;font:inherit;font-size:13px;outline:none}
.finance-lines-card .finance-item-cell input:focus,.finance-lines-card .finance-item-cell select:focus,.finance-lines-card .finance-item-description textarea:focus{border-color:#315cf5;box-shadow:0 0 0 3px rgba(49,92,245,.09)}
.finance-lines-card .finance-price-box{display:flex;width:100%;height:40px;align-items:center;box-sizing:border-box;border:1px solid #cbd5e1;border-radius:8px;background:#fff;padding:0 9px;gap:4px}
.finance-lines-card .finance-price-box:focus-within{border-color:#315cf5;box-shadow:0 0 0 3px rgba(49,92,245,.09)}
.finance-lines-card .finance-price-box input{height:36px!important;border:0!important;border-radius:0!important;padding:7px 0!important;box-shadow:none!important;background:transparent!important}
.finance-lines-card .finance-item-cell.vatamount,.finance-lines-card .finance-item-cell.total{justify-content:flex-end;text-align:right;font-size:13px;white-space:nowrap}
.finance-lines-card .finance-item-cell.total strong{font-size:14px;color:#101828}
.finance-lines-card .finance-item-cell.vatamount strong{color:#475467}
.finance-lines-card .finance-item-cell.delete{justify-content:flex-end}
.finance-lines-card .finance-item-description{grid-column:1 / 7;padding-top:9px;min-width:0}
.finance-lines-card .finance-item-description label{display:flex;flex-direction:column;gap:5px;color:#667085;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.025em}
.finance-lines-card .finance-item-description label small{font-weight:500;text-transform:none;letter-spacing:0}
.finance-lines-card .finance-item-description textarea{width:100%;min-height:58px;box-sizing:border-box;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#101828;padding:9px 10px;font:inherit;font-size:13px;resize:vertical;outline:none}
.finance-lines-card .finance-remove{margin:0!important;align-self:center!important}

.finance-quote-groups{display:grid;gap:16px;margin-top:15px}
.finance-status-group{border:1px solid #dfe5ee;border-radius:12px;overflow:hidden;background:#fff}
.finance-status-group-head{display:flex;align-items:center;justify-content:space-between;padding:12px 14px;background:#f7f9fc;border-bottom:1px solid #e5eaf1}
.finance-status-group-head h3{margin:0;font-size:15px}.finance-status-group-head span{display:inline-flex;min-width:27px;height:27px;align-items:center;justify-content:center;border-radius:999px;background:#e6edff;color:#2447a7;font-weight:800;font-size:12px}
.finance-status-group .finance-table-wrap{margin-top:0}.finance-status-empty{padding:18px 14px;color:#667085;font-size:13px}

/* Klantportaal navigatie en meldingen */
.customer-portal-shell{max-width:1160px}
.customer-top-actions{position:relative}
.customer-notification-wrap{position:relative}
.customer-notification-button{position:relative;width:40px;height:40px;border:1px solid var(--supplier-border,#dfe5ee);border-radius:10px;background:var(--supplier-card,#fff);color:var(--supplier-text,#101828);font-size:19px;cursor:pointer}
.customer-count-badge{display:inline-flex;align-items:center;justify-content:center;min-width:19px;height:19px;padding:0 5px;border-radius:999px;background:#315cf5;color:#fff;font-size:10px;font-weight:900;line-height:1}
.customer-notification-button .customer-count-badge{position:absolute;right:-6px;top:-6px;border:2px solid var(--supplier-card,#fff)}
.customer-notification-panel{position:absolute;right:0;top:48px;width:min(380px,88vw);max-height:430px;overflow:auto;background:var(--supplier-card,#fff);border:1px solid var(--supplier-border,#dfe5ee);border-radius:14px;box-shadow:0 18px 50px rgba(16,24,40,.18);z-index:80;padding:8px}
.customer-notification-head{display:flex;justify-content:space-between;align-items:center;padding:8px 9px 10px;border-bottom:1px solid var(--supplier-border,#dfe5ee);margin-bottom:4px}.customer-notification-head span{font-size:11px;color:var(--supplier-muted,#667085)}
.customer-notification-panel>button{display:block;width:100%;border:0;background:transparent;color:inherit;text-align:left;padding:10px;border-radius:9px;cursor:pointer}.customer-notification-panel>button:hover{background:rgba(49,92,245,.08)}.customer-notification-panel>button strong,.customer-notification-panel>button small{display:block}.customer-notification-panel>button small{margin-top:3px;color:var(--supplier-muted,#667085)}
.customer-portal-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:0 0 16px}
.customer-portal-tabs button{min-height:52px;border:1px solid var(--supplier-border,#dfe5ee);border-radius:13px;background:var(--supplier-card,#fff);color:var(--supplier-text,#101828);font-weight:900;font-size:14px;cursor:pointer}.customer-portal-tabs button.active{background:#315cf5;border-color:#315cf5;color:#fff;box-shadow:0 7px 20px rgba(49,92,245,.18)}.customer-portal-tabs button .customer-count-badge{margin-left:6px;background:#e5484d}.customer-portal-tabs button.active .customer-count-badge{background:#fff;color:#315cf5}
.customer-portal-document.is-new{border-color:#315cf5;box-shadow:0 0 0 2px rgba(49,92,245,.08)}.customer-doc-type{display:flex!important;align-items:center;gap:7px}.customer-doc-type b{display:inline-flex;background:#315cf5;color:#fff;border-radius:999px;padding:2px 6px;font-size:9px;text-transform:uppercase}
.customer-doc-right small{display:block;margin-top:4px;color:var(--supplier-muted,#667085)}
.customer-detail-actions{display:flex;gap:8px;flex-wrap:wrap}.customer-open-meta{border-color:#86a7ff!important;background:rgba(49,92,245,.06)!important}
.customer-question-row{display:flex;justify-content:flex-end;padding-top:16px;margin-top:16px;border-top:1px solid var(--supplier-border,#dfe5ee)}
.customer-message-reference{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;margin-bottom:12px;border-radius:10px;background:rgba(49,92,245,.08);border:1px solid rgba(49,92,245,.2)}.customer-message-reference button{border:0;background:transparent;color:inherit;font-size:19px;cursor:pointer}
.customer-message-thread,.finance-message-thread{display:flex;flex-direction:column;gap:10px;max-height:480px;overflow:auto;padding:12px;border:1px solid var(--supplier-border,#dfe5ee);border-radius:12px;background:var(--supplier-bg,#f7f9fc)}
.customer-chat-message,.finance-chat-message{max-width:78%;padding:10px 12px;border-radius:13px;background:var(--supplier-card,#fff);border:1px solid var(--supplier-border,#dfe5ee)}.customer-chat-message.mine,.finance-chat-message.mine{align-self:flex-end;background:#e8efff;border-color:#b8cbff;color:#10265c}.customer-chat-message.theirs,.finance-chat-message.theirs{align-self:flex-start}.customer-chat-message>div,.finance-chat-message>div{display:flex;justify-content:space-between;gap:14px;font-size:10px}.customer-chat-message time,.finance-chat-message time{color:var(--supplier-muted,#667085)}.customer-chat-message p,.finance-chat-message p{margin:5px 0 0;font-size:13px;line-height:1.5}.customer-chat-message small{display:block;margin-top:5px;color:var(--supplier-muted,#667085)}
.customer-message-form,.finance-message-form{display:grid;grid-template-columns:1fr auto;gap:10px;margin-top:12px;align-items:end}.customer-message-form textarea,.finance-message-form textarea{width:100%;box-sizing:border-box;border:1px solid var(--supplier-border,#cbd5e1);border-radius:10px;background:var(--supplier-card,#fff);color:inherit;padding:10px;font:inherit;resize:vertical}.finance-message-form textarea{color:#101828}.finance-customer-messages-card{margin-top:18px}.finance-message-thread{--supplier-bg:#f8faff;--supplier-card:#fff;--supplier-border:#dfe5ee;--supplier-muted:#667085}

/* Zes vaste kolommen inclusief btw-bedrag. */
.customer-portal-lines-table .customer-line-head,.customer-portal-lines-table .customer-line-row{grid-template-columns:minmax(220px,1fr) 68px 104px 62px 108px 116px!important;min-width:760px}

.customer-print-page{background:#fff;color:#101828;padding:30px;font-family:Arial,sans-serif}.customer-print-document{max-width:900px;margin:0 auto}.customer-print-head{display:flex;align-items:center;justify-content:space-between;border-bottom:2px solid #315cf5;padding-bottom:16px}.customer-print-head img{width:145px;height:88px;object-fit:contain;object-position:left center}.customer-print-head strong{font-size:18px}.customer-print-document h1{font-size:24px;margin:22px 0 5px}.customer-print-meta{display:flex;gap:25px;margin:15px 0 22px;font-size:12px}.customer-print-document table{width:100%;border-collapse:collapse;font-size:11px}.customer-print-document th{background:#dbe7ff;text-align:left;padding:8px}.customer-print-document th:not(:first-child),.customer-print-document td:not(:first-child){text-align:right}.customer-print-document td{padding:9px 8px;border-bottom:1px solid #e5e9ef;vertical-align:top}.customer-print-document td small{display:block;margin-top:3px;color:#667085}.customer-print-total{width:320px;margin:15px 0 0 auto;padding:8px 10px;display:flex;justify-content:space-between;border-top:1px solid #dfe5ee}.customer-print-total.open{background:#e8efff;border:1px solid #9db7ff;border-radius:8px;font-size:15px}

html[data-theme="dark"] .customer-notification-button,html[data-theme="dark"] .customer-notification-panel,html[data-theme="dark"] .customer-portal-tabs button{background:#162033;border-color:#34445f;color:#edf3ff}html[data-theme="dark"] .customer-portal-tabs button.active{background:#315cf5;border-color:#315cf5}html[data-theme="dark"] .customer-chat-message.mine{background:#263c75;border-color:#3f5fa8;color:#fff}html[data-theme="dark"] .customer-message-thread{background:#101827}

@media(max-width:980px){.finance-item-editor-head,.finance-item-editor,.finance-items,.finance-lines-card .finance-item-row{min-width:820px!important}.finance-item-editor-head,.finance-item-editor{grid-template-columns:minmax(210px,1fr) 72px 120px 76px 104px 112px 36px}.finance-lines-card .finance-item-description{grid-column:1 / 7}.customer-portal-tabs{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:650px){.finance-module-nav{justify-content:stretch;padding:8px}.finance-module-nav a{min-width:0;flex:1;padding:9px 8px}.customer-portal-tabs{grid-template-columns:1fr}.customer-message-form,.finance-message-form{grid-template-columns:1fr}.customer-message-form button,.finance-message-form button{width:100%}.customer-detail-actions{width:100%}.customer-detail-actions button{flex:1}.customer-question-row button{width:100%}.customer-chat-message,.finance-chat-message{max-width:92%}}

/* =========================================================
   Offertes & Facturen V1.6
   Navigatie, documentregels, A4-opmaak, chat en instellingen.
   ========================================================= */
.finance-module-nav{display:grid!important;grid-template-columns:minmax(150px,1fr) auto minmax(150px,1fr)!important;align-items:center!important;gap:18px!important;padding:10px max(18px,calc((100vw - 1160px)/2))!important;top:0}
.finance-module-brand{justify-self:start!important;border:0!important;background:transparent!important;box-shadow:none!important;padding:8px 0!important;min-width:0!important;color:#163c82!important;font-size:15px!important;font-weight:900!important;white-space:nowrap}
.finance-module-brand:hover{background:transparent!important;color:#315cf5!important}
.finance-module-main{display:flex;align-items:center;justify-content:center;gap:8px}
.finance-module-main>a{min-width:112px}
.finance-module-tools{justify-self:end;display:flex;align-items:center;gap:8px}
.finance-module-icon{width:40px!important;height:40px!important;min-width:40px!important;padding:0!important;border-radius:999px!important;font-size:19px!important;line-height:1!important}
.finance-module-icon.active{background:#315cf5!important;color:#fff!important}

/* De invoerregels gebruiken één echte CSS-grid zonder geforceerde min-width.
   Hierdoor blijven alle kolommen op desktop op exact dezelfde plek en wordt
   op kleinere schermen bewust gestapeld in plaats van half uit beeld geschoven. */
.finance-lines-card{overflow:visible!important}
.finance-lines-card .finance-item-editor-head,
.finance-lines-card .finance-item-editor{width:100%!important;min-width:0!important;box-sizing:border-box!important;display:grid!important;grid-template-columns:minmax(220px,2.6fr) minmax(72px,.55fr) minmax(118px,.85fr) minmax(82px,.62fr) minmax(110px,.8fr) minmax(115px,.85fr) 38px!important;column-gap:10px!important}
.finance-lines-card .finance-item-editor-head{padding:9px 12px!important;margin:0!important;border-radius:9px 9px 0 0;background:#dbe7ff;align-items:center}
.finance-lines-card .finance-item-row{display:block!important;width:100%!important;min-width:0!important;box-sizing:border-box!important;margin:0!important;padding:0!important;border:0!important}
.finance-lines-card .finance-item-editor{padding:12px!important;border:1px solid #dfe5ee!important;border-top:0!important;background:#fff!important;align-items:center!important}
.finance-lines-card .finance-item-row:last-child .finance-item-editor{border-radius:0 0 10px 10px}
.finance-lines-card .finance-item-cell{min-width:0!important;width:auto!important;display:flex!important;align-items:center!important}
.finance-lines-card .finance-item-cell input,.finance-lines-card .finance-item-cell select{width:100%!important;min-width:0!important;box-sizing:border-box!important;height:40px!important}
.finance-lines-card .finance-price-box{width:100%!important;min-width:0!important;height:40px!important;display:flex!important;align-items:center!important;box-sizing:border-box!important}
.finance-lines-card .finance-price-box input{height:38px!important;min-width:0!important}
.finance-lines-card .finance-item-cell.vatamount,.finance-lines-card .finance-item-cell.total{justify-content:flex-end!important;white-space:nowrap!important;overflow:hidden!important}
.finance-lines-card .finance-item-cell.vatamount strong,.finance-lines-card .finance-item-cell.total strong{font-variant-numeric:tabular-nums}
.finance-lines-card .finance-item-description{grid-column:1 / -1!important;padding-top:10px!important;min-width:0!important}
.finance-lines-card .finance-item-description textarea{width:100%!important;box-sizing:border-box!important;min-height:62px!important}
.finance-lines-card .finance-item-cell.delete{justify-content:flex-end!important}

.finance-document-block-editor{display:grid;gap:12px}
.finance-document-block-row{display:grid;grid-template-columns:220px minmax(0,1fr);gap:16px;align-items:start;padding:14px;border:1px solid #dfe5ee;border-radius:11px;background:#f9fbff}
.finance-document-block-row>div strong,.finance-document-block-row>div small{display:block}.finance-document-block-row>div small{margin-top:4px;color:#667085}
.finance-document-block-row textarea{width:100%;box-sizing:border-box;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#101828;padding:10px;font:inherit;resize:vertical;outline:none}.finance-document-block-row textarea:focus{border-color:#315cf5;box-shadow:0 0 0 3px rgba(49,92,245,.09)}

/* A4-document: vaste kolommen, voldoende witruimte en geen afbrekende bedragen. */
.finance-document-preview{width:100%;max-width:820px;box-sizing:border-box;padding:34px 38px!important;overflow:hidden}
.doc-head-business{grid-template-columns:128px minmax(0,1fr) auto!important;gap:18px!important;align-items:center!important}
.doc-head-business img{width:128px!important;height:82px!important}
.doc-company-details{min-width:0}.doc-company-details strong,.doc-company-details span{display:block}.doc-company-details strong{font-size:12px}.doc-company-details span{font-size:9px;line-height:1.5;color:#536071}
.doc-top-number{text-align:right;white-space:nowrap}.doc-top-number span{display:block;font-size:8px;letter-spacing:.09em;color:#315cf5;font-weight:900}.doc-top-number strong{display:block;margin-top:4px;font-size:17px;color:#101828}
.doc-document-title{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin:21px 0 14px}.doc-document-title h1{margin:0;font-size:26px;line-height:1.05}.doc-document-title p{margin:0;color:#667085;font-size:11px;text-align:right;max-width:55%}
.doc-meta{grid-template-columns:minmax(0,2fr) minmax(120px,.8fr) minmax(120px,.8fr)!important;gap:10px!important;margin:14px 0 18px!important}.doc-meta>div{min-width:0}.doc-meta strong,.doc-meta small{overflow-wrap:anywhere}
.doc-lines-table{display:table!important;table-layout:fixed!important;width:100%!important;max-width:100%!important;border-collapse:collapse!important}
.doc-lines-table .c-desc{width:39%}.doc-lines-table .c-qty{width:9%}.doc-lines-table .c-price{width:14%}.doc-lines-table .c-vat{width:8%}.doc-lines-table .c-vatamount{width:14%}.doc-lines-table .c-total{width:16%}
.doc-lines-table th,.doc-lines-table td{display:table-cell!important;box-sizing:border-box!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;padding:8px 6px!important;font-size:9px!important}.doc-lines-table th:first-child,.doc-lines-table td:first-child{white-space:normal!important;text-align:left!important}.doc-lines-table td small{white-space:normal!important;overflow-wrap:anywhere}
.doc-summary{display:flex;justify-content:flex-end}.doc-totals{width:300px!important;margin:14px 0 12px!important}.doc-totals>div{font-size:10px!important}.doc-totals .doc-grand,.doc-totals .doc-open{font-size:12px!important}.doc-totals .doc-open{margin-top:5px;padding:7px;border:1px solid #cbd9ff;border-radius:7px;background:#f5f8ff}
.doc-payment{margin-top:12px!important;padding:10px 12px!important}.doc-payment span{font-size:10px!important}.doc-payment small{font-size:9px}.doc-note{break-inside:avoid}.doc-note p{overflow-wrap:anywhere}
.finance-print-page{margin:0;background:#fff;color:#101828;padding:0;font-family:Arial,Helvetica,sans-serif}.finance-print-page .finance-document-preview{border:0!important;box-shadow:none!important;margin:0 auto!important;max-width:190mm!important;width:190mm!important;min-height:260mm;padding:11mm 10mm!important}
@page{size:A4 portrait;margin:10mm}
@media print{.finance-print-page .finance-document-preview{width:190mm!important;max-width:190mm!important;min-height:auto!important;padding:0!important}.doc-lines-table tr,.doc-payment,.doc-note{break-inside:avoid;page-break-inside:avoid}}

/* Financiële instellingen met dynamische blokken. */
.finance-template-blocks{display:grid;gap:12px;margin-top:14px}.finance-template-block{padding:14px;border:1px solid #dfe5ee;border-radius:11px;background:#fafcff}.finance-template-block-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:11px}.finance-template-block-head>div{display:flex;gap:6px}.finance-template-block label{display:flex;flex-direction:column;gap:5px;margin-top:10px;font-size:12px;color:#475467}.finance-template-block input,.finance-template-block textarea{width:100%;box-sizing:border-box;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#101828;padding:9px 10px;font:inherit}.finance-template-block textarea{resize:vertical}.finance-template-block button:disabled{opacity:.35;cursor:not-allowed}

/* Centraal chatbeheer. */
.finance-messages-shell{max-width:1220px}.finance-chat-admin-layout{display:grid;grid-template-columns:340px minmax(0,1fr);min-height:610px;border:1px solid #dfe5ee;border-radius:14px;background:#fff;overflow:hidden}.finance-chat-list{border-right:1px solid #dfe5ee;background:#f8faff}.finance-chat-list-head{padding:14px;border-bottom:1px solid #dfe5ee}.finance-chat-list-head strong{display:block;margin-bottom:9px}.finance-chat-list-head input{width:100%;box-sizing:border-box;border:1px solid #cbd5e1;border-radius:8px;padding:9px 10px;font:inherit}.finance-chat-conversation{display:block;width:100%;border:0;border-bottom:1px solid #e6ebf2;background:transparent;text-align:left;padding:13px 14px;color:#101828;cursor:pointer}.finance-chat-conversation:hover,.finance-chat-conversation.active{background:#eaf0ff}.finance-chat-conversation-top{display:flex;justify-content:space-between;gap:8px}.finance-chat-conversation-top b{display:inline-flex;align-items:center;justify-content:center;min-width:21px;height:21px;border-radius:999px;background:#315cf5;color:#fff;font-size:10px}.finance-chat-conversation small,.finance-chat-conversation>span:not(.finance-chat-conversation-top),.finance-chat-conversation time{display:block;margin-top:4px;color:#667085;font-size:11px}.finance-chat-conversation>span:not(.finance-chat-conversation-top){white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.finance-chat-pane{padding:18px;min-width:0}.finance-chat-empty{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;color:#667085;gap:6px}.finance-chat-pane-head{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e6ebf2;padding-bottom:13px;margin-bottom:13px}.finance-chat-pane-head h2{margin:0 0 4px}.finance-chat-pane-head a{font-size:12px;color:#315cf5}.finance-chat-pane .finance-message-thread{max-height:430px}.finance-chat-docref,.customer-message-docref{display:inline-flex!important;align-self:flex-start!important;margin:7px 0 2px;padding:5px 8px;border:1px solid #9eb8ff!important;border-radius:999px!important;background:#f3f6ff!important;color:#234cbf!important;font-size:10px!important;font-weight:800!important;text-decoration:none!important;cursor:pointer!important}.finance-chat-message.mine .finance-chat-docref{background:#fff!important}.customer-message-docref{font-family:inherit}.finance-chat-meta{display:flex!important;justify-content:space-between!important}

/* Klantportaal iconen en dark-mode chat. */
.customer-notification-button,.customer-round-action,.customer-floating-theme{display:inline-flex!important;align-items:center!important;justify-content:center!important;width:42px!important;height:42px!important;min-width:42px!important;padding:0!important;border-radius:999px!important}.customer-notification-button svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.customer-round-action{font-size:18px!important}.customer-floating-theme{position:fixed;right:22px;top:22px;z-index:10;border:1px solid var(--supplier-border,#dfe5ee);background:var(--supplier-card,#fff);color:var(--supplier-text,#101828);box-shadow:0 7px 24px rgba(16,24,40,.12);cursor:pointer;font-size:18px}.customer-message-reference-link{border:0!important;background:transparent!important;color:inherit!important;text-align:left!important;padding:0!important;font:inherit!important;cursor:pointer!important}.customer-portal-block{margin-top:14px;padding-top:12px;border-top:1px solid var(--supplier-border,#dfe5ee)}.customer-portal-block strong{display:block;font-size:12px}.customer-portal-block p{margin:6px 0 0;line-height:1.55;white-space:normal}.customer-print-note{margin-top:15px;border-top:1px solid #dfe5ee;padding-top:11px}.customer-print-note strong{font-size:11px;color:#315cf5;text-transform:uppercase}.customer-print-note p{font-size:10px;line-height:1.55}
html[data-theme="dark"] .customer-message-form textarea{background:#172235!important;border-color:#40506a!important;color:#f6f8fc!important;caret-color:#fff!important}html[data-theme="dark"] .customer-message-form textarea::placeholder{color:#aebbd0!important}html[data-theme="dark"] .customer-chat-message.theirs{background:#172235!important;border-color:#34445f!important;color:#f4f7fc!important}html[data-theme="dark"] .customer-chat-message.mine{background:#28427f!important;border-color:#4767b5!important;color:#fff!important}html[data-theme="dark"] .customer-chat-message time,html[data-theme="dark"] .customer-chat-message small{color:#c2cee0!important}html[data-theme="dark"] .customer-message-docref{background:#21355f!important;color:#f5f8ff!important;border-color:#5575c7!important}html[data-theme="dark"] .customer-floating-theme{background:#162033;border-color:#34445f;color:#edf3ff}

.finance-amount-stats-four{grid-template-columns:repeat(4,minmax(0,1fr))!important}

@media(max-width:980px){
  .finance-module-nav{grid-template-columns:auto 1fr auto!important;padding:8px 12px!important;gap:10px!important}.finance-module-brand{font-size:13px!important}.finance-module-main{overflow:auto;justify-content:flex-start}.finance-module-main>a{min-width:96px}
  .finance-lines-card .finance-item-editor-head{display:none!important}.finance-lines-card .finance-item-editor{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;border-top:1px solid #dfe5ee!important;border-radius:10px!important;margin-top:10px}.finance-lines-card .finance-item-cell.product,.finance-lines-card .finance-item-description{grid-column:1/-1!important}.finance-lines-card .finance-item-cell.vatamount,.finance-lines-card .finance-item-cell.total{justify-content:flex-start!important}.finance-lines-card .finance-item-cell.delete{grid-column:2;justify-content:flex-end!important}
  .finance-chat-admin-layout{grid-template-columns:290px minmax(0,1fr)}.finance-amount-stats-four{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:680px){.finance-module-nav{grid-template-columns:1fr auto!important}.finance-module-brand{display:none!important}.finance-module-main{grid-column:1;min-width:0}.finance-module-tools{grid-column:2}.finance-module-main>a{min-width:88px;padding:8px 10px!important}.finance-chat-admin-layout{grid-template-columns:1fr}.finance-chat-list{border-right:0;border-bottom:1px solid #dfe5ee;max-height:310px;overflow:auto}.finance-chat-pane{min-height:470px}.finance-document-block-row{grid-template-columns:1fr}.finance-amount-stats-four{grid-template-columns:1fr!important}.doc-head-business{grid-template-columns:90px 1fr!important}.doc-head-business img{width:90px!important}.doc-top-number{grid-column:1/-1;text-align:left}.doc-meta{grid-template-columns:1fr!important}.doc-document-title{display:block}.doc-document-title p{max-width:none;text-align:left;margin-top:5px}}
/* Finance v1.7 refinements */
.finance-customer-row{grid-template-columns:minmax(0,1fr) auto auto!important;align-items:center}
.finance-customer-row .secondary-button{white-space:nowrap}
.finance-messages-shell{max-width:1440px!important}
.finance-chat-admin-layout{grid-template-columns:380px minmax(0,1fr)!important;min-height:720px!important}
.finance-chat-pane .finance-message-thread{max-height:560px!important;min-height:430px}
.finance-chat-pane{padding:22px!important}
.finance-mail-templates{display:grid;gap:14px;margin-top:16px}
.finance-mail-template{background:#fbfcff}
.finance-mail-template-help{margin-top:12px;padding:10px 12px;background:#f3f6ff;border:1px solid #dbe5ff;border-radius:9px;color:#52627a;font-size:12px}
.finance-switch{display:flex!important;flex-direction:row!important;align-items:center;gap:7px!important;font-weight:700;color:#344054!important}
.finance-switch input{width:auto!important}
.finance-dialog label{display:flex;flex-direction:column;gap:6px;font-size:12px;color:#475467;margin-top:12px}
.finance-dialog-actions{align-items:center}
.finance-list-table .pay-btn{white-space:nowrap}
.finance-page-head #returnLink{margin-bottom:10px;width:max-content}
.finance-customer-mail-log{margin-top:18px}
@media(max-width:850px){.finance-customer-row{grid-template-columns:1fr 1fr!important}.finance-customer-row select{grid-column:1/-1}.finance-chat-admin-layout{grid-template-columns:1fr!important}.finance-chat-list{max-height:300px;overflow:auto}.finance-chat-pane .finance-message-thread{min-height:320px}}

/* v1.8 workflow, chat context en verzenddialoog */
.finance-workflow{max-width:760px;margin:0 auto 18px;display:grid;grid-template-columns:auto 1fr auto 1fr auto;align-items:center;gap:10px}.finance-workflow button{border:0;background:transparent;color:#667085;display:flex;align-items:center;gap:8px;font-weight:800}.finance-workflow button b{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#e8edf5;color:#667085}.finance-workflow button.active{color:#173ea5}.finance-workflow button.active b{background:#315efb;color:#fff}.finance-workflow i{height:2px;background:#d8e0ec}.finance-send-dialog{width:min(720px,calc(100vw - 30px))}.finance-send-dialog form{display:grid;gap:14px}.finance-send-dialog label{display:grid;gap:6px;font-weight:700}.finance-send-dialog input,.finance-send-dialog textarea{font:inherit;border:1px solid #cbd5e1;border-radius:9px;padding:10px 12px}.finance-portal-ref{grid-template-columns:auto 1fr!important;align-items:start;padding:13px;border:1px solid #c9d6ff;border-radius:10px;background:#f4f7ff}.finance-portal-ref small,.finance-attachment-row small{display:block;color:#667085;font-weight:400;margin-top:3px}.finance-attachment-row{display:flex;gap:12px;align-items:center;padding:12px;border:1px solid #dfe5ee;border-radius:10px}.finance-chat-admin-layout{grid-template-columns:330px minmax(460px,1fr) 320px!important;max-width:none!important}.finance-messages-shell{max-width:1540px!important}.finance-chat-pane .finance-message-thread{font-size:16px!important;line-height:1.55}.finance-chat-message{font-size:15px!important;padding:14px 16px!important}.finance-chat-message>div:not(.finance-chat-meta){font-size:15px!important}.finance-chat-meta{font-size:12px!important}.finance-chat-context{border-left:1px solid #dfe5ee;background:#f8faff;padding:16px;display:grid;align-content:start;gap:14px}.finance-chat-context-card{background:#fff;border:1px solid #dfe5ee;border-radius:12px;padding:15px}.finance-chat-context-card h3{margin:0 0 10px}.finance-chat-context-card p{margin:5px 0;font-size:13px}.finance-chat-context-doc{display:flex;justify-content:space-between;gap:8px;padding:9px 0;border-bottom:1px solid #edf0f5;text-decoration:none;color:#173ea5;font-weight:700}.finance-chat-context-doc small{color:#667085;font-weight:500}.finance-command-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px 18px;margin:10px 0}.finance-command-grid span{font-size:12px}.finance-command-grid code{font-weight:800;color:#234cbf}.finance-mail-template-help{padding:14px;border:1px solid #d8e0ec;border-radius:10px;background:#f8faff;margin:12px 0 18px}@media(max-width:1100px){.finance-chat-admin-layout{grid-template-columns:290px 1fr!important}.finance-chat-context{grid-column:1/-1;border-left:0;border-top:1px solid #dfe5ee;grid-template-columns:1fr 1fr}}@media(max-width:760px){.finance-workflow{grid-template-columns:1fr}.finance-workflow i{display:none}.finance-chat-admin-layout{grid-template-columns:1fr!important}.finance-chat-context{grid-template-columns:1fr}.finance-command-grid{grid-template-columns:1fr}}


/* Finance v1.9: strakke regels, documentblokken en documentopmaak */
.finance-current-title h2{font-size:24px!important;line-height:1.15}
.finance-item-table-shell{border:1px solid #b8cbff;border-radius:12px;overflow:hidden;background:#fff;margin-top:12px}
.finance-item-table-shell .finance-item-editor-head{border-radius:0!important;border:0!important;border-bottom:1px solid #b8cbff!important}
.finance-item-table-shell .finance-item-editor{border:0!important;border-bottom:1px solid #e3e8f0!important;border-radius:0!important}
.finance-item-table-shell .finance-item-row:last-child .finance-item-editor{border-bottom:0!important}
.finance-lines-card .finance-item-editor-head,.finance-lines-card .finance-item-editor{grid-template-columns:minmax(260px,2.7fr) 82px 124px 92px 116px 116px 42px!important;gap:10px!important;align-items:center!important}
.finance-lines-card .finance-item-editor-head>span{display:flex;align-items:center;height:32px;font-size:10px;line-height:1.1}
.finance-lines-card .finance-item-editor-head>span:nth-child(n+2):not(:last-child){justify-content:flex-start}
.finance-lines-card .finance-item-cell{height:42px!important;align-self:center!important;display:flex!important;align-items:center!important;margin:0!important;padding:0!important}
.finance-lines-card .finance-item-cell input,.finance-lines-card .finance-item-cell select,.finance-lines-card .finance-price-box{height:42px!important;min-height:42px!important;margin:0!important;box-sizing:border-box!important}
.finance-lines-card .finance-price-box{display:flex!important;align-items:center!important;width:100%!important;border:1px solid #cbd5e1!important;border-radius:8px!important;padding:0 10px!important;background:#fff!important}
.finance-lines-card .finance-price-box input{border:0!important;padding:0 0 0 5px!important;box-shadow:none!important}
.finance-lines-card .finance-item-cell.vatamount,.finance-lines-card .finance-item-cell.total{justify-content:flex-end!important;line-height:42px!important}
.finance-lines-card .finance-item-cell.delete{justify-content:center!important}
.finance-lines-card .finance-item-cell.delete .finance-remove{display:flex!important;align-items:center!important;justify-content:center!important;line-height:1!important;padding:0!important;margin:0!important}
.finance-lines-card .finance-item-description{padding:8px 0 0!important}
.finance-lines-card .finance-item-description label{gap:6px!important}
.finance-lines-card .finance-item-description label>span{height:18px;display:flex;align-items:center;gap:4px;font-size:10px;font-weight:800;text-transform:uppercase;color:#52627a}
.finance-document-block-input{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:start}.finance-document-block-input input{grid-column:1;width:100%;box-sizing:border-box;border:1px solid #cbd5e1;border-radius:8px;padding:9px 10px;font:inherit}.finance-document-block-input textarea{grid-column:1;width:100%;box-sizing:border-box}.finance-document-block-input .finance-remove{grid-column:2;grid-row:1/3;align-self:center}
.finance-block-add-actions{display:flex;gap:8px;flex-wrap:wrap}
.doc-header-wrap{border-bottom:2px solid #315cf5;padding-bottom:14px;margin-bottom:16px}.doc-header-wrap .doc-head{border-bottom:0!important;padding-bottom:8px!important}.doc-company-details strong{font-size:13px!important}.doc-company-details span{font-size:10.5px!important;line-height:1.45!important}.doc-top-number strong{font-size:20px!important}.doc-document-title{margin:10px 0 0!important;align-items:flex-end!important}.doc-document-title h1{font-size:30px!important}.doc-document-title p{font-size:12px!important}
.doc-lines-table{border:1px solid #9eb8ff!important;border-radius:12px!important;border-collapse:separate!important;border-spacing:0!important;overflow:hidden!important}.doc-lines-table thead th:first-child{border-top-left-radius:11px}.doc-lines-table thead th:last-child{border-top-right-radius:11px}.doc-lines-table tbody tr:last-child td:first-child{border-bottom-left-radius:11px}.doc-lines-table tbody tr:last-child td:last-child{border-bottom-right-radius:11px}.doc-lines-table tbody tr:last-child td{border-bottom:0!important}
.doc-special-block{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:16px;padding:15px 17px;border-radius:12px;text-decoration:none!important}.doc-special-block span{display:block}.doc-special-block strong{display:block;font-size:13px;color:#101828}.doc-special-block small{display:block;margin-top:4px;color:#52627a;line-height:1.5}.doc-special-block b{white-space:nowrap;font-size:11px}.doc-review-block{border:1px solid #f0c95a;background:#fff9e8;color:#8a6200}.doc-stars{font-size:18px;letter-spacing:2px;color:#e6a900;margin-right:2px}.doc-terms-block{border:1px solid #9eb8ff;background:#f2f6ff;color:#234cbf}.legacy-discount{opacity:.75}
.finance-portal-options{display:grid;gap:10px}.finance-mail-view-dialog{width:min(760px,94vw)}.finance-mail-view{margin-top:15px;border:1px solid #dfe5ee;border-radius:12px;overflow:hidden}.finance-mail-view>strong{display:block;padding:14px 16px;background:#f6f8fb;border-bottom:1px solid #dfe5ee}.finance-mail-view pre{white-space:pre-wrap;word-break:break-word;font:14px/1.6 Arial,sans-serif;margin:0;padding:18px;max-height:55vh;overflow:auto}.finance-chat-message.mail-event{background:#f5f7fb!important;border:1px dashed #aebbd0!important;color:#344054!important}.finance-chat-message.mail-event .view-mail-btn{margin-top:10px}
@media(max-width:980px){.finance-item-table-shell{border:0;background:transparent;overflow:visible}.finance-lines-card .finance-item-editor{border:1px solid #dfe5ee!important;border-radius:10px!important}.finance-lines-card .finance-item-cell{height:auto!important}.finance-lines-card .finance-item-description{padding-top:0!important}.doc-special-block{align-items:flex-start;flex-direction:column}.doc-special-block b{white-space:normal}}

/* v2.0 - klantportaal onboarding & ondersteuning */
.customer-auth-links{margin-top:14px;text-align:center}.customer-auth-links a{color:#315efb;font-weight:700;text-decoration:none}.customer-auth-links a:hover{text-decoration:underline}.customer-login-choice{border:1px solid #d8e0ec;border-radius:14px;padding:12px;margin:0 0 4px;display:grid;gap:8px}.customer-login-choice legend{padding:0 6px;font-weight:800}.customer-login-choice label{display:flex!important;align-items:flex-start;gap:10px;padding:10px;border:1px solid #e1e7f0;border-radius:10px;cursor:pointer}.customer-login-choice label input{width:auto!important;margin-top:3px}.customer-login-choice label span{display:grid;gap:2px}.customer-login-choice small{color:#667085;font-weight:500}.finance-portal-status-grid{display:grid;gap:6px}.finance-portal-status-grid code{font-weight:800}.supplier-success-alert{padding:12px 14px;border-radius:10px;background:#ecfdf3;border:1px solid #a7f3d0;color:#166534;font-weight:700}.customer-auth-theme-circle{position:fixed;right:20px;top:20px;width:42px;height:42px;border-radius:50%;border:1px solid #d8e0ec;background:#fff;color:#10213a;font-size:18px;display:grid;place-items:center;cursor:pointer;z-index:10}[data-theme=dark] .customer-auth-theme-circle{background:#111d30;border-color:#2c3d58;color:#fff}[data-theme=dark] .customer-login-choice{border-color:#33445f}[data-theme=dark] .customer-login-choice label{border-color:#33445f;background:#0e1a2d}[data-theme=dark] .customer-login-choice small{color:#a9b7cc}

/* v1.11 gerichte uitlijning: editorrijen en sluitknoppen */
.finance-lines-card .finance-item-editor{align-items:center!important}
.finance-lines-card .finance-item-cell{height:42px!important;min-height:42px!important;display:flex!important;align-items:center!important;box-sizing:border-box!important}
.finance-lines-card .finance-item-cell.vatamount strong,
.finance-lines-card .finance-item-cell.total strong,
.finance-lines-card .i-total{display:flex!important;align-items:center!important;justify-content:flex-end!important;height:42px!important;min-height:42px!important;margin:0!important;padding:0!important;line-height:1.2!important;box-sizing:border-box!important}
.finance-lines-card .finance-item-cell.delete{height:42px!important;align-items:center!important;justify-content:center!important}
.finance-remove,
.finance-dialog .finance-remove,
.finance-document-block-input .finance-remove{display:inline-flex!important;align-items:center!important;justify-content:center!important;line-height:1!important;padding:0!important;text-align:center!important}
.finance-dialog .finance-card-head>.finance-remove{align-self:center!important;flex:0 0 34px!important}
.finance-document-block-input .finance-remove{align-self:center!important}

/* v1.12 - consistente afdruk/PDF en mobiel klantportaal */
.finance-print-document{background:#fff!important;color:#101828!important}
@media print{
  .finance-print-document .doc-head{grid-template-columns:auto 1fr auto!important}
  .finance-print-document .doc-meta{grid-template-columns:2fr 1fr 1fr!important}
  .finance-print-document .doc-lines-table{display:table!important;width:100%!important;table-layout:fixed!important}
  .finance-print-document .doc-lines-table tr{display:table-row!important}
  .finance-print-document .doc-lines-table th,.finance-print-document .doc-lines-table td{display:table-cell!important}
  .finance-print-document .doc-special-block,.finance-print-document .doc-payment,.finance-print-document .doc-note{break-inside:avoid;page-break-inside:avoid}
}
@media(max-width:720px){
  .customer-portal-lines-table .customer-line-head{display:none!important}
  .customer-portal-lines-table .customer-line-row{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:0!important;padding:0!important;border:1px solid var(--supplier-border,#33445f)!important;border-radius:14px!important;overflow:hidden!important;margin-bottom:12px!important}
  .customer-portal-lines-table .customer-line-row>.customer-line-description{grid-column:1/-1!important;padding:15px 16px!important;border-bottom:1px solid var(--supplier-border,#33445f)!important;background:rgba(255,255,255,.025)!important}
  .customer-portal-lines-table .customer-line-row>span,.customer-portal-lines-table .customer-line-row>strong[data-label]{display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:flex-start!important;min-width:0!important;padding:12px 16px!important;border-bottom:1px solid var(--supplier-border,#33445f)!important;font-size:17px!important;line-height:1.3!important;text-align:left!important}
  .customer-portal-lines-table .customer-line-row>span:nth-last-child(-n+2),.customer-portal-lines-table .customer-line-row>strong[data-label]:last-child{border-bottom:0!important}
  .customer-portal-lines-table .customer-line-row>[data-label]::before{content:attr(data-label);display:block;margin-bottom:6px;font-size:10px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:var(--supplier-muted,#8998ad)}
  .customer-portal-lines-table .customer-line-description strong{font-size:17px!important;line-height:1.35!important}
  .customer-portal-lines-table .customer-line-description small{display:block!important;margin-top:6px!important;font-size:13px!important;line-height:1.45!important}
}

/* ===== Klantportaal v1.13: loginmethodes en mijn gegevens ===== */
.customer-auth-methods{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:18px 0 20px;padding:5px;border:1px solid var(--supplier-border,#dfe5ee);border-radius:15px;background:var(--supplier-soft,#f6f8fb)}
.customer-auth-methods button{min-height:44px;border:0;border-radius:11px;background:transparent;color:var(--supplier-text,#101828);font:inherit;font-weight:800;cursor:pointer;padding:9px 10px}
.customer-auth-methods button.active{background:#315cf5;color:#fff;box-shadow:0 6px 16px rgba(49,92,245,.2)}
.customer-forgot-link{display:block;text-align:center;margin-top:3px;font-size:13px;font-weight:700;color:#315cf5;text-decoration:none}
.customer-profile-button{border:1px solid var(--supplier-border,#dfe5ee);background:var(--supplier-card,#fff);color:var(--supplier-text,#101828);cursor:pointer;font-size:17px!important}
.customer-profile-form{display:grid;gap:22px}.customer-profile-grid{display:grid;grid-template-columns:1fr 1fr;gap:15px}.customer-profile-grid label{display:grid;gap:7px;font-size:12px;font-weight:800}.customer-profile-grid .wide{grid-column:1/-1}.customer-profile-grid input{width:100%;min-height:44px;border:1px solid var(--supplier-border,#dfe5ee);border-radius:11px;padding:10px 12px;background:var(--supplier-card,#fff);color:var(--supplier-text,#101828);font:inherit;box-sizing:border-box}.customer-profile-login-choice{margin:0}.customer-profile-actions{display:flex;justify-content:flex-end;gap:10px;align-items:center;flex-wrap:wrap}.customer-profile-actions a{text-decoration:none;display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box}
html[data-theme="dark"] .customer-auth-methods{background:#101827;border-color:#34445f}html[data-theme="dark"] .customer-auth-methods button{color:#edf3ff}html[data-theme="dark"] .customer-profile-button,html[data-theme="dark"] .customer-profile-grid input{background:#162033;border-color:#34445f;color:#edf3ff}
@media(max-width:650px){.customer-auth-methods{grid-template-columns:1fr}.customer-profile-grid{grid-template-columns:1fr}.customer-profile-grid .wide{grid-column:auto}.customer-profile-actions{display:grid;grid-template-columns:1fr}.customer-profile-actions>*{width:100%}}
\n\n/* V1.14 - uniforme documentweergave: preview, print, klantportaal en mail-PDF */
.finance-document-preview .doc-lines-table th{
  font-size:10.5px!important;
  line-height:1.25!important;
  padding:10px 7px!important;
  font-weight:800!important;
}
.finance-document-preview .doc-lines-table td{
  font-size:10.5px!important;
  line-height:1.35!important;
  padding:10px 7px!important;
  vertical-align:top!important;
}
.finance-document-preview .doc-lines-table td:first-child strong{
  display:block;
  font-size:11.5px!important;
  line-height:1.3!important;
}
.finance-document-preview .doc-lines-table td:first-child small{
  display:block;
  margin-top:4px!important;
  font-size:9.5px!important;
  line-height:1.4!important;
  color:#667085!important;
}
.finance-document-preview .doc-lines-table td:not(:first-child),
.finance-document-preview .doc-lines-table th:not(:first-child){
  vertical-align:middle!important;
}
.finance-unified-print .doc-lines-table th,
.finance-unified-print .doc-lines-table td{
  white-space:nowrap!important;
}
.finance-unified-print .doc-lines-table th:first-child,
.finance-unified-print .doc-lines-table td:first-child{
  white-space:normal!important;
}
@media print{
  .finance-unified-print .doc-review-block{
    background:#fff9e8!important;
    border-color:#f0c95a!important;
  }
  .finance-unified-print .doc-terms-block{
    background:#f2f6ff!important;
    border-color:#9eb8ff!important;
  }
  .finance-unified-print .doc-meta>div,
  .finance-unified-print .doc-payment,
  .finance-unified-print .doc-special-block{
    -webkit-print-color-adjust:exact!important;
    print-color-adjust:exact!important;
  }
}
