:root{--bg:#f3f5f7;--card:#fff;--ink:#17212b;--muted:#6f7c89;--line:#dfe5ea;--gold:#b58b3a;--gold2:#d2ac5c;--dark:#101820;--dark2:#17232e;--green:#167451;--red:#b83b3b;--blue:#2563a6;--shadow:0 14px 34px rgba(21,31,41,.08);--radius:16px}*{box-sizing:border-box}html{background:var(--bg)}body{margin:0;font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;background:var(--bg);color:var(--ink);line-height:1.45}a{text-decoration:none;color:inherit}button,input,select,textarea{font:inherit}.app{display:grid;grid-template-columns:270px minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;overflow:auto;background:linear-gradient(180deg,var(--dark),#0c131a);color:#eef3f7;padding:20px 14px;display:flex;flex-direction:column;z-index:50}.brand{display:flex;gap:12px;align-items:center;padding:2px 8px 20px;border-bottom:1px solid #293541}.brand>span{width:46px;height:46px;border-radius:14px;background:linear-gradient(135deg,var(--gold2),#8c6726);display:grid;place-items:center;font-weight:900;color:#111;box-shadow:0 8px 22px rgba(181,139,58,.25)}.brand strong{display:block;font-size:17px}.brand small{display:block;color:#91a0ae;margin-top:2px}.sidebar nav{padding-top:16px;display:grid;gap:5px}.sidebar nav a{display:flex;align-items:center;gap:10px;padding:10px 11px;border-radius:11px;color:#cbd5dd;transition:.18s}.sidebar nav a i{width:26px;height:26px;display:grid;place-items:center;border-radius:8px;background:#1b2833;font-style:normal;font-size:12px;font-weight:900}.sidebar nav a:hover,.sidebar nav a.active{background:#21303c;color:#fff}.sidebar nav a.active i{background:var(--gold);color:#16120b}.nav-separator{height:1px;background:#293541;margin:10px 4px}.sidebar-foot{margin-top:auto;border-top:1px solid #293541;padding:17px 8px 0;display:grid;gap:4px}.sidebar-foot small{color:#91a0ae}.sidebar-foot a{color:#e6c579;margin-top:8px}main{padding:26px 30px;min-width:0;max-width:1800px;width:100%;margin:auto}.topbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:24px}.topbar-title{display:flex;align-items:center;gap:12px}.topbar h1{margin:0;font-size:clamp(24px,3vw,32px);letter-spacing:-.03em}.topbar p{margin:4px 0 0;color:var(--muted)}.top-actions{display:flex;align-items:center;gap:10px}.quick-lookup{display:flex;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:0 5px 18px rgba(20,30,40,.04)}.quick-lookup input{border:0;padding:11px 13px;width:190px;outline:0}.quick-lookup button{border:0;background:#fff;padding:0 14px;font-size:20px;cursor:pointer}.menu-toggle{display:none;border:0;background:#fff;border-radius:10px;padding:9px 11px;box-shadow:var(--shadow)}.card,.hero-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:22px;margin-bottom:18px}.hero-card{background:linear-gradient(135deg,#17232e,#263746);color:#fff;border:0;padding:28px}.hero-card p{color:#c7d0d8;max-width:760px}.hero-card h2{font-size:clamp(24px,4vw,38px);margin:4px 0 8px}.grid{display:grid;gap:18px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px;margin-bottom:18px}.stat{background:#fff;border:1px solid var(--line);border-radius:15px;padding:18px;box-shadow:var(--shadow)}.stat small{color:var(--muted);display:block}.stat strong{font-size:28px;display:block;margin-top:5px}.section-head,.page-actions,.actions,.actions-row{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.section-head h2,.card h2{margin-top:0}.eyebrow{font-size:11px;letter-spacing:.14em;font-weight:900;color:var(--gold2)}.muted{color:var(--muted)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;border:1px solid var(--line);border-radius:11px;padding:10px 14px;font-weight:750;background:#fff;color:var(--ink);cursor:pointer;transition:.16s;white-space:nowrap}.btn:hover{transform:translateY(-1px);box-shadow:0 7px 18px rgba(20,30,40,.09)}.btn.primary{background:linear-gradient(135deg,#c59a47,#9d742d);border-color:#9d742d;color:#fff}.btn.danger{background:#fff1f1;color:var(--red);border-color:#f1c9c9}.btn.big{padding:13px 18px}.btn.small{padding:7px 10px;font-size:13px}.btn:disabled{opacity:.45;cursor:not-allowed;transform:none}.alert{padding:14px 16px;border-radius:12px;background:#eef5fb;border:1px solid #cadeee;color:#264b68;margin-bottom:16px}.alert.success{background:#eaf7f1;border-color:#bfe1d2;color:#175c42}.alert.error{background:#fff0f0;border-color:#efc6c6;color:#842b2b}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.field{display:grid;gap:7px}.field.full,.full{grid-column:1/-1}.field label{font-weight:750;font-size:14px}.field input,.field select,.field textarea,.filters input,.filters select,.report-filters input,.report-filters select{width:100%;border:1px solid #ced7de;border-radius:11px;padding:11px 12px;background:#fff;outline:none;color:var(--ink)}.field input:focus,.field select:focus,.field textarea:focus{border-color:#b58b3a;box-shadow:0 0 0 4px rgba(181,139,58,.12)}.field textarea{min-height:100px;resize:vertical}.filters,.report-filters{display:flex;gap:10px;align-items:end;flex-wrap:wrap;margin-bottom:16px}.filters>input{flex:1;min-width:220px}.table-wrap{width:100%;overflow:auto;border:1px solid var(--line);border-radius:13px}.table-wrap table{border:0;border-radius:0}.auto-wrap{margin-top:8px}table{width:100%;border-collapse:collapse;background:#fff}th,td{text-align:left;padding:13px 14px;border-bottom:1px solid #e9edf0;vertical-align:top}th{font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:#697783;background:#f8fafb;white-space:nowrap}tr:last-child td{border-bottom:0}td small{display:block;color:var(--muted);margin-top:3px}.amount{text-align:right;white-space:nowrap}.badge,.status-pill{display:inline-flex;align-items:center;padding:5px 9px;border-radius:999px;background:#eef1f4;font-size:12px;font-weight:800}.badge.green,.dor-sent{background:#e5f5ed;color:#126540}.badge.red,.dor-error{background:#fdeaea;color:#9c3030}.badge.gold,.dor-pending{background:#fff4d8;color:#7c5b17}.dor-excluded{background:#edf0f3;color:#65717b}.receipt-number{font-weight:900;color:#8c6726}.live-total{background:#f7f1e6;border-radius:12px;padding:10px 14px;text-align:right}.live-total small{display:block;color:#846b3e}.live-total strong{font-size:24px}.workflow-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:0 0 18px}.workflow-steps>*{padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:#fff;text-align:center;font-size:14px}.workflow-steps .active,.workflow-steps b.active{background:#192734;color:#fff;border-color:#192734}.narrow-card{max-width:1000px}.selected-customer{display:flex;justify-content:space-between;align-items:center;gap:15px;padding:16px;border:1px solid var(--line);border-radius:12px;background:#f8fafc}.payment-choice{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.payment-choice label{padding:16px 18px;border:1px solid var(--line);border-radius:12px;background:#fff;font-weight:750;cursor:pointer}.payment-choice label:has(input:checked){border-color:var(--gold);box-shadow:0 0 0 3px rgba(181,139,58,.13);background:#fffaf0}.receipt-total{font-size:30px}.signature-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:18px 0}.signature-box{margin-top:18px}.signature-box canvas{width:100%;height:210px;background:#fff;border:2px dashed #b8c2cb;border-radius:14px;touch-action:none}.checkline{display:flex;gap:12px;align-items:flex-start;padding:17px;border-radius:12px;background:#fff7e6;margin:18px 0}.checkline input{margin-top:4px;transform:scale(1.25)}.item-row{box-shadow:none;background:#fafbfc!important}.item-thumb{width:72px;height:72px;object-fit:cover;border-radius:9px}.no-photo{display:grid;width:72px;height:72px;place-items:center;background:#f1f3f5;border-radius:9px}.app-footer{display:flex;justify-content:space-between;color:var(--muted);font-size:12px;padding:18px 2px}.sidebar-backdrop{display:none}.login{min-height:100vh;display:grid;place-items:center;padding:20px;background:radial-gradient(circle at top,#263746,#101820 65%)}.login-card{width:min(520px,100%);background:#fff;padding:30px;border-radius:20px;box-shadow:0 25px 70px rgba(0,0,0,.28)}.login-card h1{margin-top:0}.empty-state{text-align:center;padding:40px 20px;color:var(--muted)}@media(max-width:1100px){.stats-grid{grid-template-columns:repeat(2,1fr)}.grid.two,.grid.three{grid-template-columns:1fr}.top-actions .btn{display:none}}@media(max-width:860px){.app{display:block}.sidebar{position:fixed;left:0;top:0;width:min(310px,88vw);transform:translateX(-105%);transition:.22s}.sidebar-open .sidebar{transform:translateX(0)}.sidebar-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.45);z-index:40}.sidebar-open .sidebar-backdrop{display:block}.menu-toggle{display:inline-flex}main{padding:18px}.topbar{align-items:flex-start}.quick-lookup input{width:145px}.workflow-steps{grid-template-columns:1fr 1fr}.signature-grid{grid-template-columns:1fr}}@media(max-width:620px){main{padding:13px}.topbar{display:block}.top-actions{margin-top:13px}.quick-lookup{width:100%}.quick-lookup input{width:100%;flex:1}.form-grid{grid-template-columns:1fr}.field.full,.full{grid-column:auto}.payment-choice{grid-template-columns:1fr}.workflow-steps{grid-template-columns:1fr}.stats-grid{grid-template-columns:1fr}.card,.hero-card{padding:16px;border-radius:14px}.actions,.page-actions,.section-head{align-items:stretch}.actions .btn,.page-actions .btn{width:100%}.selected-customer{align-items:flex-start;flex-direction:column}th,td{padding:11px 12px}.receipt-total{font-size:24px}}
@media print{.sidebar,.topbar,.no-print,.app-footer{display:none!important}.app{display:block}main{padding:0}.card{box-shadow:none;border:0}.table-wrap{overflow:visible;border:0}}

.modal-overlay{position:fixed;inset:0;background:rgba(8,15,22,.72);backdrop-filter:blur(5px);display:grid;place-items:center;padding:20px;z-index:1000}.modal-card{position:relative;width:min(620px,100%);background:#fff;border-radius:22px;padding:32px;box-shadow:0 30px 90px rgba(0,0,0,.35);text-align:center}.modal-close{position:absolute;right:15px;top:12px;border:0;background:#f1f3f5;width:38px;height:38px;border-radius:50%;font-size:25px;cursor:pointer}.success-icon{display:grid;place-items:center;margin:0 auto 15px;width:62px;height:62px;border-radius:50%;background:#e5f5ed;color:#167451;font-size:32px;font-weight:900}.popup-bonnummer{font-size:clamp(27px,6vw,42px);font-weight:950;letter-spacing:.04em;color:#8c6726;background:#fff7e6;border:1px dashed #c59a47;border-radius:14px;padding:17px;margin:21px 0}.popup-meta{display:flex;justify-content:center;gap:10px;color:var(--muted)}.modal-actions{display:grid;gap:10px;margin-top:24px}.handover-doc{background:#fff;max-width:900px;margin:0 auto;border:1px solid var(--line);padding:42px;box-shadow:var(--shadow)}.handover-head{display:flex;justify-content:space-between;gap:30px;padding-bottom:22px;border-bottom:3px solid var(--dark)}.handover-head>div:first-child{display:flex;gap:16px;align-items:center}.doc-logo{width:58px;height:58px;display:grid;place-items:center;background:var(--dark);color:#e6c579;border-radius:12px;font-weight:950}.handover-head h1{margin:0;font-size:32px}.handover-head p{margin:4px 0 0;color:var(--muted)}.doc-number{text-align:right}.doc-number small,.doc-number span{display:block;color:var(--muted)}.doc-number strong{display:block;font-size:23px;color:#8c6726;margin:4px 0}.doc-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;padding:24px 0}.handover-doc h3{border-bottom:1px solid var(--line);padding-bottom:7px}.doc-placeholder{padding:22px;border:1px dashed #bbc5cd;background:#f8fafb;border-radius:12px;color:var(--muted)}.doc-statement{margin-top:28px;padding:18px;background:#f7f1e6;border-left:4px solid var(--gold)}.doc-signatures{display:grid;grid-template-columns:1fr 1fr;gap:50px;margin:60px 0 35px}.doc-signatures span{font-weight:750}.doc-signatures div div{height:65px;border-bottom:1px solid #444}.handover-doc footer{text-align:center;border-top:1px solid var(--line);padding-top:18px;color:var(--muted);font-size:13px}@media(max-width:620px){.modal-card{padding:25px 17px}.handover-doc{padding:20px}.handover-head,.doc-grid{display:block}.doc-number{text-align:left;margin-top:18px}.doc-signatures{grid-template-columns:1fr;gap:25px}}@media print{.modal-overlay{display:none!important}.handover-doc{max-width:none;box-shadow:none;border:0;padding:10mm}.handover-doc .doc-signatures{break-inside:avoid}}

.hero-kpis{display:flex;gap:12px;flex-wrap:wrap}.hero-kpis>div{min-width:130px;padding:14px 18px;border:1px solid rgba(255,255,255,.16);border-radius:13px;background:rgba(255,255,255,.07)}.hero-kpis small{display:block;color:#c7d0d8}.hero-kpis strong{font-size:28px}.taxateur-hero{display:flex;align-items:center;justify-content:space-between;gap:24px}.priority-card{border-left:5px solid var(--gold)}.count-pill{display:inline-flex;min-width:30px;height:30px;align-items:center;justify-content:center;border-radius:999px;background:#eef1f4;font-weight:900}.count-pill.large{min-width:42px;height:42px;font-size:18px;background:#fff4d8;color:#7c5b17}@media(max-width:760px){.taxateur-hero{display:block}.hero-kpis{margin-top:20px}.hero-kpis>div{flex:1}}

.nav-group{display:grid;gap:5px;margin-bottom:12px}.nav-group+.nav-group{border-top:1px solid #293541;padding-top:13px}.nav-group-label{padding:0 11px 5px;color:#738493;font-size:10px;font-weight:900;letter-spacing:.13em;text-transform:uppercase}.role-chip{display:inline-flex;width:max-content;padding:4px 8px;border-radius:999px;background:#263744;color:#e6c579;font-size:11px;font-weight:850;margin:3px 0}.sidebar nav{gap:0}

/* v17 centrale werkbakken */
.workflow-hero{display:flex;align-items:center;justify-content:space-between;gap:28px;background:linear-gradient(135deg,#162430,#263b4b);color:#fff;margin-bottom:18px}.workflow-hero h2{font-size:clamp(26px,4vw,42px);margin:5px 0 8px}.workflow-hero p{max-width:760px;color:#cbd5dc}.workflow-total{min-width:150px;text-align:center;padding:18px;border:1px solid rgba(255,255,255,.18);border-radius:16px;background:rgba(255,255,255,.08)}.workflow-total small{display:block;color:#cbd5dc}.workflow-total strong{font-size:44px}.workflow-lanes{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin-bottom:20px}.workflow-lane{display:flex;align-items:center;gap:10px;padding:14px;background:#fff;border:1px solid var(--line);border-radius:14px;color:var(--ink);box-shadow:0 7px 20px rgba(20,30,40,.04)}.workflow-lane>span{display:grid;place-items:center;flex:0 0 32px;height:32px;border-radius:50%;background:#172735;color:#e7c67b;font-weight:900}.workflow-lane div{min-width:0;flex:1}.workflow-lane small,.workflow-lane b{display:block}.workflow-lane small{font-size:10px;text-transform:uppercase;color:var(--muted);letter-spacing:.04em}.workflow-lane b{font-size:13px}.workflow-lane>strong{font-size:22px;color:#8c6726}.workflow-lane.error{border-color:#efc6c6}.workflow-lane.error>span{background:#9c3030;color:#fff}.workflow-lane.error>strong{color:#9c3030}.workbox{margin-bottom:18px;scroll-margin-top:20px}.work-actions{display:flex;gap:7px;align-items:center;flex-wrap:wrap;min-width:220px}@media(max-width:1150px){.workflow-lanes{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.workflow-hero{display:block}.workflow-total{margin-top:18px}.workflow-lanes{grid-template-columns:1fr}.work-actions{min-width:180px}}
/* v18 eindcontrole en documentencentrum */
.review-hero{display:flex;align-items:center;justify-content:space-between;gap:25px}.review-state{padding:12px 16px;border-radius:999px;font-weight:900;background:#fff4d8;color:#7c5b17}.review-state.approved{background:#e5f5ed;color:#126540}.review-state.rejected{background:#fdeaea;color:#9c3030}.review-checks{display:grid;gap:10px;margin:18px 0}.review-checks label{display:flex;gap:12px;align-items:flex-start;padding:15px;border:1px solid var(--line);border-radius:12px;background:#fafbfc;font-weight:750}.review-checks input{margin-top:3px;transform:scale(1.25)}.status-timeline{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.status-timeline div{position:relative;text-align:center;padding:12px 8px;border-radius:12px;background:#f1f3f5;color:#6d7881}.status-timeline span{display:grid;place-items:center;width:30px;height:30px;margin:0 auto 7px;border-radius:50%;background:#dce1e5;font-weight:900}.status-timeline .done{background:#e5f5ed;color:#126540}.status-timeline .done span{background:#126540;color:#fff}.status-timeline .error{background:#fdeaea;color:#9c3030}.status-timeline .error span{background:#9c3030;color:#fff}@media(max-width:760px){.review-hero{display:block}.review-state{display:inline-flex;margin-top:15px}.status-timeline{grid-template-columns:1fr}.status-timeline div{text-align:left;display:flex;align-items:center;gap:10px}.status-timeline span{margin:0}}

.badge.payment-pending{background:#fff3cd;color:#7a5600}.badge.payment-partial{background:#ffe0b2;color:#7a3e00}.badge.payment-paid{background:#d9f6e7;color:#12613e}.badge.payment-cancelled{background:#eee;color:#555}.compact-form{margin-top:12px;display:grid;gap:10px;min-width:260px}.compact-form label{display:grid;gap:5px;font-size:13px}.compact-form input,.compact-form textarea{width:100%}
.health-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.health-card{display:flex;gap:14px;padding:16px;border:1px solid var(--line);border-radius:16px;background:#fff}.health-card.ok{border-left:4px solid #18864b}.health-card.fail{border-left:4px solid #c0392b;background:#fff9f8}.health-icon{display:grid;place-items:center;flex:0 0 34px;height:34px;border-radius:50%;font-weight:800;background:#eef2f4}.health-card.ok .health-icon{color:#13713e;background:#e8f7ef}.health-card.fail .health-icon{color:#a72d22;background:#fdecea}.health-card h3{margin:0 0 4px}.health-card p{margin:0}.health-card small{display:block;margin-top:6px;color:var(--muted)}.action-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.action-card{display:flex;flex-direction:column;gap:5px;padding:18px;border:1px solid var(--line);border-radius:16px;background:#fff;text-decoration:none;color:inherit}.action-card:hover{transform:translateY(-1px);box-shadow:var(--shadow)}.action-card span{color:var(--muted);font-size:.9rem}.timeline-list{display:grid;gap:16px}.timeline-card{position:relative;padding:0 0 0 28px}.timeline-dot{position:absolute;left:4px;top:9px;width:12px;height:12px;border-radius:50%;background:var(--accent);box-shadow:0 0 0 4px #f4ead2}.timeline-card:before{content:"";position:absolute;left:9px;top:22px;bottom:-20px;width:2px;background:var(--line)}.timeline-card:last-child:before{display:none}.timeline-content{padding:18px;border:1px solid var(--line);border-radius:16px;background:#fff}.detail-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:12px 0}.detail-grid div{padding:12px;border-radius:12px;background:#f6f8f9}.detail-grid small,.detail-grid b{display:block}.timeline-content details{margin-top:12px}.timeline-content summary{cursor:pointer;font-weight:700}@media(max-width:900px){.health-grid,.action-grid,.detail-grid{grid-template-columns:1fr 1fr}}@media(max-width:620px){.health-grid,.action-grid,.detail-grid{grid-template-columns:1fr}}

/* v21 rollen en uitzonderingen */
.exception-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px;margin:0 0 20px}.exception-summary-card{display:flex;gap:14px;align-items:center;padding:16px;border:1px solid var(--line,#dfe4e8);border-radius:16px;background:#fff;text-decoration:none;color:inherit;box-shadow:0 5px 16px rgba(16,24,32,.05)}.exception-summary-card>span{display:grid;place-items:center;min-width:42px;height:42px;border-radius:12px;font-size:20px;font-weight:800;background:#eef2f4}.exception-summary-card.has-items>span{background:#fff0e8;color:#a84218}.exception-summary-card.is-clear{opacity:.72}.exception-summary-card b,.exception-summary-card small{display:block}.exception-summary-card small{margin-top:4px;color:var(--muted,#66727d);line-height:1.35}.role-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.role-card{display:flex;gap:14px;padding:16px;border:1px solid var(--line,#dfe4e8);border-radius:16px;background:#fff}.role-card>span{display:grid;place-items:center;width:42px;height:42px;flex:0 0 42px;border-radius:12px;background:#101820;color:#fff;font-weight:800}.role-card h3{margin:0 0 5px}.role-card p{margin:0;color:var(--muted,#66727d);line-height:1.45}.account-list{display:grid;gap:12px}.account-row{padding:14px;border:1px solid var(--line,#dfe4e8);border-radius:14px;display:grid;gap:11px}.account-row.is-inactive{opacity:.55;background:#f4f5f6}.account-main b,.account-main small{display:block}.account-main small{margin-top:4px;color:var(--muted,#66727d)}.account-controls,.password-reset{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.account-controls select{min-width:150px}.switch-label{display:flex;align-items:center;gap:6px;padding:8px 10px;border:1px solid var(--line,#dfe4e8);border-radius:10px}.password-reset input{max-width:210px}@media(max-width:720px){.account-controls,.password-reset{align-items:stretch}.account-controls>* ,.password-reset>*{width:100%;max-width:none}.exception-summary{grid-template-columns:1fr}}
/* v22 professionele workflow */
.role-dashboard-hero{display:flex;align-items:center;justify-content:space-between}.hero-clock{text-align:right}.hero-clock strong{display:block;font-size:46px}.hero-clock small{color:#cbd5dc}.role-action-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-bottom:18px}.role-action{display:flex;gap:14px;align-items:center;padding:18px;border-radius:16px;background:#fff;border:1px solid var(--line);box-shadow:var(--shadow)}.role-action>span{display:grid;place-items:center;flex:0 0 44px;height:44px;border-radius:13px;background:#eef2f4;font-size:20px;font-weight:900}.role-action.primary{background:linear-gradient(135deg,#182936,#263f50);color:#fff;border:0}.role-action.primary small{color:#c9d3da}.role-action b,.role-action small{display:block}.role-action small{margin-top:3px;color:var(--muted)}.dashboard-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin-bottom:18px}.dashboard-kpis>div{position:relative;padding:17px;border-radius:15px;background:#fff;border:1px solid var(--line)}.dashboard-kpis small,.dashboard-kpis strong{display:block}.dashboard-kpis strong{font-size:30px;margin-top:5px}.status-dot{position:absolute;right:14px;top:14px;width:10px;height:10px;border-radius:50%}.status-dot.amber{background:#d39b22}.status-dot.orange{background:#e47a2e}.status-dot.blue{background:#3078c8}.status-dot.green{background:#2a9865}.status-dot.red{background:#ca3f3f}.status-dot.violet{background:#7656b8}.modern-list{display:grid;gap:8px}.modern-list>a{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:13px 14px;border:1px solid var(--line);border-radius:13px}.modern-list>a>div:first-child{display:grid}.modern-list small{color:var(--muted)}.modern-list>a>div:last-child{display:flex;gap:13px;align-items:center}.admin-shortcuts{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.admin-shortcuts a{padding:15px;border-radius:12px;background:#f7f8f9;border:1px solid var(--line);font-weight:750}.global-search-form{display:flex;gap:10px}.global-search-form input{flex:1;border:1px solid var(--line);border-radius:13px;padding:14px 16px;font-size:18px}.search-result-summary{display:flex;gap:10px;margin:0 0 18px}.search-result-summary span{padding:8px 12px;border-radius:999px;background:#fff;border:1px solid var(--line);font-weight:750}.result-card-grid,.item-card-grid{display:grid;gap:9px}.result-card,.item-card{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:14px;border:1px solid var(--line);border-radius:14px;background:#fff}.result-card>div{display:grid;gap:3px}.result-card>div:last-child{justify-items:end}.item-card{justify-content:flex-start}.item-card-icon{display:grid;place-items:center;flex:0 0 42px;height:42px;border-radius:12px;background:#f3ead8;color:#8b6727;font-size:22px}.item-card>div:nth-child(2){display:grid;flex:1}.item-card small,.item-card span{color:var(--muted)}.bon-hero{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 26px;margin-bottom:18px;border-radius:18px;background:linear-gradient(135deg,#172732,#284457);color:#fff}.bon-hero h2{font-size:42px;margin:3px 0}.bon-hero p{margin:0;color:#cbd5dc}.bon-hero-status{text-align:right}.bon-hero-status strong{display:block;font-size:30px;margin-top:10px}.bon-layout{display:grid;grid-template-columns:260px minmax(0,1fr) 270px;gap:18px;align-items:start}.bon-layout main{padding:0;margin:0;max-width:none}.profile-card{text-align:center}.profile-avatar{display:grid;place-items:center;width:66px;height:66px;margin:0 auto 10px;border-radius:50%;background:#172732;color:#e7c67b;font-weight:900;font-size:20px}.profile-card h3{margin:4px 0}.profile-card dl{text-align:left;margin-top:18px}.profile-card dl div{padding:10px 0;border-top:1px solid var(--line)}.profile-card dt{font-size:12px;color:var(--muted)}.profile-card dd{margin:2px 0 0;font-weight:700;overflow-wrap:anywhere}.full-width{width:100%}.document-buttons{display:grid;gap:8px}.document-buttons a{padding:10px 12px;border-radius:10px;background:#f5f7f8;border:1px solid var(--line);font-weight:700}.purchase-item-cards{display:grid;gap:12px}.purchase-item-card{display:grid;grid-template-columns:86px minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px;border:1px solid var(--line);border-radius:16px;background:#fff}.purchase-item-card.is-return{background:#fff7f7}.purchase-item-photo{width:86px;height:76px;border-radius:12px;overflow:hidden;background:#f0f2f4}.purchase-item-photo img{width:100%;height:100%;object-fit:cover}.purchase-item-photo.placeholder{display:grid;place-items:center;font-size:28px;color:#a9b1b7}.purchase-item-title span{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:#8b6727;font-weight:900}.purchase-item-title h3{margin:3px 0 8px}.item-meta{display:flex;gap:7px;flex-wrap:wrap}.item-meta span{padding:5px 8px;border-radius:8px;background:#f3f5f6;color:#56616b;font-size:12px}.item-dor{margin-top:9px}.purchase-item-price{font-size:19px}.sticky-summary{position:sticky;top:18px}.summary-row,.summary-total{display:flex;justify-content:space-between;gap:12px;padding:10px 0;border-bottom:1px solid var(--line)}.summary-row span{color:var(--muted)}.summary-total{border:0;align-items:end}.summary-total strong{font-size:26px}.text-red{color:var(--red)}.vertical-timeline{display:grid}.vertical-timeline>div{position:relative;padding:8px 0 18px 30px;border-left:2px solid #dce2e6;margin-left:7px}.vertical-timeline>div:last-child{border-left-color:transparent}.vertical-timeline span{position:absolute;left:-7px;top:9px;width:12px;height:12px;border-radius:50%;background:#c9d1d7}.vertical-timeline .done span{background:#20875b}.vertical-timeline .error span{background:#c33}.vertical-timeline b,.vertical-timeline small{display:block}.vertical-timeline small{color:var(--muted)}
@media(max-width:1250px){.dashboard-kpis{grid-template-columns:repeat(3,1fr)}.role-action-grid{grid-template-columns:repeat(2,1fr)}.bon-layout{grid-template-columns:230px minmax(0,1fr)}.bon-right{grid-column:1/-1}.sticky-summary{position:static}}
@media(max-width:760px){.role-dashboard-hero,.bon-hero{display:block}.hero-clock,.bon-hero-status{text-align:left;margin-top:14px}.dashboard-kpis,.role-action-grid,.admin-shortcuts{grid-template-columns:1fr}.global-search-form{display:grid}.bon-layout{grid-template-columns:1fr}.purchase-item-card{grid-template-columns:70px minmax(0,1fr)}.purchase-item-photo{width:70px;height:70px}.purchase-item-price{grid-column:2}.search-result-summary{flex-wrap:wrap}}

/* v23 thema, PWA en documentarchief */
:root{color-scheme:dark}
html[data-theme="light"]{color-scheme:light;--bg:#eef1f4;--surface:#ffffff;--surface-2:#f7f8fa;--text:#17212a;--muted:#66717a;--line:#d8dee3;--sidebar:#f9fafb;--sidebar-text:#17212a;--shadow:0 16px 45px rgba(20,31,40,.10)}
html[data-theme="light"] body{background:#eef1f4;color:#17212a}
html[data-theme="light"] .sidebar{background:#fff;color:#17212a;border-right:1px solid #d8dee3}
html[data-theme="light"] .sidebar a,html[data-theme="light"] .nav-group-label,html[data-theme="light"] .sidebar-foot{color:#44515b}
html[data-theme="light"] .sidebar a.active,html[data-theme="light"] .sidebar a:hover{background:#f0e7d3;color:#17212a}
html[data-theme="light"] .topbar,html[data-theme="light"] .card,html[data-theme="light"] .panel,html[data-theme="light"] .hero-card,html[data-theme="light"] .bon-hero{background:#fff;color:#17212a;border-color:#d8dee3}
html[data-theme="light"] input,html[data-theme="light"] select,html[data-theme="light"] textarea{background:#fff;color:#17212a;border-color:#cbd3da}
.footer-tools{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.link-button{background:none;border:0;color:inherit;font:inherit;padding:0;cursor:pointer}.offline{color:#d44;font-weight:700}
.document-archive{display:grid;gap:12px}.document-archive article{display:grid;grid-template-columns:48px 1fr auto;gap:14px;align-items:center;border:1px solid var(--line);padding:14px;border-radius:16px;background:var(--surface-2)}.document-archive article small{display:block;color:var(--muted);margin-top:4px}.document-icon{width:48px;height:48px;border-radius:14px;background:rgba(199,164,91,.18);display:grid;place-items:center;font-weight:800;color:#c7a45b}.row-actions{display:flex;gap:8px;align-items:center}.row-actions form{margin:0}.upload-drop{border:1px dashed #7c8993;border-radius:16px;padding:18px;background:rgba(127,140,150,.06)}.upload-drop input{display:block;margin-top:10px;width:100%}.qr-card{text-align:center;display:grid;gap:10px;justify-items:center}.qr-card img{width:180px;height:180px;background:#fff;padding:8px;border-radius:14px}.qr-card small{color:var(--muted)}
@media(max-width:680px){.document-archive article{grid-template-columns:44px 1fr}.document-archive .row-actions{grid-column:1/-1}.footer-tools{justify-content:center}.app-footer{align-items:center;text-align:center;gap:10px}}
/* v23.1 klantenoverzicht en DOR-legitimatiefoto */
.customer-overview-hero{margin-bottom:16px}.customer-list-summary{display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:14px}.customer-list-summary b{color:var(--ink)}.customer-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.customer-overview-card{background:var(--card);border:1px solid var(--line);border-radius:18px;box-shadow:var(--shadow);overflow:hidden}.customer-overview-card>header{display:grid;grid-template-columns:52px minmax(0,1fr) auto;gap:12px;align-items:center;padding:18px;border-bottom:1px solid var(--line)}.customer-overview-card .profile-avatar{width:52px;height:52px;margin:0;font-size:15px}.customer-overview-card h3{margin:2px 0 2px}.customer-overview-card header small{color:var(--muted)}.customer-overview-body{padding:16px}.customer-overview-body dl{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin:0 0 14px}.customer-overview-body dl div{padding:10px;border-radius:11px;background:rgba(127,140,150,.07)}.customer-overview-body dt{font-size:11px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.customer-overview-body dd{margin:3px 0 0;font-weight:750;overflow-wrap:anywhere}.dor-photo-panel{display:grid;grid-template-columns:74px 1fr;gap:12px;align-items:center;padding:12px;border:1px solid var(--line);border-radius:14px;background:rgba(127,140,150,.05)}.dor-photo-panel img,.dor-photo-placeholder{width:74px;height:58px;border-radius:10px;object-fit:cover}.dor-photo-placeholder{display:grid;place-items:center;background:rgba(199,164,91,.14);font-size:25px}.dor-photo-panel b,.dor-photo-panel small{display:block}.dor-photo-panel small{color:var(--muted);margin-top:3px}.dor-photo-form{display:flex;gap:8px;flex-wrap:wrap;margin-top:11px}.camera-button{position:relative;overflow:hidden}.camera-button input{position:absolute;inset:0;opacity:0;cursor:pointer}.customer-card-actions{display:flex;gap:8px;flex-wrap:wrap;padding:14px 16px;background:rgba(127,140,150,.05);border-top:1px solid var(--line)}.pagination{display:flex;justify-content:center;gap:7px;flex-wrap:wrap;margin:22px 0}.btn.disabled{opacity:.45;pointer-events:none}
@media(max-width:1100px){.customer-card-grid{grid-template-columns:1fr}}@media(max-width:620px){.customer-overview-card>header{grid-template-columns:48px 1fr}.customer-overview-card>header>.badge{grid-column:1/-1;justify-self:start}.customer-overview-body dl{grid-template-columns:1fr}.customer-card-actions .btn,.dor-photo-form .btn{width:100%}.customer-list-summary{display:block}.customer-list-summary span{display:block;margin-top:3px}}

/* v24: één productfoto per bon */
.product-photo-panel a{display:block}.product-photo-card img,.review-product-photo{display:block;width:100%;max-height:360px;object-fit:contain;background:#0d1419;border:1px solid var(--line);border-radius:14px}.product-photo-card small{display:block;color:var(--muted);margin-top:9px}.review-product-photo{max-height:420px}.product-photo-card .empty-state .btn{margin-top:10px}

/* v24.1.1 klantcontrole */
.photo-preview-wrap{margin:14px 0;max-width:680px}.photo-preview-wrap[hidden]{display:none}.camera-button input[type=file]{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.signature-box canvas{display:block;width:100%;height:220px;touch-action:none;background:#fff;border:2px dashed var(--line,#d8dee6);border-radius:16px}.alert ul{margin:.55rem 0 0 1.25rem}.tablet-submit[disabled]{opacity:.65;cursor:wait}.product-photo-final-step{margin-top:24px}.payment-choice{display:flex;flex-wrap:wrap;gap:12px}.payment-choice label{display:flex;align-items:center;gap:8px;padding:12px 16px;border:1px solid var(--line,#d8dee6);border-radius:12px}


/* Adreszoeker PDOK */
.address-lookup-panel{padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--panel-soft)}
.address-lookup-grid{display:grid;grid-template-columns:minmax(150px,1fr) minmax(120px,.7fr) auto;gap:12px;align-items:end}
.address-lookup-grid label{display:grid;gap:6px;font-weight:700}
.address-search-btn{min-height:46px;white-space:nowrap}
.address-lookup-status{display:block;margin-top:10px;padding:9px 11px;border-radius:9px;font-weight:650}
.address-lookup-status.loading{background:rgba(59,130,246,.1);color:#2563eb}
.address-lookup-status.success{background:rgba(16,185,129,.12);color:#047857}
.address-lookup-status.error{background:rgba(239,68,68,.1);color:#b91c1c}
@media(max-width:720px){.address-lookup-grid{grid-template-columns:1fr 1fr}.address-search-btn{grid-column:1/-1;width:100%}}


/* v24.3 overzicht en plugin-documenten */
.receipt-overview-list{display:grid;gap:16px}.receipt-overview-card{border:1px solid var(--line);border-radius:18px;background:var(--card);overflow:hidden;box-shadow:0 8px 24px rgba(15,23,42,.05)}.receipt-overview-head{display:grid;grid-template-columns:minmax(160px,.7fr) minmax(220px,1.4fr) auto;gap:18px;align-items:center;padding:18px 20px;background:linear-gradient(135deg,rgba(179,137,55,.09),transparent)}.receipt-overview-head>div:first-child{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.receipt-overview-meta{display:flex;flex-direction:column}.receipt-overview-meta span{color:var(--muted);font-size:.9rem}.receipt-overview-total{text-align:right}.receipt-overview-total small,.receipt-rule-row small{display:block;color:var(--muted);font-size:.72rem;text-transform:uppercase;letter-spacing:.06em}.receipt-overview-total strong{font-size:1.2rem}.receipt-rule-list{padding:0 20px}.receipt-rule-row{display:grid;grid-template-columns:minmax(240px,2fr) 90px 70px 100px 100px;gap:14px;align-items:center;padding:13px 0;border-top:1px solid var(--line)}.receipt-rule-main{display:flex;flex-direction:column}.receipt-rule-main span{color:var(--muted);font-size:.88rem}.receipt-rule-empty{padding:18px 0;color:var(--muted)}.receipt-overview-actions{display:flex;align-items:center;justify-content:space-between;padding:14px 20px;background:rgba(148,163,184,.07);border-top:1px solid var(--line);color:var(--muted)}
.plugin-document{max-width:900px;margin:18px auto;background:#fff;color:#172033;border:0;border-radius:2px;box-shadow:0 16px 50px rgba(15,23,42,.15);padding:42px 48px}.plugin-doc-head{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:4px solid #b48a3d;padding-bottom:24px}.plugin-brand{display:flex;gap:14px;align-items:center}.plugin-brand>div{display:flex;flex-direction:column}.plugin-brand strong{font-size:1.1rem}.plugin-brand span{font-size:.78rem;color:#667085}.plugin-doc-title{text-align:right}.plugin-doc-title h1{margin:0 0 12px;font-size:2rem;text-transform:uppercase;letter-spacing:.04em}.plugin-doc-title>div{display:flex;justify-content:flex-end;align-items:baseline;gap:10px}.plugin-doc-title small{text-transform:uppercase;color:#667085}.plugin-doc-title strong{font-size:1.45rem;color:#9b7025}.plugin-doc-meta{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#d9dee8;margin:22px 0}.plugin-doc-meta span{background:#f6f7f9;padding:12px 14px;display:flex;flex-direction:column}.plugin-doc-meta b{font-size:.7rem;text-transform:uppercase;color:#667085}.plugin-doc-section{margin-top:24px}.plugin-doc-section h2{font-size:.82rem;text-transform:uppercase;letter-spacing:.08em;color:#9b7025;border-bottom:1px solid #d9dee8;padding-bottom:8px}.plugin-customer-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.plugin-doc-table{width:100%;border-collapse:collapse}.plugin-doc-table th{background:#172033;color:#fff;text-align:left;padding:10px;font-size:.75rem;text-transform:uppercase}.plugin-doc-table td{padding:11px 10px;border-bottom:1px solid #d9dee8}.plugin-doc-statement{margin-top:25px;padding:16px 18px;background:#f5f1e8;border-left:4px solid #b48a3d;font-size:.9rem;line-height:1.55}.plugin-customer-signature{margin-top:32px;width:320px}.plugin-customer-signature span{display:block;font-size:.75rem;text-transform:uppercase;color:#667085;margin-bottom:8px}.plugin-customer-signature>div{height:75px;border-bottom:1px solid #172033}.plugin-customer-signature img{display:block;max-width:280px;max-height:90px;border-bottom:1px solid #172033}.plugin-doc-footer{display:flex;justify-content:space-between;align-items:flex-end;margin-top:40px;padding-top:16px;border-top:1px solid #d9dee8;font-size:.78rem;color:#667085}.plugin-doc-footer strong{font-size:1.5rem;color:#9b7025}.product-photo-print img{display:block;max-width:320px;max-height:220px;object-fit:contain;border:1px solid #d9dee8;padding:5px}
@media(max-width:800px){.receipt-overview-head{grid-template-columns:1fr}.receipt-overview-total{text-align:left}.receipt-rule-row{grid-template-columns:1fr 1fr}.receipt-rule-main{grid-column:1/-1}.plugin-document{padding:24px}.plugin-doc-head,.plugin-customer-grid{display:block}.plugin-doc-title{text-align:left;margin-top:20px}.plugin-doc-title>div{justify-content:flex-start}.plugin-doc-meta{grid-template-columns:1fr}.receipt-overview-actions{align-items:flex-start;gap:10px;flex-direction:column}}
@media print{body{background:#fff!important}.plugin-document{box-shadow:none;margin:0;max-width:none;padding:15mm;color:#111}.plugin-doc-head{border-bottom-color:#9b7025}.plugin-doc-table th{background:#172033!important;color:#fff!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.plugin-doc-statement{background:#f5f1e8!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}.app-shell,.sidebar,.topbar,.no-print{display:none!important}.main-content{padding:0!important}.plugin-document{break-inside:avoid}}

/* v25 afrondingscontrole */
.completion-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:16px 0}.completion-stats>div{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:18px}.completion-stats span{display:block;color:var(--muted)}.completion-stats strong{display:block;font-size:2rem;margin-top:4px}.completion-list{display:grid;gap:12px}.completion-list article{display:grid;grid-template-columns:minmax(190px,.7fr) minmax(280px,1.5fr) auto;gap:18px;align-items:center;border:1px solid var(--line);border-radius:15px;padding:16px;background:rgba(127,140,150,.04)}.completion-list h3{margin:5px 0}.completion-list small{color:var(--muted)}.completion-checks{display:flex;flex-wrap:wrap;gap:7px}.completion-checks span,.readiness-mini span{font-size:.78rem;padding:5px 8px;border-radius:999px}.completion-checks .ok,.readiness-mini .ok{background:rgba(16,185,129,.12);color:#059669}.completion-checks .missing,.readiness-mini .missing{background:rgba(239,68,68,.12);color:#dc2626}.readiness-mini{display:grid;gap:7px;padding:12px;border-radius:13px;margin-bottom:14px}.readiness-mini.ready{background:rgba(16,185,129,.08)}.readiness-mini.blocked{background:rgba(239,68,68,.07)}
@media(max-width:900px){.completion-list article{grid-template-columns:1fr}.completion-stats{grid-template-columns:1fr}}

/* v26.2 overzichtelijke bankbetalingen */
.bank-date-card{padding:14px 18px}.bank-date-filter{display:flex;gap:12px;align-items:end;flex-wrap:wrap}.bank-date-filter label{display:grid;gap:5px;min-width:210px}.bank-date-filter label span{font-size:.76rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:750}.bank-kpis .kpi-card.success{border-color:rgba(16,185,129,.32);background:linear-gradient(145deg,rgba(16,185,129,.09),var(--card))}.bank-kpis .kpi-card.warning{border-color:rgba(245,158,11,.35);background:linear-gradient(145deg,rgba(245,158,11,.1),var(--card))}.bank-section{overflow:visible}.bank-section .section-head p{margin:5px 0 0;color:var(--muted)}.count-pill{display:inline-grid;place-items:center;min-width:38px;height:38px;padding:0 12px;border-radius:999px;background:rgba(245,158,11,.13);color:#b45309;font-weight:850}.count-pill.success{background:rgba(16,185,129,.13);color:#047857}.bank-bulk-bar{position:sticky;top:72px;z-index:5;display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding:12px 14px;margin:0 0 14px;border:1px solid var(--line);border-radius:13px;background:color-mix(in srgb,var(--card) 94%,transparent);backdrop-filter:blur(10px);box-shadow:0 7px 24px rgba(15,23,42,.08)}.bank-bulk-bar .check-all{display:flex;align-items:center;gap:8px;font-weight:750}.bank-bulk-bar input,.bank-payment-check input{width:20px;height:20px;accent-color:var(--accent)}.bank-bulk-bar #selectedPaymentCount{margin-right:auto;color:var(--muted)}.bank-payment-list{display:grid;gap:10px}.bank-payment-card{display:grid;grid-template-columns:46px minmax(230px,1.5fr) minmax(145px,.6fr) auto;gap:15px;align-items:center;padding:15px;border:1px solid var(--line);border-radius:15px;background:var(--card);transition:.18s ease}.bank-payment-card:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--line));transform:translateY(-1px)}.bank-payment-card.selected{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 15%,transparent);background:color-mix(in srgb,var(--accent) 5%,var(--card))}.bank-payment-check{align-self:stretch;display:grid;place-items:center;cursor:pointer}.bank-payment-check span{display:none}.bank-payment-main{display:grid;gap:3px}.bank-payment-title{display:flex;align-items:center;gap:9px;flex-wrap:wrap}.bank-payment-main small,.bank-payment-amount span,.bank-paid-row small,.bank-paid-row span{display:block;color:var(--muted);font-size:.82rem}.bank-payment-amount{text-align:right}.bank-payment-amount small{display:block;color:var(--muted);text-transform:uppercase;font-size:.7rem;letter-spacing:.06em}.bank-payment-amount strong{display:block;font-size:1.25rem}.bank-payment-actions{justify-self:end}.bank-inline-notes{min-width:250px}.bank-empty{display:grid;justify-items:center;gap:4px;padding:34px}.bank-empty strong{font-size:1.1rem}.bank-paid-section>details>summary{list-style:none}.bank-paid-section>details>summary::-webkit-details-marker{display:none}.bank-paid-summary{cursor:pointer;display:flex;justify-content:space-between;align-items:center}.bank-paid-summary h3{margin:4px 0}.bank-paid-list{display:grid;gap:8px;margin-top:16px}.bank-paid-row{display:grid;grid-template-columns:minmax(220px,1.2fr) minmax(120px,.5fr) minmax(180px,.7fr) auto;gap:14px;align-items:center;padding:13px 14px;border:1px solid var(--line);border-radius:13px;background:rgba(127,140,150,.04)}.bank-paid-row>div{display:grid;gap:3px}.app-dialog{border:0;padding:0;border-radius:18px;background:transparent;max-width:min(540px,calc(100vw - 28px));width:100%}.app-dialog::backdrop{background:rgba(4,10,16,.7);backdrop-filter:blur(5px)}.dialog-card{display:grid;gap:16px;padding:22px;background:var(--card);color:var(--text);border:1px solid var(--line);border-radius:18px;box-shadow:0 24px 80px rgba(0,0,0,.3)}.dialog-card label{display:grid;gap:7px;font-weight:700}.dialog-head,.dialog-actions{display:flex;align-items:center;justify-content:space-between;gap:12px}.dialog-head h3{margin:4px 0}.dialog-close{border:0;background:transparent;color:var(--muted);font-size:28px;cursor:pointer}.dialog-actions{justify-content:flex-end}.text-link.danger{color:#dc2626}
@media(max-width:900px){.bank-payment-card{grid-template-columns:42px 1fr}.bank-payment-amount{grid-column:2;text-align:left}.bank-payment-actions{grid-column:2;justify-self:start}.bank-paid-row{grid-template-columns:1fr 1fr}.bank-paid-row .button-stack{grid-column:1/-1;display:flex;flex-direction:row;flex-wrap:wrap}}
@media(max-width:600px){.bank-date-filter>*{width:100%}.bank-bulk-bar{top:8px}.bank-bulk-bar .btn{width:100%}.bank-payment-card{grid-template-columns:34px 1fr;padding:13px 10px}.bank-payment-main small{line-height:1.45}.bank-paid-row{grid-template-columns:1fr}.bank-paid-row .button-stack{grid-column:auto}.bank-kpis{grid-template-columns:1fr 1fr}}


/* v27 bankdag afsluiting */
.closing-form{display:grid;grid-template-columns:minmax(220px,1fr) minmax(220px,1fr);gap:18px;align-items:end}.closing-form .full{grid-column:1/-1}.difference-preview{padding:17px 18px;border:1px solid var(--line);border-radius:14px;background:var(--panel-2)}.difference-preview small{display:block;color:var(--muted);margin-bottom:7px}.difference-preview strong{font-size:1.45rem}.closing-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0}.closing-grid>div{padding:16px;border-radius:14px;background:var(--panel-2);border:1px solid var(--line)}.closing-grid small{display:block;color:var(--muted);margin-bottom:6px}.closing-grid strong{font-size:1.1rem}.text-danger{color:#d64f4f!important}.text-success{color:#249a68!important}.note-box{padding:15px 17px;border-left:4px solid var(--accent);background:var(--panel-2);border-radius:10px;margin:15px 0}.note-box p{margin:6px 0 0}.closing-result .compact-form{margin-top:20px;max-width:650px}@media(max-width:780px){.closing-form,.closing-grid{grid-template-columns:1fr}.closing-form .full{grid-column:auto}}


/* v28 bank payment proofs */
.bank-proof-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:16px}.bank-proof-card{border:1px solid var(--line);background:var(--panel-2);border-radius:18px;padding:18px;display:grid;gap:14px}.bank-proof-card.missing{border-color:rgba(245,158,11,.45)}.bank-proof-card.complete{border-color:rgba(34,197,94,.35)}.bank-proof-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.bank-proof-head>div{display:grid;gap:3px}.bank-proof-head span,.proof-meta{color:var(--muted);font-size:.9rem}.proof-meta{display:flex;gap:12px;flex-wrap:wrap}.proof-present{display:grid;gap:10px}.proof-upload-form{display:grid;gap:12px}.proof-upload-form label{display:grid;gap:6px}.proof-mini{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.bank-payment-actions{gap:10px}.bank-proof-card form{margin:0}@media(max-width:700px){.bank-proof-grid{grid-template-columns:1fr}.bank-proof-head{flex-direction:column}.bank-proof-head>strong{font-size:1.3rem}}

/* v29 dossieropvolging */
.followup-hero{display:flex;justify-content:space-between;align-items:center;gap:22px}.followup-filters select{min-width:175px}.followup-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:16px}.followup-card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:18px;box-shadow:var(--shadow);display:grid;gap:14px;position:relative;overflow:hidden}.followup-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:#94a3b8}.followup-card.priority-high:before{background:#f59e0b}.followup-card.priority-urgent:before,.followup-card.is-overdue:before{background:#dc2626}.followup-card-head{display:flex;justify-content:space-between;gap:18px}.followup-card-head h3{margin:4px 0 0}.followup-card-head small{color:var(--muted)}.followup-status{display:grid;justify-items:end;gap:7px;text-align:right}.followup-status b{font-size:.85rem;color:var(--muted)}.followup-next{padding:13px 14px;border-radius:13px;background:var(--panel-2,#f7f9fb);border:1px solid var(--line)}.followup-next small,.followup-meta small{display:block;color:var(--muted);margin-bottom:4px}.followup-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.followup-meta span{padding:10px;border:1px solid var(--line);border-radius:11px}.followup-note{padding:12px 14px;margin:0;border-left:4px solid var(--gold);background:rgba(181,139,58,.08);border-radius:10px}.status-pill.info{background:#e8f2ff;color:#245b98}.status-pill.neutral{background:#edf1f4;color:#52616e}.stat-card{background:var(--card);border:1px solid var(--line);border-radius:15px;padding:17px;box-shadow:var(--shadow)}.stat-card span,.stat-card small{display:block;color:var(--muted)}.stat-card strong{display:block;font-size:1.8rem;margin:4px 0}.workflow-total{text-align:center;min-width:120px}.workflow-total small{display:block;color:#c7d0d8}.workflow-total strong{font-size:2.5rem}@media(max-width:720px){.followup-hero,.followup-card-head{align-items:flex-start;flex-direction:column}.followup-status{justify-items:start;text-align:left}.followup-grid{grid-template-columns:1fr}.followup-meta{grid-template-columns:1fr}.followup-filters>*{width:100%}}

/* v31 koersberekening en executive dashboard */
.executive-strip{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:15px;margin:18px 0}.executive-strip>div,.metal-rate-bar>div{padding:20px;border:1px solid var(--line);border-radius:18px;background:var(--card);box-shadow:var(--shadow);display:grid;gap:5px}.executive-strip small,.metal-rate-bar small{color:var(--muted);text-transform:uppercase;letter-spacing:.07em;font-size:.72rem;font-weight:800}.executive-strip strong{font-size:1.7rem}.executive-strip span,.metal-rate-bar span{color:var(--muted);font-size:.84rem}.metal-ticker.gold{border-top:4px solid #c99a32}.metal-ticker.silver{border-top:4px solid #9aa6b2}.metal-rate-bar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 17px}.metal-rate-bar strong{font-size:1.18rem}.metal-rate-bar a{font-size:.82rem;color:var(--accent);font-weight:750}.auto-calc-field{padding:11px 13px;border:1px dashed color-mix(in srgb,var(--accent) 45%,var(--line));border-radius:12px;background:color-mix(in srgb,var(--accent) 5%,var(--card))}.auto-calc-field label{display:flex!important;align-items:center;gap:9px}.auto-calc-field input{width:19px;height:19px}.metal-rate-settings{margin-bottom:18px}.field small{color:var(--muted);font-size:.78rem;margin-top:5px}@media(max-width:900px){.executive-strip,.metal-rate-bar{grid-template-columns:1fr}}


/* v32 slimme taxateur + contante inhouding */
.smart-taxateur{margin:20px 0;border:1px solid rgba(178,137,47,.28);background:linear-gradient(135deg,rgba(178,137,47,.08),rgba(255,255,255,.7))}
.smart-taxateur-row{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:center}.smart-taxateur-row input{min-height:48px;font-size:16px}
.cash-withholding-box{border:1px solid rgba(178,137,47,.32);border-radius:14px;padding:14px;background:rgba(178,137,47,.06);display:grid;gap:8px}.cash-withholding-box>div{display:flex;justify-content:space-between;gap:20px}.cash-withholding-box .net{padding-top:8px;border-top:1px solid rgba(178,137,47,.25);font-size:1.08rem}.cash-withholding-box small{color:var(--muted,#667085);line-height:1.4}.summary-row.withholding b{color:#a63a2b}.summary-total.net{border-top:2px solid rgba(178,137,47,.35);padding-top:10px}
@media(max-width:720px){.smart-taxateur-row{grid-template-columns:1fr}.smart-taxateur-row .btn{width:100%}.cash-withholding-box>div{align-items:center}}


/* v33 financiële controle */
.finance-hero{align-items:center}.finance-hero-total{min-width:230px;text-align:right}.finance-hero-total small,.finance-hero-total span{display:block;opacity:.72}.finance-hero-total strong{display:block;font-size:2rem;margin:.2rem 0}.finance-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin:18px 0}.finance-kpis>div{background:var(--panel,#fff);border:1px solid var(--line,#e5e7eb);border-radius:16px;padding:16px;box-shadow:var(--shadow)}.finance-kpis small,.finance-kpis span{display:block}.finance-kpis small{color:var(--muted);font-weight:700}.finance-kpis strong{display:block;font-size:1.35rem;margin:6px 0}.finance-kpis span{font-size:.78rem;color:var(--muted)}.finance-kpis .deduction strong,.finance-row .deduction b{color:#b45309}.finance-kpis .net{border-color:rgba(22,163,74,.35)}.finance-kpis .net strong,.finance-row .net strong{color:#15803d}.finance-list{display:grid;gap:14px}.finance-row{border:1px solid var(--line,#e5e7eb);border-radius:16px;padding:16px;background:var(--panel,#fff)}.finance-row.has-issue{border-color:rgba(220,38,38,.55);box-shadow:0 0 0 2px rgba(220,38,38,.07)}.finance-main{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.finance-main>div{display:grid;gap:3px}.finance-main .receipt-number{font-size:1.1rem;font-weight:900;text-decoration:none}.finance-main small{color:var(--muted)}.finance-amounts{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:14px}.finance-amounts>div{padding:10px 12px;border-radius:12px;background:var(--soft,#f6f7f9)}.finance-amounts small{display:block;color:var(--muted);font-size:.76rem}.finance-amounts b,.finance-amounts strong{display:block;margin-top:3px}.finance-issues,.finance-ok{margin-top:10px;display:flex;gap:8px;flex-wrap:wrap}.finance-issues span{background:rgba(220,38,38,.1);color:#b91c1c;border-radius:999px;padding:5px 9px;font-size:.8rem;font-weight:800}.finance-ok{color:#15803d;font-size:.84rem;font-weight:800}.finance-lines{margin-top:12px}.finance-lines summary{cursor:pointer;font-weight:800;color:var(--muted)}.finance-lines .table-wrap{margin-top:10px}.finance-lines>small{display:block;margin-top:7px;color:var(--muted)}
@media(max-width:1150px){.finance-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.finance-amounts{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.finance-hero{display:block}.finance-hero-total{text-align:left;margin-top:16px}.finance-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-amounts{grid-template-columns:repeat(2,minmax(0,1fr))}.finance-main{display:block}.finance-main .badge{display:inline-block;margin-top:8px}}

/* v34 weight & metal reporting */
.weight-process-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:18px 0}.weight-summary{background:linear-gradient(145deg,var(--panel),var(--panel-2));border:1px solid var(--line);border-radius:18px;padding:18px;box-shadow:var(--shadow)}.weight-summary>span{display:block;font-size:11px;letter-spacing:.16em;font-weight:800;color:var(--muted);margin-bottom:14px}.weight-summary div{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-top:1px solid var(--line)}.weight-summary div:first-of-type small{color:#d4af37}.weight-summary div:last-of-type small{color:#aeb8c4}.weight-summary strong{font-size:19px}.weight-today-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.weight-today-grid>div{padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--panel-2)}.weight-today-grid b,.weight-today-grid span{display:block}.weight-today-grid span{margin-top:8px;color:var(--muted)}.metal-gold-text{color:#d4af37}.metal-silver-text{color:#aeb8c4}.weight-report-section{margin-top:18px}@media(max-width:900px){.weight-process-grid,.weight-today-grid{grid-template-columns:1fr}.weight-report-section .grid.two{grid-template-columns:1fr}}

/* v35 management + net weight */
.management-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:18px 0}.management-kpis article,.management-metal-card,.management-panel{background:var(--panel,#fff);border:1px solid var(--line,#e4e7ec);border-radius:16px;padding:18px}.management-kpis small,.management-metal-card small{display:block;color:var(--muted,#667085);font-size:12px}.management-kpis strong{display:block;font-size:25px;margin:6px 0}.management-metal-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.management-metal-card h3{margin-top:0}.management-metal-row{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:12px;padding:10px 0;border-bottom:1px solid var(--line,#eef0f4)}.management-metal-row:last-child{border-bottom:0}.management-bars{display:flex;gap:7px;align-items:flex-end;height:190px;padding-top:20px;overflow-x:auto}.management-bar-col{min-width:34px;flex:1;text-align:center}.management-bar{background:linear-gradient(180deg,#c59a45,#8d6b2d);border-radius:7px 7px 2px 2px;min-height:3px}.management-bar-col small{font-size:10px;color:var(--muted,#667085)}.rate-history{display:grid;gap:8px}.rate-history-row{display:grid;grid-template-columns:100px 1fr 1fr 1fr;gap:10px;padding:9px 0;border-bottom:1px solid var(--line,#eef0f4)}.report-actions{display:flex;flex-wrap:wrap;gap:8px}.weight-equation{background:#f8fafc;border:1px solid #e4e7ec;border-radius:10px;padding:10px 12px;margin-top:8px;font-size:12px}.net-weight-input[readonly]{background:#f3f5f8;font-weight:700}@media(max-width:900px){.management-kpis{grid-template-columns:1fr 1fr}.management-metal-grid{grid-template-columns:1fr}}@media(max-width:560px){.management-kpis{grid-template-columns:1fr}.management-metal-row,.rate-history-row{grid-template-columns:1fr 1fr}.management-bars{height:150px}}
/* v36 quality control */
.quality-list{display:grid;gap:12px}.quality-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,1fr) auto;gap:16px;align-items:center;padding:16px;border:1px solid var(--line);border-radius:16px;background:var(--panel)}.quality-row small{display:block;margin-top:4px;color:var(--muted)}.quality-issues{display:flex;gap:7px;flex-wrap:wrap}.badge.warning{background:rgba(222,166,39,.16);color:#9a6a00}.stat-card.warning{border-color:rgba(222,166,39,.35)}.stat-card.danger{border-color:rgba(190,50,50,.35)}
@media(max-width:850px){.quality-row{grid-template-columns:1fr}.quality-row .btn{justify-self:start}}


/* v38 workflow 2.0 + artikelbibliotheek */

@media(max-width:980px){.library-layout{grid-template-columns:1fr}.library-editor{position:static}.library-pick-row{grid-template-columns:1fr}.template-card{grid-template-columns:44px 1fr}.template-actions{grid-column:2}}
@media(max-width:620px){.template-card{grid-template-columns:1fr}.template-icon{width:42px;height:42px}.template-actions{grid-column:1}.library-pick-row .btn{width:100%}}


/* v40 Enterprise workspace */
.enterprise-workflow{display:grid;grid-template-columns:auto 1fr auto 1fr auto 1fr auto 1fr auto 1fr auto;align-items:center;gap:10px;margin:0 0 18px;padding:14px 16px;border:1px solid var(--line);border-radius:16px;background:var(--surface)}
.enterprise-workflow>div{display:flex;align-items:center;gap:7px;color:var(--muted);white-space:nowrap}.enterprise-workflow>div span{display:grid;place-items:center;width:27px;height:27px;border-radius:50%;background:var(--soft);font-weight:800}.enterprise-workflow>div.done{color:var(--text)}.enterprise-workflow>div.done span{background:#daf5e5;color:#146c3a}.enterprise-workflow>div.current span{background:#fff1c9;color:#7a5700}.enterprise-workflow>i{height:2px;background:var(--line)}
.enterprise-save-status{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;padding:10px 12px;border-radius:12px;background:var(--soft);color:var(--muted);font-size:13px}.favorite-btn.active{border-color:#d6a72e;background:#fff8df;color:#805e00}.inline-form{display:inline-flex;margin:0}.template-actions{display:flex;gap:6px;align-items:center}
.enterprise-chart-card{overflow:hidden}.enterprise-bars{display:flex;align-items:flex-end;gap:14px;min-height:220px;padding:20px 6px 0}.enterprise-bar{flex:1;min-width:48px;text-align:center}.enterprise-bar .bar-track{height:150px;border-radius:12px;background:var(--soft);display:flex;align-items:flex-end;overflow:hidden;margin-bottom:8px}.enterprise-bar .bar-track span{display:block;width:100%;background:linear-gradient(180deg,#d1aa3b,#91721c);border-radius:10px 10px 4px 4px}.enterprise-bar b{display:block;font-size:12px}.enterprise-bar small{display:block;color:var(--muted);font-size:11px;margin-top:2px}
@media(max-width:900px){.enterprise-workflow{display:flex;overflow:auto;gap:8px}.enterprise-workflow>i{min-width:24px}.enterprise-bars{overflow:auto}.enterprise-bar{min-width:72px}}

/* v41.1 klantcontrole: professionele artikelweergave */
.customer-confirm-hero{display:flex;justify-content:space-between;gap:24px;align-items:flex-end;padding:24px;margin-bottom:16px;border-radius:20px;background:linear-gradient(135deg,#17232e,#273744);color:#fff;box-shadow:var(--shadow)}
.customer-confirm-hero h1{margin:5px 0 7px;font-size:clamp(1.65rem,3vw,2.45rem)}.customer-confirm-hero p{margin:0;max-width:720px;color:#d7dee5}.customer-confirm-total{text-align:right;min-width:190px}.customer-confirm-total small,.customer-confirm-total span{display:block;color:#d7dee5}.customer-confirm-total strong{display:block;font-size:2rem;color:#e2bc65;margin:3px 0}
.customer-confirm-layout{display:grid;grid-template-columns:minmax(220px,.65fr) minmax(0,1.7fr) minmax(240px,.72fr);gap:16px;align-items:start;margin-bottom:18px}.customer-confirm-customer,.customer-confirm-summary{position:sticky;top:84px}.confirm-customer-data{display:grid;gap:0;margin:14px 0 0}.confirm-customer-data>div{padding:11px 0;border-top:1px solid var(--line)}.confirm-customer-data dt{font-size:.72rem;text-transform:uppercase;letter-spacing:.07em;color:var(--muted)}.confirm-customer-data dd{margin:4px 0 0;font-weight:750;overflow-wrap:anywhere}
.customer-confirm-items{display:grid;gap:10px}.customer-confirm-item{display:grid;grid-template-columns:38px minmax(0,1fr);gap:12px;padding:15px;border:1px solid var(--line);border-radius:15px;background:var(--surface-2)}.confirm-item-index{width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#17232e;color:#e1b95e;font-weight:900}.confirm-item-title{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.confirm-item-title>div{display:flex;flex-direction:column}.confirm-item-title>div>strong{font-size:1.05rem}.confirm-item-title>div>span{margin-top:3px;color:var(--muted);font-size:.82rem}.confirm-item-price{font-size:1.08rem;white-space:nowrap}.confirm-item-meta{display:grid;grid-template-columns:repeat(auto-fit,minmax(105px,1fr));gap:7px;margin-top:11px}.confirm-item-meta span,.confirm-item-serial{padding:8px 10px;border-radius:10px;background:rgba(127,140,150,.07)}.confirm-item-meta small,.confirm-item-serial small{display:block;font-size:.68rem;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.confirm-item-meta b,.confirm-item-serial b{display:block;margin-top:2px}.confirm-item-serial{margin-top:7px}.customer-confirm-items-total{display:flex;justify-content:space-between;align-items:center;padding:16px 3px 2px;margin-top:9px;border-top:2px solid var(--line)}.customer-confirm-items-total strong{font-size:1.35rem}.confirm-empty-items{padding:28px 12px}.confirm-empty-items .btn{margin-top:12px}
.customer-confirm-summary{display:grid;gap:0}.confirm-summary-line{display:flex;justify-content:space-between;gap:12px;padding:12px 0;border-top:1px solid var(--line)}.confirm-summary-line:first-of-type{margin-top:12px}.confirm-summary-line span{color:var(--muted)}.confirm-summary-line.deduction strong{color:#b45309}.confirm-summary-line.total{margin-top:4px;padding-top:16px;border-top:2px solid #c69a43}.confirm-summary-line.total strong{font-size:1.25rem;color:#15803d}
@media(max-width:1180px){.customer-confirm-layout{grid-template-columns:minmax(220px,.7fr) minmax(0,1.6fr)}.customer-confirm-summary{grid-column:1/-1;position:static;grid-template-columns:repeat(4,1fr);gap:10px}.customer-confirm-summary>.eyebrow,.customer-confirm-summary>small{grid-column:1/-1}.confirm-summary-line{display:grid;border:1px solid var(--line);border-radius:12px;padding:11px}.confirm-summary-line.total{margin:0;border:1px solid rgba(21,128,61,.35)}}
@media(max-width:760px){.customer-confirm-hero{display:block}.customer-confirm-total{text-align:left;margin-top:18px}.customer-confirm-layout{grid-template-columns:1fr}.customer-confirm-customer,.customer-confirm-summary{position:static}.customer-confirm-summary{grid-template-columns:1fr 1fr}.confirm-item-title{display:block}.confirm-item-price{display:block;margin-top:8px}.customer-confirm-item{grid-template-columns:32px minmax(0,1fr);padding:12px}.confirm-item-index{width:30px;height:30px}.confirm-item-meta{grid-template-columns:1fr 1fr}}
@media(max-width:480px){.customer-confirm-summary{grid-template-columns:1fr}.confirm-item-meta{grid-template-columns:1fr}.customer-confirm-hero{padding:18px}}


/* v42 definitieve dossierafronding */
.finalized-banner{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 16px;padding:14px 16px;border:1px solid rgba(16,185,129,.3);border-radius:15px;background:linear-gradient(135deg,rgba(16,185,129,.12),rgba(16,185,129,.04))}.finalized-banner>div{display:flex;align-items:center;gap:12px}.finalized-banner>div>span{display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#15803d;color:#fff;font-weight:900}.finalized-banner b,.finalized-banner small{display:block}.finalized-banner small{color:var(--muted);margin-top:3px}.workflow-event-list{display:grid;gap:0}.workflow-event-list article{position:relative;display:grid;grid-template-columns:28px 1fr;gap:10px;padding:10px 0}.workflow-event-list article:not(:last-child)::after{content:"";position:absolute;left:13px;top:31px;bottom:-3px;width:2px;background:var(--line)}.workflow-dot{width:12px;height:12px;margin:5px auto 0;border-radius:50%;background:#c59a45;box-shadow:0 0 0 4px color-mix(in srgb,#c59a45 18%,transparent)}.workflow-event-list b,.workflow-event-list small{display:block}.workflow-event-list small{margin-top:3px;color:var(--muted)}.btn.gold{background:#c59a45;color:#172033;border-color:#c59a45;font-weight:800}
@media(max-width:720px){.finalized-banner{align-items:flex-start;flex-direction:column}.finalized-banner .btn{width:100%}}
/* v44 Beleningen & Taxaties 2.0 */
.dossier-photo{width:100%;max-height:260px;object-fit:cover;border-radius:14px;border:1px solid var(--line,#d8dee7);margin:8px 0 12px}.narrow{max-width:980px;margin-inline:auto}.detail-grid.three{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.kv{display:grid;grid-template-columns:minmax(100px,.8fr) 1.4fr;gap:8px 12px;margin:0}.kv dt{color:var(--muted,#697386);font-size:.82rem}.kv dd{margin:0;font-weight:600}.inline-editor{margin-top:18px;border:1px solid var(--line,#d8dee7);border-radius:14px;padding:12px 14px}.inline-editor summary{cursor:pointer;font-weight:700}.compact-form{display:flex;gap:10px;flex-wrap:wrap;align-items:end;margin-top:12px}.compact-form input,.compact-form select{min-width:140px}.timeline.compact{margin-top:12px}.timeline.compact>div{padding:0 0 14px 18px;border-left:2px solid var(--line,#d8dee7);position:relative}.timeline.compact>div:before{content:'';position:absolute;left:-6px;top:5px;width:10px;height:10px;border-radius:50%;background:#c59a45}.timeline.compact time,.timeline.compact span{display:block;color:var(--muted,#697386);font-size:.8rem}.timeline.compact b{display:block;margin:2px 0}@media(max-width:980px){.detail-grid.three{grid-template-columns:1fr}.compact-form>*{flex:1 1 180px}}

/* v50 - Plugin workflow: dossierkeuze bij klantregistratie */
.dossier-type-picker{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:0 0 22px}
.dossier-type-card{position:relative;display:flex;flex-direction:column;gap:5px;padding:18px;border:1px solid var(--line,#d7dce3);border-radius:16px;background:var(--card,#fff);cursor:pointer;transition:.18s ease;min-height:128px}
.dossier-type-card:hover{transform:translateY(-1px);box-shadow:0 8px 24px rgba(15,23,42,.08)}
.dossier-type-card input{position:absolute;right:14px;top:14px;width:20px;height:20px;accent-color:#b38a2d}
.dossier-type-card:has(input:checked){border-color:#b38a2d;box-shadow:0 0 0 2px rgba(179,138,45,.13);background:linear-gradient(180deg,rgba(179,138,45,.09),transparent)}
.dossier-type-card b{font-size:1.08rem}.dossier-type-card small{line-height:1.45;color:var(--muted,#667085)}
.dossier-type-icon{font-size:1.65rem;line-height:1;margin-bottom:7px;color:#b38a2d}
.tablet-dossier-picker .dossier-type-card{min-height:150px;font-size:1.06rem}
@media(max-width:760px){.dossier-type-picker{grid-template-columns:1fr}.dossier-type-card{min-height:auto;padding:16px 52px 16px 16px}}


/* v59 taxateur inbox & snelle regelinvoer */
.taxateur-new-alert{display:flex;align-items:center;justify-content:space-between;gap:16px;border-left:4px solid #d7ad52;font-size:15px}
.taxateur-new-alert a{font-weight:800;text-decoration:none}
.dossier-card{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 0;border-bottom:1px solid var(--border,rgba(255,255,255,.1))}
.dossier-card:last-child{border-bottom:0}.dossier-card h3{margin:6px 0 4px}.dossier-card p{margin:0 0 4px}
.quick-presets{display:flex;align-items:center;flex-wrap:wrap;gap:8px;padding:12px 0 16px}
.inline-editor[open] summary{margin-bottom:10px;font-weight:800}
.net-hint{display:block;margin-top:6px;font-weight:700}
@media(max-width:760px){.dossier-card{align-items:flex-start;flex-direction:column}.dossier-card .actions-row,.dossier-card .btn{width:100%}.taxateur-new-alert{align-items:flex-start;flex-direction:column}}

/* v60 plugin-style taxateur worklist */
.dossier-card-grid{display:grid;gap:10px}.plugin-worklist .dossier-card{background:rgba(255,255,255,.025);border:1px solid var(--line,rgba(255,255,255,.1));border-radius:14px;padding:14px 16px;margin-bottom:8px}.compact-list{margin:8px 0;padding-left:18px}.quick-entry-presets .quick-presets{padding-bottom:0}

/* v61 workflow readiness */
.workflow-check-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:9px;margin-top:12px}.workflow-check-grid>div{padding:11px 12px;border:1px solid var(--line,rgba(255,255,255,.1));border-radius:11px}.workflow-check-grid .ok{opacity:.9}.workflow-check-grid .fail{font-weight:700}.workflow-readiness .page-actions{margin-top:15px}

/* v62 production hardening */
.payoff-box{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.75fr);gap:18px;align-items:end;padding:16px;margin:14px 0;border:1px solid var(--line,rgba(255,255,255,.12));border-radius:14px}.payoff-box p{margin:6px 0}.payoff-box strong{font-size:1.12em}.text-danger{font-weight:700}.hero-clock strong{font-size:2rem}@media(max-width:760px){.payoff-box{grid-template-columns:1fr}}

/* =========================================================
   v63 — UI/UX REDESIGN
   Rustigere visuele hiërarchie voor dagelijkse productie
   ========================================================= */
:root{
  --bg:#f4f5f7;
  --card:#ffffff;
  --ink:#18202a;
  --muted:#74808b;
  --line:#e3e7eb;
  --gold:#b58a3c;
  --gold-strong:#946a24;
  --dark:#111820;
  --dark2:#18232e;
  --green:#177654;
  --red:#b84040;
  --amber:#9b6d19;
  --blue:#2d649c;
  --shadow:0 5px 18px rgba(24,32,42,.055);
  --shadow-hover:0 12px 30px rgba(24,32,42,.09);
  --radius:14px;
}
body{background:var(--bg);font-size:14.5px;letter-spacing:-.005em}
.app{grid-template-columns:252px minmax(0,1fr)}
main{padding:22px 28px 36px;max-width:1680px}
.sidebar{
  padding:16px 11px;
  background:#111820;
  border-right:1px solid rgba(255,255,255,.035);
  box-shadow:8px 0 28px rgba(13,20,27,.08);
}
.brand{padding:4px 9px 17px;margin-bottom:7px;border-bottom:1px solid rgba(255,255,255,.08)}
.brand>span{
  width:40px;height:40px;border-radius:11px;
  background:#c6a154;color:#17130d;
  box-shadow:none;font-size:12px;letter-spacing:.05em;
}
.brand strong{font-size:15.5px;letter-spacing:-.01em}
.brand small{font-size:10.5px;color:#81909d}
.nav-group{gap:2px;margin-bottom:9px}
.nav-group+.nav-group{padding-top:10px;border-color:rgba(255,255,255,.07)}
.nav-group-label{padding:4px 10px 5px;color:#687887;font-size:9px;letter-spacing:.16em}
.sidebar nav a{
  min-height:38px;padding:7px 9px;border-radius:9px;color:#aebac4;font-size:13px;font-weight:610;
}
.sidebar nav a i{
  width:24px;height:24px;border-radius:7px;background:rgba(255,255,255,.055);
  color:#8797a4;font-size:10.5px;
}
.sidebar nav a:hover{background:rgba(255,255,255,.06);color:#f4f6f8}
.sidebar nav a.active{
  position:relative;background:#202c36;color:#fff;font-weight:760;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.035);
}
.sidebar nav a.active:before{
  content:"";position:absolute;left:-11px;top:8px;bottom:8px;width:3px;border-radius:0 3px 3px 0;background:#c6a154;
}
.sidebar nav a.active i{background:#c6a154;color:#17130d}
.sidebar-foot{margin:12px 4px 0;padding:14px 7px 4px;border-color:rgba(255,255,255,.08)}
.sidebar-foot b{font-size:13px}.sidebar-foot small{font-size:10.5px}
.role-chip{background:#202c36;color:#d9ba79;border:1px solid rgba(217,186,121,.13)}
.sidebar-foot a{font-size:12px;color:#d9ba79}

/* Topbar */
.topbar{
  position:sticky;top:0;z-index:35;
  margin:-22px -28px 22px;padding:17px 28px 14px;
  background:rgba(244,245,247,.94);
  backdrop-filter:blur(16px);
  border-bottom:1px solid rgba(219,224,228,.88);
}
.topbar-title>div{min-width:0}
.topbar h1{font-size:clamp(23px,2.3vw,29px);line-height:1.1;letter-spacing:-.035em}
.topbar p{font-size:11.5px;margin:5px 0 0;color:#87919a}
.page-context{display:flex;align-items:center;gap:7px;margin-bottom:5px;color:#8b959e;text-transform:uppercase;font-size:9.5px;font-weight:800;letter-spacing:.09em}
.page-context i{width:3px;height:3px;border-radius:50%;background:#b2bac0}
.top-actions{gap:8px}
.top-action-link{display:inline-flex;align-items:center;gap:7px;padding:8px 10px;border-radius:9px;color:#5f6971;font-size:12px;font-weight:750}
.top-action-link:hover{background:#fff;color:#1b232b}
.top-action-link span{display:grid;place-items:center;width:20px;height:20px;border-radius:7px;background:#fff0df;color:#9a6315;font-weight:900}
.quick-lookup{
  position:relative;min-width:300px;border-radius:10px;background:#fff;border-color:#dde2e6;box-shadow:none;
}
.quick-lookup .search-icon{display:grid;place-items:center;padding-left:11px;color:#929ba3}
.quick-lookup input{width:245px;padding:9px 8px;font-size:12.5px;background:transparent}
.quick-lookup button{padding:0 11px;background:#f7f8f9;border-left:1px solid #e8ebee;font-size:11px;font-weight:800;color:#626d76}
.new-customer-btn span{font-size:17px;line-height:1}

/* Surfaces */
.card,.hero-card,.stat,.customer-overview-card{
  border-radius:13px;border:1px solid var(--line);box-shadow:var(--shadow);
}
.card{padding:19px;margin-bottom:14px}
.card:hover{box-shadow:var(--shadow)}
.hero-card{
  position:relative;overflow:hidden;
  padding:24px 25px;margin-bottom:15px;
  background:#18232d;color:#fff;
}
.hero-card:after{
  content:"";position:absolute;width:240px;height:240px;right:-95px;top:-125px;
  border-radius:50%;background:rgba(198,161,84,.08);pointer-events:none;
}
.hero-card h2{font-size:clamp(24px,3vw,32px);line-height:1.08;margin:5px 0 7px;letter-spacing:-.035em}
.hero-card p{font-size:13px;line-height:1.55;color:#aebac4;margin-bottom:0}
.eyebrow{font-size:9.5px;letter-spacing:.16em;color:#d0ae67}
.section-head{margin-bottom:12px}
.section-head h2,.card h2{font-size:17px;letter-spacing:-.018em;margin-bottom:4px}
.section-head p,.card>p.muted{font-size:12.5px}
.grid{gap:14px}.grid.two,.grid.three{gap:14px}
.stats-grid,.kpi-grid{gap:10px;margin-bottom:14px}
.stat,.kpi-grid article{
  min-height:92px;padding:15px 16px;background:#fff;border:1px solid var(--line);
  border-radius:12px;box-shadow:var(--shadow);
}
.stat small,.kpi-grid article small{text-transform:uppercase;letter-spacing:.055em;font-size:9.5px;font-weight:800;color:#89939b}
.stat strong,.kpi-grid article strong{font-size:24px;line-height:1.15;letter-spacing:-.035em;margin-top:7px}
.kpi-grid article span,.kpi-grid article a{display:block;margin-top:5px;font-size:10.5px;color:var(--muted)}

/* Buttons */
.btn{
  min-height:36px;padding:8px 12px;border-radius:9px;border-color:#dce1e5;
  font-size:12.5px;font-weight:760;box-shadow:none;transition:.14s ease;
}
.btn:hover{transform:none;background:#f9fafb;border-color:#cfd6db;box-shadow:none}
.btn.primary{background:#ac8133;border-color:#ac8133;color:#fff;box-shadow:none}
.btn.primary:hover{background:#966d26;border-color:#966d26}
.btn.danger{background:#fff6f6;border-color:#f0d4d4}
.btn.small{min-height:30px;padding:5px 9px;font-size:11.5px}
.btn.big{min-height:42px;padding:10px 15px}

/* Forms */
.field{gap:5px}.field label{font-size:11.5px;font-weight:780;color:#4d5861}
.field input,.field select,.field textarea,.filters input,.filters select,.report-filters input,.report-filters select{
  min-height:38px;padding:8px 10px;border-radius:9px;border-color:#d8dee3;background:#fff;font-size:13px;
}
.field input:hover,.field select:hover,.field textarea:hover{border-color:#c3cbd1}
.field input:focus,.field select:focus,.field textarea:focus{border-color:#ad8540;box-shadow:0 0 0 3px rgba(181,138,60,.11)}
.form-grid{gap:11px 13px}
.filters,.report-filters{padding:0;margin-bottom:12px;gap:8px}

/* Tables: compact and production-friendly */
.table-wrap{border-radius:10px;border-color:#e2e6e9;background:#fff}
table{font-size:12.5px}
th,td{padding:10px 11px;border-bottom-color:#edf0f2}
th{
  position:sticky;top:0;z-index:2;
  background:#f7f8f9;color:#7b858e;font-size:9.5px;letter-spacing:.07em;font-weight:850;
}
tbody tr{transition:background .12s}
tbody tr:hover{background:#fbfaf7}
td small{font-size:10.5px;margin-top:2px}
.receipt-number{color:#926b28}
.amount{font-variant-numeric:tabular-nums;font-weight:730}

/* Status language */
.badge,.status-pill{
  min-height:23px;padding:4px 8px;border-radius:7px;font-size:9.5px;letter-spacing:.025em;font-weight:850;
}
.badge.success,.badge.green,.dor-sent{background:#e9f5ef;color:#176246}
.badge.danger,.badge.red,.dor-error{background:#fbeeee;color:#9e3939}
.badge.warning,.badge.gold,.dor-pending{background:#fff4dd;color:#88601a}
.alert{padding:11px 13px;border-radius:10px;font-size:12.5px;margin-bottom:11px}
.taxateur-new-alert{
  border:1px solid #eadab9;border-left:3px solid #b58a3c;background:#fffaf1;color:#6a5329;
  box-shadow:none;
}
.taxateur-new-alert a{padding:5px 8px;border-radius:7px;background:#fff;color:#785822}

/* Taxateur worklist */
.priority-card{border-left:0;position:relative}
.priority-card:before{content:"";position:absolute;left:0;top:18px;bottom:18px;width:3px;border-radius:0 3px 3px 0;background:#c6a154}
.dossier-card{
  padding:13px 12px;margin:0 -1px;gap:12px;border-bottom:1px solid #eceff1;background:#fff;
}
.dossier-card:hover{background:#fbfaf7}
.dossier-card h3{font-size:14px;margin:4px 0 2px}.dossier-card p,.dossier-card small{font-size:10.5px}
.plugin-worklist .dossier-card{border-radius:10px;padding:12px;border-color:#e5e8eb}
.count-pill{font-size:11px}.count-pill.large{min-width:34px;height:34px;font-size:14px;border-radius:10px}

/* Workflow is a visual progress line, not a wall of boxes */
.enterprise-workflow{gap:0;padding:4px 0 15px;margin-bottom:10px}
.enterprise-workflow>div{min-width:80px}
.enterprise-workflow>div span{box-shadow:none}
.workflow-steps{gap:6px}
.workflow-steps>*{padding:9px 10px;border-radius:9px;font-size:11.5px;box-shadow:none}
.workflow-check-grid{gap:6px}
.workflow-check-grid>div{padding:9px 10px;border-radius:9px;font-size:11px;background:#fafbfc}
.workflow-check-grid .ok{border-color:#dfe9e4;background:#f7fbf9}
.workflow-check-grid .fail{border-color:#eadfca;background:#fffbf4}
.workflow-readiness{border-left:3px solid #c6a154}
.payoff-box{border-radius:11px;background:#fafbfc}

/* Search/empty states */
.empty-state{padding:27px 16px;font-size:12px}
.empty-state b{display:block;color:#43505a;margin-bottom:3px}
.quick-presets{gap:6px;padding:8px 0 12px}

/* Login */
.login{background:#111820}
.login-card{border-radius:16px;padding:28px;box-shadow:0 28px 70px rgba(0,0,0,.24);border:1px solid rgba(255,255,255,.05)}

/* Light-theme safety */
html[data-theme="light"] .topbar{background:rgba(244,245,247,.94)}
html[data-theme="light"] .hero-card{background:#18232d;color:#fff}
html[data-theme="light"] .hero-card h2{color:#fff}
html[data-theme="light"] .hero-card p{color:#aebac4}

/* Mobile/tablet */
@media(max-width:1100px){
  .app{grid-template-columns:226px minmax(0,1fr)}
  .top-action-link{display:none}
  .quick-lookup{min-width:245px}.quick-lookup input{width:190px}
}
@media(max-width:860px){
  main{padding:14px}
  .topbar{margin:-14px -14px 15px;padding:12px 14px}
  .sidebar{width:min(286px,88vw)}
  .quick-lookup{min-width:0;flex:1}
  .quick-lookup input{width:100%}
  .new-customer-btn{display:none!important}
}
@media(max-width:620px){
  body{font-size:14px}
  main{padding:10px}
  .topbar{position:sticky;margin:-10px -10px 12px;padding:10px}
  .topbar{display:flex;align-items:center}
  .topbar-title{flex:1;min-width:0}
  .topbar h1{font-size:20px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .topbar p,.page-context{display:none}
  .top-actions{margin:0;flex:0 0 auto}
  .quick-lookup{width:42px;min-width:42px;height:38px}
  .quick-lookup input,.quick-lookup .search-icon{display:none}
  .quick-lookup button{width:42px;height:38px;border:0;font-size:0;background:#fff}
  .quick-lookup button:after{content:"⌕";font-size:18px}
  .card,.hero-card{padding:14px;border-radius:11px;margin-bottom:10px}
  .hero-card{padding:18px 15px}
  .hero-card h2{font-size:23px}
  .hero-card p{font-size:12px}
  .stats-grid,.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
  .stat,.kpi-grid article{min-height:79px;padding:12px}
  .stat strong,.kpi-grid article strong{font-size:20px}
  .dossier-card{flex-direction:column;align-items:stretch}
  .table-wrap{margin-inline:0}
  th,td{padding:9px 8px}
  .section-head{align-items:flex-start}
}

/* v64 live inkoopkoersen */
.live-buy-rates .rate-meta{display:flex;gap:6px;flex-wrap:wrap}.metal-rate-columns{display:grid;grid-template-columns:1.2fr .8fr;gap:14px}.metal-rate-panel{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff}.metal-rate-panel>header{padding:14px 15px;border-bottom:1px solid var(--line);background:#fafbfc}.metal-rate-panel>header>div{display:flex;align-items:center;gap:11px}.metal-rate-panel header b{display:block;font-size:15px}.metal-rate-panel header small{display:block;color:var(--muted);font-size:10.5px;margin-top:2px}.metal-symbol{display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:#f4ead4;color:#876323;font-weight:900;font-size:11px}.silver-panel .metal-symbol{background:#eef1f3;color:#64717b}.karat-chip{display:inline-flex;min-width:43px;justify-content:center;padding:4px 7px;border-radius:7px;background:#f5f1e8;font-weight:850;color:#795c27}.silver-panel .karat-chip{background:#f0f2f4;color:#596671}.rate-price{font-size:13px;font-weight:850;font-variant-numeric:tabular-nums}.rate-footnote{margin-top:12px;padding:10px 12px;border-radius:9px;background:#f8f9fa;color:var(--muted);font-size:11px}.rate-footnote b{color:var(--ink)}@media(max-width:850px){.metal-rate-columns{grid-template-columns:1fr}}@media(max-width:620px){.live-buy-rates .table-wrap{overflow-x:auto}.metal-rate-panel table{min-width:520px}}

/* v65 multi-role management */
.role-checkboxes{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;margin-top:4px}.role-checkboxes label{display:flex;align-items:center;gap:8px;padding:9px 10px;border:1px solid var(--line);border-radius:9px;background:#fafbfc;cursor:pointer;font-size:11.5px}.role-checkboxes label:has(input:checked){border-color:#c8aa6c;background:#fffaf0}.role-checkboxes input{width:auto;min-height:auto}.role-checkboxes.compact{grid-template-columns:repeat(3,minmax(0,1fr));width:100%}.assigned-role-chips{display:flex;gap:5px;flex-wrap:wrap;margin-top:6px}.role-account-controls{display:grid!important;grid-template-columns:1fr auto auto;align-items:end;gap:8px}.role-account-controls .role-checkboxes{grid-column:1/-1}@media(max-width:760px){.role-checkboxes,.role-checkboxes.compact{grid-template-columns:1fr}.role-account-controls{grid-template-columns:1fr}}

/* v66 department workbenches */
.department-tabs{display:flex;gap:7px;overflow-x:auto;margin:0 0 14px;padding:2px}.department-tabs a{display:flex;align-items:center;gap:9px;white-space:nowrap;padding:9px 11px;border:1px solid var(--line);border-radius:10px;background:#fff;font-size:11.5px;font-weight:760}.department-tabs a b{display:grid;place-items:center;min-width:23px;height:23px;padding:0 6px;border-radius:7px;background:#f0f2f4;font-size:10px}.department-tabs a.active{background:#18232d;color:#fff;border-color:#18232d}.department-tabs a.active b{background:#c6a154;color:#17130d}.department-worklist{display:grid}.department-workitem{display:grid;grid-template-columns:130px minmax(250px,1fr) 150px auto;gap:14px;align-items:center;padding:13px 4px;border-bottom:1px solid #eceff1}.department-workitem:last-child{border-bottom:0}.department-workitem:hover{background:#fbfaf7}.workitem-type span{display:block;font-size:9px;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);font-weight:850}.workitem-type b{display:block;margin-top:3px;font-size:13px}.workitem-main h3{margin:0 0 3px;font-size:13.5px}.workitem-main p{margin:0 0 3px;color:#59656f;font-size:11.5px}.workitem-main small{color:var(--muted);font-size:10px}.department-timeline article{display:grid;grid-template-columns:14px 1fr;gap:10px;padding:8px 0}.department-timeline article p{margin:2px 0;font-size:11.5px}.department-timeline article small{font-size:10px;color:var(--muted)}.timeline-dot{width:8px;height:8px;border-radius:50%;background:#c6a154;margin-top:5px}@media(max-width:900px){.department-workitem{grid-template-columns:100px 1fr auto}.workitem-status{display:none}}@media(max-width:650px){.department-workitem{grid-template-columns:1fr;gap:7px;padding:12px 4px}.department-workitem .btn{width:100%}}

/* v67 — navigatie redesign */
.sidebar-tools{display:grid;grid-template-columns:1fr auto;gap:6px;padding:5px 5px 11px;border-bottom:1px solid rgba(255,255,255,.07);margin-bottom:8px}.menu-search{display:flex;align-items:center;gap:6px;min-width:0;padding:0 8px;border-radius:8px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.055)}.menu-search span{color:#71818e;font-size:13px}.menu-search input{min-width:0;width:100%;height:32px;border:0;outline:0;background:transparent;color:#e7edf1;font-size:11.5px}.menu-search input::placeholder{color:#71818e}.menu-compact-toggle{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border:1px solid rgba(255,255,255,.06);border-radius:8px;background:rgba(255,255,255,.04);color:#8c9aa5;cursor:pointer}.menu-compact-toggle em{display:none}.nav-group{margin-bottom:4px!important}.nav-group+.nav-group{padding-top:5px!important}.nav-group-label{display:flex!important;align-items:center;justify-content:space-between;width:100%;border:0;background:transparent;cursor:pointer;text-align:left}.nav-group-label i{font-style:normal;font-size:10px;transition:transform .15s}.nav-group.nav-collapsed>a{display:none}.nav-group.nav-collapsed .nav-group-label i{transform:rotate(-90deg)}.sidebar nav a{min-height:35px!important;padding:5px 8px!important;font-size:12.5px!important}.sidebar nav a i{width:23px!important;height:23px!important}.sidebar nav a.active{background:#202c36!important}.compact-menu .brand div,.compact-menu .sidebar-foot,.compact-menu .nav-group-label span,.compact-menu nav a span,.compact-menu .menu-search,.compact-menu .menu-compact-toggle em{display:none!important}.compact-menu{width:72px!important}.compact-menu .sidebar-tools{grid-template-columns:1fr;border:0;padding:4px}.compact-menu .menu-compact-toggle{display:flex;width:100%}.compact-menu .nav-group-label{height:7px;padding:0;margin:3px 0;border-top:1px solid rgba(255,255,255,.07)}.compact-menu .nav-group-label i{display:none}.compact-menu nav a{justify-content:center;padding:5px!important}.compact-menu nav a i{width:31px!important;height:31px!important}.compact-menu .brand{justify-content:center;padding-inline:0}.compact-menu .brand>span{margin:0}.compact-menu nav a.active:before{left:-5px}.sidebar nav a[style*="display: none"]{display:none!important}@media(max-width:860px){.compact-menu{width:min(286px,88vw)!important}.compact-menu .brand div,.compact-menu .sidebar-foot,.compact-menu .nav-group-label span,.compact-menu nav a span,.compact-menu .menu-search{display:initial!important}.compact-menu .sidebar-tools{grid-template-columns:1fr auto}.compact-menu .nav-group-label{height:auto;border:0}.compact-menu nav a{justify-content:flex-start}}

/* v69.2 print hardening */
@page{size:A4 portrait;margin:10mm}
@media print{
 html,body{width:210mm;min-height:297mm;background:#fff!important}
 body{-webkit-print-color-adjust:exact!important;print-color-adjust:exact!important}
 .sidebar,.topbar,.sidebar-backdrop,.no-print,.app-footer,.menu-toggle{display:none!important}
 .app{display:block!important}.app main,main{display:block!important;width:auto!important;max-width:none!important;margin:0!important;padding:0!important}
 .plugin-document,.handover-doc{width:auto!important;max-width:none!important;margin:0!important;padding:8mm!important;border:0!important;box-shadow:none!important}
 table{break-inside:auto}tr{break-inside:avoid;break-after:auto}thead{display:table-header-group}tfoot{display:table-footer-group}
 .card{break-inside:avoid;box-shadow:none!important}
 a[href]:after{content:none!important}
}

/* v69.2.1 klant akkoord - objectregels altijd duidelijk zichtbaar */
.confirm-object-alert{display:flex;flex-direction:column;gap:3px;margin-bottom:12px;padding:12px 14px;border:1px solid #d9c08c;border-left:4px solid #b58a3c;border-radius:10px;background:#fffaf0}.confirm-object-alert b{font-size:13px}.confirm-object-alert span{font-size:11.5px;color:var(--muted)}
.customer-confirm-object-table{margin-bottom:14px}.customer-confirm-object-table table{min-width:940px}.customer-confirm-object-table td{vertical-align:top}.customer-confirm-object-table td small,.customer-confirm-object-table td span{display:block;margin-top:3px}.customer-confirm-object-table .amount{white-space:nowrap}.confirm-return-row{opacity:.72;background:#fff8ee!important}
@media(max-width:900px){.customer-confirm-object-table{overflow-x:auto}}

/* v69.3 - stap 3 klant klaar + taxateur objectweergave */
.customer-final-step{border-left:4px solid #1f7a55;background:#f2fbf6}
.customer-only-flow{max-width:760px}
.taxateur-object-list{display:grid;gap:10px}
.taxateur-object-card{border:1px solid var(--line);border-radius:12px;background:#fff;overflow:hidden}
.taxateur-object-card header{display:flex;align-items:center;gap:9px;padding:10px 12px;background:#f7f8f9;border-bottom:1px solid var(--line)}
.taxateur-object-card header span{font-size:10px;font-weight:850;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}
.taxateur-object-card header strong{font-size:13px}
.taxateur-object-card header em{margin-left:auto;font-size:9px;font-style:normal;font-weight:850;color:#8b5d16;background:#fff0d1;padding:4px 7px;border-radius:6px}
.taxateur-object-card dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0}
.taxateur-object-card dl>div{padding:9px 11px;border-right:1px solid #edf0f2;border-bottom:1px solid #edf0f2}
.taxateur-object-card dt{font-size:9px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:800}
.taxateur-object-card dd{margin:3px 0 0;font-size:12px;font-weight:750;overflow-wrap:anywhere}
.customer-receipt-actions{display:flex;gap:8px;margin-bottom:12px}
.customer-purchase-receipt .receipt-object{padding:10px 0;border-bottom:1px solid #dfe4e8}
.customer-purchase-receipt .receipt-object h3{margin:0 0 7px;font-size:13px}
.customer-purchase-receipt .receipt-object dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;border:1px solid #e2e6e9;border-radius:8px;overflow:hidden}
.customer-purchase-receipt .receipt-object dl>div{padding:7px 9px;border-right:1px solid #e8ebee;border-bottom:1px solid #e8ebee}
.customer-purchase-receipt .receipt-object dt{font-size:8px;text-transform:uppercase;color:#75808a;font-weight:800}
.customer-purchase-receipt .receipt-object dd{margin:2px 0 0;font-size:11px;font-weight:700}
.payment-receipt-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid #dfe4e8;border-radius:9px;overflow:hidden}
.payment-receipt-grid>div{padding:10px 12px;border-right:1px solid #e5e9ec;border-bottom:1px solid #e5e9ec}
.payment-receipt-grid span{display:block;font-size:9px;text-transform:uppercase;color:#75808a;font-weight:800}
.payment-receipt-grid strong{display:block;margin-top:3px;font-size:13px}
.payment-receipt-grid .payment-final{background:#f4faf7}
@media(max-width:760px){.taxateur-object-card dl,.customer-purchase-receipt .receipt-object dl{grid-template-columns:repeat(2,minmax(0,1fr))}.payment-receipt-grid{grid-template-columns:1fr}}
@media print{
 .customer-receipt-actions{display:none!important}
 .customer-purchase-receipt{width:100%!important;max-width:none!important;box-shadow:none!important;border:0!important}
 .customer-purchase-receipt .receipt-object{break-inside:avoid}
}

/* v69.3.1 - inkoopbon popup na klantakkoord */
.receipt-popup-overlay{padding:14px;background:rgba(8,15,22,.78)}
.receipt-popup-card{width:min(1180px,97vw);height:min(900px,94vh);padding:0;overflow:hidden;text-align:left;border-radius:16px;display:grid;grid-template-rows:auto 1fr auto}
.receipt-popup-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:18px 22px;border-bottom:1px solid var(--line);background:#fff}
.receipt-popup-head h2{margin:3px 0 3px;font-size:20px}.receipt-popup-head p{margin:0;color:var(--muted);font-size:11.5px}.receipt-popup-head .modal-close{position:static;flex:0 0 auto}
.receipt-popup-frame-wrap{min-height:0;background:#dde2e6;padding:14px;overflow:hidden}
.receipt-popup-frame-wrap iframe{display:block;width:100%;height:100%;min-height:540px;border:0;border-radius:9px;background:#fff;box-shadow:0 5px 18px rgba(0,0,0,.12)}
.receipt-popup-actions{display:flex;align-items:center;gap:8px;padding:12px 18px;border-top:1px solid var(--line);background:#fff}
.receipt-popup-actions .btn{margin:0}
.receipt-embed{margin:0!important;background:#eceff1!important;padding:20px!important}
.receipt-embed-main{width:100%;max-width:900px;margin:0 auto!important;padding:0!important}
.receipt-embed .customer-purchase-receipt{margin:0 auto;background:#fff}
@media(max-width:700px){
 .receipt-popup-overlay{padding:6px}.receipt-popup-card{width:100%;height:97vh;border-radius:10px}
 .receipt-popup-head{padding:12px}.receipt-popup-frame-wrap{padding:6px}
 .receipt-popup-actions{display:grid;grid-template-columns:1fr 1fr;padding:8px}
 .receipt-popup-actions .btn{width:100%}
 .receipt-embed{padding:5px!important}
}
@media print{
 .receipt-popup-overlay{display:none!important}
 .receipt-embed{padding:0!important;background:#fff!important}
}

/* v69.3.2 - inkoopbon zelfde documentstijl als bewijs van afgifte */
.inkoopbon-doc{background:#fff}
.inkoopbon-object-table{border:1px solid var(--line);border-radius:10px;overflow:hidden}
.inkoopbon-object-head{display:grid;grid-template-columns:180px 1fr 120px;background:var(--dark);color:#fff;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.06em}
.inkoopbon-object-head span{padding:10px 12px}
.inkoopbon-object-row{display:grid;grid-template-columns:180px 1fr 120px;align-items:start;border-top:1px solid var(--line)}
.inkoopbon-object-row:first-of-type{border-top:0}
.inkoopbon-object-row>div:first-child{padding:12px}
.inkoopbon-object-row>div:first-child small{display:block;color:var(--muted);font-size:9px;text-transform:uppercase;font-weight:850}
.inkoopbon-object-row>div:first-child b{display:block;margin-top:3px;font-size:12px}
.inkoopbon-object-row>div:first-child em{display:inline-block;margin-top:5px;padding:3px 6px;border-radius:5px;background:#fff0d1;color:#8b5d16;font-size:8px;font-style:normal;font-weight:850}
.inkoopbon-object-row dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));margin:0;border-left:1px solid var(--line);border-right:1px solid var(--line)}
.inkoopbon-object-row dl>div{padding:7px 9px;border-right:1px solid #edf0f2;border-bottom:1px solid #edf0f2}
.inkoopbon-object-row dt{font-size:8px;text-transform:uppercase;color:var(--muted);font-weight:850}
.inkoopbon-object-row dd{margin:2px 0 0;font-size:10.5px;font-weight:700}
.inkoopbon-object-row>strong{padding:13px 12px;text-align:right;font-size:13px}
.inkoopbon-empty{padding:20px;text-align:center;color:var(--muted)}
.plugin-payment-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--line);border-radius:10px;overflow:hidden}
.plugin-payment-summary>div{padding:11px 12px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
.plugin-payment-summary small{display:block;font-size:8px;text-transform:uppercase;color:var(--muted);font-weight:850}
.plugin-payment-summary strong{display:block;margin-top:3px;font-size:12px}
.plugin-payment-summary .payment-total{background:#f7f1e6}
.plugin-payment-summary .payment-total strong{font-size:15px;color:#7f5d1f}
.receipt-embed .handover-doc{max-width:900px;margin:0 auto;padding:34px}
@media(max-width:700px){
 .inkoopbon-object-head{display:none}
 .inkoopbon-object-row{grid-template-columns:1fr}
 .inkoopbon-object-row dl{border-left:0;border-right:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
 .inkoopbon-object-row>strong{text-align:left}
 .plugin-payment-summary{grid-template-columns:1fr 1fr}
}
@media print{
 .inkoopbon-object-row{break-inside:avoid}
 .plugin-payment-summary{break-inside:avoid}
 .receipt-embed .handover-doc{padding:10mm}
}

/* v69.3.3 - professionele inkoopbon */
.inkoopbon-doc{font-family:Arial,Helvetica,sans-serif;color:#1b2228;border:1px solid #d8dde1;box-shadow:0 12px 35px rgba(20,30,40,.10)}
.inkoopbon-doc .plugin-doc-head{padding-bottom:18px;border-bottom:2px solid #1d2832}
.inkoopbon-doc .plugin-brand{gap:12px}.inkoopbon-doc .doc-logo{width:48px;height:48px;border-radius:5px;font-size:15px;box-shadow:none}
.inkoopbon-doc .plugin-brand strong{font-size:14px;letter-spacing:.08em}.inkoopbon-doc .plugin-brand span{font-size:9px;letter-spacing:.08em;text-transform:uppercase}
.inkoopbon-doc .plugin-doc-title h1{font-size:25px;letter-spacing:-.02em}.inkoopbon-doc .plugin-doc-title>div{border:1px solid #d8dde1;background:#f7f8f9;border-radius:6px;padding:7px 10px}
.inkoopbon-doc .plugin-doc-meta{margin:0;padding:12px 0;border-bottom:1px solid #dfe3e6;background:transparent}
.inkoopbon-doc .plugin-doc-meta span{border-right:1px solid #dfe3e6;padding:0 18px}.inkoopbon-doc .plugin-doc-meta span:first-child{padding-left:0}
.inkoopbon-doc .plugin-doc-section{padding:17px 0;border-bottom:1px solid #e0e4e7}
.inkoopbon-doc .plugin-doc-section h2{margin:0 0 10px;font-size:10px;letter-spacing:.11em;text-transform:uppercase;color:#53606b}
.inkoopbon-doc .plugin-customer-grid{border:1px solid #dfe3e6;border-radius:6px;background:#fafbfb;padding:12px 14px}
.inkoopbon-object-table{border-radius:6px;border-color:#ccd3d8}
.inkoopbon-object-head{background:#26333e}
.inkoopbon-object-row{grid-template-columns:155px 1fr 105px}
.inkoopbon-object-row:nth-child(odd){background:#fbfcfc}
.inkoopbon-object-row dl{grid-template-columns:repeat(3,minmax(0,1fr))}
.inkoopbon-object-row dl>div{min-height:45px}
.inkoopbon-object-row>strong{font-variant-numeric:tabular-nums}
.plugin-payment-summary{grid-template-columns:repeat(3,minmax(0,1fr));border-radius:6px;border-color:#ccd3d8}
.plugin-payment-summary>div{min-height:58px;background:#fafbfb}
.plugin-payment-summary .withholding-line{background:#fff9ee}
.plugin-payment-summary .payment-total{background:#26333e;color:#fff}
.plugin-payment-summary .payment-total small{color:#cbd3d9}.plugin-payment-summary .payment-total strong{color:#fff;font-size:16px}
.inkoopbon-doc .plugin-doc-statement{margin:16px 0;padding:11px 13px;border-left:3px solid #26333e;background:#f5f7f8;font-size:9.5px;line-height:1.55}
.inkoopbon-doc .plugin-customer-signature{margin-top:22px;min-height:95px}
.inkoopbon-doc .plugin-doc-footer{margin-top:20px;padding-top:12px;border-top:2px solid #26333e}
.receipt-overview-total span,.receipt-overview-total b{display:block;font-size:9px;margin-top:2px}.receipt-overview-total b{font-size:10px}
@media print{
 .inkoopbon-doc{border:0!important;box-shadow:none!important}
 .inkoopbon-doc .plugin-doc-section{break-inside:avoid}
 .inkoopbon-object-row dl>div{min-height:0}
}

/* v69.3.5 - artikelregels rechtstreeks uit taxateurbon */
.direct-article-lines{margin-top:12px;border:1px solid var(--line);border-radius:10px}
.direct-article-lines table{min-width:1180px;margin:0}
.direct-article-lines thead th{font-size:8.5px;letter-spacing:.05em;text-transform:uppercase;white-space:nowrap}
.direct-article-lines tbody td{vertical-align:top;font-size:10.5px}
.direct-article-lines tbody td span,.direct-article-lines tbody td small,.direct-article-lines tbody td b{display:block;margin-top:2px}
.direct-article-lines tbody td>b:first-child{margin-top:0}
.direct-article-lines .article-money{text-align:right;white-space:nowrap}
.direct-article-lines .article-money strong{font-size:12.5px}
.direct-article-lines .article-money small{color:var(--muted)}
.direct-article-lines tfoot td{background:#f5f7f8;border-top:2px solid #26333e}
.article-return-line{background:#fff8ed!important;opacity:.82}
.article-total-warning{margin:10px 0}
@media(max-width:900px){.direct-article-lines{overflow-x:auto}}

/* v69.4 - slimme DOR objectherkenning */
.ai-dor-hero{align-items:center}
.ai-mapping-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:14px 0}
.ai-mapping-grid label{display:flex;flex-direction:column;gap:5px;padding:9px;border:1px solid var(--line);border-radius:8px;background:#fafbfc}
.ai-mapping-grid span{font-size:9px;font-weight:850;text-transform:uppercase;color:var(--muted)}
.ai-confidence{display:inline-flex;align-items:center;justify-content:center;min-width:52px;padding:5px 7px;border-radius:7px;font-weight:900;font-size:11px}
.ai-confidence.good{background:#e9f8ef;color:#236b45}.ai-confidence.attention{background:#fff2da;color:#8b5d16}
.ai-mini{display:inline-block;margin-top:4px;padding:3px 6px;border-radius:5px;background:#eef3f6;color:#42515d;font-size:9px;font-weight:750}
@media(max-width:1000px){.ai-mapping-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.ai-mapping-grid{grid-template-columns:1fr}}

/* v69.5 - lerende DOR-herkenning */
.ai-stat-row{display:flex;flex-wrap:wrap;gap:7px;margin-top:12px}
.ai-stat-row span{display:flex;align-items:center;gap:5px;padding:6px 9px;border:1px solid rgba(255,255,255,.18);border-radius:8px;font-size:10px}
.ai-stat-row b{font-size:13px}
.ai-correction-form{display:grid;grid-template-columns:minmax(115px,1fr) 92px auto;gap:5px;margin-top:7px;min-width:330px}
.ai-correction-form select,.ai-correction-form input{min-width:0;font-size:10px;padding:6px 7px}
@media(max-width:720px){.ai-correction-form{grid-template-columns:1fr}.ai-stat-row{display:grid;grid-template-columns:1fr 1fr}}

/* v70 - afronding & productieklaar */
.production-ready-hero{align-items:center}
.production-score{min-width:170px;text-align:center;padding:18px;border-radius:14px;border:1px solid var(--line);background:#fff}
.production-score strong{display:block;font-size:28px}.production-score span{font-size:10px;text-transform:uppercase;font-weight:850;color:var(--muted)}
.production-score.ready{background:#edf9f2;border-color:#b9dfc8}.production-score.blocked{background:#fff1f1;border-color:#e9bbbb}
.final-phase-bar{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:12px 0}
.final-phase-bar>div{padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:#fff}
.final-phase-bar small{display:block;font-size:8px;text-transform:uppercase;letter-spacing:.07em;color:var(--muted);font-weight:850}
.final-phase-bar strong{display:block;margin-top:3px;font-size:15px}
.production-actions{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 16px}
.production-actions form{margin:0}
.readiness-list{display:grid;gap:7px}
.readiness-row{display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:9px;background:#fff}
.readiness-row.ok{border-left:4px solid #2d8a5b}.readiness-row.warning{border-left:4px solid #c88d24;background:#fffaf1}.readiness-row.blocker{border-left:4px solid #b54444;background:#fff4f4}
.readiness-icon{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:#eef2f4;font-weight:900}
.readiness-main b{display:block;font-size:11.5px}.readiness-main span{display:block;margin-top:2px;font-size:10px;color:var(--muted)}.readiness-main small{display:block;margin-top:4px;font-size:9px;color:#875b20}
.final-phase-dashboard a{margin-left:6px;font-weight:850}
@media(max-width:800px){.final-phase-bar{grid-template-columns:1fr 1fr}.readiness-row{grid-template-columns:30px 1fr}.readiness-row>.status-pill{grid-column:2}}

/* v70.2 - DOR AI learning & feedback */
.ai-source-badge{display:inline-flex;align-items:center;padding:3px 6px;border-radius:5px;background:#edf2f5;font-size:8.5px;font-weight:850;color:#43515d}
.ai-feedback-good{color:#24724b;font-weight:850}.ai-feedback-bad{color:#9d3d3d;font-weight:850}

/* v70.3 - klantflow afronding */
.receipt-lockline{display:flex;flex-wrap:wrap;gap:8px;margin:9px 0 0;padding:7px 10px;border:1px solid #cfd8d2;border-radius:6px;background:#f3faf6;color:#315b45;font-size:8.5px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
.customer-finished-panel{display:flex;justify-content:space-between;align-items:center;gap:18px;margin:14px 0;padding:16px 18px;border:1px solid #b9dbc6;border-left:4px solid #2f8457;border-radius:11px;background:#f3fbf6}
.customer-finished-panel h3{margin:3px 0;font-size:16px}.customer-finished-panel p{margin:0;color:var(--muted);font-size:11px}
@media(max-width:700px){.customer-finished-panel{display:block}.customer-finished-panel .actions-row{margin-top:12px}}
@media print{.receipt-lockline{border-color:#bbb;background:#fff;color:#333}}

/* v70.4 - beleningen lifecycle */
.loan-lifecycle-bar{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:5px;margin:10px 0 14px}
.loan-lifecycle-bar span{position:relative;padding:8px 9px;border:1px solid var(--line);border-radius:7px;background:#fff;color:var(--muted);font-size:9px;font-weight:850;text-align:center;text-transform:uppercase;letter-spacing:.03em}
.loan-lifecycle-bar span.done{background:#edf8f1;border-color:#bddbc8;color:#2f704c}
.loan-lifecycle-bar span.current{background:#26333e;border-color:#26333e;color:#fff}
@media(max-width:700px){.loan-lifecycle-bar{grid-template-columns:1fr 1fr}.loan-lifecycle-bar span:last-child{grid-column:1/-1}}

/* v70.5 - database doctor & migration hardening */
.migration-preflight-card{border-left:4px solid #546a7b}
.migration-preflight-card .grid{margin-top:8px}
.database-doctor-ok{background:#f2faf5;border-color:#c0dec9}
code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:.92em}

/* v70.6 - modular core & code health */
.module-health-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.module-health-card{padding:12px;border:1px solid var(--line);border-radius:9px;background:#fff}
.module-health-card.ok{border-left:4px solid #2f8457}.module-health-card.bad{border-left:4px solid #b54444;background:#fff5f5}
.module-health-head{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:7px}
.module-health-card code{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.module-health-card small{display:block;margin-top:6px;color:var(--muted)}
.module-health-card p{margin:7px 0 0;font-size:10px;color:#9d3d3d}
.route-health-list{display:grid;gap:5px}.route-health-list>div{display:grid;grid-template-columns:16px 1fr minmax(180px,.8fr) auto;gap:8px;align-items:center;padding:8px 10px;border-bottom:1px solid var(--line)}
.health-dot{width:9px;height:9px;border-radius:50%;display:inline-block}.health-dot.ok{background:#2f8457}.health-dot.bad{background:#b54444}
@media(max-width:1000px){.module-health-grid{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.module-health-grid{grid-template-columns:1fr}.route-health-list>div{grid-template-columns:14px 1fr auto}.route-health-list code{grid-column:2}}

/* v70.7 - plugin-achtige workflow */
.workflow-department-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:7px;margin:12px 0}
.workflow-department-card{display:block;padding:12px;border:1px solid var(--line);border-radius:9px;background:#fff;text-decoration:none;color:inherit}
.workflow-department-card span,.workflow-department-card small{display:block}.workflow-department-card span{font-size:9px;text-transform:uppercase;font-weight:850;color:var(--muted)}
.workflow-department-card strong{display:block;font-size:24px;margin:3px 0}.workflow-department-card small{font-size:9px;color:var(--muted)}
.workflow-map{display:grid;gap:9px}.workflow-map>div{display:flex;align-items:center;flex-wrap:wrap;gap:6px;padding:10px;border:1px solid var(--line);border-radius:8px}
.workflow-map b{min-width:80px}.workflow-map span{padding:6px 8px;border-radius:6px;background:#eef3f6;font-size:9.5px;font-weight:800}.workflow-map i{font-style:normal;color:var(--muted)}
.workitem-stage-row{display:flex;gap:5px;align-items:center;margin-bottom:5px}
.workflow-stage-badge,.priority-badge{display:inline-flex;padding:3px 6px;border-radius:5px;font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.workflow-stage-badge{background:#eaf0f3;color:#3d4f5c}.priority-badge.priority-1{background:#fde8e8;color:#963b3b}.priority-badge.priority-2{background:#fff2d9;color:#7d5a18}.priority-badge.priority-3{background:#eef2f3;color:#5b6770}
.department-workitem.priority-1{border-left:4px solid #b54444}
.quick-work-list{display:grid;gap:6px}.quick-work-item{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;text-decoration:none;color:inherit;background:#fff}
.quick-work-item.priority-1{border-left:4px solid #b54444}.quick-work-item div b,.quick-work-item div small{display:block}.quick-work-item div small{margin-top:2px;color:var(--muted)}
.quick-work-item>strong{font-size:10px}
@media(max-width:1000px){.workflow-department-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.workflow-department-grid{grid-template-columns:1fr 1fr}.quick-work-item{grid-template-columns:auto 1fr}.quick-work-item>strong{grid-column:2}}

/* v70.8 - plugin betaalflow */
.payment-age-old{font-weight:850;color:#9d3d3d}
.sepa-ready{border-left:4px solid #2f8457}
.sepa-invalid{border-left:4px solid #b54444;background:#fff6f6}

/* v70.9 - artikelregels in stijl van de bestaande plugin */
.plugin-article-lines{width:100%}
.plugin-article-lines-title{display:flex;justify-content:space-between;align-items:end;gap:12px;margin-bottom:10px}
.plugin-article-lines-title h2{margin:2px 0 0}
.plugin-article-table{width:100%;border-collapse:collapse;table-layout:fixed;font-variant-numeric:tabular-nums}
.plugin-article-table col.col-no{width:4%}.plugin-article-table col.col-metal{width:10%}.plugin-article-table col.col-desc{width:34%}
.plugin-article-table col.col-fineness{width:14%}.plugin-article-table col.col-weight{width:11%}.plugin-article-table col.col-qty{width:7%}
.plugin-article-table col.col-price{width:10%}.plugin-article-table col.col-total{width:10%}
.plugin-article-table th,.plugin-article-table td{padding:10px 9px;border-bottom:1px solid var(--line);vertical-align:top;font-size:11px}
.plugin-article-table th{font-size:9px;text-transform:uppercase;letter-spacing:.035em;color:var(--muted);font-weight:800;background:#fafbfc}
.plugin-article-table .numeric{text-align:right;white-space:nowrap}
.plugin-article-table .line-no{color:var(--muted);font-weight:800}
.plugin-article-table .description-cell>b{display:block;font-size:11.5px;color:var(--text)}
.plugin-article-table .line-amount{font-weight:900;font-size:12px}
.plugin-article-table tfoot th{border-top:2px solid #d8dee3;background:#f7f9fa}
.plugin-article-table .grand-total{font-size:14px;color:var(--text)}
.plugin-article-table tr.is-return{background:#fff8ed}
.metal-pill{display:inline-flex;align-items:center;border-radius:999px;padding:3px 7px;font-size:8px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}
.metal-pill.gold{background:#f5ecd0;color:#78611e}.metal-pill.silver{background:#edf1f4;color:#51606c}
.article-line-extras{display:flex;flex-wrap:wrap;gap:5px 10px;margin-top:6px}
.article-line-extras span{display:inline-flex;gap:4px;color:#48545e;font-size:8.5px}
.article-line-extras small{color:var(--muted);font-size:8px}
.plugin-article-cards{display:none}
@media(max-width:850px){
 .plugin-article-table-wrap{overflow:visible}
 .plugin-article-table{display:none}
 .plugin-article-cards{display:grid;gap:8px}
}
@media print{
 .plugin-article-table{display:table!important}
 .plugin-article-cards{display:none!important}
 .plugin-article-table th,.plugin-article-table td{padding:6px 5px;font-size:9px}
 .article-line-extras{gap:3px 7px}
}

/* v71 - plugin bonafhandeling */
.customer-lock-banner{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 14px;margin:10px 0;border:1px solid #bfd9c8;border-left:4px solid #2f8457;border-radius:9px;background:#f3faf5}
.customer-lock-banner>div:first-child{display:flex;gap:10px;align-items:flex-start}.customer-lock-banner>div:first-child>span{font-size:20px;color:#2f8457}
.customer-lock-banner b,.customer-lock-banner small{display:block}.customer-lock-banner small{margin-top:3px;color:var(--muted)}
.plugin-decision-note{display:flex;flex-direction:column;gap:2px;padding:10px 12px;margin:12px 0;border:1px solid var(--line);border-radius:8px;background:#f7f9fa}
.plugin-decision-note span{font-size:10px;color:var(--muted)}
.customer-decision-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}
.customer-finished-panel.rejected{border-left:4px solid #b54444}
@media(max-width:700px){.customer-lock-banner{align-items:flex-start;flex-direction:column}.customer-decision-actions{display:grid;grid-template-columns:1fr;width:100%}.customer-decision-actions .btn{width:100%}}

/* v71.1 - Backoffice / Overzicht in stijl van plugin v5.0.42 */
.backoffice-plugin-toolbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:12px 0}
.backoffice-plugin-toolbar .segmented{display:inline-flex;border:1px solid var(--line);border-radius:8px;overflow:hidden;background:#fff}
.backoffice-plugin-toolbar .segmented a{padding:8px 11px;text-decoration:none;color:var(--text);font-size:10px;font-weight:800;border-right:1px solid var(--line)}
.backoffice-plugin-toolbar .segmented a:last-child{border-right:0}.backoffice-plugin-toolbar .segmented a.active{background:#25333e;color:#fff}
.backoffice-search{display:flex;gap:6px;flex:1;min-width:280px}.backoffice-search input{min-width:220px;flex:1}
.plugin-memory-note{border:1px solid #f59e0b!important;border-left:6px solid #d97706!important;background:#fffbeb!important;color:#78350f}
.plugin-memory-note .memory-title{font-weight:900;color:#92400e;font-size:15px;margin-bottom:7px}
.plugin-memory-note>div:not(.memory-title){font-size:12px;line-height:1.55}
.today-metal-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}
.today-metal-grid article{padding:10px 12px;border:1px solid var(--line);border-radius:8px;background:#fafbfc}
.today-metal-grid span,.today-metal-grid b,.today-metal-grid strong,.today-metal-grid small{display:block}
.today-metal-grid span{font-size:9px;text-transform:uppercase;color:var(--muted);font-weight:850}.today-metal-grid b{margin-top:4px;font-size:13px}.today-metal-grid strong{font-size:14px;margin-top:2px}.today-metal-grid small{margin-top:4px;color:var(--muted)}
.plugin-backoffice-table{min-width:980px}.plugin-backoffice-table td{vertical-align:top}
.plugin-backoffice-table td>a.receipt-number{display:block}.plugin-backoffice-table td>small{display:block;margin-top:3px;color:var(--muted)}
.backoffice-line-stack{display:grid;gap:5px}.backoffice-line{display:grid;grid-template-columns:minmax(190px,1.5fr) 120px 120px;gap:10px;align-items:center;padding:7px 0;border-bottom:1px solid var(--line)}
.backoffice-line:last-child{border-bottom:0}.backoffice-line>div>b,.backoffice-line>div>span{display:block}.backoffice-line>div>span{font-size:9px;color:var(--muted);margin-top:2px}
.weight-stack,.price-stack{text-align:right;font-variant-numeric:tabular-nums}.weight-stack b{font-size:11px}.weight-stack span{font-size:9px!important}.price-stack b{font-size:12px}
@media(max-width:1000px){.today-metal-grid{grid-template-columns:1fr 1fr}}
@media(max-width:700px){.today-metal-grid{grid-template-columns:1fr}.backoffice-search{width:100%}.backoffice-plugin-toolbar{align-items:stretch}}

/* v71.2 - single source taxateurregels */
.plugin-backoffice-table td small{display:block;color:var(--muted);margin-top:2px}
.plugin-item-choice{font-weight:750}
.field[hidden]{display:none!important}
.article-source-badge{display:inline-flex;padding:3px 6px;border-radius:5px;background:#eef4f7;font-size:8px;font-weight:850}

/* v71.4 - DOR Center */
.dor-center-filter{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.dor-center-filter .segmented{display:inline-flex;border:1px solid var(--line);border-radius:8px;overflow:hidden}.dor-center-filter .segmented a{padding:8px 10px;text-decoration:none;color:var(--text);font-size:9px;font-weight:850;border-right:1px solid var(--line)}.dor-center-filter .segmented a:last-child{border-right:0}.dor-center-filter .segmented a.active{background:#25333e;color:#fff}.dor-center-filter input{min-width:280px;flex:1}
.dor-center-list{display:grid;gap:10px}.dor-center-item{border:1px solid var(--line);border-radius:10px;padding:13px;background:#fff}.dor-center-item.has-error{border-left:5px solid #b54444;background:#fff9f9}
.dor-center-item-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.dor-center-item-head h3{margin:2px 0 3px}.dor-center-item-head p{margin:0;color:var(--muted);font-size:10px}.dor-center-statuses{display:flex;gap:5px;justify-content:flex-end;flex-wrap:wrap}
.dor-center-reference{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px;margin:10px 0}.dor-center-reference>span{padding:8px 9px;background:#f7f9fa;border:1px solid var(--line);border-radius:7px}.dor-center-reference small,.dor-center-reference b{display:block}.dor-center-reference small{font-size:8px;color:var(--muted);text-transform:uppercase;font-weight:800}.dor-center-reference b{margin-top:2px}
.dor-followup-form{border-top:1px solid var(--line);padding-top:11px}.dor-conditional{margin-top:9px;padding:11px;border:1px dashed #cbd5dc;border-radius:8px;background:#fafcfd}.dor-private-sale{border-style:solid;background:#f8fafc}.dor-private-title{display:flex;justify-content:space-between;gap:10px;margin-bottom:9px}.dor-private-title span{font-size:9px;color:var(--muted)}
.dor-center-actions{display:flex;justify-content:flex-end;gap:7px;margin-top:10px}
@media(max-width:900px){.dor-center-reference{grid-template-columns:1fr 1fr}.dor-center-item-head{flex-direction:column}.dor-center-statuses{justify-content:flex-start}}
@media(max-width:600px){.dor-center-reference{grid-template-columns:1fr}.dor-center-actions{display:grid;grid-template-columns:1fr}.dor-center-actions .btn{width:100%}}

/* v71.4.1 - Sloop binnen DOR Center */
.scrap-center{border-top:4px solid #545f68}
.scrap-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:10px 0 12px}
.scrap-summary-grid article{padding:11px 12px;border:1px solid var(--line);border-radius:8px;background:#fafbfc}
.scrap-summary-grid article.has-warning{border-color:#d7a548;background:#fffaf0}
.scrap-summary-grid small,.scrap-summary-grid strong,.scrap-summary-grid span{display:block}
.scrap-summary-grid small{text-transform:uppercase;font-size:8px;font-weight:850;color:var(--muted)}
.scrap-summary-grid strong{font-size:18px;margin:3px 0 1px}.scrap-summary-grid span{font-size:9px;color:var(--muted)}
.scrap-table{min-width:1000px}.scrap-table .numeric{text-align:right;font-variant-numeric:tabular-nums}.scrap-table td>small{display:block;color:var(--muted);margin-top:2px}
.scrap-table tr.scrap-not-ready{background:#fff8f2;opacity:.78}
.scrap-batch-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-top:12px}
.scrap-batch-actions b,.scrap-batch-actions small{display:block}.scrap-batch-actions small{color:var(--muted);margin-top:2px}
@media(max-width:900px){.scrap-summary-grid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.scrap-summary-grid{grid-template-columns:1fr}.scrap-batch-actions{align-items:stretch;flex-direction:column}.scrap-batch-actions .btn{width:100%}}

/* v71.4.6 - klant ziet contante inhouding direct bij de artikelregels */
.customer-withholding-preview{margin-top:10px;border:1px solid var(--line);border-radius:9px;background:#fafbfc;overflow:hidden}
.customer-withholding-preview>div{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:9px 12px;border-bottom:1px solid var(--line)}
.customer-withholding-preview>div span{font-size:10px;color:var(--muted);font-weight:750}
.customer-withholding-preview>div strong{font-size:13px;font-variant-numeric:tabular-nums}
.customer-withholding-preview>div.deduction{background:#fff7f2}
.customer-withholding-preview>div.deduction strong{font-weight:900}
.customer-withholding-preview>div.net{background:#f3f7f4}
.customer-withholding-preview>div.net strong{font-size:15px}
.customer-withholding-preview>small{display:block;padding:9px 12px;color:var(--muted);font-size:9px;line-height:1.45}
.customer-withholding-preview.bank-only>div.deduction{background:#f7f9fa}
@media(max-width:650px){.customer-withholding-preview>div{padding:9px 10px}.customer-withholding-preview>div strong{font-size:12px}}

/* v71.5 financiële bron */
.financial-source-banner{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border:1px solid var(--line);border-left:4px solid #3c845f;border-radius:8px;background:#f5faf7;margin:10px 0}
.financial-source-banner.error{border-left-color:#b54444;background:#fff7f7}
.financial-source-banner b,.financial-source-banner small{display:block}.financial-source-banner small{margin-top:3px;color:var(--muted)}
.finance-error{display:block;color:#a33;font-weight:800;margin-top:3px}.finance-ok{display:block;color:#397052;font-weight:800;margin-top:3px}

.financial-fingerprint{margin-top:7px;padding-top:7px;border-top:1px dashed var(--line);font-size:9px;color:var(--muted)}

/* v71.5.1 - harde customer_confirm broncontrole */
.customer-source-debug{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap;padding:8px 10px;margin:8px 0;border:1px dashed #96a2ab;border-radius:7px;background:#f7f9fa;font-size:9px}
.customer-source-debug b{font-size:10px}.customer-source-debug span,.customer-source-debug small{color:var(--muted)}
.customer-build-marker{position:absolute;right:12px;top:10px;padding:4px 7px;border-radius:5px;background:#eef2f4;color:#68747e;font-size:8px;font-weight:800}
.customer-confirm-hero{position:relative}
.customer-withholding-preview .withholding-heading{background:#25333e;color:#fff!important;display:flex;justify-content:space-between;gap:10px}
.customer-withholding-preview .withholding-heading span{color:#dbe3e8!important;font-size:8px;letter-spacing:.08em}
.customer-withholding-preview .withholding-heading b{font-size:10px}

/* v71.5.2 — customer_confirm opnieuw opgebouwd in plugin/bon-stijl */
.plugin-customer-confirm{max-width:1180px;margin:0 auto;padding-bottom:28px}
.plugin-confirm-top{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin:10px 0 16px}
.plugin-confirm-top h1{margin:4px 0 3px;font-size:30px}.plugin-confirm-top p{margin:0;color:var(--muted)}
.plugin-confirm-bon{min-width:150px;text-align:right;padding:10px 12px;border-radius:9px;background:#1d2730;color:#fff}
.plugin-confirm-bon small,.plugin-confirm-bon strong{display:block}.plugin-confirm-bon small{font-size:8px;letter-spacing:.12em;opacity:.7}.plugin-confirm-bon strong{font-size:22px;margin-top:2px}
.plugin-confirm-search{padding:10px 12px;margin-bottom:12px}
.plugin-confirm-receipt{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden;box-shadow:0 8px 26px rgba(15,23,42,.06)}
.plugin-receipt-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:20px 22px;background:#18232c;color:#fff}
.plugin-receipt-head>div>span{font-size:9px;letter-spacing:.14em;font-weight:850;color:#caa75a}.plugin-receipt-head h2{font-size:23px;margin:4px 0}.plugin-receipt-head small{opacity:.72}
.plugin-receipt-total{text-align:right}.plugin-receipt-total small,.plugin-receipt-total strong{display:block}.plugin-receipt-total small{font-size:8px;letter-spacing:.1em;opacity:.7}.plugin-receipt-total strong{font-size:25px;margin-top:3px}
.plugin-receipt-customer{display:grid;grid-template-columns:2fr 1fr 1fr;border-bottom:1px solid var(--line);background:#fafbfc}
.plugin-receipt-customer>div{padding:11px 16px;border-right:1px solid var(--line)}.plugin-receipt-customer>div:last-child{border-right:0}
.plugin-receipt-customer small,.plugin-receipt-customer b{display:block}.plugin-receipt-customer small{font-size:8px;color:var(--muted);font-weight:850;letter-spacing:.08em}.plugin-receipt-customer b{margin-top:3px}
.plugin-source-status{display:flex;align-items:center;gap:8px;padding:8px 16px;border-bottom:1px solid var(--line);background:#f7f9fa}.plugin-source-status small{color:var(--muted)}.plugin-source-status a{margin-left:auto;font-size:9px}
.plugin-receipt-section{padding:18px 20px}.plugin-receipt-section-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:9px}.plugin-receipt-section-title h3{margin:0}.plugin-receipt-section-title span{font-size:9px;color:var(--muted);font-weight:800}
.plugin-item-lines{border:1px solid var(--line);border-radius:8px;overflow:hidden}
.plugin-item-line{display:grid;grid-template-columns:34px minmax(240px,1fr) 115px 80px 125px;align-items:center;gap:8px;padding:12px 13px;border-bottom:1px solid var(--line)}
.plugin-item-line:last-child{border-bottom:0}.plugin-item-number{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#edf1f3;font-weight:900;font-size:10px}
.plugin-item-main b,.plugin-item-main span,.plugin-item-main small{display:block}.plugin-item-main b{font-size:13px}.plugin-item-main span{margin-top:2px;color:#65717b;font-size:9px}.plugin-item-main small{margin-top:2px;color:var(--muted)}
.plugin-item-metric,.plugin-item-price{text-align:right}.plugin-item-metric small,.plugin-item-price small{display:block;font-size:7px;letter-spacing:.08em;color:var(--muted);font-weight:850}.plugin-item-metric b,.plugin-item-price strong{display:block;margin-top:3px;font-variant-numeric:tabular-nums}.plugin-item-price strong{font-size:15px}
.plugin-payment-summary{margin:0 20px 20px;border:1px solid #d8c28d;border-radius:9px;background:#fffbf3;padding:14px}
.plugin-payment-title{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.plugin-payment-title h3{margin:2px 0 0}
.plugin-payment-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border:1px solid #eadfca;border-radius:7px;overflow:hidden;background:#fff}
.plugin-payment-grid>div{padding:10px;border-right:1px solid #eadfca}.plugin-payment-grid>div:last-child{border-right:0}.plugin-payment-grid small,.plugin-payment-grid strong{display:block}.plugin-payment-grid small{font-size:8px;color:var(--muted);font-weight:800}.plugin-payment-grid strong{margin-top:3px;font-size:14px}.plugin-payment-grid .deduction{background:#fff5ef}.plugin-payment-grid .net{background:#eef7f1}.plugin-payment-grid .net strong{font-size:16px}
.plugin-payment-summary>p{margin:8px 0 0;color:#737d85;font-size:9px}
.plugin-customer-action{margin-top:14px}
.plugin-payment-choice{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.plugin-payment-choice label{cursor:pointer}.plugin-payment-choice input{position:absolute;opacity:0}.plugin-payment-choice span{display:block;padding:11px 12px;border:1px solid var(--line);border-radius:7px;text-align:center;font-weight:850;background:#fff}.plugin-payment-choice input:checked+span{background:#1e2b34;color:#fff;border-color:#1e2b34}
.plugin-live-payment{margin:12px 0}
.plugin-confirm-final-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:14px}.plugin-final-box{border:1px solid var(--line);border-radius:9px;padding:13px;background:#fafbfc}.plugin-final-box h3{margin:3px 0 9px}
.plugin-agree{margin:14px 0;background:#f7f9fa;border:1px solid var(--line);border-radius:8px;padding:12px}
@media(max-width:850px){.plugin-item-line{grid-template-columns:30px 1fr 90px 100px}.plugin-item-metric:nth-of-type(4){display:none}.plugin-payment-grid{grid-template-columns:1fr 1fr}.plugin-payment-grid>div{border-bottom:1px solid #eadfca}.plugin-confirm-final-grid{grid-template-columns:1fr}}
@media(max-width:600px){.plugin-confirm-top,.plugin-receipt-head{align-items:stretch;flex-direction:column}.plugin-confirm-bon,.plugin-receipt-total{text-align:left}.plugin-receipt-customer{grid-template-columns:1fr}.plugin-receipt-customer>div{border-right:0;border-bottom:1px solid var(--line)}.plugin-item-line{grid-template-columns:28px 1fr 85px}.plugin-item-metric{display:none}.plugin-payment-grid{grid-template-columns:1fr}.plugin-payment-choice{grid-template-columns:1fr}}

/* v71.6 - Bontrace / Workflowcontrole */
.workflow-trace-hero{display:flex;justify-content:space-between;gap:18px;align-items:center}
.workflow-trace-bon{min-width:180px;padding:12px 14px;border-radius:9px;background:#1c2730;color:#fff;text-align:right}
.workflow-trace-bon small,.workflow-trace-bon strong,.workflow-trace-bon span{display:block}.workflow-trace-bon small{font-size:8px;letter-spacing:.1em;opacity:.7}.workflow-trace-bon strong{font-size:21px;margin:2px 0}.workflow-trace-bon span{font-size:9px;opacity:.8}
.workflow-trace-status{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 17px;border:1px solid #b9d5c4;border-left:5px solid #42855f;border-radius:10px;background:#f5faf7;margin:12px 0}
.workflow-trace-status.error{border-color:#e2b5b5;border-left-color:#b54444;background:#fff8f8}.workflow-trace-status h2{margin:2px 0 3px}.workflow-trace-status p{margin:0;color:var(--muted)}
.trace-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin:12px 0}
.trace-check{display:flex;align-items:flex-start;gap:10px;border:1px solid var(--line);border-left:4px solid #42855f;border-radius:8px;padding:10px;background:#fff}
.trace-check.error{border-left-color:#b54444;background:#fff8f8}.trace-check.warning{border-left-color:#d29c3d;background:#fffaf1}
.trace-check-icon{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#eef4f0;font-weight:900;flex:0 0 24px}.trace-check.error .trace-check-icon{background:#f8e5e5}.trace-check.warning .trace-check-icon{background:#fbf0d7}
.trace-check b,.trace-check span{display:block}.trace-check span{margin-top:2px;color:var(--muted);font-size:9px;line-height:1.45}
.trace-counts,.trace-audit-grid,.trace-finance-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:10px 0}
.trace-counts>div,.trace-audit-grid>div,.trace-finance-grid>div{padding:10px 11px;border:1px solid var(--line);border-radius:8px;background:#fafbfc}
.trace-counts small,.trace-counts strong,.trace-audit-grid small,.trace-audit-grid strong,.trace-finance-grid small,.trace-finance-grid strong{display:block}
.trace-counts small,.trace-audit-grid small,.trace-finance-grid small{font-size:8px;color:var(--muted);font-weight:850;text-transform:uppercase}.trace-counts strong,.trace-audit-grid strong,.trace-finance-grid strong{margin-top:3px;font-size:15px}
.trace-row-hidden{opacity:.65;background:#fafbfc}.trace-row-customer{background:#f8fcf9}.trace-repair-card{border-top:4px solid #2e3b45}
@media(max-width:850px){.trace-check-grid{grid-template-columns:1fr}.trace-counts,.trace-audit-grid,.trace-finance-grid{grid-template-columns:1fr 1fr}.workflow-trace-hero{align-items:stretch;flex-direction:column}.workflow-trace-bon{text-align:left}}
@media(max-width:560px){.trace-counts,.trace-audit-grid,.trace-finance-grid{grid-template-columns:1fr}}

/* v71.7 — Plugin v5.0.42 taxateurregels: dezelfde kolommen van invoer tot klant */
.plugin-taxateur-section-head{align-items:flex-end}
.plugin-taxateur-row{border:1px solid var(--line);border-radius:9px;background:#fff;margin:8px 0;overflow:hidden;box-shadow:0 2px 8px rgba(15,23,42,.025)}
.plugin-taxateur-main-grid{display:grid;grid-template-columns:140px 100px minmax(190px,1fr) 150px 115px 72px 112px 120px 76px;gap:0;align-items:stretch}
.plugin-taxateur-main-grid>.field{padding:9px 8px;border-right:1px solid var(--line);margin:0;min-width:0}
.plugin-taxateur-main-grid>.field>label{display:block;margin:0 0 5px;font-size:8px;line-height:1.15;text-transform:uppercase;letter-spacing:.055em;color:var(--muted);font-weight:850}
.plugin-taxateur-main-grid input,.plugin-taxateur-main-grid select{width:100%;min-height:37px;padding:7px 8px;border-radius:6px;font-size:11px;background:#fff}
.plugin-taxateur-main-grid .plugin-cell-total{background:#f7f9fa}.plugin-taxateur-main-grid .plugin-cell-total input{font-weight:900;font-size:12px}
.plugin-row-actions{display:flex;align-items:center;justify-content:center;gap:4px;padding:7px;background:#fafbfc}
.plugin-row-actions .btn{padding:7px 8px;min-width:0}
.plugin-fineness-inputs{display:grid;grid-template-columns:1fr 1fr;gap:4px}.plugin-fineness-inputs input{min-width:0}
.plugin-input-unit{display:flex;align-items:center;gap:4px}.plugin-input-unit span{font-size:9px;color:var(--muted);font-weight:800}
.plugin-taxateur-details{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;padding:10px 12px;background:#f8fafb;border-top:1px solid var(--line)}
.plugin-taxateur-details>.field{margin:0}.plugin-taxateur-details>.field label{font-size:9px}.plugin-taxateur-details>.field input,.plugin-taxateur-details>.field select{min-height:36px}
.plugin-detail-toggle{white-space:nowrap}
.plugin-workflow-steps{margin-bottom:12px}
.plugin-customer-article-section .plugin-article-lines-title .eyebrow{color:#b08b3e}
.plugin-customer-article-section .plugin-article-table th{white-space:nowrap}
@media(max-width:1250px){.plugin-taxateur-main-grid{grid-template-columns:120px 90px minmax(180px,1fr) 135px 105px 65px 100px 110px 70px}.plugin-taxateur-main-grid>.field{padding:7px 6px}.plugin-taxateur-main-grid input,.plugin-taxateur-main-grid select{font-size:10px}}
@media(max-width:980px){.plugin-taxateur-main-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.plugin-taxateur-main-grid>.field{border-bottom:1px solid var(--line)}.plugin-cell-description{grid-column:span 2}.plugin-row-actions{grid-column:span 4;justify-content:flex-end}.plugin-taxateur-details{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.plugin-taxateur-main-grid{grid-template-columns:1fr 1fr}.plugin-cell-description{grid-column:span 2}.plugin-cell-fineness{grid-column:span 2}.plugin-row-actions{grid-column:span 2}.plugin-taxateur-details{grid-template-columns:1fr}}

/* v71.8 — plugin klantafhandeling + interne werkbak */
.customer-kiosk .sidebar,
.customer-kiosk .sidebar-backdrop,
.customer-kiosk .topbar{display:none!important}
.customer-kiosk .app{display:block!important;min-height:100vh}
.customer-kiosk .app>main{margin:0!important;width:100%!important;max-width:none!important;padding:22px!important}
.customer-kiosk .alert.taxateur-new-alert{display:none!important}

.plugin-customer-finished{max-width:1080px;margin:0 auto}
.customer-finished-hero{display:flex;align-items:center;gap:18px;padding:26px;border-radius:14px;background:#f2f8f4;border:1px solid #c8ddcf;margin-bottom:14px}
.customer-finished-hero.rejected{background:#fff7f7;border-color:#e1bcbc}
.customer-finished-icon{width:62px;height:62px;border-radius:50%;display:grid;place-items:center;flex:0 0 62px;background:#32734f;color:#fff;font-size:32px;font-weight:900}
.customer-finished-hero.rejected .customer-finished-icon{background:#a54040}
.customer-finished-hero h1{margin:3px 0 5px;font-size:27px}.customer-finished-hero p{margin:0;color:var(--muted);max-width:760px}
.plugin-finished-receipt{background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.plugin-finished-head{display:grid;grid-template-columns:1fr 2fr 1fr;background:#1d2830;color:#fff}
.plugin-finished-head>div{padding:13px 16px;border-right:1px solid rgba(255,255,255,.12)}.plugin-finished-head>div:last-child{border-right:0}
.plugin-finished-head small,.plugin-finished-head strong{display:block}.plugin-finished-head small{font-size:8px;letter-spacing:.1em;opacity:.7}.plugin-finished-head strong{font-size:15px;margin-top:3px}
.plugin-finished-receipt .plugin-article-lines{padding:16px}
.plugin-finished-payment{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-top:1px solid var(--line);background:#fafbfc}
.plugin-finished-payment>div{padding:12px 14px;border-right:1px solid var(--line)}.plugin-finished-payment>div:last-child{border-right:0}
.plugin-finished-payment small,.plugin-finished-payment strong{display:block}.plugin-finished-payment small{font-size:8px;color:var(--muted);text-transform:uppercase;font-weight:850}.plugin-finished-payment strong{font-size:15px;margin-top:3px}
.plugin-finished-payment .deduction{background:#fff5ef}.plugin-finished-payment .net{background:#eef7f1}.plugin-finished-payment .net strong{font-size:18px}
.customer-finished-actions{display:flex;justify-content:center;gap:9px;flex-wrap:wrap;margin:16px 0}
.customer-finished-print-frame{position:fixed;width:1px;height:1px;left:-10000px;top:-10000px;border:0}

.plugin-internal-stagebar{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:7px;margin:12px 0}
.plugin-internal-stagebar a{text-decoration:none;color:inherit;padding:10px 12px;border:1px solid var(--line);border-radius:9px;background:#fff}
.plugin-internal-stagebar a.active{border-color:#26343e;box-shadow:inset 0 0 0 1px #26343e}
.plugin-internal-stagebar small,.plugin-internal-stagebar strong{display:block}.plugin-internal-stagebar small{font-size:8px;text-transform:uppercase;color:var(--muted);font-weight:850}.plugin-internal-stagebar strong{font-size:20px;margin-top:3px}
.plugin-internal-list{display:grid;gap:10px}.plugin-internal-card{padding:14px}
.plugin-internal-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px}.plugin-internal-card-head h3{margin:3px 0}.plugin-internal-card-head p{margin:0;color:var(--muted);font-size:9px}.plugin-internal-card-head>strong{font-size:20px}
.plugin-internal-progress{display:flex;align-items:center;margin:13px 0;padding:10px;border:1px solid var(--line);border-radius:8px;background:#fafbfc}
.plugin-internal-progress>div{min-width:115px;text-align:center}.plugin-internal-progress>div span{width:25px;height:25px;border-radius:50%;display:grid;place-items:center;margin:0 auto 4px;background:#e6ebee;font-size:9px;font-weight:900}.plugin-internal-progress>div.done span{background:#32734f;color:#fff}.plugin-internal-progress>div.current span{background:#26343e;color:#fff}
.plugin-internal-progress b,.plugin-internal-progress small{display:block}.plugin-internal-progress b{font-size:9px}.plugin-internal-progress small{font-size:7px;color:var(--muted);margin-top:2px}.plugin-internal-progress>i{height:2px;flex:1;background:#d7dde1}
.plugin-internal-money{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin-bottom:10px}.plugin-internal-money span{padding:8px 10px;border-radius:7px;background:#f7f9fa;border:1px solid var(--line)}.plugin-internal-money small,.plugin-internal-money b{display:block}.plugin-internal-money small{font-size:7px;text-transform:uppercase;color:var(--muted);font-weight:850}.plugin-internal-money b{margin-top:2px}
@media(max-width:800px){.plugin-finished-payment,.plugin-internal-money{grid-template-columns:1fr 1fr}.plugin-internal-stagebar{grid-template-columns:1fr 1fr}.plugin-internal-progress{overflow:auto}.plugin-internal-card-head{flex-direction:column}}
@media(max-width:560px){.plugin-finished-head{grid-template-columns:1fr}.plugin-finished-payment,.plugin-internal-money,.plugin-internal-stagebar{grid-template-columns:1fr}.customer-finished-hero{align-items:flex-start;flex-direction:column}.customer-kiosk .app>main{padding:12px!important}}

/* v71.9 — pluginachtige bonweergave */
.plugin-purchase-view{max-width:1380px;margin:0 auto;display:grid;gap:16px}
.plugin-purchase-view-head{display:flex;justify-content:space-between;gap:24px;align-items:flex-end;padding:24px 26px;border:1px solid var(--border);border-radius:18px;background:var(--card)}
.plugin-purchase-view-head h1{font-size:34px;line-height:1;margin:5px 0 8px}.plugin-purchase-view-head p{margin:0;color:var(--muted)}
.plugin-purchase-view-total{text-align:right;display:grid;gap:5px;justify-items:end}.plugin-purchase-view-total small,.plugin-purchase-customer-strip small,.plugin-payment-lines span,.plugin-proof-list span,.plugin-technical-grid small{color:var(--muted);font-size:11px;font-weight:800;letter-spacing:.05em}.plugin-purchase-view-total strong{font-size:31px}
.plugin-purchase-steps{display:grid;grid-template-columns:repeat(6,1fr);gap:8px}.plugin-purchase-steps span{min-height:58px;border:1px solid var(--border);border-radius:12px;padding:10px 12px;background:var(--card);display:flex;align-items:center;gap:8px;color:var(--muted);font-weight:800}.plugin-purchase-steps b{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:var(--bg-soft)}.plugin-purchase-steps .done{color:var(--text)}.plugin-purchase-steps .done b{background:#dff6e8;color:#13763b}.plugin-purchase-steps .active{border-color:var(--primary);color:var(--text);box-shadow:inset 0 0 0 1px var(--primary)}
.plugin-purchase-customer-strip{display:grid;grid-template-columns:1fr 2fr 1fr 1fr .7fr;border:1px solid var(--border);border-radius:14px;background:var(--card);overflow:hidden}.plugin-purchase-customer-strip>div{padding:14px 16px;border-right:1px solid var(--border);display:grid;gap:4px}.plugin-purchase-customer-strip>div:last-child{border-right:0}
.plugin-purchase-section{margin:0}.plugin-purchase-bottom-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.plugin-payment-lines,.plugin-proof-list{display:grid;gap:0;margin-top:14px;border-top:1px solid var(--border)}.plugin-payment-lines>div,.plugin-proof-list>div,.plugin-payment-status{display:flex;justify-content:space-between;gap:20px;padding:11px 0;border-bottom:1px solid var(--border)}.plugin-payment-lines .deduction b{color:#a54a35}.plugin-payment-lines .net{padding-top:15px}.plugin-payment-lines .net strong{font-size:22px}.plugin-payment-status{margin-top:5px}.plugin-purchase-photo{display:block;margin-top:14px}.plugin-purchase-photo img{width:100%;height:180px;object-fit:cover;border-radius:12px;border:1px solid var(--border)}
.plugin-document-action-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.plugin-document-action-grid a{display:grid;gap:3px;text-decoration:none;color:inherit;padding:15px;border:1px solid var(--border);border-radius:12px;background:var(--bg-soft)}.plugin-document-action-grid a:hover{border-color:var(--primary)}.plugin-document-action-grid small{color:var(--muted)}
.plugin-purchase-next{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 24px;border-radius:16px;background:var(--card);border:2px solid var(--primary)}.plugin-purchase-next h2{margin:3px 0}.plugin-purchase-next p{margin:0;color:var(--muted);max-width:760px}.plugin-technical-details summary{cursor:pointer;font-weight:850}.plugin-technical-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin:16px 0}.plugin-technical-grid>div{padding:12px;background:var(--bg-soft);border-radius:10px;display:grid;gap:3px}
@media(max-width:980px){.plugin-purchase-steps{grid-template-columns:repeat(3,1fr)}.plugin-purchase-customer-strip{grid-template-columns:repeat(2,1fr)}.plugin-purchase-customer-strip>div{border-bottom:1px solid var(--border)}.plugin-purchase-bottom-grid{grid-template-columns:1fr}.plugin-document-action-grid{grid-template-columns:repeat(2,1fr)}.plugin-technical-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:620px){.plugin-purchase-view-head,.plugin-purchase-next{display:grid}.plugin-purchase-view-total{text-align:left;justify-items:start}.plugin-purchase-steps{grid-template-columns:1fr 1fr}.plugin-purchase-customer-strip,.plugin-document-action-grid,.plugin-technical-grid{grid-template-columns:1fr}.plugin-purchase-customer-strip>div{border-right:0}.plugin-purchase-next .btn{width:100%}}

/* v71.12 plugin-like single customer completion step */
.plugin-step-label{display:flex;align-items:center;gap:12px;margin:18px 0 10px;padding:12px 14px;border:1px solid var(--border,#e5e7eb);border-radius:12px;background:var(--surface-soft,#f8fafc)}
.plugin-step-label>span{width:30px;height:30px;border-radius:999px;display:grid;place-items:center;font-weight:800;background:#111827;color:#fff;flex:0 0 30px}
.plugin-step-label b,.plugin-step-label small{display:block}.plugin-step-label small{margin-top:2px;opacity:.7}.plugin-step-label.final-step{margin-top:22px}
@media(max-width:700px){.plugin-step-label{align-items:flex-start}.plugin-customer-confirm .plugin-confirm-top{gap:10px}}

/* v71.13 — plugin-achtige snelkeuzes voor taxateur */
.plugin-fineness-presets{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px}
.plugin-fineness-presets button{border:1px solid var(--line,#d8dde6);background:var(--surface,#fff);border-radius:7px;padding:5px 8px;font:inherit;font-size:12px;font-weight:700;cursor:pointer}
.plugin-fineness-presets button:hover{border-color:var(--primary,#1f5eff);box-shadow:0 0 0 2px rgba(31,94,255,.08)}

/* v71.14 — muntsoort direct in hoofdregel; bij munten alleen preset + aantal nodig */
.plugin-taxateur-main-grid .plugin-cell-coin{grid-column:span 2;min-width:210px}
@media(max-width:980px){.plugin-taxateur-main-grid .plugin-cell-coin{grid-column:span 2;min-width:0}}


/* v71.27 — uniforme klantworkflow */
.customer-flow-head{max-width:1180px;margin:0 auto 12px;display:flex;justify-content:space-between;gap:18px;align-items:center;padding:20px 22px;border:1px solid var(--line);border-radius:14px;background:#fff}
.customer-flow-head h2{margin:3px 0 5px}.customer-flow-head p{margin:0;color:var(--muted);max-width:700px}
.customer-flow-primary{min-width:300px;padding:14px 16px;border-radius:11px;background:#1d2830;color:#fff}.customer-flow-primary small,.customer-flow-primary strong,.customer-flow-primary span{display:block}.customer-flow-primary small{font-size:8px;letter-spacing:.09em;opacity:.68}.customer-flow-primary strong{font-size:17px;margin:3px 0}.customer-flow-primary span{font-size:9px;opacity:.8}
.customer-flow-progress{max-width:1180px;margin:0 auto 14px;display:flex;align-items:center;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:#fafbfc;overflow:auto}
.customer-flow-progress>div{min-width:120px;text-align:center}.customer-flow-progress>div span{width:29px;height:29px;border-radius:50%;display:grid;place-items:center;margin:0 auto 5px;background:#e4e9ec;color:#52606a;font-size:10px;font-weight:900}.customer-flow-progress>div.done span{background:#32734f;color:#fff}.customer-flow-progress>div.current span{background:#1d2830;color:#fff;box-shadow:0 0 0 4px rgba(29,40,48,.1)}
.customer-flow-progress b,.customer-flow-progress small{display:block}.customer-flow-progress b{font-size:9px}.customer-flow-progress small{font-size:7px;color:var(--muted);margin-top:2px}.customer-flow-progress>i{height:2px;min-width:30px;flex:1;background:#d6dde1}.customer-flow-complete{margin-bottom:14px}.customer-contract-summary{max-width:1180px;margin:0 auto 14px}
@media(max-width:720px){.customer-flow-head{align-items:stretch;flex-direction:column}.customer-flow-primary{min-width:0}.customer-flow-progress{justify-content:flex-start}.customer-flow-progress>div{min-width:105px}}

/* v71.28 — klantregistratie/tablet als vaste pluginflow */
.workflow-steps-five{grid-template-columns:repeat(5,minmax(0,1fr))}
.customer-start-flow{max-width:1180px;margin:0 auto 16px}
.customer-start-brand{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.customer-start-brand>span{width:48px;height:48px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,var(--gold2),#8c6726);font-weight:900;color:#111}
.customer-start-brand b,.customer-start-brand small{display:block}.customer-start-brand small{color:var(--muted)}
.customer-start-progress{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px}
.customer-start-progress>*{display:flex;align-items:center;justify-content:center;gap:7px;padding:11px 8px;border:1px solid var(--line);border-radius:12px;background:#fff;font-size:12px;text-align:center}
.customer-start-progress i{width:23px;height:23px;border-radius:50%;display:grid;place-items:center;background:#edf1f4;font-style:normal;font-weight:900}
.customer-start-progress .active{background:#192734;color:#fff;border-color:#192734}.customer-start-progress .active i{background:var(--gold);color:#111}
.customer-kiosk .tablet-shell{max-width:1180px;margin-left:auto;margin-right:auto}
.customer-kiosk .tablet-intro{text-align:center;padding:10px 0 4px}.customer-kiosk .tablet-intro p{max-width:760px;margin-left:auto;margin-right:auto}
.customer-kiosk .tablet-dossier-picker{grid-template-columns:repeat(2,minmax(0,1fr));max-width:820px;margin:0 auto}
.customer-kiosk .tablet-dossier-picker .dossier-type-card{min-height:165px;justify-content:center;padding:24px 56px 24px 24px}
.tablet-existing-customer{margin-top:18px;padding:13px 15px;border-radius:12px;background:#f6f8fa;color:var(--muted);text-align:center}
.customer-created-progress{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;margin:14px 0 16px}
.customer-created-progress>*{padding:8px 6px;border-radius:9px;background:#eef1f4;font-size:11px;font-weight:800;text-align:center}
.customer-created-progress .done{background:#e5f5ed;color:#126540}.customer-created-progress b{background:#fff4d8;color:#7c5b17}
@media(max-width:900px){.workflow-steps-five,.customer-start-progress,.customer-created-progress{grid-template-columns:1fr 1fr}.customer-kiosk .tablet-dossier-picker{grid-template-columns:1fr}}
@media(max-width:560px){.workflow-steps-five,.customer-start-progress,.customer-created-progress{grid-template-columns:1fr}.customer-start-progress>*{justify-content:flex-start}.customer-kiosk .tablet-dossier-picker .dossier-type-card{min-height:auto}}
.customer-timeline article:target{outline:2px solid currentColor;outline-offset:3px;scroll-margin-top:110px}

/* v71.33 - slimme volgende actie op klantenkaart */
.customer-next-action{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 16px;border-bottom:1px solid var(--line);background:rgba(127,140,150,.045)}
.customer-next-action-copy{min-width:0}.customer-next-action-copy b,.customer-next-action-copy small{display:block}.customer-next-action-copy b{margin-top:3px;font-size:15px}.customer-next-action-copy small{margin-top:3px;color:var(--muted)}
.customer-next-action.warning{background:rgba(205,145,45,.09)}.customer-next-action.danger{background:rgba(190,55,55,.09)}.customer-next-action.success{background:rgba(52,140,93,.08)}.customer-next-action.info{background:rgba(77,120,170,.07)}
.customer-next-action.danger .eyebrow{color:#a33}.customer-next-action-button{flex:0 0 auto}
@media(max-width:620px){.customer-next-action{align-items:stretch;flex-direction:column}.customer-next-action-button{width:100%}}

.customer-work-filters{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0}.customer-work-filter{display:inline-flex;align-items:center;gap:8px;padding:9px 12px;border:1px solid var(--line);border-radius:999px;background:var(--card);color:var(--ink);text-decoration:none;font-weight:700}.customer-work-filter b{min-width:24px;height:24px;padding:0 7px;border-radius:999px;display:inline-grid;place-items:center;background:rgba(127,140,150,.12);font-size:12px}.customer-work-filter:hover{border-color:var(--gold)}.customer-work-filter.active{background:var(--ink);color:#fff;border-color:var(--ink)}.customer-work-filter.active b{background:rgba(255,255,255,.16)}@media(max-width:620px){.customer-work-filters{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.customer-work-filter{justify-content:space-between;border-radius:12px}}

/* v71.46 — interface-unificatie zoals de WordPress-plugin */
.plugin-taxateur-flowbar{grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border:1px solid var(--line);border-radius:10px;overflow:hidden;background:#fff;margin-bottom:10px}
.plugin-taxateur-flowbar span{border:0;border-right:1px solid var(--line);border-radius:0!important;text-align:left!important;padding:9px 12px!important;min-height:42px;display:flex;align-items:center;gap:8px;font-size:12px;font-weight:800;color:var(--muted)}
.plugin-taxateur-flowbar span:last-child{border-right:0}.plugin-taxateur-flowbar span b{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:#eef1f3;font-size:10px}.plugin-taxateur-flowbar span.active{background:#26343e!important;color:#fff!important}.plugin-taxateur-flowbar span.active b{background:#c59a47;color:#fff}
.plugin-taxateur-shell{padding:14px 16px;border-radius:10px;box-shadow:none}
.plugin-taxateur-dossierbar{display:grid;grid-template-columns:1.25fr .85fr 1.6fr 1.35fr;border:1px solid var(--line);border-radius:8px;overflow:hidden;margin-bottom:10px;background:#fafbfc}
.plugin-taxateur-dossierbar>div{padding:9px 11px;border-right:1px solid var(--line);min-width:0}.plugin-taxateur-dossierbar>div:last-child{border-right:0}.plugin-taxateur-dossierbar small,.plugin-taxateur-dossierbar b,.plugin-taxateur-dossierbar span{display:block}.plugin-taxateur-dossierbar small{font-size:8px;font-weight:900;letter-spacing:.08em;color:var(--muted);margin-bottom:3px}.plugin-taxateur-dossierbar b{font-size:13px}.plugin-taxateur-dossierbar span{font-size:10px;color:var(--muted)}.plugin-taxateur-dossierbar input{width:100%;border:0;border-bottom:1px solid #cfd6dc;background:transparent;padding:3px 0;border-radius:0;outline:none;font-size:11px}.plugin-taxateur-handoff{background:#f4f7f8}
.plugin-taxateur-presets{padding:8px 0 10px;border:0!important;box-shadow:none!important;margin:0!important}.plugin-taxateur-presets .section-head{margin-bottom:6px}.plugin-taxateur-presets h3{font-size:12px;margin:0}.plugin-taxateur-presets p{font-size:9px;margin:2px 0;color:var(--muted)}.plugin-taxateur-presets .quick-presets{gap:5px}.plugin-taxateur-presets .btn{padding:6px 9px;border-radius:6px;font-size:10px;background:#fff}
.plugin-taxateur-smart{margin:0 0 10px;border:1px solid var(--line);border-radius:8px;background:#fafbfc}.plugin-taxateur-smart summary{padding:8px 11px;font-size:10px;font-weight:850;cursor:pointer;color:#44515c}.plugin-taxateur-smart[open] summary{border-bottom:1px solid var(--line)}.plugin-smart-body{padding:10px}.plugin-smart-body .section-head{display:none}.plugin-smart-body .smart-taxateur-row{display:grid;grid-template-columns:1fr auto;gap:7px}.plugin-smart-body input{min-height:35px;border-radius:6px}.plugin-smart-body small{font-size:9px;color:var(--muted)}
.plugin-taxateur-section-head{margin:8px 0 6px!important;padding-top:7px;border-top:2px solid #26343e}.plugin-taxateur-section-head h2{font-size:15px;margin:1px 0}.plugin-taxateur-section-head p{font-size:9px;margin:0}.plugin-taxateur-section-head .eyebrow{font-size:8px;color:#7d632e}.plugin-taxateur-section-head .live-total{padding:6px 10px;border-radius:7px}.plugin-taxateur-section-head .live-total strong{font-size:18px}
.plugin-taxateur-row{margin:5px 0;border-radius:6px;box-shadow:none}.plugin-taxateur-main-grid>.field{padding:6px}.plugin-taxateur-main-grid>.field>label{font-size:7px}.plugin-taxateur-main-grid input,.plugin-taxateur-main-grid select{min-height:32px;padding:5px 6px;border-radius:4px}.plugin-fineness-presets{gap:3px;margin-top:4px}.plugin-fineness-presets button{padding:3px 5px;border-radius:4px;font-size:9px}.plugin-row-actions{padding:5px!important;gap:4px}.plugin-taxateur-details{padding:7px 9px;gap:6px}
.plugin-taxateur-savebar{position:sticky;bottom:8px;z-index:15;margin-top:10px;padding:9px 11px;border:1px solid #c8d0d5;border-radius:9px;background:rgba(255,255,255,.97);box-shadow:0 7px 24px rgba(20,30,40,.13)}.plugin-taxateur-savebar>div:first-child small,.plugin-taxateur-savebar>div:first-child strong{display:block}.plugin-taxateur-savebar>div:first-child small{font-size:8px;color:var(--muted);font-weight:850;text-transform:uppercase}.plugin-taxateur-savebar>div:first-child strong{font-size:11px}.plugin-taxateur-savebar>div:last-child{display:flex;gap:6px}
/* klantakkoord: dichter en bonachtig, zonder grote app-kaarten */
.plugin-customer-confirm{max-width:1180px;margin:0 auto}.plugin-confirm-top{margin-bottom:8px!important}.plugin-confirm-receipt{border-radius:8px!important;box-shadow:none!important}.plugin-receipt-head{padding:14px 16px!important}.plugin-receipt-customer{padding:10px 16px!important}.plugin-receipt-section{padding:10px 16px!important}.plugin-payment-summary{margin-top:0!important}.plugin-customer-action{padding:14px 16px!important;border-radius:8px!important;box-shadow:none!important}.plugin-step-label{padding:8px 10px;margin:10px 0 7px;border-radius:7px}.plugin-step-label>span{width:24px;height:24px;flex-basis:24px;font-size:10px}.plugin-final-box{border-radius:7px!important}
/* backoffice: dezelfde compacte dossierlijst als de plugin */
.backoffice-plugin-hero{padding:14px 16px!important;border-radius:9px!important;background:#26343e!important;display:flex;align-items:center;justify-content:space-between;gap:14px}.backoffice-plugin-hero h2{font-size:18px!important;margin:2px 0!important}.backoffice-plugin-hero p{font-size:10px;margin:0!important}.backoffice-plugin-toolbar{gap:6px!important;margin-bottom:8px!important}.backoffice-plugin-toolbar .segmented a,.backoffice-search input,.backoffice-search .btn{min-height:34px!important;padding:6px 10px!important;font-size:10px!important}.plugin-memory-note,.plugin-today-summary,.plugin-backoffice-table-card{padding:12px 14px!important;border-radius:8px!important;box-shadow:none!important;margin-bottom:9px!important}.plugin-memory-note{display:grid!important;grid-template-columns:auto 1fr 1fr 1fr 1fr;gap:9px!important;align-items:center;font-size:9px}.plugin-memory-note .memory-title{font-size:10px}.plugin-today-summary h2,.plugin-backoffice-table-card h2{font-size:14px;margin-bottom:2px}.plugin-today-summary p,.plugin-backoffice-table-card p{font-size:9px}.plugin-backoffice-table th{padding:7px 8px!important;font-size:8px!important}.plugin-backoffice-table td{padding:8px!important;font-size:10px!important}.backoffice-line{padding:5px 0!important}.backoffice-line b{font-size:10px}.backoffice-line span,.backoffice-line small{font-size:8px!important}
@media(max-width:900px){.plugin-taxateur-dossierbar{grid-template-columns:1fr 1fr}.plugin-taxateur-dossierbar>div{border-bottom:1px solid var(--line)}.plugin-memory-note{grid-template-columns:1fr 1fr}.plugin-taxateur-flowbar{grid-template-columns:1fr}}
@media(max-width:620px){.plugin-taxateur-dossierbar{grid-template-columns:1fr}.plugin-taxateur-savebar{position:static}.plugin-taxateur-savebar>div:last-child{width:100%;display:grid}.plugin-taxateur-savebar .btn{width:100%}.plugin-smart-body .smart-taxateur-row{grid-template-columns:1fr}.plugin-memory-note{grid-template-columns:1fr}}

/* v71.47 — taxateur- en klantregels letterlijk dezelfde plugin-kolommen */
.plugin-taxateur-row-meta{display:grid;grid-template-columns:180px minmax(220px,420px) 1fr;gap:6px;padding:5px 6px;background:#fafbfc;border-bottom:1px solid var(--line);align-items:end}
.plugin-taxateur-row-meta>.field{margin:0;min-width:0}
.plugin-taxateur-row-meta>.field>label{display:block;margin:0 0 3px;font-size:7px;text-transform:uppercase;letter-spacing:.055em;color:var(--muted);font-weight:850}
.plugin-taxateur-row-meta input,.plugin-taxateur-row-meta select{width:100%;min-height:30px;padding:4px 6px;border-radius:4px;font-size:10px;background:#fff}
.plugin-taxateur-main-grid{grid-template-columns:10% minmax(34%,1fr) 14% 11% 7% 10% 10% 4%!important}
.plugin-taxateur-main-grid>.field{padding:5px 6px!important}
.plugin-taxateur-main-grid>.field>label{font-size:7px!important;margin-bottom:3px!important}
.plugin-taxateur-main-grid input,.plugin-taxateur-main-grid select{min-height:30px!important;padding:4px 5px!important;font-size:10px!important}
.plugin-taxateur-main-grid .plugin-row-actions{padding:4px!important;display:flex;flex-direction:column;justify-content:center;gap:3px}
.plugin-taxateur-main-grid .plugin-row-actions .btn{padding:5px 4px;font-size:8px;min-width:0}
.plugin-taxateur-section-head{margin-bottom:5px!important}
.plugin-taxateur-row{margin:3px 0!important}
.plugin-customer-article-section .plugin-article-table th,.plugin-customer-article-section .plugin-article-table td{padding:6px 6px!important}
.plugin-customer-article-section .plugin-article-lines-title{margin-bottom:5px}
@media(max-width:980px){.plugin-taxateur-row-meta{grid-template-columns:1fr 2fr}.plugin-taxateur-main-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}.plugin-taxateur-main-grid .plugin-row-actions{grid-column:span 4;flex-direction:row;justify-content:flex-end}}
@media(max-width:620px){.plugin-taxateur-row-meta{grid-template-columns:1fr}.plugin-taxateur-main-grid{grid-template-columns:1fr 1fr!important}.plugin-taxateur-main-grid .plugin-row-actions{grid-column:span 2}}
/* v71.48 — klantakkoord exactere pluginvolgorde */
.plugin-customer-confirm{max-width:1040px}
.plugin-confirm-top{padding:0 2px 8px;border-bottom:2px solid #27343d;align-items:end}
.plugin-confirm-top h1{font-size:25px!important;margin:2px 0!important}
.plugin-confirm-top p{font-size:11px}
.plugin-confirm-bon{border-radius:4px;padding:8px 10px;min-width:135px}
.plugin-confirm-search{border-radius:5px!important;box-shadow:none!important}
.plugin-confirm-receipt{border-radius:5px!important}
.plugin-receipt-head{padding:12px 14px!important}
.plugin-receipt-head h2{font-size:19px!important}
.plugin-receipt-total strong{font-size:21px!important}
.plugin-receipt-customer>div{padding:8px 12px}
.plugin-receipt-section{padding:9px 12px!important}
.plugin-payment-summary{margin:0 12px 12px!important;padding:10px!important;border-radius:5px!important}
.plugin-payment-grid>div{padding:8px}
.plugin-customer-action{padding:12px!important;margin-top:10px}
.plugin-finalize-head{margin-bottom:6px}
.plugin-compact-label{display:flex;justify-content:space-between;gap:12px;align-items:baseline;padding:7px 0 6px;border-bottom:1px solid var(--line);margin-bottom:8px}
.plugin-compact-label b{font-size:11px}.plugin-compact-label small{color:var(--muted);font-size:9px}
.plugin-customer-data-grid{gap:8px!important}.plugin-customer-data-grid .field{margin:0!important}
.plugin-step-label{background:#f4f6f7;border-left:3px solid #26333e;padding:7px 8px!important;margin:10px 0 6px!important}
.plugin-step-label>span{background:#26333e!important;color:#fff!important}
.plugin-step-label b{font-size:11px}.plugin-step-label small{font-size:8px}
.plugin-payment-choice{gap:5px}.plugin-payment-choice span{border-radius:4px;padding:9px 10px}
.plugin-live-payment{margin-top:0!important;border-radius:4px!important}
.plugin-final-box{margin:0 0 8px;border-radius:4px!important;padding:10px!important;background:#fff!important}
.plugin-photo-step .review-product-photo{max-height:220px;object-fit:contain;background:#f3f5f6}
.plugin-signature-step canvas{min-height:145px;background:#fff;border-radius:3px}
.plugin-agree{margin-top:4px;padding:10px;border:1px solid #cfd5d9;border-radius:4px;background:#fafbfb}
.customer-decision-actions{margin-top:9px}
@media(max-width:700px){.plugin-customer-confirm{max-width:none}.plugin-confirm-top{align-items:stretch}.plugin-payment-summary{margin:0 0 10px!important}.plugin-compact-label{align-items:flex-start;flex-direction:column;gap:2px}}

/* v71.52 - klantflow: taxateurvoorstel eerst, daarna pas akkoord/geen akkoord */
.customer-price-decision{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;margin:12px 0 4px}
.customer-price-offer,.customer-price-question{border:1px solid #d8dde3;border-radius:8px;background:#fff;padding:16px}
.customer-price-offer{display:flex;flex-direction:column;gap:5px;border-left:4px solid #b89347}
.customer-price-offer>strong{font-size:30px;line-height:1.05;margin:4px 0;color:#1f2933}
.customer-price-offer p,.customer-price-question small{margin:0;color:#66717d;line-height:1.45}
.customer-price-question{display:flex;flex-direction:column;justify-content:center;gap:8px;background:#f8f9fa}
.customer-price-question>b{font-size:18px}.customer-price-buttons{display:flex;gap:8px;flex-wrap:wrap;margin-top:4px}
.customer-rejected-flow{margin-top:10px}.customer-rejected-flow .plugin-final-box{border-left:4px solid #9a3c3c;background:#fffafa}
.rejected-signature-note{margin-top:10px;padding:10px 12px;border-radius:6px;background:#f4f1e9;line-height:1.45}
@media(max-width:760px){.customer-price-decision{grid-template-columns:1fr}.customer-price-buttons .btn{width:100%}.customer-price-offer>strong{font-size:26px}}

/* v71.53 klantbeslissing: niet akkoord heeft eigen verplichte handtekening en transparante contante inhouding */
.rejected-signature-step canvas{display:block;width:100%;height:180px;touch-action:none;background:#fff;border:2px dashed #cfd6dc;border-radius:8px;margin:12px 0}.customer-cash-offer-preview{display:flex;flex-wrap:wrap;gap:8px 14px;align-items:center;padding:10px 12px;margin:8px 0;background:#fff8e9;border:1px solid #ead6aa;border-radius:7px;font-size:13px}.customer-cash-offer-preview span{font-weight:800;color:#68562e}.customer-cash-offer-preview b{color:#27313a}


/* v71.68 — purchases.php als centrale workflowhub */
.purchase-workflow-hub{max-width:1180px;margin:0 auto 14px;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.purchase-workflow-stage{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:9px;align-items:center;padding:11px 12px;border:1px solid #d9dee5;border-radius:10px;background:#fff;color:inherit;text-decoration:none;box-shadow:0 2px 8px rgba(20,28,38,.035);transition:.15s ease}.purchase-workflow-stage:hover{border-color:#b7c0cb;transform:translateY(-1px)}.purchase-workflow-stage.active{border-color:#b99644;background:#fffaf0;box-shadow:0 0 0 2px rgba(185,150,68,.12)}.purchase-workflow-number{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:#eef1f4;font-weight:800;font-size:12px}.purchase-workflow-stage.active .purchase-workflow-number{background:#b99644;color:#fff}.purchase-workflow-copy{min-width:0}.purchase-workflow-copy b,.purchase-workflow-copy small{display:block}.purchase-workflow-copy b{font-size:13px}.purchase-workflow-copy small{font-size:10px;color:#697386;margin-top:1px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.purchase-workflow-stage>strong{font-size:18px;line-height:1}.receipt-overview-actions .row-actions{align-items:center}@media(max-width:980px){.purchase-workflow-hub{grid-template-columns:repeat(3,1fr)}}@media(max-width:620px){.purchase-workflow-hub{grid-template-columns:1fr 1fr}.purchase-workflow-stage{padding:10px}.purchase-workflow-copy small{display:none}}

/* v71.69 — operationele dagwerkbalk boven de centrale workflow */
.purchase-operations-strip{max-width:1180px;margin:0 auto 10px;display:grid;grid-template-columns:minmax(260px,1fr) auto minmax(260px,.8fr);gap:12px;align-items:stretch}.purchase-operations-copy,.purchase-operations-kpis,.purchase-next-work,.purchase-all-clear{border:1px solid #d9dee5;border-radius:10px;background:#fff;padding:14px 16px}.purchase-operations-copy h2{margin:2px 0 4px;font-size:21px}.purchase-operations-copy p{margin:0;color:#667085;font-size:12px}.purchase-operations-kpis{display:flex;gap:8px;padding:8px}.purchase-operations-kpis>div{min-width:74px;padding:7px 10px;border-radius:7px;background:#f5f7f9;text-align:center}.purchase-operations-kpis small,.purchase-operations-kpis strong{display:block}.purchase-operations-kpis small{font-size:9px;text-transform:uppercase;color:#667085}.purchase-operations-kpis strong{font-size:22px}.purchase-operations-kpis .attention{background:#fff1ef;color:#8c2f27}.purchase-next-work{display:flex!important;flex-direction:column;justify-content:center;align-items:flex-start!important;text-align:left;text-decoration:none}.purchase-next-work span,.purchase-next-work small{font-size:10px;opacity:.8}.purchase-next-work b{font-size:16px;margin:2px 0}.purchase-all-clear{display:flex;flex-direction:column;justify-content:center;background:#f4faf5;border-color:#c8dfcd}.purchase-all-clear b{color:#28623a}.purchase-all-clear span{font-size:12px;color:#667085;margin-top:2px}@media(max-width:900px){.purchase-operations-strip{grid-template-columns:1fr 1fr}.purchase-operations-copy{grid-column:1/-1}}@media(max-width:620px){.purchase-operations-strip{grid-template-columns:1fr}.purchase-operations-copy{grid-column:auto}.purchase-operations-kpis{justify-content:space-between}.purchase-operations-kpis>div{flex:1;min-width:0}}

/* v71.70 — prioriteitsvolgorde en zichtbare blokkades in de centrale inkoopwerkbak */
.receipt-overview-card.has-blocker{border-color:#e3b3ad;box-shadow:0 0 0 2px rgba(156,54,45,.055)}
.receipt-work-blocker{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:10px;align-items:center;margin:0 14px 10px;padding:10px 12px;border:1px solid #edc4bf;border-radius:8px;background:#fff5f3;color:#6f2923;font-size:12px}
.receipt-work-blocker b{text-transform:uppercase;letter-spacing:.04em;font-size:10px}.receipt-work-blocker a{font-weight:800;color:#7e2d26;text-decoration:none;white-space:nowrap}.receipt-work-blocker a:hover{text-decoration:underline}
@media(max-width:620px){.receipt-work-blocker{grid-template-columns:1fr}.receipt-work-blocker a{white-space:normal}}

/* v71.71 — dossierstappen direct op iedere bonkaart */
.receipt-stage-progress{display:grid;grid-template-columns:repeat(6,minmax(0,1fr)) auto;gap:5px;align-items:center;margin:0 14px 10px;padding:9px 10px;border:1px solid #e0e4e8;border-radius:8px;background:#fafbfc}
.receipt-stage-step{display:flex;align-items:center;gap:5px;min-width:0;padding:5px 6px;border-radius:6px;color:#8a929c}
.receipt-stage-step span{width:19px;height:19px;flex:0 0 19px;border-radius:50%;display:grid;place-items:center;background:#e7eaee;font-size:10px;font-weight:900}
.receipt-stage-step b{font-size:10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.receipt-stage-step.state-done{color:#2f6942;background:#f2f8f4}.receipt-stage-step.state-done span{background:#d9ebde;color:#245935}
.receipt-stage-step.state-current{color:#735a1f;background:#fff8e8}.receipt-stage-step.state-current span{background:#e9cf88;color:#5d4715}
.receipt-stage-step.state-error{color:#8a3028;background:#fff1ef}.receipt-stage-step.state-error span{background:#f0c3be;color:#7f271f}
.receipt-stage-step.state-skipped{color:#697386;background:#f3f4f6}.receipt-stage-step.state-skipped span{background:#dfe3e8;color:#68717c}
.receipt-stage-percent{padding-left:8px;border-left:1px solid #dde2e7;text-align:right}.receipt-stage-percent strong,.receipt-stage-percent small{display:block}.receipt-stage-percent strong{font-size:15px}.receipt-stage-percent small{font-size:9px;text-transform:uppercase;color:#78818c}
@media(max-width:820px){.receipt-stage-progress{grid-template-columns:repeat(3,1fr) auto}.receipt-stage-percent{grid-column:4;grid-row:1/3;align-self:stretch;display:flex;flex-direction:column;justify-content:center}}
@media(max-width:560px){.receipt-stage-progress{grid-template-columns:repeat(2,1fr)}.receipt-stage-percent{grid-column:1/-1;grid-row:auto;border-left:0;border-top:1px solid #dde2e7;padding:6px 0 0;display:flex;flex-direction:row;justify-content:space-between}.receipt-stage-step b{font-size:9px}}

/* v71.73 — fail-safe updatecentrum */
.update-scan-report{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:14px}
.update-scan-report>div{border:1px solid #dde2e7;border-radius:8px;padding:10px 12px;background:#f8fafb}
.update-scan-report>div.danger{background:#fff2f0;border-color:#efc7c2;color:#8c3028}
.update-scan-report b,.update-scan-report span{display:block}.update-scan-report b{font-size:20px}.update-scan-report span{font-size:10px;color:#687385;text-transform:uppercase}
.deferred-update-list{display:grid;gap:10px}.deferred-update-item{border:1px solid #e1d3ab;border-radius:10px;padding:14px;background:#fffbef}
.deferred-update-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}.deferred-update-head b,.deferred-update-head span{display:block}.deferred-update-head>div>span{font-size:11px;color:#6c7480;margin-top:2px}
.deferred-problems{list-style:none;margin:12px 0;padding:0;display:grid;gap:6px}.deferred-problems li{display:grid;grid-template-columns:minmax(160px,.45fr) 1fr;gap:10px;padding:8px 10px;border-radius:7px;background:#fff;border:1px solid #eadfbe}.deferred-problems code{font-size:11px}.deferred-problems span{font-size:12px;color:#5f6874}
.deferred-update-item .actions-row{display:flex;gap:8px;flex-wrap:wrap}.deferred-update-item form{margin:0}
@media(max-width:720px){.update-scan-report{grid-template-columns:1fr 1fr}.deferred-update-head{flex-direction:column}.deferred-problems li{grid-template-columns:1fr}}

/* v71.74 — concrete volgende actie en vroege controlepunten op iedere bonkaart */
.receipt-next-action{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center;margin:0 14px 10px;padding:10px 12px;border:1px solid #d9e0e7;border-radius:9px;background:#f7fafc}
.receipt-next-action>div:first-child small,.receipt-next-action>div:first-child b,.receipt-next-action>div:first-child span{display:block}.receipt-next-action>div:first-child small{font-size:9px;letter-spacing:.08em;color:#667085}.receipt-next-action>div:first-child b{font-size:14px;margin:1px 0}.receipt-next-action>div:first-child span{font-size:11px;color:#667085}
.receipt-next-action.is-urgent{background:#fff3f1;border-color:#e8bcb6}.receipt-next-action.is-urgent>div:first-child small,.receipt-next-action.is-urgent>div:first-child b{color:#842e27}.receipt-next-action.is-done{background:#f3f8f4;border-color:#cfe0d2}
.receipt-wait-time{min-width:64px;padding:4px 10px;border-left:1px solid #dce2e8;text-align:center}.receipt-wait-time small,.receipt-wait-time b{display:block}.receipt-wait-time small{font-size:9px;text-transform:uppercase;color:#7b8490}.receipt-wait-time b{font-size:13px}
.receipt-card-checks{display:grid;grid-template-columns:auto 1fr;gap:9px;align-items:start;margin:0 14px 10px}.receipt-card-checks>small{font-size:9px;text-transform:uppercase;letter-spacing:.06em;color:#737d88;padding-top:5px}.receipt-card-checks>div{display:flex;gap:5px;flex-wrap:wrap}
.check-pill{display:inline-flex;align-items:center;border-radius:999px;padding:4px 8px;font-size:10px;font-weight:700;border:1px solid #dfe4e9;background:#f6f8fa;color:#5d6773}.check-pill.level-info{background:#f1f6fb;border-color:#cfdeec;color:#365d7d}.check-pill.level-warning{background:#fff8e8;border-color:#ead6a1;color:#725c22}.check-pill.level-danger{background:#fff1ef;border-color:#e9c0ba;color:#842f27}
@media(max-width:680px){.receipt-next-action{grid-template-columns:1fr auto}.receipt-next-action>a{grid-column:1/-1;width:100%;justify-content:center}.receipt-card-checks{grid-template-columns:1fr;gap:4px}.receipt-wait-time{border-left:0;border-radius:6px;background:rgba(255,255,255,.55)}}

/* v71.75 — snelle baliewerkbak: actie-scope, compact/uitgebreid en compacte regels */
.purchase-view-toolbar{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:12px}.purchase-view-switch{display:inline-flex;gap:3px;padding:3px;border:1px solid #dce2e8;border-radius:9px;background:#f5f7f9}.purchase-view-switch a{display:flex;align-items:center;gap:6px;padding:7px 11px;border-radius:6px;text-decoration:none;color:#5f6975;font-size:11px;font-weight:750}.purchase-view-switch a.active{background:#fff;color:#1f2933;box-shadow:0 1px 3px rgba(20,30,40,.1)}.purchase-view-switch a b{min-width:20px;text-align:center;padding:1px 5px;border-radius:999px;background:#e8edf2;font-size:9px}.purchase-view-switch.small a{padding:6px 9px}
.receipt-overview-card.is-compact .receipt-overview-head{padding-top:10px;padding-bottom:8px}.receipt-overview-card.is-compact .receipt-stage-progress{padding-top:6px;padding-bottom:6px}.receipt-overview-card.is-compact .receipt-next-action{margin-bottom:7px}.receipt-overview-card.is-compact .receipt-card-checks{margin-bottom:7px}.receipt-overview-card.is-compact .receipt-rule-row{padding-top:7px;padding-bottom:7px}
.receipt-extra-rules{grid-column:1/-1}.receipt-extra-rules>summary{cursor:pointer;list-style:none;margin:2px 0 4px;padding:7px 10px;border-radius:7px;background:#f4f6f8;color:#53606d;font-size:11px;font-weight:800}.receipt-extra-rules>summary::-webkit-details-marker{display:none}.receipt-extra-rules>summary:before{content:'▸';display:inline-block;margin-right:6px;transition:transform .15s}.receipt-extra-rules[open]>summary:before{transform:rotate(90deg)}.receipt-extra-rules>div{display:grid}
@media(max-width:680px){.purchase-view-toolbar{align-items:stretch;flex-direction:column}.purchase-view-switch{display:grid;grid-template-columns:1fr 1fr}.purchase-view-switch a{justify-content:center}}

/* v71.76 — veilige contextacties per bon */
.receipt-quick-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end;align-items:center}
.receipt-quick-actions .btn{white-space:nowrap}
.receipt-quick-actions .quick-secondary{background:#fff;border-color:#d7dde3;color:#46515c}
.receipt-quick-actions .quick-warning{background:#fff8e8;border-color:#e4cf94;color:#6d571f}
.receipt-quick-actions .quick-danger{background:#fff1ef;border-color:#e5b9b3;color:#812e27}
.receipt-quick-actions .quick-info{background:#f1f6fb;border-color:#cbddea;color:#315d7c}
.receipt-quick-actions .quick-secondary:hover,.receipt-quick-actions .quick-warning:hover,.receipt-quick-actions .quick-danger:hover,.receipt-quick-actions .quick-info:hover{filter:brightness(.985)}
@media(max-width:680px){.receipt-quick-actions{width:100%;justify-content:stretch}.receipt-quick-actions .btn{flex:1 1 calc(50% - 6px);justify-content:center}}

/* v71.77 — centrale procesblokkades */
.purchase-blocker-board{max-width:1180px;margin:0 auto 10px;display:grid;grid-template-columns:minmax(240px,1.2fr) repeat(4,minmax(130px,.65fr));gap:8px;align-items:stretch}.purchase-blocker-title,.purchase-blocker-tile{border:1px solid #dce2e8;border-radius:9px;background:#fff;padding:11px 13px}.purchase-blocker-title b,.purchase-blocker-title small{display:block}.purchase-blocker-title b{font-size:14px;margin:2px 0}.purchase-blocker-title small{font-size:10px;color:#6d7681}.purchase-blocker-tile{display:flex;justify-content:space-between;align-items:center;gap:8px;text-decoration:none;color:#55606b}.purchase-blocker-tile span b,.purchase-blocker-tile span small{display:block}.purchase-blocker-tile span b{font-size:11px}.purchase-blocker-tile span small{font-size:9px;color:#7a8490;margin-top:2px}.purchase-blocker-tile strong{font-size:21px;color:#9aa2ac}.purchase-blocker-tile.has-items{border-color:#e5c0ba;background:#fff7f5;color:#6e302a}.purchase-blocker-tile.has-items strong{color:#8e342c}.purchase-blocker-tile.active{box-shadow:0 0 0 2px rgba(139,49,41,.14);border-color:#c8837b}.purchase-blocker-clear{grid-column:1/-1;text-align:right;font-size:10px;font-weight:800;color:#7b3a34;text-decoration:none;padding:0 4px}.purchase-blocker-clear:hover{text-decoration:underline}
@media(max-width:920px){.purchase-blocker-board{grid-template-columns:repeat(2,1fr)}.purchase-blocker-title{grid-column:1/-1}}@media(max-width:560px){.purchase-blocker-board{grid-template-columns:1fr}.purchase-blocker-title{grid-column:auto}}

/* v71.82 — klantflow/taxateurflow één actuele pluginbron */
.pcf-live-source{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 0 12px;padding:10px 12px;border:1px solid #d7e0e7;border-radius:8px;background:#f7fafc}.pcf-live-source span{font-size:9px;letter-spacing:.08em;font-weight:900;color:#65717e}.pcf-live-source b{font-size:12px}.pcf-live-source small{font-size:10px;color:#6d7782;flex:1 1 260px}

/* v71.88 — artikelregels alleen in Klantbespreking en PDF */
.article-details-restricted{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border:1px solid #dfe4e8;border-radius:8px;background:#f7f8fa;color:#586270}
.article-details-restricted b{color:#30363d}.article-details-restricted span{font-size:11px}

/* v71.113 — consistente leesbaarheid en formulierdesign */
:root{--ui-text:#1f2933;--ui-muted:#68757f;--ui-line:#dde3e7;--ui-soft:#f6f8f9}
body{color:var(--ui-text);line-height:1.5}.card,.hero-card{border-color:var(--ui-line)}.card h2,.hero-card h2{letter-spacing:-.015em}.muted,.field small{color:var(--ui-muted);line-height:1.5}.field label{font-size:12px;line-height:1.35}.field input,.field select,.field textarea{font-size:14px;line-height:1.45;border-color:#d5dde2;background:#fff}.field input,.field select{min-height:42px}.field textarea{width:100%;padding:11px 12px;border-radius:9px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{outline:3px solid rgba(32,38,46,.10);border-color:#20262e}.btn{min-height:38px;align-items:center;justify-content:center}.btn.small{min-height:32px}.kv dt{color:#6c7881;font-size:11px}.kv dd{font-size:13px}.alert{line-height:1.55}.loan-terms-settings{border-top:4px solid #20262e}.loan-terms-settings textarea{font-family:inherit}.contract-readable .contract-terms{display:grid;gap:0;margin-top:14px}.contract-readable .contract-terms article{display:grid;grid-template-columns:32px 1fr;gap:11px;padding:12px 0;border-top:1px solid #edf0f2}.contract-readable .contract-terms article:first-child{border-top:0}.contract-readable .contract-terms article>span{width:29px;height:29px;border-radius:50%;display:grid;place-items:center;background:#20262e;color:#fff;font-size:11px;font-weight:800}.contract-readable .contract-terms p{margin:3px 0 0;line-height:1.6}.contract-footer-note{margin:18px 0 0;padding:14px 16px;background:var(--ui-soft);border-radius:10px;color:#5f6c75;font-size:12px;line-height:1.55}@media(max-width:700px){.card{padding:16px}.hero-card{padding:18px}.section-head{gap:10px}.actions-row{gap:7px}.btn{white-space:normal;text-align:center}}

/* v71.117 · Centrale professionele documentviewer */
.purchase-doc-open{overflow:hidden}.purchase-doc-modal{position:fixed;inset:0;z-index:120;display:none}.purchase-doc-modal.open{display:block}.purchase-doc-backdrop{position:absolute;inset:0;background:rgba(7,14,21,.74);backdrop-filter:blur(3px)}.purchase-doc-window{position:absolute;inset:4vh 4vw;background:#f2f4f6;border:1px solid rgba(255,255,255,.16);border-radius:20px;box-shadow:0 32px 90px rgba(0,0,0,.38);overflow:hidden;display:grid;grid-template-rows:auto minmax(0,1fr)}.purchase-doc-head{display:flex;align-items:flex-start;justify-content:space-between;gap:22px;padding:20px 22px;background:#fff;border-bottom:1px solid #dce2e6}.purchase-doc-head h2{margin:2px 0 4px;font-size:24px;letter-spacing:-.025em}.purchase-doc-head p{margin:0;color:#6c7883}.purchase-doc-close{appearance:none;border:0;background:#eef1f3;width:40px;height:40px;border-radius:50%;font-size:27px;line-height:1;cursor:pointer;color:#25313b}.purchase-doc-layout{display:grid;grid-template-columns:270px minmax(0,1fr);min-height:0}.purchase-doc-list{padding:14px;background:#f7f8f9;border-right:1px solid #dce2e6;overflow:auto}.purchase-doc-item{width:100%;display:grid;grid-template-columns:42px 1fr;gap:10px;text-align:left;align-items:center;border:1px solid transparent;background:transparent;border-radius:12px;padding:10px;margin:0 0 7px;cursor:pointer;color:#26313a}.purchase-doc-item:hover{background:#fff;border-color:#dce2e6}.purchase-doc-item.active{background:#fff;border-color:#b99651;box-shadow:0 7px 20px rgba(31,42,51,.08)}.purchase-doc-item b,.purchase-doc-item small{display:block}.purchase-doc-item b{font-size:13px}.purchase-doc-item small{font-size:10px;color:#75808a;margin-top:2px}.purchase-doc-icon{width:38px;height:38px;border-radius:9px;display:grid;place-items:center;background:#26333e;color:#fff;font-size:9px;font-weight:900;letter-spacing:.05em}.purchase-doc-preview{display:grid;grid-template-rows:auto minmax(0,1fr);min-width:0;min-height:0;background:#dde2e6}.purchase-doc-toolbar{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:10px 14px;background:#fff;border-bottom:1px solid #d5dce1}.purchase-doc-toolbar small,.purchase-doc-toolbar b{display:block}.purchase-doc-toolbar small{font-size:8px;letter-spacing:.11em;color:#7d8790;font-weight:900}.purchase-doc-toolbar b{font-size:13px}.purchase-doc-preview iframe{width:100%;height:100%;border:0;background:#eef1f3;opacity:0;transition:opacity .15s}.purchase-doc-preview iframe.ready{opacity:1}.purchase-doc-placeholder{grid-row:2;grid-column:1;align-self:stretch;display:grid;place-content:center;text-align:center;color:#75808a;padding:30px}.purchase-doc-placeholder[hidden]{display:none}.purchase-doc-placeholder span{font-size:44px}.purchase-doc-placeholder b{color:#35414b;font-size:18px;margin:8px 0 4px}.purchase-doc-placeholder p{max-width:430px;margin:0}.purchase-doc-preview iframe{grid-row:2;grid-column:1}.document-toolbar{max-width:900px;margin:0 auto 12px;position:sticky;top:10px;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;background:rgba(255,255,255,.96);border:1px solid #dce2e6;border-radius:12px;box-shadow:0 8px 28px rgba(20,30,40,.08);backdrop-filter:blur(8px)}.document-toolbar-copy small,.document-toolbar-copy strong{display:block}.document-toolbar-copy small{font-size:8px;letter-spacing:.12em;color:#7a858f;font-weight:900}.document-toolbar-copy strong{font-size:13px}.plugin-document{font-size:14px}.plugin-doc-head{gap:24px}.plugin-brand{display:flex;align-items:center;gap:12px}.doc-logo{width:48px;height:48px;display:grid;place-items:center;background:#26333e;color:#fff;font-weight:900;letter-spacing:.04em}.plugin-brand strong,.plugin-brand span{display:block}.plugin-brand span{font-size:10px;color:#737f89;margin-top:3px;text-transform:uppercase;letter-spacing:.06em}.plugin-customer-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.plugin-customer-grid p{margin:0;line-height:1.65}.plugin-customer-signature{margin-top:24px;display:grid;gap:8px}.plugin-customer-signature>span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#667085;font-weight:800}.plugin-customer-signature img,.plugin-customer-signature>div{width:min(330px,100%);height:100px;object-fit:contain;object-position:left center;border-bottom:1px solid #87929c}.receipt-lockline{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 16px}.receipt-lockline span{padding:6px 9px;border:1px solid #dfe4e8;background:#f7f9fa;border-radius:999px;font-size:9px;color:#5d6974;font-weight:800}.financial-fingerprint{margin-top:10px;font-size:9px;color:#707b85}.plugin-payment-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.plugin-payment-summary>div{padding:10px;border:1px solid #e0e5e8;background:#fafbfc;border-radius:8px}.plugin-payment-summary small,.plugin-payment-summary strong{display:block}.plugin-payment-summary small{font-size:8px;text-transform:uppercase;color:#76818a;font-weight:800}.plugin-payment-summary strong{font-size:14px;margin-top:3px}.plugin-payment-summary .payment-total{background:#26333e;color:#fff;border-color:#26333e}.plugin-payment-summary .payment-total small{color:#cbd3d9}.plugin-payment-summary .withholding-line strong{color:#9b3737}
@media(max-width:900px){.purchase-doc-window{inset:2vh 2vw}.purchase-doc-layout{grid-template-columns:210px minmax(0,1fr)}.purchase-doc-head{padding:15px}.plugin-customer-grid{grid-template-columns:1fr}.plugin-payment-summary{grid-template-columns:1fr 1fr}}
@media(max-width:680px){.purchase-doc-window{inset:0;border-radius:0}.purchase-doc-layout{grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr)}.purchase-doc-list{display:flex;gap:7px;border-right:0;border-bottom:1px solid #dce2e6;overflow:auto;padding:9px}.purchase-doc-item{min-width:190px;margin:0}.purchase-doc-head p{display:none}.purchase-doc-head h2{font-size:19px}.purchase-doc-toolbar{align-items:flex-start;flex-direction:column}.purchase-doc-toolbar .actions-row{width:100%}.purchase-doc-toolbar .btn{flex:1}.document-toolbar{position:static;align-items:flex-start;flex-direction:column}.document-toolbar .actions-row{width:100%}.document-toolbar .btn{flex:1}.plugin-payment-summary{grid-template-columns:1fr}.plugin-document{padding:20px!important}}
@media print{.purchase-doc-modal,.document-toolbar{display:none!important}.plugin-document{font-size:10.5px}.plugin-doc-head{break-inside:avoid}.plugin-customer-grid{display:grid;grid-template-columns:1fr 1fr}.plugin-payment-summary{display:grid;grid-template-columns:repeat(3,1fr)}body.receipt-embed{background:#fff!important}.receipt-embed-main{padding:0!important}}
/* v71.119 · operations / audit */
.dossier-history-card{margin-top:16px}.ops-card .empty-state{padding:26px;text-align:center}

/* =========================================================
   v71.124 — OVERZICHT & LEESBAARHEID
   Alle knoppen, teksten, links en acties zichtbaar.
   ========================================================= */
:root{
  --ui-focus:#9b742d;
  --ui-link:#315f88;
  --ui-link-hover:#1f4668;
  --ui-action-bg:#f7f9fa;
}
html{scroll-behavior:smooth}
body{font-size:15px;line-height:1.58;text-rendering:optimizeLegibility}
main{max-width:1760px}

/* Tekst nooit onnodig afkappen */
p,li,dd,td,.muted,.alert,.field small,.customer-next-action-copy small,.article-details-restricted span{
  overflow-wrap:anywhere;
}
.card p,.hero-card p{line-height:1.62}
.card h2{line-height:1.25}

/* Links herkenbaar, zonder navigatie/knoppen te vervuilen */
main a:not(.btn):not(.badge):not(.status-pill):not(.customer-work-filter):not(.top-action-link){
  color:var(--ui-link);
  text-decoration:underline;
  text-decoration-thickness:1px;
  text-underline-offset:2px;
}
main a:not(.btn):hover{color:var(--ui-link-hover)}

/* Knoppen: leesbaar, minimaal klikvlak en nooit verborgen */
.btn,button.btn,input[type="submit"].btn{
  min-height:42px;
  padding:10px 15px;
  line-height:1.25;
  white-space:normal;
  text-align:center;
  word-break:normal;
  overflow-wrap:anywhere;
}
.btn.small{min-height:36px;padding:8px 11px;font-size:13px}
.btn.big{min-height:48px;padding:12px 18px}
.btn:focus-visible,button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{
  outline:3px solid rgba(181,139,58,.28)!important;
  outline-offset:2px;
}
.actions,.actions-row,.page-actions,.top-actions{row-gap:9px}
.actions-row>.btn,.page-actions>.btn{flex:0 0 auto}

/* Oude regel verborg topbar-knoppen onder 1100px; vanaf nu blijven ze bereikbaar */
@media(max-width:1100px){
  .top-actions .btn{display:inline-flex!important}
  .top-actions{flex-wrap:wrap;justify-content:flex-end}
  .topbar{align-items:flex-start}
}

/* Topbar overzicht */
.topbar{gap:14px}
.topbar-title{min-width:0;flex:1 1 320px}
.topbar h1{overflow-wrap:anywhere}
.topbar p{font-size:12.5px;line-height:1.45}
.top-actions{max-width:720px}
.quick-lookup{min-width:min(300px,100%)}
.top-action-link{min-height:40px;font-size:12.5px}

/* Sidebar beter scanbaar */
.sidebar{width:auto}
.nav-group-label{font-size:10px;line-height:1.3;padding-top:8px;color:#91a0ad}
.sidebar nav a{min-height:42px;padding:8px 10px;font-size:13.5px;line-height:1.3}
.sidebar nav a i{flex:0 0 26px}
.sidebar nav a span,.sidebar nav a{overflow-wrap:anywhere}
.sidebar-foot{line-height:1.45}

/* Formulieren */
.form-grid{gap:17px 18px}
.field{gap:8px;min-width:0}
.field label{font-size:13px;line-height:1.4;color:#303a43}
.field small{font-size:12px;line-height:1.5}
.field input,.field select,.field textarea,.filters input,.filters select,.report-filters input,.report-filters select{
  min-height:44px;
  font-size:14.5px;
}
.field textarea{min-height:116px}
.checkline{line-height:1.55}
.checkline input{flex:0 0 auto;width:18px;height:18px}
.payment-choice label{min-height:64px;display:flex;align-items:center;gap:9px;line-height:1.4}

/* Kaarten, headers en statusinformatie */
.card{padding:21px}
.section-head{align-items:flex-start}
.section-head>div:first-child{min-width:0}
.section-head h2,.card h2{font-size:18px}
.eyebrow{font-size:10px;line-height:1.35}
.badge,.status-pill{font-size:12.5px;line-height:1.25;padding:6px 10px}
.alert{font-size:14px}

/* Tabellen: tekst leesbaar, actiekolom zichtbaar en horizontaal scrollbaar */
.table-wrap{
  overflow:auto;
  overscroll-behavior-inline:contain;
  scrollbar-gutter:stable;
  -webkit-overflow-scrolling:touch;
}
table{min-width:max-content}
th,td{max-width:420px;line-height:1.45}
th{font-size:11.5px;position:sticky;top:0;z-index:2}
td .actions,td .actions-row{flex-wrap:wrap;min-width:max-content}
td .btn{white-space:nowrap}
.table-wrap td:last-child,.table-wrap th:last-child{background-color:#fff}
.table-wrap th:last-child{background:#f8fafb}

/* Workflow/status-stappen mogen scrollen, maar tekst blijft leesbaar */
.workflow-steps,.customer-flow-progress,.customer-start-progress{scrollbar-width:thin}
.workflow-steps>*{font-size:13px;line-height:1.35;min-height:48px;display:grid;place-items:center}
.customer-flow-progress b{font-size:10.5px}.customer-flow-progress small{font-size:9px;line-height:1.3}

/* Documentviewer: werkbalk en acties altijd bereikbaar */
.purchase-doc-head{align-items:center}
.purchase-doc-toolbar{position:sticky;top:0;z-index:6;flex-wrap:wrap}
.purchase-doc-toolbar .actions-row{margin-left:auto}
.purchase-doc-item b{font-size:13.5px;line-height:1.35}.purchase-doc-item small{font-size:11px;line-height:1.35}
.document-toolbar{top:14px}

/* Empty states en detailregels */
.empty-state{font-size:14px;line-height:1.6}
.kv{align-items:start}.kv dt{font-size:12px;line-height:1.45}.kv dd{font-size:14px;overflow-wrap:anywhere}
.selected-customer{line-height:1.5}

/* Tablet */
@media(max-width:980px){
  main{padding:18px 18px 30px}
  .topbar{margin:-18px -18px 18px;padding:14px 18px;flex-wrap:wrap}
  .top-actions{width:100%;max-width:none;justify-content:flex-start}
  .quick-lookup{flex:1 1 260px}
  .top-actions .btn,.top-action-link{display:inline-flex!important}
  .card{padding:18px}
  .page-actions,.actions-row{justify-content:flex-start}
  .plugin-taxateur-dossierbar{overflow:auto}
}

/* Mobiel: acties onder elkaar/volle breedte waar nodig */
@media(max-width:680px){
  body{font-size:15px}
  main{padding:12px}
  .topbar{position:relative;margin:-12px -12px 14px;padding:13px 12px;background:#f4f5f7}
  .topbar-title{width:100%}
  .topbar h1{font-size:23px}
  .top-actions{display:grid;grid-template-columns:1fr 1fr;width:100%;gap:8px}
  .quick-lookup{grid-column:1/-1;width:100%;min-width:0}
  .top-actions>.btn,.top-actions>.top-action-link{width:100%;justify-content:center;display:inline-flex!important}
  .card,.hero-card{padding:16px}
  .section-head,.page-actions,.actions,.actions-row{align-items:stretch}
  .section-head{flex-direction:column}
  .page-actions,.actions{display:grid;grid-template-columns:1fr}
  .page-actions>.btn,.actions>.btn{width:100%}
  td .actions,td .actions-row{display:flex;min-width:0}
  td .btn{white-space:normal}
  .table-wrap{border-radius:10px}
  th,td{padding:10px 11px;max-width:300px}
  .form-grid{gap:14px}
  .purchase-doc-head{align-items:flex-start}
  .purchase-doc-toolbar .actions-row{width:100%;margin-left:0;display:grid;grid-template-columns:1fr 1fr}
  .purchase-doc-toolbar .btn{width:100%}
  .document-toolbar .actions-row{display:grid;grid-template-columns:1fr 1fr}
}

/* Zeer smal: één actie per regel */
@media(max-width:430px){
  .top-actions{grid-template-columns:1fr}
  .quick-lookup{grid-column:auto}
  .purchase-doc-toolbar .actions-row,.document-toolbar .actions-row{grid-template-columns:1fr}
  .btn{width:100%}
}

/* v71.127 · DOR Control & sloop review */
.workflow-mini{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin:12px 0 18px;padding:11px 12px;border:1px solid var(--line);border-radius:10px;background:#fafbfc}.workflow-mini span{padding:7px 9px;border-radius:8px;background:#eef3f6;font-size:11px;font-weight:850}.workflow-mini i{font-style:normal;color:var(--muted)}.dor-review-box{min-width:260px}.dor-review-box>summary{list-style:none}.dor-review-box>summary::-webkit-details-marker{display:none}.control-diff{display:grid;gap:2px;margin-bottom:8px;padding:8px 10px;border-radius:8px;background:#f5faf7;border:1px solid #cfe2d6}.control-diff small{margin:0}.btn.success{background:#edf8f2;border-color:#b9dfca;color:#17623f}.btn.success:hover{background:#e3f4eb}.badge.success,.status-pill.success{background:#e5f5ed;color:#126540}.badge.warning,.status-pill.warning{background:#fff4d8;color:#7c5b17}.badge.danger,.status-pill.danger{background:#fdeaea;color:#9c3030}@media(max-width:700px){.workflow-mini{display:grid;grid-template-columns:1fr}.workflow-mini i{display:none}.dor-review-box{min-width:0;width:100%}}


/* v71.128 · Mobiele App / PWA */
.mobile-app-nav{display:none}.pwa-install-sheet[hidden]{display:none!important}.pwa-install-sheet{position:fixed;inset:0;z-index:10000;background:rgba(7,12,17,.62);backdrop-filter:blur(8px);display:grid;align-items:end;justify-items:center;padding:18px}.pwa-install-card{position:relative;width:min(520px,100%);background:#fff;border:1px solid #dfe5ea;border-radius:24px;padding:28px;box-shadow:0 30px 90px rgba(0,0,0,.28)}.pwa-install-close{position:absolute;right:14px;top:12px;width:38px;height:38px;border:0;border-radius:12px;background:#f1f3f5;font-size:25px;cursor:pointer}.pwa-install-mark{width:62px;height:62px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(135deg,#d2ac5c,#8c6726);color:#15120b;font-weight:950;box-shadow:0 12px 28px rgba(181,139,58,.28)}.pwa-install-card h2{margin:16px 0 6px;font-size:23px}.pwa-install-card p{margin:0 0 18px;color:#66717c}.pwa-install-card>.btn{margin-right:8px}.pwa-ios-steps{background:#f8fafb;border:1px solid #e4e9ed;border-radius:14px;padding:14px 16px;margin:0 0 18px}.pwa-ios-steps ol{margin:9px 0 0;padding-left:21px}.pwa-ios-steps li+li{margin-top:6px}.pwa-standalone body{overscroll-behavior-y:none}.pwa-standalone .app-footer{padding-bottom:84px}
@media(max-width:860px){
 body:not(.customer-kiosk){padding-bottom:76px}
 .mobile-app-nav{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));position:fixed;z-index:9000;left:10px;right:10px;bottom:max(8px,env(safe-area-inset-bottom));min-height:62px;padding:6px;background:rgba(16,24,32,.96);border:1px solid rgba(255,255,255,.08);border-radius:18px;box-shadow:0 16px 40px rgba(0,0,0,.28);backdrop-filter:blur(14px)}
 .mobile-app-nav a{min-width:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:#aeb9c2;border-radius:12px;padding:5px 3px;font-size:10px;font-weight:760;line-height:1.1}
 .mobile-app-nav a i{font-style:normal;font-size:17px;line-height:1}.mobile-app-nav a span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-app-nav a.active{background:#273542;color:#fff}.mobile-app-nav a.active i{color:#e1bd70}
 .pwa-install-sheet{padding:10px;align-items:end}.pwa-install-card{border-radius:22px;padding:24px 20px calc(20px + env(safe-area-inset-bottom))}.pwa-install-card>.btn{width:100%;margin:6px 0 0}
 .pwa-standalone .topbar{padding-top:max(4px,env(safe-area-inset-top))}
}
@media(min-width:861px){.pwa-standalone .mobile-app-nav{display:none}}
@media print{.mobile-app-nav,.pwa-install-sheet{display:none!important}}

/* =========================================================
   v71.128.4 — DARK MODE READABILITY HARDENING
   Centrale override voor oude componenten met hardcoded lichte kleuren.
   ========================================================= */
html[data-theme="dark"]{
  color-scheme:dark;
  --bg:#0d141a;
  --card:#151e26;
  --surface:#151e26;
  --surface-2:#1b2630;
  --panel-soft:#1b2630;
  --ink:#f1f5f8;
  --text:#f1f5f8;
  --muted:#aeb9c2;
  --line:#33414d;
  --sidebar:#0f171e;
  --sidebar-text:#f1f5f8;
  --shadow:0 10px 30px rgba(0,0,0,.28);
  --red:#ff8a8a;
  --green:#68d6aa;
  --blue:#7eb7f0;
  --amber:#e7bd68;
}
html[data-theme="dark"],html[data-theme="dark"] body{background:var(--bg);color:var(--ink)}
html[data-theme="dark"] body,
html[data-theme="dark"] main,
html[data-theme="dark"] .app{color:var(--ink)}

/* Tekst en links */
html[data-theme="dark"] a:not(.btn):not(.sidebar a){color:#e8c978;text-decoration-color:rgba(232,201,120,.45)}
html[data-theme="dark"] a:not(.btn):not(.sidebar a):hover{color:#ffe29a;text-decoration:underline}
html[data-theme="dark"] .muted,
html[data-theme="dark"] small,
html[data-theme="dark"] .help,
html[data-theme="dark"] .hint,
html[data-theme="dark"] .field-help,
html[data-theme="dark"] .page-context,
html[data-theme="dark"] .topbar p{color:var(--muted)}
html[data-theme="dark"] label,
html[data-theme="dark"] legend,
html[data-theme="dark"] dt,
html[data-theme="dark"] .field label{color:#e9eef2}

/* Formuliervelden */
html[data-theme="dark"] input:not([type="checkbox"]):not([type="radio"]):not([type="range"]),
html[data-theme="dark"] select,
html[data-theme="dark"] textarea{
  background:#101920!important;
  color:#f3f6f8!important;
  border-color:#435260!important;
  caret-color:#f3f6f8;
  box-shadow:none;
}
html[data-theme="dark"] input::placeholder,
html[data-theme="dark"] textarea::placeholder{color:#8795a1!important;opacity:1}
html[data-theme="dark"] select option{background:#101920;color:#f3f6f8}
html[data-theme="dark"] input:disabled,
html[data-theme="dark"] select:disabled,
html[data-theme="dark"] textarea:disabled,
html[data-theme="dark"] input[readonly],
html[data-theme="dark"] textarea[readonly]{background:#1a252e!important;color:#aeb9c2!important;border-color:#35434e!important;opacity:1}
html[data-theme="dark"] input:focus,
html[data-theme="dark"] select:focus,
html[data-theme="dark"] textarea:focus{
  border-color:#d0aa58!important;
  outline:none;
  box-shadow:0 0 0 3px rgba(208,170,88,.18)!important;
}
html[data-theme="dark"] input[type="checkbox"],html[data-theme="dark"] input[type="radio"]{accent-color:#caa552}

/* Hoofdoppervlakken en oude witte componenten */
html[data-theme="dark"] .card,
html[data-theme="dark"] .panel,
html[data-theme="dark"] .stat,
html[data-theme="dark"] .dashboard-kpis>div,
html[data-theme="dark"] .role-action:not(.primary),
html[data-theme="dark"] .result-card,
html[data-theme="dark"] .item-card,
html[data-theme="dark"] .customer-overview-card,
html[data-theme="dark"] .purchase-item-card,
html[data-theme="dark"] .selected-customer,
html[data-theme="dark"] .payment-choice label,
html[data-theme="dark"] .workflow-steps>*,
html[data-theme="dark"] .search-result-summary span,
html[data-theme="dark"] .modal-card,
html[data-theme="dark"] .login-card,
html[data-theme="dark"] .quick-lookup,
html[data-theme="dark"] .quick-lookup button,
html[data-theme="dark"] .menu-toggle,
html[data-theme="dark"] .document-buttons a,
html[data-theme="dark"] .admin-shortcuts a,
html[data-theme="dark"] .checkline,
html[data-theme="dark"] .workflow-check-grid>div,
html[data-theme="dark"] .payoff-box{
  background:var(--card)!important;
  color:var(--ink)!important;
  border-color:var(--line)!important;
}
html[data-theme="dark"] .purchase-item-card.is-return{background:#281b1d!important}
html[data-theme="dark"] .item-row{background:#18222b!important}
html[data-theme="dark"] .item-meta span,
html[data-theme="dark"] .badge,
html[data-theme="dark"] .status-pill{background:#25313b;color:#e8edf1}
html[data-theme="dark"] .payment-choice label:has(input:checked){background:#2b2518!important;border-color:#c8a354!important;color:#fff4d4!important}

/* Tabellen */
html[data-theme="dark"] table{background:var(--card);color:var(--ink)}
html[data-theme="dark"] th{background:#1b2630;color:#cbd5dc;border-color:var(--line)}
html[data-theme="dark"] td{color:#edf2f5;border-color:#2c3944}
html[data-theme="dark"] tr:hover td{background:rgba(255,255,255,.025)}
html[data-theme="dark"] td small{color:var(--muted)}
html[data-theme="dark"] .table-wrap{border-color:var(--line);background:var(--card)}

/* Knoppen en interactieve links */
html[data-theme="dark"] .btn:not(.primary):not(.danger){background:#202c36;color:#f2f5f7;border-color:#42515e}
html[data-theme="dark"] .btn:not(.primary):not(.danger):hover{background:#293744;border-color:#596a78}
html[data-theme="dark"] .btn.danger{background:#301d20;color:#ff9d9d;border-color:#704047}
html[data-theme="dark"] .link-button{color:#e8c978}
html[data-theme="dark"] .receipt-number{color:#e4c16e}

/* Meldingen */
html[data-theme="dark"] .alert{background:#172735;border-color:#35516a;color:#cfe7fb}
html[data-theme="dark"] .alert.success{background:#132a22;border-color:#285b49;color:#a9e5cd}
html[data-theme="dark"] .alert.error{background:#311b1e;border-color:#6a383f;color:#ffb7bd}
html[data-theme="dark"] .badge.green,html[data-theme="dark"] .dor-sent{background:#173326;color:#9be0c2}
html[data-theme="dark"] .badge.red,html[data-theme="dark"] .dor-error{background:#351d20;color:#ffadb3}
html[data-theme="dark"] .badge.gold,html[data-theme="dark"] .dor-pending{background:#342b18;color:#f1d28a}
html[data-theme="dark"] .dor-excluded{background:#26313a;color:#bec8cf}
html[data-theme="dark"] .address-lookup-status.loading{background:#172b40;color:#93c5fd}
html[data-theme="dark"] .address-lookup-status.success{background:#143024;color:#86efac}
html[data-theme="dark"] .address-lookup-status.error{background:#351d20;color:#fca5a5}

/* Modals / popups */
html[data-theme="dark"] .modal-overlay{background:rgba(2,7,11,.82)}
html[data-theme="dark"] .modal-close{background:#25313b;color:#f2f5f7}
html[data-theme="dark"] .popup-bonnummer{background:#2c2517;border-color:#caa552;color:#f0cf7c}

/* Signature canvas moet fysiek wit blijven; duidelijk label/omlijsting eromheen */
html[data-theme="dark"] .signature-box canvas{background:#fff!important;border-color:#677785!important}
html[data-theme="dark"] .signature-box{color:#eef3f6}

/* Navigatie / topbar */
html[data-theme="dark"] .topbar{color:var(--ink)}
html[data-theme="dark"] .sidebar{background:#0e161d;color:#eef3f7}
html[data-theme="dark"] .sidebar nav a{color:#b9c5ce}
html[data-theme="dark"] .sidebar nav a:hover,html[data-theme="dark"] .sidebar nav a.active{color:#fff}
html[data-theme="dark"] .sidebar-foot,html[data-theme="dark"] .nav-group-label{color:#8e9ca8}

/* Documentpreview bewust papierwit houden voor WYSIWYG-print; tekst expliciet donker */
html[data-theme="dark"] .handover-doc,
html[data-theme="dark"] .document-paper,
html[data-theme="dark"] .print-document{background:#fff!important;color:#17212b!important}
html[data-theme="dark"] .handover-doc a,
html[data-theme="dark"] .document-paper a,
html[data-theme="dark"] .print-document a{color:#6f521c!important}
html[data-theme="dark"] .handover-doc small,html[data-theme="dark"] .handover-doc .muted{color:#66717a!important}

/* Browser autofill: voorkom witte/geelblauwe onleesbare velden */
html[data-theme="dark"] input:-webkit-autofill,
html[data-theme="dark"] input:-webkit-autofill:hover,
html[data-theme="dark"] input:-webkit-autofill:focus{
  -webkit-text-fill-color:#f3f6f8;
  -webkit-box-shadow:0 0 0 1000px #101920 inset!important;
  transition:background-color 9999s ease-out 0s;
}

.sidebar-alert{display:block;margin:8px 10px 4px;padding:10px 11px;border:1px solid rgba(214,160,63,.45);border-radius:10px;background:rgba(181,138,42,.15);text-decoration:none;color:inherit}
.sidebar-alert b,.sidebar-alert small{display:block}.sidebar-alert b{font-size:11px}.sidebar-alert small{font-size:9px;opacity:.78;margin-top:2px}

/* v71.158 — Tablet UX Cleanup & Workflow Polish */
:root{--tablet-touch:48px;--tablet-gap:14px}

/* Rustigere dagelijkse interface */
.role-work main{max-width:1480px}
.role-work .card,.role-work .hero-card{box-shadow:0 8px 24px rgba(20,30,40,.055)}
.role-work .section-head{margin-bottom:14px}
.role-work .section-head p{margin:3px 0 0}
.role-work .btn{min-height:var(--tablet-touch);padding:11px 16px;border-radius:12px;font-size:14px}
.role-work .btn.small{min-height:42px;padding:9px 12px;font-size:13px}
.role-work input,.role-work select,.role-work textarea{min-height:var(--tablet-touch);font-size:16px}
.role-work textarea{min-height:112px}
.role-work input[type="checkbox"],.role-work input[type="radio"]{min-height:auto;width:22px;height:22px}
.role-work label{line-height:1.35}

/* Tablet-focus dashboard */
.tablet-focus-card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:20px;margin-bottom:18px;box-shadow:var(--shadow)}
.tablet-focus-card h2{margin:2px 0 0}
.tablet-role-actions{margin:0;grid-template-columns:repeat(3,minmax(0,1fr))}
.tablet-role-actions .role-action{min-height:92px;padding:16px;box-shadow:none}
.tablet-role-actions .role-action>span{width:48px;height:48px;flex-basis:48px}

/* Dossierlijst: minder visuele ruis, grotere actie */
.role-work .quick-work-item{min-height:72px;padding:13px 14px;border-radius:12px}
.role-work .quick-work-item>strong{font-size:12px;white-space:nowrap}
.role-work .cd-row{min-height:86px;padding:14px}
.role-work .cd-row .btn{min-width:132px}

/* Formulieren op tablet: grotere velden en duidelijke primaire zone */
.role-work .form-grid,.role-work .intake-grid{gap:16px}
.role-work .intake-section{padding:22px}
.role-work .intake-section-head{align-items:flex-start}
.role-work .intake-section-head>span{flex:0 0 38px;width:38px;height:38px}
.role-work .intake-actions{position:sticky;bottom:0;z-index:20;border-top:1px solid var(--line);box-shadow:0 -10px 30px rgba(20,30,40,.07);padding:14px 18px}
.role-work .intake-actions .btn.primary{min-width:260px}

/* Eén duidelijke primaire actie; secundaire acties visueel stiller */
.role-work .actions-row>.btn.primary:first-of-type,
.role-work .page-actions>.btn.primary:first-of-type,
.role-work .actions>.btn.primary:first-of-type{box-shadow:0 8px 18px rgba(157,116,45,.18)}
.role-work .actions-row>.btn:not(.primary):not(.danger),
.role-work .page-actions>.btn:not(.primary):not(.danger){background:transparent}

/* Menu: dagelijkse sectie direct open, secundair compacter */
.role-work .sidebar nav a{min-height:46px!important;padding:8px 10px!important;font-size:14px!important}
.role-work .sidebar nav a i{width:30px!important;height:30px!important}
.role-work .nav-group-label{min-height:38px;padding:6px 10px!important;font-size:11px!important}
.role-work .sidebar-tools{padding:8px 5px 12px}
.role-work .menu-search input{height:40px;font-size:14px}
.role-work .menu-compact-toggle{display:none}

/* Tablet van circa 9–13 inch: drawer + onderste dagelijkse navigatie */
@media (max-width:1180px){
  .app{display:block!important}
  .sidebar{position:fixed!important;left:0;top:0;width:min(360px,88vw)!important;height:100dvh!important;transform:translateX(-105%);transition:transform .2s ease;z-index:9200!important;padding:18px 14px!important}
  .sidebar-open .sidebar{transform:translateX(0)}
  .sidebar-backdrop{position:fixed;inset:0;background:rgba(0,0,0,.48);z-index:9100}
  .sidebar-open .sidebar-backdrop{display:block}
  .menu-toggle{display:inline-flex!important;min-width:48px;min-height:48px;align-items:center;justify-content:center;font-size:21px}
  main{padding:18px 18px 96px!important;max-width:none!important;margin:0!important}
  .topbar{margin:-18px -18px 18px!important;padding:14px 18px!important;background:var(--card);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:8000;box-shadow:0 8px 24px rgba(20,30,40,.06)}
  .topbar p{display:none}
  .topbar h1{font-size:24px}
  .top-actions{gap:8px;flex:0 1 auto}
  .top-action-link{min-height:46px;display:inline-flex;align-items:center}
  .quick-lookup{display:none}
  .new-customer-btn{display:inline-flex!important;min-height:46px}
  .mobile-app-nav{display:grid!important;grid-template-columns:repeat(5,minmax(0,1fr));position:fixed;z-index:9000;left:14px;right:14px;bottom:max(10px,env(safe-area-inset-bottom));min-height:72px;padding:7px;background:rgba(16,24,32,.97);border:1px solid rgba(255,255,255,.08);border-radius:20px;box-shadow:0 18px 46px rgba(0,0,0,.3);backdrop-filter:blur(16px)}
  .mobile-app-nav a{min-height:56px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;color:#aeb9c2;border-radius:14px;padding:6px 4px;font-size:11px;font-weight:800}
  .mobile-app-nav a i{font-size:20px}.mobile-app-nav a.active{background:#273542;color:#fff}.mobile-app-nav a.active i{color:#e1bd70}
  .app-footer{padding-bottom:88px}
  .role-action-grid,.tablet-role-actions{grid-template-columns:repeat(2,minmax(0,1fr))}
  .dashboard-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .table-wrap{border-radius:14px}
  th,td{padding:14px 13px}
  .btn{touch-action:manipulation}
}

@media (max-width:760px){
  main{padding:12px 12px 94px!important}
  .topbar{margin:-12px -12px 14px!important;padding:11px 12px!important}
  .topbar-title{width:auto!important}.topbar h1{font-size:21px}
  .top-actions .top-action-link{display:none}
  .new-customer-btn{padding-inline:12px!important;font-size:13px}
  .tablet-focus-card{padding:15px}
  .role-action-grid,.tablet-role-actions{grid-template-columns:1fr}
  .tablet-role-actions .role-action{min-height:78px}
  .dashboard-kpis{grid-template-columns:1fr 1fr}
  .card,.hero-card{padding:16px!important}
  .section-head{align-items:stretch!important}
  .section-head>.btn{width:100%}
  .intake-actions{flex-direction:column!important}
  .intake-actions .btn{width:100%!important;min-width:0!important}
  .cd-row{grid-template-columns:1fr 1fr!important}
  .cd-row .cd-kind,.cd-row .cd-customer,.cd-row>div:last-child{grid-column:1/-1}
  .cd-row .btn{width:100%}
}

@media (min-width:861px) and (max-width:1180px){
  .pwa-standalone .mobile-app-nav{display:grid!important}
}

/* Dark theme additions */
html[data-theme="dark"] .tablet-focus-card{background:var(--card);border-color:var(--line)}
html[data-theme="dark"] .role-work .topbar{background:#101920;border-color:#2b3741}
html[data-theme="dark"] .role-work .actions-row>.btn:not(.primary):not(.danger),
html[data-theme="dark"] .role-work .page-actions>.btn:not(.primary):not(.danger){background:#17212a}
.tablet-scroll-hint{display:block;margin:0 0 6px;color:var(--muted);font-size:11px;font-weight:700}
@media(min-width:1181px){.tablet-scroll-hint{display:none}}

.tablet-role-preview{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px}.tablet-role-preview .panel{min-height:96px;display:flex;flex-direction:column;justify-content:center}.tablet-role-preview small{display:block;margin-top:5px;opacity:.7}
.staff-focus-bar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 14px;padding:11px 14px;border:1px solid #d6b86c;border-left:5px solid #b18118;border-radius:10px;background:#fff8e7;color:#273038}.staff-focus-bar small,.staff-focus-bar b{display:block}.staff-focus-bar small{font-size:8px;letter-spacing:.09em;font-weight:900;color:#8a6517}.staff-focus-bar b{font-size:12px;margin-top:2px}.staff-focus-actions{display:flex;align-items:center;gap:7px;flex-shrink:0}@media(max-width:650px){.staff-focus-bar{align-items:stretch;flex-direction:column}.staff-focus-actions{display:grid;grid-template-columns:1fr}.staff-focus-actions .btn{text-align:center}}


/* =========================================================
   v71.213 — UNIFIED DESIGN SYSTEM
   Rustige slate/blauwgrijze themalaag voor alle schermen.
   Statuskleuren blijven uitsluitend groen/oranje/rood.
   ========================================================= */
:root{
  --theme:#475569;
  --theme-strong:#334155;
  --theme-soft:#eef2f6;
  --theme-softer:#f7f9fb;
  --theme-ink:#1e293b;

  --bg:#f4f6f8;
  --card:#ffffff;
  --ink:#1f2937;
  --muted:#687582;
  --line:#dfe5ea;

  /* legacy accent aliases bewust naar één themakleur */
  --gold:#475569;
  --gold2:#64748b;
  --gold-strong:#334155;
  --blue:#475569;
  --accent:#475569;
  --dark:#1f2937;
  --dark2:#273445;

  --green:#167451;
  --red:#b83b3b;
  --amber:#9a6717;
  --danger:#b42318;

  --shadow:0 5px 18px rgba(31,41,55,.055);
  --shadow-hover:0 10px 26px rgba(31,41,55,.09);
  --radius:13px;
  --control-height:42px;
  --content-max:1680px;
}

/* Schaal & typografie */
html{font-size:16px;scroll-behavior:smooth}
body{
  background:var(--bg);
  color:var(--ink);
  font-size:14.5px;
  line-height:1.48;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
main{
  width:100%;
  max-width:var(--content-max);
  min-width:0;
  padding:22px clamp(18px,2.1vw,30px) 38px;
}
h1,h2,h3{color:var(--theme-ink);line-height:1.18}
h1{font-size:clamp(24px,2.25vw,31px)}
h2{font-size:clamp(19px,1.65vw,25px)}
h3{font-size:clamp(16px,1.25vw,20px)}
p{max-width:82ch}
small,.muted{color:var(--muted)}
.eyebrow{color:var(--theme);letter-spacing:.12em}

/* Sidebar: rustig, niet zwart/goud */
.sidebar{
  background:var(--theme-strong)!important;
  border-right:1px solid rgba(255,255,255,.06);
  box-shadow:6px 0 24px rgba(30,41,59,.06);
}
.brand>span{
  background:#e2e8f0!important;
  color:var(--theme-strong)!important;
  box-shadow:none!important;
}
.brand small,.sidebar-foot small{color:#aeb9c5}
.sidebar nav a{color:#c5ced7}
.sidebar nav a i{background:rgba(255,255,255,.07);color:#cbd5df}
.sidebar nav a:hover{background:rgba(255,255,255,.07);color:#fff}
.sidebar nav a.active{background:rgba(255,255,255,.11);color:#fff}
.sidebar nav a.active:before{background:#cbd5e1!important}
.sidebar nav a.active i{background:#e2e8f0!important;color:var(--theme-strong)!important}
.sidebar-foot a{color:#dbe3ea!important}
.role-chip{background:rgba(255,255,255,.08)!important;color:#e4eaf0!important;border-color:rgba(255,255,255,.1)!important}

/* Topbar & navigatie */
.topbar{
  background:rgba(244,246,248,.95)!important;
  border-bottom:1px solid var(--line)!important;
}
.top-action-link span{
  background:var(--theme-soft)!important;
  color:var(--theme-strong)!important;
}
.quick-lookup{
  min-width:min(320px,34vw);
  border-color:var(--line)!important;
  box-shadow:none!important;
}
.quick-lookup input{min-height:40px}
.quick-lookup button{background:var(--theme-softer)!important;color:var(--theme-strong)!important}

/* Kaarten & oppervlakken */
.card,.hero-card,.stat,.kpi-card{
  border-radius:var(--radius)!important;
  box-shadow:var(--shadow)!important;
}
.card,.stat,.kpi-card{border:1px solid var(--line)!important;background:var(--card)!important}
.card{padding:clamp(16px,1.6vw,22px)}
.hero-card{
  background:linear-gradient(135deg,var(--theme-strong),#425268)!important;
  color:#fff!important;
  border:0!important;
  padding:clamp(20px,2.4vw,28px)!important;
}
.hero-card h1,.hero-card h2,.hero-card h3{color:#fff!important}
.hero-card .eyebrow{color:#d7e0e8!important}
.hero-card p{color:#d8e0e7!important}
.smart-next-action{
  border-color:var(--line)!important;
  background:linear-gradient(135deg,#fff,var(--theme-softer))!important;
  box-shadow:var(--shadow)!important;
}
.smart-next-action:before{background:var(--theme)!important}

/* Knoppen — één themakleur */
.btn{
  min-height:var(--control-height);
  border-radius:10px!important;
  border-color:#d8e0e6!important;
  padding:9px 14px;
  background:#fff;
  color:var(--theme-ink);
  box-shadow:none;
}
.btn:hover{
  transform:none!important;
  border-color:#b9c4ce!important;
  background:#f8fafc;
  box-shadow:0 4px 12px rgba(31,41,55,.06)!important;
}
.btn.primary{
  background:var(--theme)!important;
  border-color:var(--theme)!important;
  color:#fff!important;
}
.btn.primary:hover{background:var(--theme-strong)!important;border-color:var(--theme-strong)!important}
.btn.big{min-height:48px;padding:11px 18px}
.btn.small{min-height:34px;padding:6px 10px;font-size:12.5px}
.btn.danger{background:#fff5f5!important;color:var(--red)!important;border-color:#efcaca!important}
.receipt-number{color:var(--theme-strong)!important}

/* Formulieren */
input,select,textarea{
  max-width:100%;
}
.field input,.field select,.field textarea,
.filters input,.filters select,
.report-filters input,.report-filters select,
input[type="text"],input[type="email"],input[type="tel"],input[type="date"],input[type="number"],input[type="search"],select,textarea{
  border-color:#ccd6df!important;
  border-radius:10px!important;
  min-height:var(--control-height);
  background:#fff;
  color:var(--ink);
}
textarea{min-height:96px}
input:focus,select:focus,textarea:focus,
.field input:focus,.field select:focus,.field textarea:focus{
  outline:none!important;
  border-color:var(--theme)!important;
  box-shadow:0 0 0 3px rgba(71,85,105,.12)!important;
}
input[type="checkbox"],input[type="radio"]{accent-color:var(--theme)}
.payment-choice label:has(input:checked){
  border-color:var(--theme)!important;
  box-shadow:0 0 0 3px rgba(71,85,105,.10)!important;
  background:var(--theme-softer)!important;
}
.live-total{background:var(--theme-soft)!important}
.live-total small{color:var(--theme)!important}

/* Tabellen: goed schaalbaar en leesbaar */
.table-wrap{
  width:100%;
  max-width:100%;
  overflow-x:auto;
  -webkit-overflow-scrolling:touch;
  border-color:var(--line)!important;
  border-radius:11px!important;
}
table{min-width:720px;table-layout:auto}
th,td{padding:11px 12px}
th{
  position:relative;
  background:#f6f8fa!important;
  color:#647180!important;
  font-size:11px!important;
  letter-spacing:.045em;
}
td{
  color:#2c3742;
  overflow-wrap:anywhere;
}
td .btn{white-space:nowrap}
.amount,td.amount{font-variant-numeric:tabular-nums}
.table-wrap img{max-width:96px;height:auto}

/* Statuskleuren blijven functioneel */
.badge,.status-pill{
  border-radius:999px;
  background:#eef2f5;
  color:#4b5967;
}
.badge.green,.status-pill.success,.dor-sent{background:#e8f5ef!important;color:#176046!important}
.badge.red,.badge.danger,.status-pill.danger,.dor-error{background:#fdecec!important;color:#963535!important}
.badge.gold,.badge.warning,.status-pill.warning,.dor-pending{background:#fff4dc!important;color:#815d18!important}
.badge.info,.status-pill.info{background:var(--theme-soft)!important;color:var(--theme-strong)!important}

/* Workflowcomponenten */
.workflow-steps,.smart-form-steps,.plugin-purchase-steps{
  max-width:100%;
}
.workflow-steps .active,.workflow-steps b.active,
.smart-form-steps .current b{
  background:var(--theme-strong)!important;
  border-color:var(--theme-strong)!important;
  color:#fff!important;
}
.smart-form-steps .current{border-color:#aebac5!important;background:var(--theme-softer)!important}
.checkline{background:#f8fafc!important;border:1px solid var(--line)}
.selected-customer{background:#f8fafc!important}

/* Modal/popup bescherming */
dialog,.modal,.popup,.modal-card,.dialog-card{
  max-width:min(760px,calc(100vw - 28px))!important;
  max-height:calc(100vh - 28px)!important;
  overflow:auto;
}

/* Lange inhoud mag nooit layout breken */
.card,.hero-card,.section-head,.actions-row,.page-actions,
.result-card,.dossier-card,.cd-row,.plugin-purchase-customer-strip{
  min-width:0;
}
.card *,td *,th *,article *,section *{
  overflow-wrap:break-word;
}
a,button{max-width:100%}

/* Desktop/laptop schaal */
@media (max-width:1366px){
  .app{grid-template-columns:232px minmax(0,1fr)!important}
  .sidebar nav a{font-size:12.5px}
  main{padding-left:20px;padding-right:20px}
  .stats-grid,.kpi-grid{gap:12px}
}
@media (max-width:1100px){
  .stats-grid,.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .quick-lookup{min-width:240px}
  table{min-width:680px}
}

/* Tablet */
@media (max-width:860px){
  .app{display:block!important}
  main{padding:16px!important}
  .topbar{
    margin:-16px -16px 18px!important;
    padding:13px 16px!important;
  }
  .top-actions{width:auto}
  .quick-lookup{min-width:0;width:min(360px,55vw)}
  .grid.two,.grid.three,.signature-grid{grid-template-columns:1fr!important}
  .form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hero-card{padding:20px!important}
}

/* Mobiel / kleine tablet */
@media (max-width:640px){
  html{font-size:15px}
  main{padding:12px!important}
  .topbar{
    margin:-12px -12px 14px!important;
    padding:11px 12px!important;
    display:flex!important;
    flex-wrap:wrap;
  }
  .topbar-title{min-width:0;flex:1}
  .topbar h1{font-size:22px!important}
  .top-actions{width:100%;margin-top:8px!important}
  .quick-lookup{width:100%;max-width:none}
  .quick-lookup input{width:100%!important;flex:1}
  .card,.hero-card{padding:14px!important;border-radius:11px!important}
  .form-grid,.stats-grid,.kpi-grid{grid-template-columns:1fr!important}
  .field.full,.full{grid-column:auto!important}
  .section-head,.actions-row,.page-actions{
    align-items:stretch!important;
  }
  .actions-row>.btn,.page-actions>.btn,
  .actions-row>form,.page-actions>form{
    max-width:100%;
  }
  .actions-row>.btn.primary,.page-actions>.btn.primary{
    width:100%;
  }
  .smart-next-action .smart-next-cta,
  .smart-next-action .smart-next-cta .btn{width:100%}
  .smart-form-steps{grid-template-columns:1fr!important}
  table{min-width:620px}
  th,td{padding:9px 10px}
}

/* print blijft sober en zonder themavlakken */
@media print{
  body{background:#fff!important;color:#000!important}
  .hero-card{background:#fff!important;color:#000!important;border:1px solid #bbb!important}
  .hero-card h1,.hero-card h2,.hero-card h3,.hero-card p{color:#000!important}
}



/* =========================================================
   v71.214 — DESIGN POLISH / PAGE NORMALIZATION
   Corrigeert oude pagina-eigen grids en accentkleuren.
   ========================================================= */

/* Alle hoofdschermen gebruiken dezelfde beschikbare breedte */
.completion-shell,.td-shell,.final-review,.internal-case,.workflow-overview-shell,
.intake-shell,.cd-shell,.cdv-shell,.loan-followup,.tax-shell,.photo-flow,
.loan-return,.internal-workbench{
  width:100%!important;
  max-width:min(100%,1480px)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box;
}

/* Portaal-/klantschermen iets smaller voor leesbaarheid */
.wrap{
  width:100%!important;
  max-width:min(100%,1180px)!important;
  box-sizing:border-box;
}

/* Oude zwarte/gouden actieve componenten naar de ene themakleur */
.category-picker button.active,
.discussion-progress-item.active span,
.step-number,
.dossier-timeline-dot{
  background:var(--theme-strong)!important;
  color:#fff!important;
}
.category-picker button.active,
.discussion-progress-item.active,
.discussion-step.active{
  border-color:var(--theme)!important;
}
.discussion-step.active{border-left-color:var(--theme)!important}
.ops-next .btn{border-color:#d8e0e6!important}

/* Inkoopoverzicht */
.workflow-hero{
  border-top-color:var(--theme)!important;
  border-color:var(--line)!important;
  box-shadow:var(--shadow)!important;
}
.workflow-search{
  grid-template-columns:minmax(220px,1fr) minmax(180px,240px) auto!important;
}
.workflow-row{
  border-color:var(--line)!important;
  box-shadow:none!important;
}
.workflow-row:hover{border-color:#bdc8d1!important;background:#fbfcfd!important}

/* Taxateur: voorkom te brede veldrijen op gewone laptops */
.td-head{gap:16px!important}
.td-grid{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
}
.category-picker{
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
}
.dor-ready-grid{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
}
.td-actions{
  border-color:var(--line)!important;
  box-shadow:0 8px 22px rgba(31,41,55,.08)!important;
}

/* Klantbespreking wachtrij */
.cd-row{
  grid-template-columns:minmax(84px,.65fr) minmax(105px,.8fr) minmax(190px,1.5fr) minmax(125px,.9fr) minmax(120px,.85fr) auto!important;
  border-color:var(--line)!important;
}
.cd-row:hover{background:#fbfcfd!important;border-color:#bdc8d1!important}

/* Klantbespreking detail */
.cdv-info{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
}
.discussion-progress{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
}
.discussion-progress-item.active{box-shadow:0 0 0 2px rgba(71,85,105,.07)!important}
.assessment-table-head,.assessment-row{
  min-width:0!important;
}
.customer-assessment{overflow:hidden}

/* Centrale werkvoorraad */
.ops-kpis{
  grid-template-columns:repeat(7,minmax(0,1fr))!important;
}
.ops-row{
  grid-template-columns:minmax(70px,84px) minmax(180px,1fr) minmax(240px,1.35fr) auto!important;
}
.ops-kpis a:hover{border-color:#bdc8d1!important;background:#fbfcfd!important}

/* Taxateur inbox */
.tax-row{
  grid-template-columns:minmax(82px,.7fr) minmax(110px,.85fr) minmax(210px,1.6fr) minmax(125px,.9fr) auto!important;
}

/* Interne verwerking */
.internal-row{
  grid-template-columns:minmax(220px,1.3fr) minmax(105px,.55fr) minmax(220px,1.35fr) auto!important;
}

/* Belening detail / portaal KPI grids */
.loan-doc-preview .kpi-grid,
.loan-followup .kpi-grid,
.wrap .grid,
.wrap .docgrid,
.wrap .paygrid{
  min-width:0;
}
.loan-doc-preview .kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.wrap .grid{grid-template-columns:repeat(4,minmax(0,1fr))!important}
.wrap .docgrid,.wrap .paygrid{grid-template-columns:repeat(3,minmax(0,1fr))!important}

/* Actierijen mogen netjes doorlopen in plaats van uit scherm vallen */
.actions-row,.page-actions,.workflow-actions,.ops-actions,.row-actions,.production-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
}
.actions-row .btn,.page-actions .btn,.workflow-actions .btn,.ops-actions .btn{
  flex:0 0 auto;
}

/* Inputs in oude pagina's niet langer kunstmatig klein */
.td-shell input,.td-shell select,.td-shell textarea,
.cdv-shell input,.cdv-shell select,.cdv-shell textarea,
.intake-shell input,.intake-shell select,.intake-shell textarea,
.loan-return input,.loan-return select,.loan-return textarea{
  width:100%;
  min-width:0;
  box-sizing:border-box;
}

/* Laptop 1366/1280 */
@media (max-width:1280px){
  .ops-kpis{grid-template-columns:repeat(4,minmax(0,1fr))!important}
  .ops-row{grid-template-columns:76px minmax(180px,1fr) minmax(200px,1.2fr)!important}
  .ops-actions{grid-column:2/-1!important;justify-content:flex-start!important}

  .td-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .category-picker{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .dor-ready-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}

  .cd-row,.tax-row{
    grid-template-columns:minmax(90px,.7fr) minmax(110px,.8fr) minmax(220px,1.5fr) minmax(130px,.9fr)!important;
  }
  .cd-row>div:last-child,.tax-row>div:last-child{
    grid-column:4!important;
  }

  .internal-row{
    grid-template-columns:minmax(190px,1.2fr) minmax(100px,.6fr) minmax(190px,1.25fr)!important;
  }
  .internal-row>div:last-child{grid-column:3!important}
}

/* Tablet / kleine laptop */
@media (max-width:980px){
  .workflow-search{grid-template-columns:1fr 1fr!important}
  .workflow-search-actions{grid-column:1/-1}
  .workflow-row{grid-template-columns:1fr 1fr!important}
  .workflow-main,.workflow-actions{grid-column:1/-1!important}
  .workflow-actions{justify-content:flex-start!important}

  .td-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .category-picker{grid-template-columns:repeat(3,minmax(0,1fr))!important}

  .cd-row,.tax-row{
    grid-template-columns:110px minmax(0,1fr)!important;
  }
  .cd-row>*:not(.cd-kind),.tax-row>*:not(:first-child){grid-column:2!important}
  .cd-row>div:last-child,.tax-row>div:last-child{grid-column:2!important}

  .cdv-info{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .discussion-progress{grid-template-columns:repeat(2,minmax(0,1fr))!important}

  .ops-kpis{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .ops-row{grid-template-columns:76px minmax(0,1fr)!important}
  .ops-row>div:nth-child(3),.ops-actions{grid-column:2!important}

  .internal-row{grid-template-columns:1fr 1fr!important}
  .internal-row-main,.internal-row>div:last-child{grid-column:1/-1!important}

  .wrap .grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .wrap .docgrid,.wrap .paygrid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

/* Mobiel / smalle tablet: alles naar één duidelijke kolom */
@media (max-width:680px){
  .workflow-search,.workflow-row,
  .cd-row,.tax-row,.internal-row,.ops-row,
  .cdv-info,.discussion-progress,
  .td-grid,.dor-ready-grid,
  .wrap .grid,.wrap .docgrid,.wrap .paygrid{
    grid-template-columns:1fr!important;
  }

  .workflow-search-actions,.workflow-main,.workflow-actions,
  .cd-row>*,.tax-row>*,.internal-row>*,
  .ops-row>*,.ops-actions{
    grid-column:1!important;
  }

  .category-picker{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .ops-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}

  .cd-row,.tax-row,.ops-row,.internal-row{gap:8px!important}
  .workflow-row{gap:9px!important}

  .step-actions,.step-confirm-box{
    flex-direction:column!important;
    align-items:stretch!important;
  }
  .step-actions .btn,.step-confirm-box .btn{width:100%!important}

  .td-actions{
    position:static!important;
    bottom:auto!important;
  }

  /* Minder visuele druk op kleine schermen */
  .eyebrow{font-size:9px!important}
  .workflow-kpis,.ops-kpis{gap:7px!important}
  .workflow-kpis>div,.ops-kpis a{padding:10px!important}
}

/* Heel smal: categorieën en KPI's onder elkaar */
@media (max-width:420px){
  .category-picker,.ops-kpis,.workflow-kpis{
    grid-template-columns:1fr!important;
  }
}



/* =========================================================
   v71.215 — MENU READABILITY
   Meer contrast zonder de rustige slate uitstraling te verliezen.
   ========================================================= */
.sidebar nav a{
  color:#e7edf3!important;
  font-weight:650;
}
.sidebar nav a i{
  color:#f1f5f9!important;
  background:rgba(255,255,255,.10)!important;
}
.sidebar nav a:hover{
  color:#ffffff!important;
  background:rgba(255,255,255,.09)!important;
}
.sidebar nav a:hover i{
  background:rgba(255,255,255,.15)!important;
  color:#ffffff!important;
}
.sidebar nav a.active{
  color:#ffffff!important;
  background:rgba(255,255,255,.14)!important;
  font-weight:750;
}
.sidebar nav a.active i{
  background:#f1f5f9!important;
  color:var(--theme-strong)!important;
}
.sidebar nav a.active:before{
  background:#ffffff!important;
}
.sidebar nav a .nav-badge,
.sidebar nav a .badge{
  font-weight:800;
}
.sidebar .nav-group-title,
.sidebar .nav-section-title,
.sidebar nav small{
  color:#cbd5df!important;
}
.brand{
  color:#ffffff!important;
}
.brand strong,
.brand b{
  color:#ffffff!important;
}
.brand small,
.sidebar-foot small{
  color:#d2dbe4!important;
}
.sidebar-foot,
.sidebar-foot a{
  color:#eef3f7!important;
}
.role-chip{
  color:#f2f6f9!important;
  background:rgba(255,255,255,.11)!important;
}



/* =========================================================
   v71.216 — MENU STRUCTURE & READABILITY POLISH
   Niet alleen witter: ook betere hiërarchie, ruimte en mobiel menu.
   ========================================================= */
.sidebar{
  color:#f3f6f9!important;
}
.sidebar-tools{
  padding:10px 9px 12px!important;
  gap:8px!important;
  border-bottom:1px solid rgba(255,255,255,.09)!important;
}
.menu-search{
  display:flex!important;
  align-items:center;
  min-width:0;
  min-height:40px;
  border:1px solid rgba(255,255,255,.15)!important;
  background:rgba(255,255,255,.075)!important;
  border-radius:10px!important;
}
.menu-search>span{
  color:#e5ebf1!important;
  opacity:.95!important;
}
.menu-search input{
  color:#ffffff!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  min-width:0;
}
.menu-search input::placeholder{
  color:#c7d1da!important;
  opacity:1!important;
}
.menu-search:focus-within{
  border-color:rgba(255,255,255,.34)!important;
  background:rgba(255,255,255,.11)!important;
  box-shadow:0 0 0 3px rgba(255,255,255,.055)!important;
}
.menu-compact-toggle{
  color:#e5ebf1!important;
  border-color:rgba(255,255,255,.14)!important;
  background:rgba(255,255,255,.065)!important;
}
.nav-group{
  margin:4px 5px 10px!important;
}
.nav-group-label{
  width:100%;
  min-height:34px!important;
  padding:7px 9px!important;
  color:#cbd5df!important;
  font-size:10.5px!important;
  font-weight:800!important;
  letter-spacing:.065em!important;
  text-transform:uppercase;
  background:transparent!important;
}
.nav-group-label span{color:inherit!important}
.nav-group-label i{
  color:#aebbc6!important;
  font-style:normal;
}
.nav-group-label:hover{
  color:#ffffff!important;
  background:rgba(255,255,255,.055)!important;
}
.sidebar nav a{
  min-height:42px!important;
  margin:2px 0!important;
  padding:8px 10px!important;
  border-radius:9px!important;
  line-height:1.25!important;
}
.sidebar nav a>span{
  min-width:0;
  white-space:normal;
}
.sidebar nav a i{
  flex:0 0 30px!important;
  width:30px!important;
  height:30px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:8px!important;
}
.sidebar nav a.active{
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.08)!important;
}
.sidebar nav a.active:before{
  width:3px!important;
  border-radius:3px!important;
}
.sidebar-foot{
  border-top:1px solid rgba(255,255,255,.10)!important;
  padding-top:12px!important;
}
.sidebar-foot b{
  color:#ffffff!important;
}
.sidebar-alert{
  color:#fff!important;
  border-color:rgba(255,255,255,.18)!important;
  background:rgba(255,255,255,.09)!important;
}
.sidebar-alert small{color:#d9e1e8!important;opacity:1!important}

/* Scrollbar minder donker en beter zichtbaar in lange menu's */
.sidebar nav{
  scrollbar-width:thin;
  scrollbar-color:rgba(255,255,255,.28) transparent;
}
.sidebar nav::-webkit-scrollbar{width:7px}
.sidebar nav::-webkit-scrollbar-thumb{
  background:rgba(255,255,255,.24);
  border-radius:999px;
}

/* Op laptop blijft het menu leesbaar; geen te kleine letters */
@media (max-width:1366px) and (min-width:861px){
  .sidebar nav a{font-size:13px!important}
  .nav-group-label{font-size:10px!important}
}

/* Mobiele drawer: voldoende contrast en grotere aanraakvlakken */
@media (max-width:860px){
  .sidebar{
    width:min(320px,88vw)!important;
    max-width:88vw!important;
  }
  .sidebar nav a{
    min-height:46px!important;
    font-size:14px!important;
    padding:9px 11px!important;
  }
  .sidebar nav a i{
    width:32px!important;
    height:32px!important;
    flex-basis:32px!important;
  }
  .nav-group-label{
    min-height:38px!important;
    font-size:10.5px!important;
  }
  .menu-search{min-height:44px}
  .menu-search input{font-size:14px!important}
}

/* Onderste mobiele navigatie sluit aan op dezelfde kleurtaal */
@media(max-width:860px){
  .mobile-app-nav{
    background:rgba(51,65,85,.97)!important;
    border-color:rgba(255,255,255,.12)!important;
  }
  .mobile-app-nav a{color:#d7e0e8!important}
  .mobile-app-nav a.active{
    background:rgba(255,255,255,.13)!important;
    color:#ffffff!important;
  }
  .mobile-app-nav a.active i{color:#ffffff!important}
}



/* =========================================================
   v71.217 — INFORMATION HIERARCHY & VISUAL CALM
   Eén duidelijke primaire actie, rustigere secundaire info.
   ========================================================= */
.section-head{
  gap:14px!important;
  align-items:flex-start!important;
  margin-bottom:14px!important;
}
.section-head h2,.section-head h3{margin:2px 0 4px!important}
.section-head p{margin:0!important;color:var(--muted)!important}
.page-context{color:#778492!important}
.page-context span:first-child{font-weight:750;color:var(--theme)!important}

.actions-row .btn:not(.primary),
.page-actions .btn:not(.primary),
.production-actions .btn:not(.primary),
.workflow-actions .btn:not(.primary){
  background:#fff!important;
  color:#44515e!important;
  border-color:#d9e1e7!important;
}
.actions-row .btn.primary,
.page-actions .btn.primary,
.production-actions .btn.primary,
.workflow-actions .btn.primary{
  font-weight:750!important;
}

.kpi-card small,.stat small,.kpi-grid small,.final-phase-bar small{
  color:#74808c!important;
  font-size:10px!important;
  font-weight:750!important;
  letter-spacing:.035em!important;
}
.kpi-card strong,.stat strong,.kpi-grid strong,.final-phase-bar strong{
  color:var(--theme-ink)!important;
  font-variant-numeric:tabular-nums;
}
.kpi-card span,.stat span,.kpi-grid span{color:#7a8691!important}

.card>.eyebrow:first-child,
.card .section-head .eyebrow{color:#71808e!important}
.card h2,.card h3{letter-spacing:-.012em}

.badge,.status-pill{
  font-size:10px!important;
  font-weight:750!important;
  padding:5px 8px!important;
  line-height:1.1!important;
}

.table-wrap tbody tr{transition:background .12s ease}
.table-wrap tbody tr:hover{background:#fafbfd!important}
.table-wrap td strong,.table-wrap td b{color:#263442}
.table-wrap td small{color:#7a8691}

.workflow-main strong,.cd-customer strong,.ops-row b,.tax-row b,.internal-row b{
  color:#243240!important;
}
.workflow-main span,.cd-customer span,.ops-row span,.tax-row span,.internal-row span{
  color:#74808b!important;
}

.smart-next-action{border-left:4px solid var(--theme)!important}
.smart-next-action h2{margin:3px 0 5px!important}
.smart-next-action .eyebrow,
.smart-next-action p{color:#71808e!important}
.smart-next-cta .btn.primary{
  box-shadow:0 5px 14px rgba(51,65,85,.12)!important;
}

.plugin-purchase-customer-strip,
.cdv-info,
.final-phase-bar{
  background:#f8fafb!important;
  border-color:var(--line)!important;
}
.plugin-purchase-customer-strip small,
.cdv-info small{color:#7b8792!important}
.plugin-purchase-customer-strip strong,
.cdv-info b{color:#2b3946!important}

label{color:#43515e}
.field label,.intake-grid label,.td-grid label,.category-subchoice label{
  font-weight:700;
}
.field-help,.lock-note,.td-category-help,.muted{color:#788590!important}

.alert{
  border-radius:10px!important;
  box-shadow:none!important;
}
.alert:not(.danger):not(.error):not(.warning):not(.success){
  background:#f5f7f9!important;
  border-color:#dce3e8!important;
  color:#4c5a67!important;
}
.alert.success{background:#eef8f3!important}
.alert.warning{background:#fff8e9!important}
.alert.danger,.alert.error{background:#fff1f1!important}

.topbar{box-shadow:0 2px 12px rgba(31,41,55,.035)!important}
.topbar h1{letter-spacing:-.018em}
.sidebar{box-shadow:5px 0 18px rgba(31,41,55,.05)!important}

@media(max-width:680px){
  .actions-row,.page-actions,.production-actions,.workflow-actions{
    flex-direction:column!important;
    align-items:stretch!important;
  }
  .actions-row .btn,.page-actions .btn,
  .production-actions .btn,.workflow-actions .btn{
    width:100%!important;
    justify-content:center!important;
  }
  .actions-row .btn.primary,
  .page-actions .btn.primary,
  .production-actions .btn.primary,
  .workflow-actions .btn.primary{
    order:-1;
  }
  .section-head{gap:9px!important}
  .section-head .actions-row{width:100%}
}
@media print{
  .card,.kpi-card,.stat,.smart-next-action,.topbar{box-shadow:none!important}
}



/* =========================================================
   v71.218 — EVERYDAY USABILITY
   Universele leesbaarheid, invoerfeedback en bereikbaarheid.
   ========================================================= */
.required-mark{color:var(--red)!important;font-weight:850}
[aria-invalid="true"]{
  border-color:#c95a5a!important;
  box-shadow:0 0 0 3px rgba(184,59,59,.10)!important;
}
input::placeholder,textarea::placeholder{
  color:#98a3ad!important;
  opacity:1;
}
button,.btn,a.btn,input,select,textarea{
  touch-action:manipulation;
}
button:focus-visible,.btn:focus-visible,a:focus-visible,
input:focus-visible,select:focus-visible,textarea:focus-visible{
  outline:3px solid rgba(71,85,105,.24)!important;
  outline-offset:2px!important;
}
.back-to-top{
  position:fixed;
  right:20px;
  bottom:22px;
  z-index:950;
  width:42px;
  height:42px;
  border:1px solid #cfd8df;
  border-radius:999px;
  background:#fff;
  color:var(--theme-strong);
  font-size:20px;
  font-weight:800;
  box-shadow:0 7px 20px rgba(31,41,55,.13);
  opacity:0;
  pointer-events:none;
  transform:translateY(8px);
  transition:.16s ease;
}
.back-to-top.visible{
  opacity:1;
  pointer-events:auto;
  transform:none;
}
.back-to-top:hover{background:var(--theme-soft)}
/* Houd foutmeldingen en bevestigingen goed scanbaar */
.alert ul{margin:7px 0 0;padding-left:20px}
.alert li+li{margin-top:4px}
/* Klikbare kaarten/rijen krijgen dezelfde subtiele interactie */
a.card,.clickable-row,[data-clickable]{
  transition:border-color .12s ease,box-shadow .12s ease,background .12s ease;
}
a.card:hover,.clickable-row:hover,[data-clickable]:hover{
  border-color:#bdc8d1!important;
  background:#fbfcfd!important;
}
/* Zorg dat lange knoppen begrijpelijk blijven i.p.v. afgekapt */
.btn,button{
  white-space:normal;
  text-align:center;
}
/* Desktop houdt compacte actieknoppen; mobiel krijgt comfortabele targets */
@media(max-width:860px){
  input,select,textarea,.btn,button{
    font-size:16px; /* voorkomt ongewenst iOS-zoom bij invoer */
  }
  .back-to-top{
    right:14px;
    bottom:76px; /* boven mobiele app-navigatie */
    width:44px;
    height:44px;
  }
}
@media print{.back-to-top{display:none!important}}


/* =========================================================
   v71.219 — CLEAR FEEDBACK & SAFER ACTIONS
   Duidelijker wat gelukt/mislukt is en minder kans op fouten.
   ========================================================= */
.alert{
  position:relative;
  padding-right:42px!important;
  transition:opacity .2s ease,transform .2s ease;
}
.alert-close{
  position:absolute;
  top:50%;
  right:9px;
  transform:translateY(-50%);
  width:28px;
  height:28px;
  min-height:28px!important;
  padding:0!important;
  border:0!important;
  border-radius:7px!important;
  background:transparent!important;
  color:inherit!important;
  font-size:20px!important;
  line-height:1!important;
  opacity:.65;
  cursor:pointer;
}
.alert-close:hover{opacity:1;background:rgba(0,0,0,.045)!important}
.alert-fade{opacity:0;transform:translateY(-4px)}
.field-counter{
  display:block;
  margin-top:4px;
  color:#89949e;
  font-size:10.5px;
  text-align:right;
}
.btn.danger,button.danger,input.danger{
  background:#fff5f5!important;
  color:#a73535!important;
  border-color:#e7bcbc!important;
}
.btn.danger:hover,button.danger:hover,input.danger:hover{
  background:#fdecec!important;
  border-color:#d99494!important;
}
/* Disabled = duidelijk niet beschikbaar, maar tekst blijft leesbaar */
.btn:disabled,button:disabled,input[type="submit"]:disabled{
  opacity:.58!important;
  cursor:not-allowed!important;
  box-shadow:none!important;
}
/* Hulptekst staat dichter bij het veld waar hij bij hoort */
.field-help,.td-category-help,.lock-note{
  display:block;
  margin-top:5px;
  line-height:1.4;
}
/* Succesmelding niet felgroen; alleen semantisch herkenbaar */
.alert.success{
  border-color:#c9e4d7!important;
  color:#275d48!important;
}
.alert.warning{
  border-color:#ead9ad!important;
  color:#76591f!important;
}
.alert.danger,.alert.error{
  border-color:#ecc5c5!important;
  color:#8d3535!important;
}
@media(max-width:680px){
  .alert{padding:12px 42px 12px 12px!important}
  .alert-close{right:7px}
}

/* v71.227 — overzichtelijker beleningendashboard */
.loan-workbuckets{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:0 0 16px}
.loan-workbucket{display:flex;flex-direction:column;min-width:0;padding:14px;border:1px solid var(--line);border-radius:12px;background:#fff;color:var(--theme-ink);text-decoration:none;box-shadow:var(--shadow)}
.loan-workbucket:hover{border-color:#b8c3cc;background:#fbfcfd}
.loan-workbucket small{font-size:9.5px;font-weight:800;letter-spacing:.06em;color:#7a8792}
.loan-workbucket strong{font-size:25px;line-height:1.1;margin:5px 0;color:var(--theme-strong)}
.loan-workbucket span{font-size:12px;color:#74808b}
.loan-workbucket.danger{border-left:4px solid var(--red)}
.loan-workbucket.warning{border-left:4px solid var(--amber)}
.dashboard-secondary{padding:0!important;overflow:hidden}
.dashboard-secondary>summary{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:14px 18px;cursor:pointer;color:var(--theme-ink);list-style:none}
.dashboard-secondary>summary::-webkit-details-marker{display:none}
.dashboard-secondary>summary:after{content:'＋';font-weight:800;color:#76838e}
.dashboard-secondary[open]>summary:after{content:'−'}
.dashboard-secondary>summary span{font-size:12px;color:var(--muted);font-weight:500}
.dashboard-secondary-body{padding:0 18px 18px;border-top:1px solid var(--line)}
@media(max-width:1280px){.loan-workbuckets{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:700px){.loan-workbuckets{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:420px){.loan-workbuckets{grid-template-columns:1fr}}


/* v71.234 — compact admin area */
.admin-center-hero{margin-bottom:14px}
.admin-quick-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}
.admin-quick{display:flex;flex-direction:column;gap:4px;padding:14px 16px;background:#fff;border:1px solid var(--line);border-radius:12px;text-decoration:none;color:var(--theme-ink);box-shadow:var(--shadow)}
.admin-quick:hover{border-color:#b9c4ce;background:#fbfcfd}
.admin-quick b{font-size:14px}.admin-quick span{font-size:11.5px;color:var(--muted)}
.admin-center-section{margin-bottom:12px}
.admin-tool-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.admin-tool{display:grid;grid-template-columns:36px minmax(0,1fr) auto;align-items:center;gap:10px;padding:11px 12px;border:1px solid var(--line);border-radius:10px;background:#fbfcfd;text-decoration:none;color:var(--theme-ink)}
.admin-tool:hover{background:#fff;border-color:#b9c4ce}
.admin-tool-icon{display:grid;place-items:center;width:32px;height:32px;border-radius:8px;background:var(--theme-soft);color:var(--theme-strong);font-weight:800;font-size:12px}
.admin-tool b,.admin-tool small{display:block}.admin-tool b{font-size:13px}.admin-tool small{margin-top:2px;color:var(--muted);font-size:11px;line-height:1.35}.admin-tool i{font-style:normal;color:#94a0aa}
@media(max-width:1000px){.admin-quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.admin-tool-grid,.admin-quick-grid{grid-template-columns:1fr}}


/* v71.235 — admin daily focus */
.admin-advanced{padding:0!important;overflow:hidden}
.admin-advanced>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px;cursor:pointer;list-style:none}
.admin-advanced>summary::-webkit-details-marker{display:none}
.admin-advanced>summary span b,.admin-advanced>summary span small{display:block}
.admin-advanced>summary span b{font-size:14px;color:var(--theme-ink)}
.admin-advanced>summary span small{margin-top:2px;font-size:11px;color:var(--muted)}
.admin-advanced>summary>i{font-style:normal;color:#7c8893;font-size:18px}
.admin-advanced[open]>summary>i{transform:rotate(45deg)}
.admin-advanced-body{padding:0 18px 18px;border-top:1px solid var(--line)}
.admin-advanced-body .admin-tool-grid{margin-top:14px}


/* =========================================================
   v71.236 — SIMPLE LANGUAGE / EVERYONE CAN USE IT
   ========================================================= */
.simple-guide{
  display:flex;
  align-items:flex-start;
  gap:12px;
  margin:0 0 14px;
  padding:12px 14px;
  border:1px solid var(--line);
  border-left:4px solid var(--theme);
  border-radius:10px;
  background:#fff;
}
.simple-guide b{flex:0 0 auto;color:var(--theme-strong);font-size:13px}
.simple-guide span{color:#65727e;font-size:12.5px;line-height:1.45}
.btn.primary{font-weight:800}
.btn:not(.primary):not(.danger){font-weight:650}
.eyebrow{font-size:9.5px!important}
.section-head p,.muted{line-height:1.45}
@media(max-width:680px){
  .simple-guide{flex-direction:column;gap:4px}
}


/* v71.237 — one clear route through the system */
label>span:first-child{font-weight:700}
input,select,textarea{min-height:42px}
textarea{min-height:96px}
button,.btn{min-height:40px}
.actions,.form-actions{gap:10px}
.btn.danger,.danger.btn{margin-left:auto}
@media(max-width:680px){
  input,select,textarea,button,.btn{font-size:16px}
  .actions,.form-actions{align-items:stretch}
  .actions .btn,.form-actions .btn{width:100%}
  .btn.danger,.danger.btn{margin-left:0}
}


/* v71.244 — dagelijkse systeemstatus */
.system-attention{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin:0 0 14px}
.system-attention-item{display:flex;flex-direction:column;gap:2px;padding:11px 12px;border:1px solid var(--line);border-radius:10px;background:#fff;text-decoration:none;color:var(--theme-ink)}
.system-attention-item small{font-size:8.5px;font-weight:900;letter-spacing:.07em;color:#7a8690}
.system-attention-item b{font-size:15px}.system-attention-item span{font-size:10.5px;color:var(--muted)}
.system-attention-item.warning{border-left:4px solid var(--amber)}
.system-attention-item.danger{border-left:4px solid var(--red)}
.system-health-mini{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-bottom:12px;padding:9px 11px;border:1px solid var(--line);border-radius:10px;background:#fff;font-size:11px}
.system-health-mini>a{padding:5px 8px;border-radius:7px;background:#f5f7f8;text-decoration:none;color:var(--theme-ink);font-weight:700}
.system-health-mini>span{margin-right:3px}
@media(max-width:850px){.system-attention{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:480px){.system-attention{grid-template-columns:1fr}}


/* =========================================================
   v71.260 — centrale polish & schaal
   Eén rustige donkere basis + warme accentkleur.
   ========================================================= */
:root{
 --surface:#ffffff;--surface-soft:#f8fafb;--surface-muted:#f2f5f7;
 --theme:#202a33;--theme-2:#2b3945;--accent:#ad8437;
 --ok:#2f7650;--warn:#9a6a20;--danger:#a83b3b;
 --focus:0 0 0 3px rgba(173,132,55,.15);
 --soft-shadow:0 8px 24px rgba(19,31,42,.055);
}
html{font-size:16px;scroll-behavior:smooth}
body{font-size:14px;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
main{max-width:1520px;padding:24px clamp(18px,2.5vw,34px) 36px}
.card,.hero-card{border-radius:14px;box-shadow:var(--soft-shadow);margin-bottom:14px}
.card{padding:clamp(16px,2vw,22px)}
.hero-card{background:linear-gradient(135deg,var(--theme),var(--theme-2));padding:clamp(20px,3vw,30px)}
.hero-card h1,.hero-card h2{line-height:1.1;letter-spacing:-.025em}
.hero-card p{font-size:13px;line-height:1.55}
.section-head{margin-bottom:12px}.section-head h2{margin-bottom:3px;line-height:1.18}
.eyebrow{font-size:9.5px;letter-spacing:.12em;color:#b78d42}
.simple-guide{border:1px solid var(--line);border-left:4px solid var(--accent);border-radius:10px;background:#fff;padding:10px 13px;display:flex;gap:10px;align-items:center;flex-wrap:wrap}
.simple-guide b{font-size:12px}.simple-guide span{font-size:11px;color:var(--muted)}
.btn{min-height:38px;border-radius:9px;padding:8px 12px;font-size:12.5px;font-weight:800;box-shadow:none}
.btn:hover{transform:none;border-color:#bfc8cf;background:#fafbfc;box-shadow:0 4px 12px rgba(20,30,40,.06)}
.btn.primary{background:var(--theme);border-color:var(--theme);color:#fff}
.btn.primary:hover{background:#2b3945;border-color:#2b3945}
.btn.warning{background:#fff8e9;border-color:#ead3a8;color:#77551d}
.btn.danger{background:#fff4f4;border-color:#e8c4c4}
.badge,.status-pill,.mini-status{font-size:10px;padding:4px 7px}
.alert{font-size:12px;line-height:1.5;border-radius:10px;padding:11px 13px;margin-bottom:12px}
.field{gap:5px}.field label{font-size:12px}
.field input,.field select,.field textarea,.filters input,.filters select,.report-filters input,.report-filters select{
 min-height:40px;border-radius:9px;padding:9px 11px;font-size:13px
}
.field input:focus,.field select:focus,.field textarea:focus{box-shadow:var(--focus);border-color:var(--accent)}
.table-wrap{border-radius:10px;background:#fff}
table{font-size:12px}
th{font-size:9px;letter-spacing:.065em;padding:10px 11px;background:#f5f7f8;color:#65727d}
td{padding:10px 11px;line-height:1.35}
tbody tr:hover td{background:#fbfcfd}
td .btn{min-height:31px;padding:5px 8px;font-size:10.5px}
.kpi-grid,.stats-grid,.stats-grid.compact{gap:9px}
.kpi-grid article,.stat-card,.stat,.loan-workbucket{border-radius:11px;box-shadow:none}
.kpi-grid article,.stat-card{padding:13px}
.kpi-grid article small,.stat-card span{font-size:9px}
.kpi-grid article strong,.stat-card strong{font-size:22px}
.actions-row{gap:7px}
.empty-state{padding:28px 16px}.empty-state b{color:var(--ink)}
details.card>summary{cursor:pointer;padding:2px 0;font-size:13px}
code{font-size:.92em}
.sidebar{width:auto;padding:16px 12px}
.app{grid-template-columns:250px minmax(0,1fr)}
.brand{padding:0 7px 16px}.brand>span{width:40px;height:40px;border-radius:10px}.brand strong{font-size:14px}
.sidebar nav a{padding:8px 9px;border-radius:8px;font-size:12px}
.sidebar nav a i{width:23px;height:23px;border-radius:6px;font-size:10px}
.nav-group-label{font-size:8.5px}.role-chip{font-size:9px}
.topbar{margin-bottom:16px}.topbar h1{font-size:clamp(21px,2.5vw,28px)}
.system-health-mini{box-shadow:none}
.assessment-row,.td-row,.workflow-row,.selected-customer{border-radius:10px}
.signature-box canvas{height:170px}

/* Grote dashboards: laat visuele hiërarchie het werk doen. */
.loan-workbuckets{gap:8px}
.loan-workbucket{padding:13px!important}
.loan-workbucket strong{font-size:22px!important}
.dashboard-secondary{box-shadow:none!important;background:#fafbfc!important}

/* Tablet */
@media(max-width:1100px){
 .app{grid-template-columns:225px minmax(0,1fr)}
 main{padding:20px}
 .hero-card{padding:22px}
}
/* Mobiel: acties vol breed, maar tabellen blijven horizontaal leesbaar. */
@media(max-width:860px){
 .app{display:block}
 main{padding:16px 14px 28px}
 .card,.hero-card{margin-bottom:11px}
 .section-head{align-items:flex-start}
 .section-head>.actions-row{width:100%}
 .section-head>.actions-row .btn{flex:1}
 .table-wrap{-webkit-overflow-scrolling:touch}
 table{min-width:680px}
 .table-wrap.compact-mobile table{min-width:520px}
}
@media(max-width:620px){
 body{font-size:13px}
 main{padding:11px 10px 24px}
 .card,.hero-card{padding:14px;border-radius:11px}
 .hero-card h2,.hero-card h1{font-size:22px}
 .actions-row{width:100%}
 .actions-row .btn{flex:1;white-space:normal;text-align:center}
 .btn.big{padding:11px 13px}
 .form-grid{gap:10px}
 .grid{gap:10px}
 .app-footer{display:block;text-align:center}
}


/* =========================================================
   v71.272 — SYSTEMBREDE OVERZICHTELIJKHEID
   Eén rustige visuele taal voor alle dagelijkse schermen
   ========================================================= */
:root{
  --ui-page:#f5f6f7;
  --ui-card:#ffffff;
  --ui-soft:#f8f9fa;
  --ui-line:#e1e5e8;
  --ui-line-strong:#d3d9de;
  --ui-text:#1d2730;
  --ui-muted:#6f7b84;
  --ui-dark:#202a33;
  --ui-dark-2:#2b3945;
  --ui-gold:#ad8437;
  --ui-radius:12px;
  --ui-shadow:0 2px 10px rgba(23,32,40,.045);
}
html{scroll-behavior:smooth}
body{background:var(--ui-page);color:var(--ui-text);line-height:1.45}
main{padding:20px 26px 38px}
main>section,main>.grid,main>.stats-grid,main>.kpi-grid,main>.alert,main>.simple-guide,
main>.hero-card,main>.tax-shell,main>.cd-shell,main>.weight-process-grid{max-width:1480px;margin-left:auto;margin-right:auto}

/* Topbar: compact, stable and task oriented */
.topbar{margin:-20px -26px 18px;padding:13px 26px 12px;background:rgba(245,246,247,.965)}
.topbar h1{font-size:24px}
.topbar p{display:none}
.page-context{margin-bottom:3px}
.quick-lookup{min-width:270px}
.quick-lookup input{width:215px}
.top-actions .btn{white-space:nowrap}

/* Sidebar: less visual noise */
.app{grid-template-columns:240px minmax(0,1fr)}
.sidebar{padding:14px 10px}
.brand{padding:3px 8px 14px}
.sidebar-tools{margin:7px 2px 9px}
.menu-search{min-height:35px}
.nav-group{margin-bottom:6px}
.nav-group+.nav-group{padding-top:7px}
.nav-group-label{padding:4px 9px;color:#778694}
.sidebar nav a{min-height:36px;padding:6px 8px;font-size:12.5px}
.sidebar nav a i{width:23px;height:23px}
.sidebar-foot{padding-top:11px}

/* Page intro: same hierarchy everywhere */
.simple-guide{
  display:flex;align-items:center;gap:10px;
  padding:9px 12px;margin-bottom:10px;border:1px solid #e2e5e8;
  border-radius:10px;background:#fff;color:var(--ui-muted);box-shadow:none
}
.simple-guide b{flex:0 0 auto;color:var(--ui-text);font-size:12px}
.simple-guide span{font-size:12px}
.hero-card,.tax-hero,.cd-hero{
  min-height:auto;padding:18px 20px;margin-bottom:12px;
  border:0;border-radius:12px;background:linear-gradient(135deg,var(--ui-dark),var(--ui-dark-2));
  color:#fff;box-shadow:none
}
.hero-card h2,.tax-hero h1,.cd-hero h1{font-size:23px;line-height:1.15;margin:4px 0 5px}
.hero-card p,.tax-hero p,.cd-hero p{max-width:820px;font-size:12.5px;color:#c0c9d0;line-height:1.5}
.hero-card .btn:not(.primary),.tax-hero .btn:not(.primary),.cd-hero .btn:not(.primary){
  background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.13);color:#fff
}
.eyebrow{font-size:9px;letter-spacing:.14em}

/* Cards and groups */
.card{
  padding:16px 17px;margin-bottom:12px;border:1px solid var(--ui-line);
  border-radius:var(--ui-radius);background:var(--ui-card);box-shadow:var(--ui-shadow)
}
.card+.card{margin-top:0}
.section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:10px}
.section-head h2,.card h2{font-size:16px;margin:0 0 3px}
.section-head h3,.card h3{font-size:14px}
.section-head p,.section-head small,.muted{color:var(--ui-muted)}
.actions-row{gap:7px;flex-wrap:wrap}
.empty-state{padding:26px 16px;border:1px dashed #d8dde1;border-radius:10px;background:#fafbfb;text-align:center}
.empty-state b{font-size:14px}
.empty-state span{display:block;margin-top:4px;color:var(--ui-muted);font-size:12px}

/* KPI blocks: small, scannable, no dashboard-card overload */
.stats-grid,.kpi-grid,.report-stats{gap:9px}
.stat,.stat-card,.kpi-grid article,.report-stats>.card{
  min-height:78px;padding:12px 14px;border:1px solid var(--ui-line);
  border-radius:10px;background:#fff;box-shadow:none
}
.stat-card span,.stat small,.kpi-grid article small,.report-stats small{
  color:#7a858e;font-size:9px;font-weight:850;text-transform:uppercase;letter-spacing:.06em
}
.stat-card strong,.stat strong,.kpi-grid article strong,.report-stats strong{
  display:block;margin-top:4px;font-size:21px;letter-spacing:-.025em
}

/* Forms: labels clearly belong to fields */
.form-grid{gap:10px 12px}
.field{gap:4px}
.field label,.report-filters label,.filters label{font-size:11px;font-weight:800;color:#4d5962}
.field small{font-size:10.5px;line-height:1.35;color:#7a858e}
.field input,.field select,.field textarea,
.report-filters input,.report-filters select,.filters input,.filters select{
  min-height:37px;border:1px solid #d7dde1;border-radius:8px;background:#fff
}
textarea{line-height:1.5}
.field.full{padding-top:1px}
.filter-bar,.report-filters,.filters{
  align-items:end;padding:10px;border:1px solid #e6e9eb;border-radius:10px;background:#fafbfb
}

/* Buttons: one obvious primary action */
.btn{min-height:34px;padding:7px 11px;border-radius:8px;font-size:12px}
.btn.primary{background:var(--ui-gold);border-color:var(--ui-gold);color:#fff}
.btn.primary:hover{background:#987128;border-color:#987128}
.btn.small{min-height:28px;padding:5px 8px}
.btn.big{min-height:39px}
button:disabled,.btn[disabled]{opacity:.45;cursor:not-allowed}

/* Tables: compact, readable and easier to scan */
.table-wrap{border:1px solid var(--ui-line);border-radius:9px;overflow:auto;background:#fff}
table{width:100%;font-size:12px;border-collapse:separate;border-spacing:0}
th{top:0;padding:8px 10px;background:#f4f6f7;color:#68747d;font-size:9px;letter-spacing:.065em}
td{padding:9px 10px;vertical-align:middle}
tbody tr:nth-child(even){background:#fcfcfc}
tbody tr:hover{background:#faf7f0}
td b,td strong{color:#27313a}
td small{display:block;color:#7b858d;line-height:1.35}
.table-wrap .btn{white-space:nowrap}
code{font-size:11px;padding:2px 5px;border-radius:5px;background:#f1f3f4;color:#46515a}

/* Statuses only carry meaning, never decoration */
.badge,.status-pill{border-radius:6px;letter-spacing:0;text-transform:none}
.alert{border-width:1px;box-shadow:none}
.alert.success{background:#eef8f3;color:#216348;border-color:#d5eadf}
.alert.warning{background:#fff8ea;color:#805e1d;border-color:#efdfbd}
.alert.error,.alert.danger{background:#fff1f1;color:#913b3b;border-color:#efd4d4}
.alert.info{background:#f0f6fa;color:#315c76;border-color:#d8e5ec}

/* Work lists: row first, action last */
.tax-row,.dossier-card,.loan-result-card,.quality-row,.finance-row{
  border-radius:10px!important;box-shadow:none!important
}
.tax-row:hover,.dossier-card:hover,.loan-result-card:hover{border-color:#d1d7db;background:#fcfbf8}
.tax-kind{border-radius:7px!important}
.loan-result-card{padding:14px 15px}

/* Specific recurring pages */
.weight-process-grid{gap:10px;margin-top:12px;margin-bottom:12px}
.weight-summary{border-radius:10px;padding:14px;box-shadow:none}
.weight-today-grid{gap:9px}
.weight-today-grid>div{border-radius:9px;padding:12px}
.cd-shell,.tax-shell{max-width:1180px!important;padding:0!important}
.cd-count{min-width:82px}
.cd-count strong{font-size:26px}
.scrap-check input{width:20px;height:20px}

/* Settings: quick sticky chapter navigation */
.settings-jumpnav{
  position:sticky;top:68px;z-index:22;display:flex;gap:6px;overflow-x:auto;
  margin:0 auto 12px;padding:7px;max-width:1480px;border:1px solid #dde2e5;
  border-radius:10px;background:rgba(255,255,255,.96);backdrop-filter:blur(12px)
}
.settings-jumpnav a{
  flex:0 0 auto;padding:7px 9px;border-radius:7px;color:#59656e;text-decoration:none;
  font-size:11px;font-weight:800;border:1px solid transparent
}
.settings-jumpnav a:hover{background:#f4f6f7;border-color:#e1e5e8;color:#1d2730}
.settings-anchor{scroll-margin-top:125px}

/* Better focus for keyboard/tablet */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{
  outline:3px solid rgba(173,132,55,.23);outline-offset:2px
}

/* Responsive: avoid cramped two/three-column admin screens */
@media(max-width:1100px){
  .app{grid-template-columns:224px minmax(0,1fr)}
  main{padding-left:20px;padding-right:20px}
  .topbar{margin-left:-20px;margin-right:-20px;padding-left:20px;padding-right:20px}
  .quick-lookup{display:none}
}
@media(max-width:900px){
  main{padding:14px 14px 28px}
  .topbar{margin:-14px -14px 14px;padding:10px 14px}
  .section-head{align-items:stretch;flex-direction:column}
  .section-head>.btn,.section-head>.actions-row{align-self:flex-start}
  .hero-card,.tax-hero,.cd-hero{padding:16px}
  .hero-card h2,.tax-hero h1,.cd-hero h1{font-size:21px}
  .settings-jumpnav{top:58px;border-radius:8px}
}
@media(max-width:640px){
  .simple-guide{align-items:flex-start;flex-direction:column;gap:2px}
  .card{padding:13px}
  .hero-card,.tax-hero,.cd-hero{display:block!important}
  .hero-card .actions-row,.tax-hero .actions-row,.cd-hero .actions-row{margin-top:12px}
  .btn{min-height:38px}
  .report-filters,.filter-bar{display:grid!important;grid-template-columns:1fr!important}
  .report-filters>* ,.filter-bar>*{width:100%}
  .settings-jumpnav{margin-left:-2px;margin-right:-2px}
}

.report-hub-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-width:1480px;margin:0 auto 12px}
.report-hub-grid .card{display:flex;flex-direction:column;align-items:flex-start;margin:0;min-height:150px}
.report-hub-grid .card p{flex:1}
.report-hub-grid .card .btn{margin-top:8px}
@media(max-width:900px){.report-hub-grid{grid-template-columns:1fr}}


/* =========================================================
   v71.274 — OVERZICHT FASE 2
   Minder dubbele informatie; hoofdtaak eerst, details op aanvraag.
   ========================================================= */
.action-menu{position:relative}
.action-menu>summary{
  list-style:none;cursor:pointer;min-height:34px;padding:7px 11px;border:1px solid rgba(255,255,255,.16);
  border-radius:8px;background:rgba(255,255,255,.07);color:#fff;font-size:12px;font-weight:800
}
.action-menu>summary::-webkit-details-marker{display:none}
.action-menu>summary:after{content:"⌄";margin-left:8px}
.action-menu[open]>summary:after{content:"⌃"}
.action-menu-panel{
  position:absolute;right:0;top:calc(100% + 7px);z-index:60;display:grid;gap:5px;min-width:230px;
  padding:8px;border:1px solid #dce1e4;border-radius:10px;background:#fff;box-shadow:0 14px 36px rgba(20,28,35,.14)
}
.action-menu-panel .btn{justify-content:flex-start;width:100%;background:#fff;color:#26313a;border-color:transparent}
.action-menu-panel .btn:hover{background:#f5f6f7;border-color:#e1e5e8}
.loan-hero-tools{display:flex;align-items:flex-end;gap:8px;flex-direction:column}

.dossier-secondary{padding:0;overflow:visible}
.dossier-secondary>summary,.dashboard-secondary>summary{
  cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:14px;
  min-height:48px;padding:12px 15px;color:#303a42
}
.dossier-secondary>summary::-webkit-details-marker,.dashboard-secondary>summary::-webkit-details-marker{display:none}
.dossier-secondary>summary b,.dashboard-secondary>summary b{font-size:13px}
.dossier-secondary>summary span,.dashboard-secondary>summary span{font-size:11px;color:#7a858e}
.dossier-secondary>summary:after,.dashboard-secondary>summary:after{content:"+";font-size:18px;color:#8b949b}
.dossier-secondary[open]>summary:after,.dashboard-secondary[open]>summary:after{content:"−"}
.dossier-secondary[open]>summary,.dashboard-secondary[open]>summary{border-bottom:1px solid #e5e8ea}
.dossier-secondary-body,.dashboard-secondary-body{padding:14px 15px}
.dossier-secondary-body>.detail-grid>.card{margin-bottom:0;box-shadow:none;background:#fafbfb}
.dossier-secondary .loan-contract-center{padding:0;border:0;background:transparent;box-shadow:none;margin:0}

/* Workbuckets: show only operational meaning */
.loan-workbuckets{gap:8px!important}
.loan-workbucket{min-height:94px!important;padding:13px 14px!important;border-radius:10px!important;box-shadow:none!important}
.loan-workbucket strong{font-size:25px!important}
.loan-workbucket span{font-size:11px!important}

/* Lists get a consistent first-column identity marker */
.tax-row,.cd-row{min-height:62px}
.tax-kind,.cd-kind{letter-spacing:.05em}
.tax-kpis,.cd-kpis{gap:8px}
.tax-kpis>div,.cd-kpis>div{box-shadow:none;border-color:#e1e5e8}

/* Make large dashboard controls secondary unless they need attention */
.dashboard-secondary{padding:0!important}
.dashboard-secondary-body .kpi-grid{margin-bottom:10px}

/* Limit overly wide text blocks */
.card>p,.section-head p{max-width:820px}

/* Mobile action menu becomes normal flow */
@media(max-width:760px){
 .loan-hero-tools{align-items:stretch;width:100%;margin-top:12px}
 .loan-hero-tools>.actions-row{width:100%}
 .loan-hero-tools>.actions-row .btn{flex:1;justify-content:center}
 .action-menu{width:100%}
 .action-menu>summary{width:100%;text-align:center}
 .action-menu-panel{position:static;margin-top:6px;min-width:0;box-shadow:none}
 .dossier-secondary>summary,.dashboard-secondary>summary{align-items:flex-start}
 .dossier-secondary>summary span,.dashboard-secondary>summary span{margin-left:auto}
}


/* =========================================================
   v71.275 — OVERZICHT FASE 3
   Inkoop, klantbespreking en DOR: hoofdtaak eerst.
   ========================================================= */
.purchase-communication .compact-status-card{padding:0 0 12px;border:0;background:transparent}
.purchase-communication .card{box-shadow:none}
.cdv-contact-info{grid-template-columns:repeat(2,minmax(0,1fr))!important;max-width:700px}
.cdv-contact-info>div{padding:9px 12px}
.dor-technical-tools{margin:0 0 12px;border:1px solid #e1e5e8;border-radius:9px;background:#fafbfb}
.dor-technical-tools>summary{cursor:pointer;list-style:none;padding:9px 11px;font-size:11.5px;font-weight:800;color:#59656e}
.dor-technical-tools>summary::-webkit-details-marker{display:none}
.dor-technical-tools>summary:after{content:" +";float:right}
.dor-technical-tools[open]>summary:after{content:" −"}
.dor-technical-tools-body{padding:0 11px 11px;border-top:1px solid #e5e8ea}
.dor-technical-tools-body .actions-row{margin-top:8px}
.dor-technical-tools-body form{margin:0}
#dor-status .plugin-purchase-section{padding:0;margin:0;border:0;box-shadow:none}
#dor-status .plugin-technical-grid{margin-top:6px}
@media(max-width:700px){
 .cdv-contact-info{grid-template-columns:1fr!important}
}


/* =========================================================
   v71.276 — OVERZICHT FASE 4
   Dashboard & beleningen: operationeel werk eerst.
   ========================================================= */
.dashboard-admin-link{margin:-4px 0 14px}
.dashboard-admin-link>a{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:8px 11px;border:1px solid #e2e6e9;border-radius:8px;background:#fafbfb;color:#4d5962;font-size:11px;font-weight:800;text-decoration:none}
.dashboard-admin-link span{font-weight:500;color:#78828a}
.dashboard-management-summary{margin-top:14px}
.loan-finance-overview>.dashboard-secondary-body>.card{margin:0 0 10px;box-shadow:none}
.loan-finance-overview>.dashboard-secondary-body>.kpi-grid{margin-top:6px}
.hero-card .actions-row{flex-wrap:wrap}
@media(max-width:700px){
 .dashboard-admin-link>a{align-items:flex-start;flex-direction:column}
}


/* =========================================================
   v71.277 — OVERZICHT FASE 5
   Werkvoorraad & dagelijkse acties: minder keuzes, sneller starten.
   ========================================================= */
.ops-more-filters{margin:-2px 0 12px}
.ops-more-filters>summary{cursor:pointer;list-style:none;font-size:10px;font-weight:800;color:#68747d;padding:5px 2px}
.ops-more-filters>summary::-webkit-details-marker{display:none}
.ops-more-filters>summary:after{content:" +"}
.ops-more-filters[open]>summary:after{content:" −"}
.ops-kpis-secondary{margin-top:4px!important}
.ops-search{padding:0!important}
.ops-search>summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:12px;padding:12px 15px}
.ops-search>summary::-webkit-details-marker{display:none}
.ops-search>summary span{font-size:10px;color:#7a858e}
.compact-work-hero{margin-bottom:12px}
.today-actions-card{margin-top:0}
@media(max-width:700px){
 .responsive-work-table thead{display:none}
 .responsive-work-table,.responsive-work-table tbody,.responsive-work-table tr,.responsive-work-table td{display:block;width:100%}
 .responsive-work-table tr{padding:11px 12px;border-bottom:1px solid #e2e6e9}
 .responsive-work-table td{border:0!important;padding:4px 0!important}
 .responsive-work-table td[data-label]:not([data-label=""]):before{content:attr(data-label);display:block;font-size:8px;font-weight:900;color:#849099;text-transform:uppercase}
 .responsive-work-table td .btn{width:100%;justify-content:center;margin-top:5px}
}


/* =========================================================
   v71.278 — PROFESSIONAL BUSINESS UI
   Zakelijker, rustiger en consistenter. Geen workflowwijzigingen.
   ========================================================= */
:root{
 --biz-bg:#f3f5f6;
 --biz-surface:#ffffff;
 --biz-surface-soft:#f7f8f9;
 --biz-border:#d9dfe3;
 --biz-border-soft:#e8ebed;
 --biz-text:#18232c;
 --biz-muted:#68747d;
 --biz-navy:#1f2c36;
 --biz-navy-2:#293945;
 --biz-accent:#9b7734;
 --biz-accent-hover:#87672d;
 --biz-radius:8px;
 --biz-shadow:0 1px 3px rgba(19,29,37,.055);
}
body{background:var(--biz-bg);color:var(--biz-text);font-size:13px}
main,.main-content{letter-spacing:0}
.hero-card,.tax-hero,.cd-hero{
 border:1px solid #273844!important;
 border-radius:var(--biz-radius)!important;
 background:linear-gradient(135deg,var(--biz-navy),var(--biz-navy-2))!important;
 box-shadow:none!important;
 padding:20px 22px!important;
}
.hero-card h1,.hero-card h2,.tax-hero h1,.tax-hero h2,.cd-hero h1,.cd-hero h2{
 font-size:22px!important;line-height:1.15!important;letter-spacing:-.015em!important;margin:3px 0 6px!important
}
.hero-card p,.tax-hero p,.cd-hero p{max-width:760px!important;color:#d7dde1!important;font-size:12px!important;line-height:1.55!important}
.eyebrow{font-size:8.5px!important;letter-spacing:.12em!important;font-weight:800!important}
.card{
 border:1px solid var(--biz-border)!important;
 border-radius:var(--biz-radius)!important;
 box-shadow:var(--biz-shadow)!important;
 background:var(--biz-surface)!important;
}
.section-head{margin-bottom:10px!important}
.section-head h2,.section-head h3{font-size:15px!important;letter-spacing:-.005em!important;color:#202c35!important;margin:0 0 3px!important}
.section-head p,.muted{color:var(--biz-muted)!important;line-height:1.45}
.btn{
 min-height:34px!important;border-radius:6px!important;padding:7px 11px!important;
 font-size:11px!important;font-weight:750!important;box-shadow:none!important
}
.btn.primary{background:var(--biz-accent)!important;border-color:var(--biz-accent)!important;color:#fff!important}
.btn.primary:hover{background:var(--biz-accent-hover)!important;border-color:var(--biz-accent-hover)!important}
.btn:not(.primary){background:#fff!important;border-color:#cfd6db!important;color:#34414b!important}
.btn:not(.primary):hover{background:#f6f7f8!important;border-color:#bbc5cb!important}
.badge,.status-pill,.count-pill{
 border-radius:5px!important;font-size:9px!important;font-weight:800!important;letter-spacing:.02em!important;
 box-shadow:none!important
}
input,select,textarea{
 border-radius:6px!important;border-color:#cfd6db!important;background:#fff!important;
 min-height:36px;color:#202b34
}
input:focus,select:focus,textarea:focus{border-color:#8798a4!important;box-shadow:0 0 0 2px rgba(87,107,121,.10)!important}
.field label{font-size:9px!important;letter-spacing:.04em!important;color:#59666f!important;font-weight:800!important}
table{font-size:11.5px}
.table-wrap{border:1px solid var(--biz-border-soft);border-radius:7px;background:#fff}
table thead th{
 background:#f2f4f5!important;color:#56636c!important;font-size:8.5px!important;
 letter-spacing:.055em!important;text-transform:uppercase!important;border-bottom:1px solid var(--biz-border)!important
}
table tbody td{border-bottom-color:#edf0f1!important}
table tbody tr:nth-child(even){background:#fafbfb!important}
table tbody tr:hover{background:#f4f6f7!important}
.kpi-grid article,.dashboard-kpis>div,.tax-kpis>div,.cd-kpis>div,.stat-card{
 border:1px solid var(--biz-border)!important;border-radius:7px!important;background:#fff!important;
 box-shadow:none!important;padding:12px 13px!important
}
.kpi-grid strong,.dashboard-kpis strong,.stat-card strong{font-size:20px!important;letter-spacing:-.02em!important}
.kpi-grid small,.dashboard-kpis small,.stat-card span{
 color:#6d7981!important;font-size:8.5px!important;letter-spacing:.045em!important;text-transform:uppercase
}
.role-action,.loan-workbucket,.ops-kpis a,.customer-work-filter{
 border-radius:7px!important;box-shadow:none!important;border-color:var(--biz-border)!important
}
.role-action:hover,.loan-workbucket:hover,.ops-kpis a:hover{transform:none!important;border-color:#b9c3c9!important;background:#f8f9fa!important}
.role-action.primary{border-left:3px solid var(--biz-accent)!important}
.alert{border-radius:7px!important;box-shadow:none!important;font-size:11.5px!important}
.simple-guide{border-radius:6px!important;background:#f8f9fa!important;border-color:#dfe4e7!important}
details.card>summary{min-height:44px!important}
.dossier-secondary>summary b,.dashboard-secondary>summary b{font-size:12px!important}
.action-menu>summary{border-radius:6px!important}
.action-menu-panel{border-radius:7px!important;box-shadow:0 8px 22px rgba(18,27,34,.11)!important}
.ops-row,.tax-row,.cd-row,.department-workitem{
 border-radius:7px!important;box-shadow:none!important
}
.ops-row{padding:11px 12px!important}
.ops-priority{border-radius:5px!important;min-height:25px!important}
.empty-state{border-radius:7px!important;background:#f8f9fa!important}
.system-attention-item{border-radius:7px!important;box-shadow:none!important}
.settings-jumpnav{border-radius:7px!important;box-shadow:0 1px 4px rgba(20,29,36,.05)!important}
.sidebar{
 background:#fff!important;border-right:1px solid #dce1e4!important;box-shadow:none!important
}
.sidebar a,.sidebar button{border-radius:5px!important}
.sidebar .active,.sidebar a.active{background:#eef1f3!important;color:#1f2c35!important;font-weight:800!important}
.topbar{background:rgba(255,255,255,.97)!important;border-bottom:1px solid #dfe3e6!important;box-shadow:none!important}
.main-content{padding-top:18px!important}
hr{border-color:#e3e7e9}
@media(max-width:760px){
 .hero-card,.tax-hero,.cd-hero{padding:17px!important}
 .hero-card h1,.hero-card h2,.tax-hero h1,.tax-hero h2,.cd-hero h1,.cd-hero h2{font-size:20px!important}
}

/* =========================================================
   v71.279 — PROFESSIONAL UI FASE 2
   Navigatie, hiërarchie en dossieridentiteit.
   ========================================================= */
:root{--pro-sidebar:236px;--pro-content:1440px;--pro-header-h:54px}
.app-shell,.layout{background:#f3f5f6}
.sidebar{width:var(--pro-sidebar)!important;padding:12px 10px!important}
.sidebar .brand,.sidebar-brand{min-height:48px!important;padding:8px 9px 12px!important;margin-bottom:8px!important;border-bottom:1px solid #e5e8ea!important}
.sidebar nav,.sidebar .nav{gap:2px!important}
.sidebar a,.sidebar button{min-height:34px!important;padding:7px 9px!important;font-size:11px!important;color:#46535c!important;border:1px solid transparent!important}
.sidebar .nav-section,.sidebar .menu-label,.sidebar small.nav-label{margin:13px 8px 5px!important;font-size:8px!important;letter-spacing:.10em!important;text-transform:uppercase!important;color:#8a949b!important;font-weight:900!important}
.sidebar .active,.sidebar a.active{background:#eef1f3!important;border-color:#e0e5e8!important;color:#17242d!important}
.topbar{min-height:var(--pro-header-h)!important;padding:8px 18px!important}
.topbar h1,.topbar .page-title{font-size:14px!important;font-weight:800!important;letter-spacing:-.01em!important}
.main-content>section,.main-content>div:not(.flash):not(.modal):not(.toast){max-width:var(--pro-content);margin-left:auto;margin-right:auto}
.hero-card{margin-bottom:12px!important}
.card{padding:15px!important;margin-bottom:10px!important}
.section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.actions-row{gap:6px!important}.btn.small{min-height:29px!important;padding:5px 9px!important;font-size:10px!important}
.dossier-identity{display:flex;align-items:center;gap:14px;padding:10px 13px;margin:0 auto 10px;border:1px solid #d9dfe3;border-radius:7px;background:#fff}
.dossier-identity-main{min-width:220px}.dossier-identity-main small,.dossier-identity-meta small{display:block;font-size:8px;font-weight:900;letter-spacing:.07em;color:#879198;text-transform:uppercase}
.dossier-identity-main b{display:block;font-size:14px;color:#202c35;margin-top:2px}.dossier-identity-meta{display:flex;gap:20px;align-items:center;margin-left:auto}
.dossier-identity-meta b{display:block;font-size:11px;color:#34414a;margin-top:2px}
.professional-section-title{display:flex;align-items:end;justify-content:space-between;gap:12px;margin:17px auto 7px!important;padding:0 2px 7px;border-bottom:1px solid #dfe4e7}
.professional-section-title h2{font-size:13px;margin:0;color:#26333c}.professional-section-title p{font-size:10px;margin:2px 0 0;color:#7b868e}
.table-wrap table th,.table-wrap table td{padding-top:8px!important;padding-bottom:8px!important}.form-grid{gap:10px!important}.detail-grid{gap:9px!important}
.badge.green,.status-pill.success{background:#edf5ef!important;color:#356146!important;border-color:#d8e8dd!important}
.badge.warning,.badge.gold,.status-pill.warning{background:#faf3e4!important;color:#755c27!important;border-color:#eadcba!important}
.badge.red,.badge.danger,.status-pill.danger{background:#f8eaea!important;color:#813c3a!important;border-color:#ebd2d1!important}
.dossier-secondary>summary,.dashboard-secondary>summary{background:#fbfcfc}.dossier-secondary[open]>summary,.dashboard-secondary[open]>summary{background:#f7f9f9}
@media(max-width:900px){.dossier-identity{align-items:flex-start;flex-direction:column}.dossier-identity-meta{margin-left:0;flex-wrap:wrap;gap:10px 18px}}


/* =========================================================
   v71.280 — PROFESSIONAL UI FASE 3
   Executive backoffice: paginaheaders, tabellen en formulieren.
   ========================================================= */
:root{
 --exec-ink:#17242d;
 --exec-muted:#64717a;
 --exec-line:#dce2e5;
 --exec-soft:#f6f8f8;
 --exec-panel:#ffffff;
 --exec-accent:#94712f;
}
body{font-feature-settings:"tnum" 1,"kern" 1}
.main-content{padding-left:20px!important;padding-right:20px!important;padding-bottom:32px!important}
.hero-card{
 position:relative;overflow:hidden;min-height:94px!important;
 display:flex!important;align-items:center!important;justify-content:space-between!important
}
.hero-card:after{
 content:"";position:absolute;right:-70px;top:-105px;width:250px;height:250px;
 border:1px solid rgba(255,255,255,.055);border-radius:50%;pointer-events:none
}
.hero-card .actions-row{position:relative;z-index:1}
.hero-card .eyebrow{color:#c6aa70!important}
.hero-card h2{font-weight:750!important}
.hero-card .btn:not(.primary){background:rgba(255,255,255,.07)!important;border-color:rgba(255,255,255,.18)!important;color:#fff!important}
.hero-card .btn:not(.primary):hover{background:rgba(255,255,255,.12)!important}

/* Executive KPI strip */
.kpi-grid,.dashboard-kpis,.tax-kpis,.cd-kpis{gap:7px!important}
.kpi-grid article,.dashboard-kpis>div,.tax-kpis>div,.cd-kpis>div,.stat-card{
 position:relative;min-height:74px!important;padding:12px 14px!important
}
.kpi-grid article:before,.dashboard-kpis>div:before,.stat-card:before{
 content:"";position:absolute;left:-1px;top:12px;bottom:12px;width:2px;background:#d6dde1
}
.kpi-grid article.danger:before,.stat-card.danger:before{background:#a94d49}
.kpi-grid article.warning:before,.stat-card.warning:before{background:#a78035}
.kpi-grid article.success:before,.stat-card.success:before{background:#4f7d60}

/* Professional tables */
.table-wrap{overflow:auto!important}
.table-wrap table{border-collapse:separate!important;border-spacing:0!important;width:100%}
.table-wrap thead th{height:35px!important;white-space:nowrap!important}
.table-wrap tbody td{vertical-align:middle!important}
.table-wrap tbody tr:last-child td{border-bottom:0!important}
.table-wrap td:first-child,.table-wrap th:first-child{padding-left:13px!important}
.table-wrap td:last-child,.table-wrap th:last-child{padding-right:13px!important}
.table-wrap .btn{white-space:nowrap}

/* Forms: business software rather than consumer UI */
.form-grid{align-items:end}
.field{margin:0!important}
.field label{display:block;margin-bottom:5px!important}
input,select,textarea{font-size:12px!important;padding:7px 9px!important}
textarea{line-height:1.45}
input[readonly],input:disabled,select:disabled,textarea:disabled{background:#f1f3f4!important;color:#68747c!important}
fieldset{border:1px solid var(--exec-line)!important;border-radius:7px!important;padding:13px!important}
legend{padding:0 6px;font-size:9px;font-weight:900;letter-spacing:.06em;text-transform:uppercase;color:#66727a}

/* Action hierarchy */
.actions-row>.btn.primary:first-child{font-weight:850!important}
.actions-row>.btn+.btn{margin-left:0!important}
.card>.actions-row:last-child{margin-top:11px}
a.btn[href*="delete"],button.danger,.btn.danger{background:#fff!important;color:#8a403d!important;border-color:#e3c8c6!important}
a.btn[href*="delete"]:hover,button.danger:hover,.btn.danger:hover{background:#fbf3f2!important}

/* Dossier content hierarchy */
.dossier-identity{box-shadow:0 1px 2px rgba(18,27,34,.035)}
.dossier-identity-main b{letter-spacing:-.01em}
.dossier-secondary{border-color:#e0e4e7!important}
.dossier-secondary>summary{padding:10px 13px!important}
.dossier-secondary-body{padding:13px!important}
.smart-next-action{
 border-radius:8px!important;border:1px solid #d7dee2!important;
 box-shadow:none!important;background:#fff!important
}
.smart-next-action .eyebrow{color:#806329!important}
.smart-next-action h2{font-size:16px!important;color:#1f2c35!important}
.smart-next-cta{border-left:1px solid #e4e8ea!important;padding-left:15px!important}

/* Cleaner operational lists */
.ops-list,.tax-list,.cd-list{gap:6px!important}
.ops-row,.tax-row,.cd-row,.department-workitem{
 background:#fff!important;border:1px solid #dce2e5!important
}
.ops-row:hover,.tax-row:hover,.cd-row:hover,.department-workitem:hover{
 border-color:#bfc9cf!important;background:#fbfcfc!important
}
.ops-row .btn,.tax-row .btn,.cd-row .btn{min-width:88px}

/* Professional empty states */
.empty-state{padding:26px 20px!important;border:1px dashed #cfd7dc!important;text-align:center}
.empty-state h2,.empty-state h3{font-size:14px!important;color:#33414a}
.empty-state p{max-width:560px;margin-left:auto!important;margin-right:auto!important;color:#77828a!important}

/* Dashboard modules */
.dashboard-role-actions{gap:7px!important}
.role-action{min-height:72px!important;padding:12px 13px!important}
.role-action b{font-size:12px!important;color:#25323b}
.role-action small{font-size:9px!important;color:#758088!important;line-height:1.4}
.role-action.primary{background:#fff!important}
.dashboard-admin-link>a{background:#fff!important}

/* Subtle desktop density */
@media(min-width:1100px){
 .card{padding:14px!important}
 .hero-card{padding:18px 21px!important}
}
@media(max-width:700px){
 .main-content{padding-left:11px!important;padding-right:11px!important}
 .smart-next-cta{border-left:0!important;border-top:1px solid #e4e8ea!important;padding-left:0!important;padding-top:10px!important}
}


/* =========================================================
   v71.281 — PROFESSIONAL UI FASE 4
   Premium backoffice polish: navigatie, data en interactie.
   ========================================================= */
:root{
 --premium-bg:#f2f4f5;
 --premium-panel:#fff;
 --premium-ink:#17242d;
 --premium-sub:#65727a;
 --premium-border:#d9dfe3;
 --premium-soft:#f7f8f9;
 --premium-gold:#92702f;
}
body{background:var(--premium-bg)!important}
::selection{background:#d9c69d;color:#17242d}

/* Navigation reads like enterprise software */
.sidebar{overflow-y:auto!important;scrollbar-width:thin;scrollbar-color:#d7dde1 transparent}
.sidebar::-webkit-scrollbar{width:5px}.sidebar::-webkit-scrollbar-thumb{background:#d7dde1;border-radius:5px}
.sidebar a{position:relative}
.sidebar a.active:before,.sidebar .active:before{
 content:"";position:absolute;left:-10px;top:7px;bottom:7px;width:2px;background:var(--premium-gold)
}
.topbar{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.topbar .user-chip,.topbar .user-menu{border:1px solid #e0e4e7!important;border-radius:6px!important;background:#fff!important}

/* Page rhythm */
.main-content>.hero-card:first-of-type{margin-top:0!important}
.main-content>.section-head,.main-content>.professional-section-title{max-width:var(--pro-content)}
.grid.two,.grid.three,.grid.four{gap:9px!important}
.grid.two>.card,.grid.three>.card,.grid.four>.card{height:100%}
.card+.card{margin-top:0}
.card h1,.card h2,.card h3{font-weight:750}

/* Data surfaces */
.table-wrap{box-shadow:0 1px 2px rgba(20,29,36,.025)}
.table-wrap thead{position:relative;z-index:1}
.table-wrap thead th{font-weight:850!important}
.table-wrap tbody td{color:#35424b}
.table-wrap tbody td b{color:#1d2a33;font-weight:750}
.table-wrap tbody td .muted{font-size:10px}
.table-wrap .actions-row{justify-content:flex-end}
.table-wrap td.money,.table-wrap th.money,.money-cell{text-align:right;font-variant-numeric:tabular-nums}

/* KPI numeric consistency */
.kpi-grid strong,.dashboard-kpis strong,.tax-kpis strong,.cd-kpis strong,.stat-card strong,
.dossier-identity-meta b{font-variant-numeric:tabular-nums}

/* Search / filter surfaces */
.filters,.search-row{background:#fafbfb;border-radius:6px}
.ops-search .filters{padding:4px 0 0;background:transparent}
.filters .btn,.search-row .btn{align-self:end}
input[type="search"]{background-image:none!important}
input::placeholder,textarea::placeholder{color:#a0a8ad!important}

/* Professional tabs */
.tabs,.subtabs,.dor-exception-tabs{
 display:flex;gap:3px!important;padding:3px!important;background:#eceff1!important;
 border:1px solid #dce1e4!important;border-radius:7px!important;width:max-content;max-width:100%;overflow:auto
}
.tabs a,.subtabs a,.dor-exception-tabs a{
 border:0!important;border-radius:5px!important;background:transparent!important;
 padding:6px 9px!important;font-size:10px!important;font-weight:750!important;color:#66727a!important;white-space:nowrap
}
.tabs a.active,.subtabs a.active,.dor-exception-tabs a.active{
 background:#fff!important;color:#1e2b34!important;box-shadow:0 1px 2px rgba(19,28,35,.07)!important
}

/* Dropdowns / menus / modal polish */
.action-menu-panel,.dropdown-menu,.user-dropdown{
 border:1px solid #d8dee2!important;background:#fff!important;border-radius:7px!important;
 box-shadow:0 12px 28px rgba(19,28,35,.12)!important;padding:5px!important
}
.action-menu-panel a,.dropdown-menu a,.user-dropdown a{
 border-radius:5px!important;padding:7px 9px!important;font-size:10.5px!important
}
.action-menu-panel a:hover,.dropdown-menu a:hover,.user-dropdown a:hover{background:#f3f5f6!important}
.modal,.dialog,.modal-card{
 border-radius:9px!important;border:1px solid #d8dee2!important;
 box-shadow:0 24px 65px rgba(15,23,29,.22)!important
}
.modal-backdrop,.dialog-backdrop{background:rgba(20,29,36,.48)!important;backdrop-filter:blur(2px)}

/* Professional progress / stepper */
.stepper,.workflow-steps,.cd-steps{gap:4px!important}
.step,.workflow-step,.cd-step{border-radius:6px!important;box-shadow:none!important}
.step.active,.workflow-step.active,.cd-step.active{border-color:#a88b53!important;background:#faf7f0!important}
.step.done,.workflow-step.done,.cd-step.done{background:#f1f5f2!important;border-color:#d6e2da!important}

/* Print/export buttons visually secondary */
a[href*="pdf"].btn:not(.primary),a[href*="csv"].btn:not(.primary),a[href*="export"].btn:not(.primary){
 background:#fafbfb!important;color:#53616a!important
}

/* Tablet: keep business density but remove horizontal squeeze */
@media(max-width:1100px){
 :root{--pro-sidebar:220px}
 .main-content{padding-left:14px!important;padding-right:14px!important}
 .kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:760px){
 .tabs,.subtabs,.dor-exception-tabs{width:100%}
 .hero-card{min-height:auto!important}
 .hero-card .actions-row{width:100%}
 .hero-card .actions-row .btn{flex:1 1 auto;justify-content:center}
}


/* =========================================================
   v71.282 — DARKER NAVIGATION & READABILITY
   Donkerdere navigatie met sterker tekstcontrast.
   ========================================================= */
:root{
 --nav-dark:#17242d;
 --nav-dark-2:#1d2b35;
 --nav-dark-3:#24343f;
 --nav-text:#f4f6f7;
 --nav-muted:#b8c2c8;
 --nav-line:#30424e;
 --nav-active:#2b3c47;
 --nav-gold:#b28b42;
}

/* Sidebar donkerder en teksten beter leesbaar */
.sidebar{
 background:linear-gradient(180deg,var(--nav-dark),var(--nav-dark-2))!important;
 border-right:1px solid #0f1a21!important;
 color:var(--nav-text)!important;
}
.sidebar .brand,.sidebar-brand{
 border-bottom:1px solid var(--nav-line)!important;
 color:#fff!important;
}
.sidebar .brand *,.sidebar-brand *{color:#fff!important}
.sidebar a,.sidebar button{
 color:var(--nav-text)!important;
 font-weight:700!important;
 text-shadow:0 1px 0 rgba(0,0,0,.12);
}
.sidebar a:hover,.sidebar button:hover{
 background:var(--nav-dark-3)!important;
 color:#fff!important;
}
.sidebar .active,.sidebar a.active{
 background:var(--nav-active)!important;
 border-color:#3b4e5a!important;
 color:#fff!important;
}
.sidebar a.active:before,.sidebar .active:before{
 background:var(--nav-gold)!important;
 width:3px!important;
}
.sidebar .nav-section,.sidebar .menu-label,.sidebar small.nav-label{
 color:var(--nav-muted)!important;
 font-weight:900!important;
 letter-spacing:.11em!important;
}
.sidebar .menu-search{
 background:#111c23!important;
 border:1px solid #31434f!important;
 border-radius:6px!important;
}
.sidebar .menu-search input{
 background:transparent!important;
 color:#fff!important;
 border:0!important;
}
.sidebar .menu-search input::placeholder{color:#93a1aa!important}
.sidebar .menu-search span{color:#c6d0d5!important}
.sidebar .menu-compact-toggle{
 background:#111c23!important;
 border:1px solid #31434f!important;
 color:#dce3e7!important;
}
.sidebar .menu-compact-toggle em,.sidebar .menu-compact-toggle span{color:#dce3e7!important}

/* Topbar donkerder */
.topbar{
 background:rgba(23,36,45,.985)!important;
 border-bottom:1px solid #0f1a21!important;
 color:#fff!important;
}
.topbar h1,.topbar .page-title,.topbar strong,.topbar b{color:#fff!important}
.topbar a,.topbar button{color:#edf2f4!important}
.topbar a:hover,.topbar button:hover{color:#fff!important}
.topbar .user-chip,.topbar .user-menu{
 background:#20303a!important;
 border-color:#344752!important;
 color:#fff!important;
}
.topbar .user-chip *,.topbar .user-menu *{color:#fff!important}
.top-action-link{
 background:#20303a!important;
 border:1px solid #344752!important;
 color:#f4f6f7!important;
 border-radius:6px!important;
 padding:6px 9px!important;
}

/* Staff focus bar donker, maar goed leesbaar */
.staff-focus-bar{
 background:#1d2b35!important;
 border-color:#30424e!important;
 color:#fff!important;
}
.staff-focus-bar small{color:#b9c4ca!important}
.staff-focus-bar b{color:#fff!important}

/* Algemene menu/dropdown leesbaarheid */
.action-menu-panel,.dropdown-menu,.user-dropdown{
 background:#1d2b35!important;
 border-color:#334651!important;
}
.action-menu-panel a,.dropdown-menu a,.user-dropdown a{
 color:#eef2f4!important;
}
.action-menu-panel a:hover,.dropdown-menu a:hover,.user-dropdown a:hover{
 background:#293b46!important;
 color:#fff!important;
}

/* Donkere tabs waar gebruikt in navigatiecontext */
.tabs,.subtabs,.dor-exception-tabs{
 background:#e8ecee!important;
}
.tabs a,.subtabs a,.dor-exception-tabs a{
 color:#44525b!important;
}
.tabs a.active,.subtabs a.active,.dor-exception-tabs a.active{
 color:#17242d!important;
 font-weight:850!important;
}

/* Extra contrast kleine teksten */
.sidebar small,.topbar small,.staff-focus-bar small{
 opacity:1!important;
}
.sidebar svg,.topbar svg{filter:brightness(1.25)}


/* =========================================================
   v71.283 — DARK PROFESSIONAL CONTENT HIERARCHY
   Donkere zakelijke lijn doorgetrokken naar pagina-inhoud.
   ========================================================= */
:root{
 --content-dark:#1b2933;
 --content-dark-2:#22323d;
 --content-line:#d8dfe3;
 --content-soft:#f5f7f8;
 --content-gold:#a98239;
 --content-text:#1b2730;
 --content-muted:#66737c;
}

/* Page and section hierarchy */
.main-content{
 background:transparent!important;
 color:var(--content-text)!important;
}
.section-head{
 border-bottom:1px solid var(--content-line);
 padding-bottom:8px!important;
 margin-bottom:12px!important;
}
.section-head h2,.section-head h3{
 color:#1d2a33!important;
 font-weight:800!important;
}
.section-head .eyebrow{
 color:#83662d!important;
}

/* Stronger professional card headers */
.card>.section-head:first-child{
 margin-top:-2px!important;
}
.card-titlebar{
 display:flex;
 align-items:center;
 justify-content:space-between;
 gap:12px;
 padding:9px 12px;
 margin:-15px -15px 13px;
 background:linear-gradient(180deg,#263641,#21313b);
 border-bottom:1px solid #17242d;
 border-radius:7px 7px 0 0;
 color:#fff;
}
.card-titlebar h2,.card-titlebar h3,.card-titlebar b{
 color:#fff!important;
 margin:0!important;
}
.card-titlebar small,.card-titlebar .muted{
 color:#c1cbd0!important;
}

/* Dossier identity becomes a darker business strip */
.dossier-identity{
 background:linear-gradient(180deg,#263641,#21313b)!important;
 border-color:#17242d!important;
 color:#fff!important;
}
.dossier-identity-main small,.dossier-identity-meta small{
 color:#b9c4ca!important;
}
.dossier-identity-main b,.dossier-identity-meta b{
 color:#fff!important;
}
.dossier-identity .badge{
 background:#314652!important;
 border-color:#415865!important;
 color:#fff!important;
}

/* Smart next action more obvious without becoming loud */
.smart-next-action{
 border-left:4px solid var(--content-gold)!important;
 background:#fff!important;
}
.smart-next-action .eyebrow{
 color:#85672d!important;
 font-weight:900!important;
}
.smart-next-action h2{
 color:#17242d!important;
}
.smart-next-cta{
 background:#fafbfb;
 border-radius:0 7px 7px 0;
}

/* Tables: darker headers and stronger readability */
.table-wrap thead th{
 background:#263641!important;
 color:#f5f7f8!important;
 border-bottom-color:#17242d!important;
}
.table-wrap thead th:first-child{border-top-left-radius:6px}
.table-wrap thead th:last-child{border-top-right-radius:6px}
.table-wrap tbody tr:nth-child(even){
 background:#f7f9f9!important;
}
.table-wrap tbody tr:hover{
 background:#eef2f4!important;
}
.table-wrap tbody td{
 color:#2e3b44!important;
}
.table-wrap tbody td b{
 color:#15222b!important;
}

/* Forms: stronger labels and clearer grouping */
.field label{
 color:#3d4a53!important;
 font-weight:850!important;
}
.form-grid>.field{
 min-width:0;
}
input,select,textarea{
 border-color:#c7d0d5!important;
 background:#fff!important;
 color:#17242d!important;
}
input:focus,select:focus,textarea:focus{
 border-color:#718793!important;
 box-shadow:0 0 0 2px rgba(74,97,111,.12)!important;
}
fieldset{
 background:#fbfcfc!important;
}

/* Buttons: clearer hierarchy */
.btn{
 letter-spacing:.005em;
}
.btn.primary{
 background:#9a7632!important;
 border-color:#9a7632!important;
 color:#fff!important;
}
.btn.primary:hover{
 background:#846329!important;
 border-color:#846329!important;
}
.btn:not(.primary){
 background:#fff!important;
 color:#2d3b44!important;
 border-color:#cbd3d8!important;
}

/* Operational list headers */
.ops-card>.section-head,
.loan-daystart>.section-head,
.purchase-communication>.section-head{
 border-bottom:1px solid #dde3e6!important;
}

/* Details and secondary sections */
details.card>summary{
 color:#26343d!important;
 font-weight:800!important;
}
details.card>summary span{
 color:#79848c!important;
}
details.card[open]>summary{
 border-bottom:1px solid #e0e5e8!important;
}

/* Status cards more restrained but readable */
.system-attention-item{
 background:#fff!important;
}
.system-attention-item small{
 color:#6c7880!important;
}
.system-attention-item b{
 color:#1f2d36!important;
}

/* Professional breadcrumb treatment */
.smart-breadcrumbs{
 color:#738089!important;
 font-size:10px!important;
}
.smart-breadcrumbs a{
 color:#4b5a64!important;
 font-weight:700!important;
}
.smart-breadcrumbs a:hover{
 color:#1f2d36!important;
}

/* Improve contrast in dark surfaces */
.hero-card .muted,.hero-card small{
 color:#d2dade!important;
}
.hero-card strong,.hero-card b{
 color:#fff!important;
}

/* Compact executive sections */
.dashboard-secondary>summary,
.dossier-secondary>summary{
 padding:10px 12px!important;
}
.dashboard-secondary-body,
.dossier-secondary-body{
 padding-top:12px!important;
}

/* Tablet and mobile */
@media(max-width:760px){
 .table-wrap{
   border-radius:6px!important;
 }
 .dossier-identity{
   padding:12px!important;
 }
 .smart-next-cta{
   background:transparent!important;
   border-radius:0!important;
 }
 .card-titlebar{
   margin:-15px -15px 12px;
 }
}


/* =========================================================
   v71.284 — PROFESSIONAL CONSISTENCY FASE 6
   Laatste visuele inconsistenties: status, alerts, acties en formulieren.
   ========================================================= */
:root{
 --cons-dark:#1b2933;
 --cons-dark-2:#22333e;
 --cons-dark-3:#2a3d49;
 --cons-gold:#a98239;
 --cons-border:#d6dde1;
 --cons-soft:#f4f6f7;
 --cons-text:#1b2730;
 --cons-muted:#66737c;
}

/* Uniform page section framing */
.content-section,.workflow-section,.report-section,.settings-section{
 border:1px solid var(--cons-border)!important;
 border-radius:8px!important;
 background:#fff!important;
 box-shadow:0 1px 2px rgba(18,27,34,.03)!important;
}
.content-section>.section-head:first-child,
.workflow-section>.section-head:first-child,
.report-section>.section-head:first-child,
.settings-section>.section-head:first-child{
 margin:-1px -1px 12px!important;
 padding:10px 13px!important;
 background:#f7f9f9!important;
 border:0!important;
 border-bottom:1px solid #dce2e5!important;
 border-radius:8px 8px 0 0!important;
}

/* Alerts: readable, restrained and consistent */
.alert{
 border-width:1px!important;
 border-left-width:4px!important;
 padding:10px 12px!important;
 line-height:1.45!important;
}
.alert.info,.alert.notice{
 background:#f0f4f6!important;
 border-color:#7e96a4!important;
 color:#29404d!important;
}
.alert.success{
 background:#eef5f0!important;
 border-color:#5f866c!important;
 color:#31513b!important;
}
.alert.warning{
 background:#fbf5e9!important;
 border-color:#a7833c!important;
 color:#684f1f!important;
}
.alert.danger,.alert.error{
 background:#f9eded!important;
 border-color:#a6534f!important;
 color:#713633!important;
}
.alert b,.alert strong{color:inherit!important}

/* Status pills and badges: same language everywhere */
.badge,.status-pill,.count-pill{
 border:1px solid #cfd7db!important;
 background:#eef2f4!important;
 color:#394852!important;
}
.badge.green,.badge.success,.status-pill.success{
 background:#edf5ef!important;
 border-color:#cfe0d5!important;
 color:#315d40!important;
}
.badge.warning,.badge.gold,.status-pill.warning{
 background:#fbf4e7!important;
 border-color:#e2d3ae!important;
 color:#745a22!important;
}
.badge.red,.badge.danger,.status-pill.danger{
 background:#f8eaea!important;
 border-color:#e6c9c7!important;
 color:#7e3c38!important;
}
.badge.blue,.badge.info,.status-pill.info{
 background:#edf3f6!important;
 border-color:#cfdae0!important;
 color:#3e5967!important;
}

/* Form sections and grouped controls */
.form-section,.form-card{
 border:1px solid var(--cons-border)!important;
 border-radius:8px!important;
 background:#fff!important;
}
.form-section-title,.form-card-title{
 padding:9px 12px!important;
 margin:0!important;
 background:#263641!important;
 color:#fff!important;
 border-radius:7px 7px 0 0!important;
 font-size:11px!important;
 font-weight:800!important;
}
.form-section-title small,.form-card-title small{
 color:#c3cdd2!important;
}
.form-section-body,.form-card-body{
 padding:12px!important;
}

/* Checkboxes and radio rows easier to scan */
.checkbox-row,.radio-row,.choice-row{
 min-height:34px!important;
 padding:7px 9px!important;
 border:1px solid #dbe1e4!important;
 border-radius:6px!important;
 background:#fafbfb!important;
}
.checkbox-row:hover,.radio-row:hover,.choice-row:hover{
 background:#f4f6f7!important;
 border-color:#c8d1d6!important;
}
.checkbox-row input,.radio-row input,.choice-row input{
 accent-color:#8f6c2e;
}

/* Sticky, legible data table headers on desktop */
@media(min-width:900px){
 .table-wrap.sticky-head thead th,
 .table-wrap table.sticky-head thead th{
   position:sticky;
   top:0;
   z-index:3;
   box-shadow:0 1px 0 #17242d;
 }
}

/* Clearer row states */
.table-wrap tbody tr.row-attention{
 background:#fff9ed!important;
}
.table-wrap tbody tr.row-danger{
 background:#fff1f0!important;
}
.table-wrap tbody tr.row-success{
 background:#f1f7f3!important;
}
.table-wrap tbody tr.row-muted{
 opacity:.72;
}

/* Action blocks */
.action-card,.next-action-card{
 border:1px solid #d6dde1!important;
 border-radius:8px!important;
 background:#fff!important;
 box-shadow:none!important;
}
.action-card.primary,.next-action-card.primary{
 border-left:4px solid var(--cons-gold)!important;
}
.action-card.danger,.next-action-card.danger{
 border-left:4px solid #a6534f!important;
}

/* Secondary navigation bars */
.secondary-nav,.context-nav{
 display:flex;
 align-items:center;
 gap:4px;
 padding:4px;
 background:#22333e!important;
 border:1px solid #17242d!important;
 border-radius:7px!important;
 overflow:auto;
}
.secondary-nav a,.context-nav a{
 padding:6px 9px!important;
 border-radius:5px!important;
 color:#dbe2e6!important;
 font-size:10px!important;
 font-weight:750!important;
 white-space:nowrap;
}
.secondary-nav a:hover,.context-nav a:hover{
 background:#2c414e!important;
 color:#fff!important;
}
.secondary-nav a.active,.context-nav a.active{
 background:#fff!important;
 color:#17242d!important;
}

/* Modal actions aligned consistently */
.modal-footer,.dialog-footer{
 display:flex!important;
 align-items:center!important;
 justify-content:flex-end!important;
 gap:6px!important;
 padding-top:10px!important;
 border-top:1px solid #e0e5e8!important;
}

/* Readability helpers */
.readable-copy{
 max-width:78ch;
 line-height:1.58!important;
 color:#4b5962!important;
}
.help-text,.field-help{
 color:#728089!important;
 font-size:9.5px!important;
 line-height:1.45!important;
}
kbd{
 background:#263641!important;
 color:#fff!important;
 border:0!important;
 border-radius:4px!important;
 box-shadow:none!important;
 padding:2px 5px!important;
}

/* Refine financial values */
.amount,.money-value,.financial-value{
 font-variant-numeric:tabular-nums;
 font-weight:800!important;
 color:#18252e!important;
}
.amount.negative,.money-value.negative{
 color:#8a3f3b!important;
}
.amount.positive,.money-value.positive{
 color:#3f684d!important;
}

/* Mobile */
@media(max-width:760px){
 .alert{padding:9px 10px!important}
 .secondary-nav,.context-nav{width:100%}
 .modal-footer,.dialog-footer{
   flex-direction:column-reverse!important;
   align-items:stretch!important;
 }
 .modal-footer .btn,.dialog-footer .btn{
   width:100%;
   justify-content:center;
 }
}


/* =========================================================
   v71.287 — DASHBOARD LIVE DATE & TIME
   ========================================================= */
.dashboard-hero-with-clock{
 display:grid!important;
 grid-template-columns:minmax(0,1fr) auto!important;
 align-items:center!important;
 gap:22px!important;
}
.dashboard-clock-card{
 min-width:190px;
 padding:12px 15px;
 background:rgba(10,19,25,.28);
 border:1px solid rgba(255,255,255,.14);
 border-radius:7px;
 text-align:right;
 display:flex;
 flex-direction:column;
 align-items:flex-end;
 justify-content:center;
}
.dashboard-clock-card small{
 color:#c6d0d5!important;
 font-size:9px!important;
 font-weight:850!important;
 letter-spacing:.11em!important;
 margin-bottom:2px;
}
.dashboard-clock-card strong{
 color:#fff!important;
 font-size:28px!important;
 line-height:1.05!important;
 font-variant-numeric:tabular-nums;
 letter-spacing:-.02em;
}
.dashboard-clock-card span{
 color:#d4dde1!important;
 font-size:10px!important;
 margin-top:4px;
 white-space:nowrap;
}
@media(max-width:760px){
 .dashboard-hero-with-clock{
   grid-template-columns:1fr!important;
   gap:12px!important;
 }
 .dashboard-clock-card{
   width:100%;
   min-width:0;
   align-items:flex-start;
   text-align:left;
 }
 .dashboard-clock-card strong{font-size:24px!important}
}


/* v71.288 — maandbedrag rente in klantbespreking belening */
.loan-agreement-grid .loan-monthly-interest-amount{
 background:#f8f5ed;
 border-color:#dfd3b7;
}
.loan-agreement-grid .loan-monthly-interest-amount b{
 color:#6d5423;
}
.loan-agreement-grid .loan-monthly-interest-amount span{
 display:block;
 margin-top:2px;
 color:#7a858c;
 font-size:9px;
}

/* =========================================================
   v71.291 — SYSTEMBREDE RESPONSIVE & SMOOTHNESS LAAG
   Schaalbaar van kleine telefoon tot brede desktop zonder
   workflows of bestaande componentlogica te wijzigen.
   ========================================================= */
html{
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
  scroll-behavior:smooth;
  overflow-x:hidden;
}
body{max-width:100%;overflow-x:hidden}
img,svg,video,canvas{max-width:100%;height:auto}
iframe{max-width:100%}
pre,code{max-width:100%;overflow-wrap:anywhere}
main,.card,.hero-card,.grid>*,.form-grid>*,.section-head>*,.page-actions>*,.actions-row>*{min-width:0}
.card,.hero-card,.alert,.field,.form-grid,.grid{max-width:100%}
.page-head,.topbar,.section-head,.page-actions,.actions,.actions-row{min-width:0}
.page-head>*,.topbar>*,.section-head>*,.page-actions>*,.actions>*,.actions-row>*{min-width:0}
h1,h2,h3,h4,p,small,label,strong,span,a,button{overflow-wrap:anywhere}

/* Containers schalen mee, zonder onnodig breed uit te rekken. */
main{
  width:100%;
  max-width:1760px;
  padding-inline:clamp(16px,2.1vw,34px);
}
.card,.hero-card{
  padding:clamp(15px,1.55vw,24px);
}
.grid.two,.grid.three,.stats-grid,.kpi-grid{
  align-items:stretch;
}

/* Formulieren blijven bedienbaar op touch en voorkomen iOS-zoom. */
input,select,textarea,button{max-width:100%}
.field input,.field select,.field textarea,
.filters input,.filters select,.report-filters input,.report-filters select{
  min-height:42px;
}
textarea{resize:vertical}
button,.btn,a.btn{touch-action:manipulation}

/* Tabellen: niets afsnijden; lokaal scrollen is bewust toegestaan. */
.table-wrap{
  position:relative;
  width:100%;
  max-width:100%;
  overflow-x:auto;
  overflow-y:visible;
  overscroll-behavior-inline:contain;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:thin;
}
.table-wrap table{width:100%;max-width:none}
td,th{vertical-align:middle}
td img,th img{max-width:96px;height:auto}
.table-wrap.is-overflowing{
  border-inline:1px solid var(--line,#dfe5ea);
}
.responsive-scroll-hint{
  display:none;
  margin:0 0 6px;
  color:var(--muted,#6f7c89);
  font-size:11px;
  font-weight:700;
}
.table-wrap.is-overflowing + .responsive-scroll-hint{display:none}

/* Modals/popovers blijven volledig bereikbaar. */
.modal,.dialog,.modal-card,.dialog-card,[role="dialog"]{
  max-width:min(96vw,1100px)!important;
  max-height:calc(100dvh - 28px)!important;
}
.modal-body,.dialog-body,[role="dialog"] .modal-body,[role="dialog"] .dialog-body{
  max-height:calc(100dvh - 150px);
  overflow:auto;
  overscroll-behavior:contain;
}

/* Rustige animaties; alleen goedkope properties. */
.btn,.card,.stat,.sidebar nav a,.purchase-workflow-stage,.tax-row,
.action-card,.next-action-card,input,select,textarea{
  transition-property:background-color,border-color,color,box-shadow,transform,opacity;
  transition-duration:.16s;
  transition-timing-function:ease-out;
}

/* Laptop / kleine desktop */
@media (max-width:1366px) and (min-width:861px){
  .app{grid-template-columns:clamp(220px,18vw,250px) minmax(0,1fr)}
  main{padding-inline:clamp(18px,1.8vw,26px)}
  .grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}
  .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .topbar{align-items:flex-start}
  .top-actions{flex-wrap:wrap;justify-content:flex-end;min-width:0}
}

/* Tablet / drawer-layout */
@media (max-width:860px){
  html{scroll-padding-top:12px}
  .app{display:block;min-height:0}
  main{width:100%;max-width:none;padding:15px 14px 30px}
  .sidebar{
    position:fixed!important;
    inset:0 auto 0 0;
    height:100dvh!important;
    transform:translateX(-105%);
    transition:transform .22s ease-out!important;
    box-shadow:18px 0 40px rgba(12,19,26,.18);
  }
  body.sidebar-open .sidebar{transform:translateX(0)}
  body.sidebar-open{overflow:hidden}
  .menu-toggle{display:inline-flex!important;align-items:center;justify-content:center;min-width:44px;min-height:44px}
  .topbar,.page-head{gap:12px;align-items:flex-start}
  .topbar{flex-wrap:wrap}
  .topbar-title{min-width:0;flex:1 1 240px}
  .top-actions{width:100%;justify-content:flex-start;flex-wrap:wrap}
  .quick-lookup{flex:1 1 260px;max-width:100%}
  .quick-lookup input{width:100%;min-width:0}
  .grid.two,.grid.three,.stats-grid,.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .form-grid{grid-template-columns:1fr}
  .field.full,.full{grid-column:auto}
  .section-head,.page-actions{align-items:flex-start}
  table{min-width:640px}
  .responsive-scroll-hint{display:block}
  .modal,.dialog,.modal-card,.dialog-card,[role="dialog"]{max-width:calc(100vw - 20px)!important}
}

/* Telefoon */
@media (max-width:620px){
  body{font-size:14px}
  main{padding:10px 9px 24px}
  .card,.hero-card{padding:13px;border-radius:10px}
  .topbar{margin-bottom:12px}
  .topbar h1,.page-head h1{font-size:clamp(21px,7vw,27px);line-height:1.08}
  .hero-card h1,.hero-card h2{font-size:clamp(21px,7vw,27px)}
  .grid.two,.grid.three,.stats-grid,.kpi-grid{grid-template-columns:1fr}
  .section-head,.page-actions,.actions,.actions-row{gap:8px}
  .section-head>.actions-row,.page-actions,.actions-row{width:100%}
  .section-head>.actions-row .btn,.page-actions .btn,.actions-row .btn{
    flex:1 1 145px;
    min-height:44px;
    white-space:normal;
    line-height:1.2;
  }
  .btn{min-height:42px;padding:9px 11px}
  .btn.big{min-height:46px}
  input,select,textarea{font-size:16px!important}
  .field input,.field select,.field textarea,
  .filters input,.filters select,.report-filters input,.report-filters select{min-height:44px}
  table{min-width:600px}
  .table-wrap.compact-mobile table{min-width:500px}
  .dashboard-clock-card span{white-space:normal!important}
  .modal-footer,.dialog-footer{gap:8px!important}
}

/* Zeer smalle telefoons */
@media (max-width:380px){
  main{padding-inline:7px}
  .card,.hero-card{padding:11px}
  .section-head>.actions-row .btn,.page-actions .btn,.actions-row .btn{flex-basis:100%}
  .quick-lookup{flex-basis:100%}
  table{min-width:560px}
}

/* Respecteer toegankelijkheidsinstelling en voorkom schokkerige motion. */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto!important}
  *,*::before,*::after{
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
    transition-duration:.01ms!important;
  }
}

/* ================================================================
   v71.292 — DAGELIJKSE WORKFLOW FEEDBACK & STABILITEIT
   ================================================================ */
.system-progress{position:fixed;z-index:99999;left:0;right:0;top:0;height:3px;pointer-events:none;opacity:0;transition:opacity .15s ease}.system-progress.active{opacity:1}.system-progress>span{display:block;width:100%;height:100%;transform:scaleX(0);transform-origin:left center;background:var(--theme,var(--accent,#475569))}
.unsaved-pill{position:fixed;z-index:9995;right:18px;bottom:18px;max-width:min(300px,calc(100vw - 36px));padding:9px 13px;border:1px solid var(--line,#d7dde3);border-radius:999px;background:var(--surface,#fff);color:var(--text,#20262e);font-size:12px;font-weight:800;box-shadow:0 8px 22px rgba(16,24,40,.12);opacity:0;transform:translateY(8px);pointer-events:none;transition:opacity .18s ease,transform .18s ease}.unsaved-pill.visible{opacity:1;transform:none}
.validation-summary{display:grid;gap:3px;margin:0 0 14px;padding:12px 14px;border:1px solid #e6a49d;border-left:4px solid var(--danger,#b42318);border-radius:10px;background:#fff7f6;color:#7a271a}.validation-summary strong{font-size:14px}.validation-summary span{font-size:12px;color:#912018}
.submit-status{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.is-processing{cursor:wait!important}.is-processing::after{content:"";display:inline-block;width:13px;height:13px;margin-left:8px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;vertical-align:-2px;animation:v71292-spin .65s linear infinite}
.connection-toast{position:fixed;z-index:9997;left:50%;top:14px;max-width:min(520px,calc(100vw - 28px));padding:10px 14px;border-radius:10px;background:#ecfdf3;color:#05603a;border:1px solid #abefc6;font-size:13px;font-weight:800;box-shadow:0 8px 24px rgba(16,24,40,.12);opacity:0;transform:translate(-50%,-8px);pointer-events:none;transition:opacity .18s ease,transform .18s ease}.connection-toast.visible{opacity:1;transform:translate(-50%,0)}.connection-toast.offline{background:#fff6ed;color:#9a3412;border-color:#fed7aa}
.safe-action-row{min-width:0}.safe-action-row>*{min-width:0}.safe-action-row .btn,.safe-action-row button{max-width:100%;white-space:normal;text-align:center}
@keyframes v71292-spin{to{transform:rotate(360deg)}}
@media(max-width:760px){.unsaved-pill{left:12px;right:12px;bottom:calc(74px + env(safe-area-inset-bottom));max-width:none;text-align:center}.connection-toast{top:10px}.validation-summary{margin-inline:0}.system-progress{height:2px}}
@media(prefers-reduced-motion:reduce){.system-progress,.unsaved-pill,.connection-toast{transition:none!important}.is-processing::after{animation:none;border-right-color:currentColor}}

/* v71.293 · rolgestuurde dossierflow */
.workflow-progress{margin:16px 20px 18px;padding:15px 16px;border:1px solid var(--line,#dfe5ea);border-radius:16px;background:var(--surface,#fff);box-shadow:0 8px 24px rgba(15,23,42,.05)}
.workflow-progress-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:13px}.workflow-progress-head>div{min-width:0;display:grid;gap:3px}.workflow-progress-head b{font-size:14px;line-height:1.45}.workflow-next{flex:0 0 auto;padding:7px 10px;border-radius:999px;background:var(--surface-2,#f3f5f7);color:var(--muted,#667085);font-size:12px;font-weight:700}.workflow-next strong{color:var(--text,#1d2939)}.workflow-next.done{color:var(--success,#157347)}
.workflow-steps{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;list-style:none;margin:0;padding:0}.workflow-steps li{min-width:0;position:relative}.workflow-steps li:not(:last-child):after{content:"";position:absolute;top:17px;left:calc(50% + 20px);right:calc(-50% + 20px);height:2px;background:var(--line,#dfe5ea);z-index:0}.workflow-steps li.done:not(:last-child):after{background:#94a3b8}.workflow-steps a,.workflow-steps span{position:relative;z-index:1;display:flex;align-items:center;gap:8px;min-width:0;padding:7px 8px;border-radius:10px;text-decoration:none;color:var(--muted,#667085)}.workflow-steps i{display:grid;place-items:center;flex:0 0 34px;width:34px;height:34px;border-radius:50%;background:var(--surface-2,#eef2f5);border:1px solid var(--line,#dfe5ea);font-style:normal;font-weight:900;font-size:12px}.workflow-steps em{min-width:0;font-style:normal;font-size:12px;font-weight:800;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.workflow-steps .done a{color:var(--text,#344054)}.workflow-steps .done i{background:#eef2f5;border-color:#94a3b8}.workflow-steps .current a,.workflow-steps .current span{background:color-mix(in srgb,var(--theme,#475569) 10%,transparent);color:var(--text,#101828)}.workflow-steps .current i{background:var(--theme,#475569);border-color:var(--theme,#475569);color:#fff}.workflow-steps .upcoming{opacity:.65}
@media(max-width:900px){.workflow-progress{margin:12px 14px 16px}.workflow-progress-head{display:grid;gap:9px}.workflow-next{justify-self:start}.workflow-steps{overflow-x:auto;grid-template-columns:repeat(5,minmax(118px,1fr));padding-bottom:5px;scrollbar-width:thin}.workflow-steps li:not(:last-child):after{left:52px;right:-66px}.workflow-steps a,.workflow-steps span{padding-inline:5px}}
@media(max-width:560px){.workflow-progress{margin:10px 10px 14px;padding:13px 12px;border-radius:13px}.workflow-progress-head b{font-size:13px}.workflow-steps{grid-template-columns:repeat(5,106px);gap:4px}.workflow-steps a,.workflow-steps span{display:grid;justify-items:center;text-align:center;gap:4px}.workflow-steps em{max-width:96px}.workflow-steps li:not(:last-child):after{top:24px;left:70px;right:-40px}}

/* ================================================================
   v71.303 — VOLLEDIGE WERKRUIMTE / FLUID DESKTOP SCALING
   Benut de beschikbare viewport voor de interne backoffice zonder
   document-/papierweergaven onnatuurlijk uit te rekken.
   ================================================================ */
:root{
  --workspace-gutter:clamp(14px,1.65vw,34px);
  --workspace-gap:clamp(12px,1.05vw,20px);
}

/* De applicatie gebruikt op desktop de volledige beschikbare breedte. */
.app{
  width:100%;
  max-width:none;
  grid-template-columns:clamp(238px,15.5vw,285px) minmax(0,1fr);
}
.app>main,
main{
  width:100%!important;
  max-width:none!important;
  min-width:0;
  margin:0!important;
  padding:clamp(18px,1.45vw,30px) var(--workspace-gutter) clamp(28px,2vw,44px)!important;
}

/* Hoofdcontainers die vroeger op 1180/1380/1480px stopten, mogen in de
   medewerkersomgeving nu met het scherm meegroeien. */
body:not(.customer-kiosk) main>.hero-card,
body:not(.customer-kiosk) main>.tax-shell,
body:not(.customer-kiosk) main>.cd-shell,
body:not(.customer-kiosk) main>.weight-process-grid,
body:not(.customer-kiosk) .plugin-customer-confirm,
body:not(.customer-kiosk) .plugin-purchase-view,
body:not(.customer-kiosk) .customer-flow-head,
body:not(.customer-kiosk) .customer-flow-progress,
body:not(.customer-kiosk) .customer-contract-summary,
body:not(.customer-kiosk) .customer-start-flow,
body:not(.customer-kiosk) .report-hub-grid,
body:not(.customer-kiosk) .workflow-progress,
body:not(.customer-kiosk) .narrow-card{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
}

/* Kaarten/tabellen mogen nooit een onzichtbare oude max-width erven. */
main>.card,
main>.grid,
main>.stats-grid,
main>.kpi-grid,
main>.table-wrap,
main>form,
main>.filters,
main>.report-filters{
  width:100%;
  max-width:none;
  min-width:0;
}

/* Brede dashboards verdelen zichzelf over de echte beschikbare ruimte. */
.stats-grid{
  grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr));
  gap:var(--workspace-gap);
}
.kpi-grid{
  grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));
  gap:var(--workspace-gap);
}
.grid.two{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--workspace-gap)}
.grid.three{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--workspace-gap)}

/* Tabellen vullen de kaart/werkruimte; horizontaal scrollen alleen als de
   kolommen dat werkelijk nodig maken. */
.table-wrap{
  max-width:100%;
  min-width:0;
}
.table-wrap>table{width:100%;min-width:100%}

/* Header en acties mogen op brede schermen ook echt ruimte gebruiken. */
.topbar,.page-head,.section-head{width:100%;max-width:none}
.topbar-title,.section-head>div,.page-head>div{min-width:0}
.top-actions{max-width:min(52vw,900px);justify-content:flex-end}
.quick-lookup{flex:0 1 clamp(220px,18vw,360px)}
.quick-lookup input{width:100%;min-width:0}

/* Formulieren schalen mee, zonder labels/inputs absurd breed te maken. */
.form-grid{width:100%;max-width:none;gap:var(--workspace-gap)}
.field{min-width:0}
.field input,.field select,.field textarea{min-width:0}

/* Grote schermen: gebruik de ruimte, maar behoud leesbare kaartinhoud. */
@media (min-width:1800px){
  :root{--workspace-gutter:clamp(28px,1.8vw,48px);--workspace-gap:20px}
  .app{grid-template-columns:285px minmax(0,1fr)}
  .stats-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}
  .kpi-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
  .card,.hero-card{padding:clamp(20px,1.25vw,28px)}
}

/* Laptop: nog steeds volledige breedte, alleen minder gutter/sidebar. */
@media (max-width:1366px) and (min-width:861px){
  .app{grid-template-columns:clamp(218px,17vw,245px) minmax(0,1fr)}
  .app>main,main{padding-inline:clamp(14px,1.45vw,22px)!important}
  .grid.three{grid-template-columns:repeat(2,minmax(0,1fr))}
}

/* Tablet en mobiel blijven drawer-based en stapelen logisch. */
@media (max-width:860px){
  .app{display:block;width:100%}
  .app>main,main{width:100%!important;max-width:none!important;margin:0!important;padding:15px 14px 30px!important}
  .top-actions{max-width:none;width:100%}
  .stats-grid,.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .grid.two,.grid.three{grid-template-columns:1fr}
}
@media (max-width:620px){
  .app>main,main{padding:10px 9px 24px!important}
  .stats-grid,.kpi-grid{grid-template-columns:1fr}
}

/* Papier/document-preview blijft bewust documentbreed. */
.receipt-embed .handover-doc,
.loan-contract-paper,
.print-sheet,
.document-sheet,
.document-paper{
  margin-left:auto!important;
  margin-right:auto!important;
}

/* ================================================================
   v71.304 — ADAPTIEVE WERKRUIMTE PER SCHERMTYPE
   Tweede schaalpass: verwijdert resterende interne breedteplafonds en
   laat werkbakken, operationele panelen en formulieren slimmer verdelen.
   ================================================================ */

/* Resterende medewerkersflows die nog een eigen oude contentlimiet hadden. */
body:not(.customer-kiosk) .purchase-workflow-hub,
body:not(.customer-kiosk) .purchase-operations-strip,
body:not(.customer-kiosk) .purchase-blocker-board,
body:not(.customer-kiosk) .processing-workbench,
body:not(.customer-kiosk) .department-workbench,
body:not(.customer-kiosk) .module-health-grid,
body:not(.customer-kiosk) .route-health-list,
body:not(.customer-kiosk) .dor-center-reference,
body:not(.customer-kiosk) .scrap-summary-grid,
body:not(.customer-kiosk) .today-metal-grid,
body:not(.customer-kiosk) .trace-check-grid,
body:not(.customer-kiosk) .trace-counts,
body:not(.customer-kiosk) .trace-audit-grid,
body:not(.customer-kiosk) .trace-finance-grid{
  width:100%;
  max-width:none!important;
  min-width:0;
  margin-left:0;
  margin-right:0;
}

/* Operationele stroken gebruiken beschikbare breedte zonder elementen te rekken. */
body:not(.customer-kiosk) .purchase-operations-strip,
body:not(.customer-kiosk) .purchase-blocker-board{
  gap:var(--workspace-gap);
}

/* Automatische kaartverdeling voor brede werkbakken. */
body:not(.customer-kiosk) .module-health-grid,
body:not(.customer-kiosk) .today-metal-grid,
body:not(.customer-kiosk) .scrap-summary-grid{
  grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr));
  gap:var(--workspace-gap);
}
body:not(.customer-kiosk) .workflow-department-grid,
body:not(.customer-kiosk) .report-hub-grid{
  width:100%;
  max-width:none!important;
  grid-template-columns:repeat(auto-fit,minmax(min(290px,100%),1fr));
  gap:var(--workspace-gap);
}

/* DOR/controlepanelen: meer kolommen op desktop, vanzelf minder op laptop. */
body:not(.customer-kiosk) .dor-center-reference{
  grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr));
}
body:not(.customer-kiosk) .trace-counts,
body:not(.customer-kiosk) .trace-audit-grid,
body:not(.customer-kiosk) .trace-finance-grid{
  grid-template-columns:repeat(auto-fit,minmax(min(210px,100%),1fr));
}

/* Formulieren blijven bruikbaar: volledige kaartbreedte, maar velden verdelen zich
   adaptief wanneer een pagina expliciet veel invoervelden naast elkaar toont. */
body:not(.customer-kiosk) .form-grid.adaptive,
body:not(.customer-kiosk) .settings-grid,
body:not(.customer-kiosk) .filter-grid{
  display:grid;
  width:100%;
  grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));
  gap:var(--workspace-gap);
}

/* Actiebalken breken pas af wanneer nodig en benutten desktopruimte beter. */
body:not(.customer-kiosk) .page-actions,
body:not(.customer-kiosk) .actions-row,
body:not(.customer-kiosk) .section-head{
  min-width:0;
}
body:not(.customer-kiosk) .page-actions>.actions,
body:not(.customer-kiosk) .section-head>.actions,
body:not(.customer-kiosk) .section-head>.actions-row{
  margin-left:auto;
  justify-content:flex-end;
  min-width:0;
}

/* Ultrabreed: geef datadichte schermen daadwerkelijk extra kolommen. */
@media (min-width:1900px){
  body:not(.customer-kiosk) .workflow-department-grid,
  body:not(.customer-kiosk) .report-hub-grid{
    grid-template-columns:repeat(auto-fit,minmax(310px,1fr));
  }
  body:not(.customer-kiosk) .module-health-grid,
  body:not(.customer-kiosk) .today-metal-grid,
  body:not(.customer-kiosk) .scrap-summary-grid{
    grid-template-columns:repeat(auto-fit,minmax(285px,1fr));
  }
  body:not(.customer-kiosk) .topbar{gap:28px}
}

/* Compacte laptop: voorkom dat brede desktopverdeling krap wordt. */
@media (max-width:1200px) and (min-width:861px){
  body:not(.customer-kiosk) .workflow-department-grid,
  body:not(.customer-kiosk) .report-hub-grid,
  body:not(.customer-kiosk) .module-health-grid,
  body:not(.customer-kiosk) .today-metal-grid,
  body:not(.customer-kiosk) .scrap-summary-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

/* Tablet/mobiel: dezelfde inhoud, geen geforceerde desktopkolommen. */
@media (max-width:860px){
  body:not(.customer-kiosk) .workflow-department-grid,
  body:not(.customer-kiosk) .report-hub-grid,
  body:not(.customer-kiosk) .module-health-grid,
  body:not(.customer-kiosk) .today-metal-grid,
  body:not(.customer-kiosk) .scrap-summary-grid,
  body:not(.customer-kiosk) .dor-center-reference,
  body:not(.customer-kiosk) .trace-counts,
  body:not(.customer-kiosk) .trace-audit-grid,
  body:not(.customer-kiosk) .trace-finance-grid{
    grid-template-columns:1fr;
  }
  body:not(.customer-kiosk) .page-actions>.actions,
  body:not(.customer-kiosk) .section-head>.actions,
  body:not(.customer-kiosk) .section-head>.actions-row{
    margin-left:0;
    justify-content:flex-start;
  }
}

/* =========================================================
   v71.305 — MOBILE NAV LIGHTER ICONS + CONTINUOUS SIDEBAR
   ========================================================= */
/* De linker navigatie heeft overal één doorlopende basiskleur. */
.sidebar,
html[data-theme="dark"] .sidebar,
html[data-theme="light"] .sidebar{
  background:#17242d!important;
  background-image:none!important;
  min-height:100vh!important;
  height:100vh!important;
  border-right:1px solid #0f1a21!important;
}
.sidebar nav,
.sidebar .nav-group,
.sidebar .sidebar-tools,
.sidebar .sidebar-foot{
  background-color:transparent!important;
}

/* Tablet/mobiel: drawer loopt van boven tot onder door en ondermenu is zachter/licht. */
@media(max-width:860px){
  .sidebar,
  html[data-theme="dark"] .sidebar,
  html[data-theme="light"] .sidebar{
    top:0!important;
    bottom:0!important;
    height:100dvh!important;
    min-height:100dvh!important;
    max-height:100dvh!important;
    background:#17242d!important;
    background-image:none!important;
  }
  .mobile-app-nav{
    background:rgba(36,52,63,.96)!important;
    border-color:rgba(255,255,255,.14)!important;
  }
  .mobile-app-nav a{
    color:#e5ebef!important;
  }
  .mobile-app-nav a i{
    color:#eef3f6!important;
    opacity:.9!important;
    font-weight:500!important;
    text-shadow:none!important;
  }
  .mobile-app-nav a.active{
    background:rgba(255,255,255,.10)!important;
    color:#fff!important;
  }
  .mobile-app-nav a.active i{
    color:#fff!important;
    opacity:1!important;
  }
}

/* v71.308 - schaalbaar bedrijfslogo */
.brand>span.brand-company-logo{overflow:hidden;padding:5px;background:#fff;box-sizing:border-box;}
.brand>span.brand-company-logo img{display:block;width:100%;height:100%;object-fit:contain;object-position:center;}
.company-logo-preview{display:flex;align-items:center;gap:14px;margin:8px 0 12px;padding:12px;border:1px solid var(--line,#293541);border-radius:12px;background:rgba(255,255,255,.025);}
.company-logo-preview img{display:block;width:min(180px,45vw);height:72px;object-fit:contain;object-position:left center;background:#fff;border-radius:10px;padding:8px;box-sizing:border-box;}
.company-logo-setting input[type=file]{width:100%;}
@media(max-width:980px){.brand>span.brand-company-logo{width:44px;height:44px;flex:0 0 44px}.company-logo-preview img{height:64px}}

/* v71.309 - bedrijfsidentiteit op inlogscherm */
.login-company-logo{display:flex;justify-content:center;margin:0 auto 16px;max-width:240px;height:84px}.login-company-logo img{display:block;max-width:100%;width:auto;height:100%;object-fit:contain}.login-company-name{text-align:center;font-weight:700;margin-top:-4px}

/* v71.312 - bedrijfslogo op HTML-documenten */
.doc-logo.doc-logo-image{overflow:hidden;padding:6px;background:#fff;box-sizing:border-box}.doc-logo.doc-logo-image img{display:block;width:100%;height:100%;object-fit:contain;object-position:center}
@media print{.doc-logo.doc-logo-image{background:#fff!important}.doc-logo.doc-logo-image img{max-width:100%;max-height:100%}}
