:root{
  --ink:#1f272d;
  --muted:#69747c;
  --line:#dce2e6;
  --soft:#f5f7f8;
  --yellow:#f5c515;
  --yellow-soft:#fff7cf;
  --danger:#a63838;
  --warn:#8a6400;
  --ok:#2d6b4f;
  --shadow:0 8px 28px rgba(20,30,40,.07);
}
*{box-sizing:border-box}
html{background:#eef1f3}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:#eef1f3}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
input,select,textarea{width:100%;border:1px solid #cbd3d8;border-radius:7px;padding:8px 9px;background:#fff;color:var(--ink)}
input:focus,select:focus,textarea:focus{outline:2px solid rgba(245,197,21,.23);border-color:#c5a100}
textarea{resize:vertical;line-height:1.42}
label{display:flex;flex-direction:column;gap:5px;font-size:11px;font-weight:800;color:#59636a}
.primary,.ghost{border-radius:7px;padding:9px 13px;font-weight:800;border:1px solid transparent;background:#fff;color:var(--ink)}
.primary{background:var(--yellow);border-color:#d6aa00}.ghost{border-color:#cbd3d8}.ghost:hover{background:#f7f9fa}.danger{color:var(--danger)}.small{font-size:12px;padding:6px 9px}
.file-label{display:inline-flex;align-items:center;cursor:pointer}
.hidden{display:none!important}

.topbar{min-height:74px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:18px;padding:10px 24px;position:sticky;top:0;z-index:40}
.brand{display:flex;align-items:center;gap:14px}.brand-logo{width:118px}.brand-title{font-size:18px;font-weight:800}.brand-sub{font-size:12px;color:var(--muted);margin-top:2px}.brand-title-line{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.build-badge{display:inline-flex;align-items:center;border:1px solid #d3ae00;background:var(--yellow-soft);border-radius:999px;padding:2px 7px;font-size:9px;font-weight:900;letter-spacing:.04em;color:#6c5600}.top-actions,.report-actions-right,.button-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.workspace{max-width:1650px;margin:0 auto;padding:22px}.page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:16px}.page-head h1{font-size:28px;margin:0 0 6px}.page-head p{max-width:980px;margin:0;color:var(--muted);line-height:1.48}
.panel{background:#fff;border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow)}
.eyebrow{font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.09em;font-weight:800}

.project-panel{overflow:hidden}.project-summary-line{list-style:none;padding:13px 16px;display:flex;align-items:center;justify-content:space-between;cursor:pointer}.project-summary-line::-webkit-details-marker{display:none}.project-summary-line>div{display:flex;align-items:center;gap:10px}.project-summary-line strong{font-size:15px}.project-body{border-top:1px solid var(--line);padding:15px 16px 17px}.save-state{font-size:11px;color:var(--ok)}.save-state.dirty{color:var(--warn)}
.form-grid{display:grid;gap:10px}.project-grid{grid-template-columns:1fr}.span-2,.span-3{grid-column:auto}
.summary-grid{display:grid;grid-template-columns:repeat(8,minmax(105px,1fr));gap:8px;margin:12px 0 15px}.summary-card{background:#fff;border:1px solid var(--line);border-radius:9px;padding:10px 11px}.summary-card strong{display:block;font-size:16px}.summary-card span{font-size:10px;color:var(--muted)}.summary-card.accent{background:var(--yellow-soft);border-color:#e3c44c}

.measure-workspace{display:grid;grid-template-columns:330px minmax(0,1fr);gap:14px;align-items:start}.sidebar-column{position:sticky;top:88px;display:grid;gap:10px;align-self:start}.room-sidebar{overflow:hidden}.sidebar-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 13px 10px;border-bottom:1px solid var(--line)}.sidebar-head h2{font-size:17px;margin:2px 0 0}.room-nav{padding:8px;display:grid;gap:6px;max-height:310px;overflow:auto}.room-nav-item{width:100%;border:1px solid transparent;background:#fff;border-radius:9px;padding:9px;display:grid;grid-template-columns:25px minmax(0,1fr) auto;gap:8px;text-align:left;align-items:start;color:var(--ink)}.room-nav-item:hover{background:#f7f9fa}.room-nav-item.active{background:#fff8d9;border-color:#e5c94e}.room-nav-order{width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#eef1f3;font-size:10px;font-weight:900}.room-nav-item.active .room-nav-order{background:var(--yellow)}.room-nav-main{min-width:0}.room-nav-main strong{display:block;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.room-nav-main small,.room-nav-main em{display:block;font-style:normal;color:var(--muted);font-size:9.5px;margin-top:2px}.warning-dot{min-width:21px;height:21px;border-radius:999px;background:#fff0bd;color:#765600;border:1px solid #e2c869;display:grid;place-items:center;font-size:10px;font-weight:900}.nav-empty{padding:25px 12px;text-align:center;color:var(--muted);font-size:12px;line-height:1.5}.nav-empty button{margin-top:10px}

.room-editor{min-height:calc(100vh - 165px);overflow:visible}.editor-empty{padding:80px 20px;text-align:center}.editor-empty h2{margin:0 0 8px}.editor-empty p{color:var(--muted);max-width:620px;margin:0 auto 16px}
.room-editor-head{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:14px 16px 10px}.room-title-block{min-width:240px}.room-title-input{display:block;border:0;background:transparent;font-size:21px;font-weight:900;padding:4px 0 2px;border-radius:0}.room-title-input:focus{outline:none;border-bottom:1px solid #aab4ba}.room-head-actions{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end}
.room-settings{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:8px;padding:8px 16px 12px}.room-settings label{position:relative}.field-note{position:absolute;right:10px;bottom:9px;font-size:10px;color:var(--muted)}.room-settings label:nth-child(3) input{padding-right:30px}
.room-kpis{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;padding:0 16px 12px}.room-kpis div{border:1px solid var(--line);border-radius:8px;background:#fafbfc;padding:8px 9px}.room-kpis span{display:block;font-size:9px;color:var(--muted);text-transform:uppercase;font-weight:800}.room-kpis strong{display:block;font-size:14px;margin-top:2px}.room-kpis .accent{background:var(--yellow-soft);border-color:#ead46b}
.room-tabs{display:flex;gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:0 10px;background:#fbfcfd;overflow:auto}.room-tabs button{border:0;background:transparent;padding:11px 12px;font-size:12px;font-weight:800;color:#68737a;white-space:nowrap;border-bottom:3px solid transparent}.room-tabs button.active{color:var(--ink);border-bottom-color:var(--yellow);background:#fff}.tab-warning{background:#fff0bd;color:#735300;border:1px solid #e0c25d;border-radius:999px;padding:1px 5px;font-size:9px;margin-left:3px}.room-tab-body{padding:0 16px 18px}.tab-intro{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;padding:14px 0 9px}.tab-intro h3,.plane-head h3{font-size:17px;margin:0 0 3px}.tab-intro p,.plane-head p{font-size:11px;color:var(--muted);margin:0;line-height:1.4;max-width:850px}

.simple-table-wrap{overflow:auto;border:1px solid var(--line);border-radius:9px}.simple-table{width:100%;border-collapse:collapse;min-width:760px}.simple-table th,.simple-table td{padding:6px 7px;border-bottom:1px solid #edf0f2;vertical-align:middle;font-size:11px}.simple-table th{background:#f7f8f9;color:#5b666e;text-align:left;font-weight:900;white-space:nowrap}.simple-table td.num,.simple-table th.num{text-align:right;white-space:nowrap}.simple-table tfoot td{background:#fafbfc;border-bottom:0}.simple-table .yellow-total{background:var(--yellow)}.name-cell{min-width:150px;font-weight:700}.cell-input{position:relative;min-width:95px}.cell-input input{padding-right:34px;text-align:right}.cell-input span{position:absolute;right:8px;top:50%;transform:translateY(-50%);font-size:9px;color:var(--muted);pointer-events:none}.result{font-weight:700}.deduction{color:#875d00}.net-result{background:#fffdf2;font-weight:900}.empty-row{text-align:center;color:var(--muted);padding:20px!important}.actions-cell{width:42px;text-align:center}
.row-options-toggle{width:29px;height:29px;border-radius:6px;border:1px solid #cbd3d8;display:grid;place-items:center;font-size:18px;line-height:1;font-weight:900;cursor:pointer;background:#fff;color:var(--ink);padding:0}.row-options-toggle:hover{background:#f7f9fa}.row-options-toggle.active{background:var(--yellow-soft);border-color:#dfc348;font-size:17px}.inline-options-row td{padding:0!important;border-bottom:1px solid #d9dee2!important;background:#f8fafb}.inline-options-panel{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;padding:11px 12px 12px;border-left:4px solid var(--yellow);background:linear-gradient(90deg,#fffdf3 0,#fbfcfd 62%)}.inline-options-fields{display:grid;grid-template-columns:110px 110px 150px minmax(170px,220px) minmax(170px,1fr);gap:10px;align-items:end;flex:1;min-width:0}.inline-options-fields label{font-size:10px}.inline-options-fields small{font-size:9px;color:var(--muted);font-weight:400}.label-unit{font-weight:600;color:var(--muted)}.inline-check{display:flex!important;flex-direction:row!important;align-items:center;gap:8px;min-height:36px;padding:6px 9px;border:1px solid #d9dfe3;border-radius:7px;background:#fff;font-size:10px!important}.inline-check input{width:auto;flex:0 0 auto}.inline-check span{font-weight:800;color:#59636a}.disabled-option{opacity:.55}.inline-options-actions{display:flex;align-items:center;gap:7px;flex:0 0 auto;padding-bottom:1px}.opening-options-fields{grid-template-columns:110px minmax(170px,220px) minmax(190px,1fr) minmax(180px,1fr)}

.planes-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px;padding-top:14px}.plane-block{min-width:0}.plane-block .simple-table-wrap{overflow:visible}.plane-block .simple-table{min-width:0;width:100%;table-layout:fixed}.plane-block .simple-table th:nth-child(1),.plane-block .simple-table td:nth-child(1){width:30%}.plane-block .simple-table th:nth-child(2),.plane-block .simple-table td:nth-child(2),.plane-block .simple-table th:nth-child(3),.plane-block .simple-table td:nth-child(3){width:22%}.plane-block .simple-table th:nth-child(4),.plane-block .simple-table td:nth-child(4){width:20%}.plane-block .simple-table th:nth-child(5),.plane-block .simple-table td:nth-child(5){width:42px}.plane-block .name-cell,.plane-block .cell-input{min-width:0;width:100%}.plane-block input{min-width:0}.plane-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:8px}.copy-tools{display:flex;align-items:center;gap:10px;margin-top:10px;color:var(--muted);font-size:10px}

.special-list{display:grid;gap:9px}.soft-empty{border:1px dashed #cbd3d8;background:#fbfcfd;border-radius:9px;padding:22px;text-align:center;color:var(--muted);font-size:12px}.special-card{border:1px solid var(--line);border-radius:9px;background:#fff;overflow:visible}.special-card-top{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#fbfcfd;border-bottom:1px solid #edf0f2;padding:9px 10px}.special-name{border:0;background:transparent;font-weight:800;font-size:13px;padding:3px 2px}.special-name:focus{outline:none;border-bottom:1px solid #aab4ba}.special-card-top strong{font-size:14px;white-space:nowrap}.special-grid{display:grid;grid-template-columns:repeat(5,minmax(135px,1fr));gap:8px;padding:10px}.special-grid label{font-size:10px}.special-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 10px;border-top:1px solid #edf0f2;background:#fffdf2}.special-foot>span{font-size:10px;color:#554a13;font-weight:800}.special-foot>div{display:flex;gap:6px}.volume-total{display:flex;justify-content:flex-end;align-items:baseline;gap:10px;padding:0 0 10px}.volume-total span{font-size:11px;color:var(--muted)}.volume-total strong{font-size:19px}.volume-more{border-top:1px solid #edf0f2}.volume-more summary{padding:7px 10px;font-size:10px;font-weight:800;color:var(--muted);cursor:pointer}.volume-more>div{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:0 10px 10px}

.spec-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.spec-grid .full{grid-column:1/-1}.validation-box{margin-top:12px;border:1px solid #e4d48d;background:#fff9df;border-radius:8px;padding:9px 11px;font-size:11px;line-height:1.45}.validation-box.ok{border-color:#c7dfd2;background:#f2fbf6;color:#2d6b4f}.validation-box strong{display:block;margin-bottom:3px}.validation-box ul{margin:3px 0 0;padding-left:18px}

.dialog{border:0;border-radius:12px;padding:0;width:min(760px,94vw);box-shadow:0 30px 80px rgba(0,0,0,.28)}.dialog::backdrop{background:rgba(20,28,34,.48)}.dialog form{padding:18px}.dialog-head{display:flex;justify-content:space-between;align-items:flex-start;gap:15px}.dialog-head h2{margin:2px 0 0}.icon-close{border:0;background:transparent;font-size:25px}.helper{font-size:12px;color:var(--muted);line-height:1.45}.form-grid.four{grid-template-columns:repeat(4,1fr)}.check-row{flex-direction:row;align-items:center;margin-top:13px}.check-row input,.report-check input{width:auto}.dialog-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}

.report-shell{background:#e8ecef;min-height:100vh;padding:18px}.report-actions{max-width:1120px;margin:0 auto 12px;display:flex;align-items:center;justify-content:space-between;gap:15px}.report-check{font-size:11px;flex-direction:row;align-items:center;font-weight:700}.measurement-report{background:#fff;width:210mm;min-height:297mm;margin:0 auto;padding:14mm 13mm 15mm;box-shadow:0 5px 24px rgba(0,0,0,.16);font-family:Arial,Helvetica,sans-serif;color:#111}.report-top{display:grid;grid-template-columns:1.1fr .9fr;gap:15mm;align-items:start}.report-logo{width:45mm;margin-left:auto;display:block}.report-company{font-size:9.5pt;line-height:1.42}.report-title{font-size:20pt;margin:8mm 0 2mm}.report-subtitle{font-size:10pt;color:#555;margin:0 0 5mm}.report-meta{display:grid;grid-template-columns:repeat(2,1fr);gap:2mm 8mm;border-top:1px solid #ddd;border-bottom:1px solid #ddd;padding:3mm 0;margin-bottom:5mm;font-size:9pt}.report-meta strong{display:block;font-size:7.5pt;color:#666;margin-bottom:.6mm}.report-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:2mm;margin:0 0 6mm}.report-summary div{border:1px solid #ddd;padding:2.3mm}.report-summary span{display:block;color:#666;font-size:7.5pt}.report-summary strong{font-size:10pt}.report-room{margin-top:7mm}.report-room-header{background:#f5c515;padding:2.5mm 3mm;display:flex;justify-content:space-between;gap:8mm;align-items:center}.report-room-header h2{font-size:12pt;margin:0}.report-room-header span{font-size:8pt}.report-metrics{display:grid;grid-template-columns:repeat(5,1fr);gap:1.5mm;margin:2mm 0 3mm}.report-metrics div{background:#f7f8f9;padding:1.8mm 2mm;border:1px solid #e4e6e8}.report-metrics span{font-size:7pt;color:#666;display:block}.report-metrics strong{font-size:8.5pt}.report-section-title{font-size:9.5pt;margin:4mm 0 1.5mm}.report-table{width:100%;border-collapse:collapse;font-size:7.4pt;margin-bottom:3mm}.report-table thead{display:table-header-group}.report-table th{background:#f0f1f2;text-align:left;padding:1.5mm 1.4mm;border-bottom:1px solid #aaa}.report-table td{padding:1.4mm;border-bottom:1px solid #e3e3e3;vertical-align:top}.report-table td.num,.report-table th.num{text-align:right;white-space:nowrap}.report-note{border:1px dashed #ccc;padding:2mm;font-size:7.5pt;color:#666;margin-top:2mm}.report-spec-table{width:100%;border-collapse:collapse;font-size:7.8pt;margin-top:1.5mm}.report-spec-table th,.report-spec-table td{border:1px solid #e1e1e1;padding:1.8mm 2mm;text-align:left;vertical-align:top}.report-spec-table th{width:18%;background:#f7f8f9;color:#666;font-size:7pt}.report-spec-table td{width:32%}.report-warning{border:1px solid #e0c85b;background:#fff9dc;padding:2mm 2.5mm;font-size:7.8pt;margin-top:3mm}.report-warning ul{margin:1mm 0 0;padding-left:5mm}

.project-sidebar-panel{margin:0}.project-sidebar-panel .project-summary-line{padding:11px 12px}.project-sidebar-panel .project-summary-line>div{display:grid;gap:2px}.project-sidebar-panel .project-summary-line strong{font-size:14px}.project-sidebar-panel .save-state{font-size:9px;white-space:nowrap}.project-sidebar-panel .project-body{padding:11px 12px 13px}.project-sidebar-panel .project-grid{gap:8px}.project-sidebar-panel label{font-size:10px}.project-sidebar-panel input,.project-sidebar-panel textarea{padding:7px 8px}.project-sidebar-panel textarea{min-height:58px}.project-totals-panel{overflow:hidden}.compact-head{padding-bottom:8px}.sidebar-summary{grid-template-columns:1fr 1fr;gap:6px;margin:8px;padding:0}.sidebar-summary .summary-card{padding:7px 8px;min-width:0}.sidebar-summary .summary-card strong{font-size:13px}.sidebar-summary .summary-card span{font-size:8.5px;line-height:1.2}.room-tab-body{min-height:420px}.planes-grid .inline-options-panel{min-width:0}.planes-grid .inline-options-fields{grid-template-columns:repeat(3,minmax(120px,1fr))}.planes-grid .inline-options-actions{justify-content:flex-end}.planes-grid .inline-options-row td{overflow:visible}

@media(max-width:1320px){.inline-options-panel{align-items:stretch;flex-direction:column}.inline-options-fields{grid-template-columns:repeat(3,minmax(140px,1fr))}.opening-options-fields{grid-template-columns:repeat(3,minmax(140px,1fr))}.inline-options-actions{justify-content:flex-end}.special-grid{grid-template-columns:repeat(3,1fr)}.planes-grid{grid-template-columns:1fr}}
@media(max-width:900px){.workspace{padding:14px}.topbar,.page-head,.report-actions{align-items:flex-start;flex-direction:column}.top-actions{width:100%}.measure-workspace{grid-template-columns:1fr}.sidebar-column{position:static}.room-sidebar{position:static}.room-nav{display:flex;overflow:auto;max-height:none}.room-nav-item{min-width:210px}.room-settings{grid-template-columns:1fr 1fr}.room-kpis{grid-template-columns:repeat(3,1fr)}.room-editor-head{align-items:flex-start;flex-direction:column}.room-head-actions{justify-content:flex-start}.measurement-report{width:100%;min-height:0;padding:20px}.report-top{grid-template-columns:1fr}.report-logo{margin-left:0}.report-summary,.report-metrics{grid-template-columns:repeat(2,1fr)}}
@media(max-width:600px){.inline-options-fields,.opening-options-fields{grid-template-columns:1fr}.inline-options-actions{width:100%;justify-content:flex-start}.project-grid,.room-settings,.spec-grid,.form-grid.four{grid-template-columns:1fr}.span-2{grid-column:auto}.summary-grid{grid-template-columns:1fr 1fr}.room-kpis{grid-template-columns:1fr 1fr}.special-grid{grid-template-columns:1fr 1fr}.tab-intro,.plane-head,.special-foot,.copy-tools{flex-direction:column;align-items:flex-start}.button-row{width:100%}}

@media print{
  @page{size:A4 portrait;margin:10mm 11mm 12mm}
  body{background:#fff}.no-print{display:none!important}#reportView{display:block!important;background:#fff!important;padding:0!important}.measurement-report{box-shadow:none!important;width:auto!important;min-height:0!important;margin:0!important;padding:0!important}.report-room-header,.report-table th{-webkit-print-color-adjust:exact;print-color-adjust:exact}.report-room-header{background:#f5c515!important}.report-table thead{display:table-header-group}.report-room-header,.report-metrics,.report-warning,.report-spec-table{break-inside:avoid}.report-table tr{break-inside:avoid}.report-room{break-before:auto}
}

/* v0.6.4 centrale Offerte Studio-shell */
.auth-view{min-height:100vh;display:grid;place-items:center;padding:24px;background:#f1f1ee}.auth-card{width:min(460px,100%);background:#fff;border:1px solid #deded8;border-radius:18px;padding:32px;box-shadow:0 18px 55px rgba(0,0,0,.12)}.auth-logo{display:block;width:min(220px,70%);max-height:90px;object-fit:contain;margin:0 auto 14px}.auth-brand{text-align:center;font-size:1.45rem;font-weight:800}.auth-sub{text-align:center;color:#666;margin:2px 0 22px}.auth-form h1{font-size:1.25rem;margin:0 0 6px}.auth-form p{color:#666;margin:0 0 18px;line-height:1.45}.auth-form label{display:grid;gap:6px;font-weight:650;margin:12px 0}.auth-form input{width:100%;box-sizing:border-box}.auth-submit{width:100%;margin-top:10px;padding:12px}.auth-message{min-height:22px;margin:8px 0;color:#555}.auth-message.error{color:#a51616;background:#fff0f0;border:1px solid #f2c9c9;border-radius:8px;padding:9px 11px}.current-user{font-size:.8rem;color:#555;white-space:nowrap}.network-state{font-size:.78rem;font-weight:700;border-radius:999px;padding:6px 9px;background:#edf7ee;color:#216b2c;white-space:nowrap}.network-state.busy{background:#fff6d5;color:#705800}.network-state.error{background:#ffe9e9;color:#9b1616}.project-switcher-panel{padding:14px}.project-switcher-panel .sidebar-head{margin-bottom:10px}.project-select-label{display:grid;gap:5px;font-size:.78rem;font-weight:700;color:#555}.project-select-label select{width:100%;font-weight:650}.project-switcher-actions{display:flex;gap:7px;margin-top:9px;flex-wrap:wrap}.save-state.error{color:#a51616!important}.top-actions{flex-wrap:wrap}.topbar{gap:12px}@media(max-width:980px){.current-user{display:none}.network-state{display:none}}

/* Centrale versiecontrole */
.version-banner{position:sticky;top:0;z-index:2000;display:flex;align-items:center;justify-content:center;gap:18px;padding:10px 18px;background:#fff8d7;border-bottom:1px solid #e8c84e;box-shadow:0 4px 14px rgba(0,0,0,.08)}
.version-banner.hidden{display:none}.version-banner.error{background:#fff0f0;border-bottom-color:#e1a3a3}.version-banner.blocking{background:#ffe8e8;border-bottom-color:#d97474}
.version-banner-copy{display:flex;align-items:baseline;gap:10px;flex-wrap:wrap;line-height:1.35}.version-banner-copy strong{font-size:.92rem}.version-banner-copy span{font-size:.84rem;color:#555}
.version-banner-actions{display:flex;gap:8px;flex:0 0 auto}.version-banner button[disabled]{opacity:.6;cursor:wait}
@media(max-width:760px){.version-banner{align-items:flex-start;justify-content:space-between;gap:10px}.version-banner-copy{display:grid;gap:2px}.version-banner-actions{align-self:center}.version-banner-actions .ghost{display:none}}

/* v0.6.6 gebruiksvriendelijk conflictbeheer */
.conflict-dialog{width:min(680px,94vw)}
.conflict-intro{margin:14px 0 16px;line-height:1.55;color:#333}
.conflict-summary{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:12px 0 16px}
.conflict-summary>div{border:1px solid #e1dfd7;background:#faf9f5;border-radius:10px;padding:12px 14px;display:grid;gap:3px}
.conflict-summary span{font-size:.78rem;color:#666}
.conflict-summary strong{font-size:1.05rem}
.conflict-help{background:#fff8d7;border:1px solid #ead36a;border-radius:10px;padding:12px 14px;line-height:1.45}
.conflict-help p{margin:5px 0 0;color:#555}
.conflict-actions{align-items:center;flex-wrap:wrap}
.conflict-actions .primary{margin-left:auto}
.network-state.conflict{background:#fff0f0;color:#9b1616}
@media(max-width:620px){.conflict-summary{grid-template-columns:1fr}.conflict-actions{display:grid;grid-template-columns:1fr}.conflict-actions .primary{margin-left:0}.conflict-actions button{width:100%}}

/* v0.6.8: projectfilter en ruimtevolgorde */
.project-search-label{display:grid;gap:5px;font-size:.78rem;font-weight:700;color:#555;margin-bottom:9px}.project-search-label input{width:100%;font-weight:600}.project-selector-meta{margin-top:5px;font-size:.68rem;color:var(--muted);min-height:1em}.room-head-actions button[disabled]{opacity:.4;cursor:not-allowed;pointer-events:none}

/* v0.6.9: drie kolommen, contextueel bewaren en gegroepeerd hoofdmenu */
.topbar-right{display:grid;justify-items:end;gap:6px;min-width:0}
.top-status-row{display:flex;align-items:center;justify-content:flex-end;gap:9px;min-height:24px}
.top-menu-bar{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}
.top-menu{position:relative}
.top-menu>summary{list-style:none;display:flex;align-items:center;gap:8px;border:1px solid #cbd3d8;border-radius:8px;background:#fff;padding:8px 12px;font-size:12px;font-weight:850;cursor:pointer;user-select:none;white-space:nowrap}
.top-menu>summary::-webkit-details-marker{display:none}
.top-menu>summary::after{content:"▾";font-size:10px;color:#6d777e;transition:transform .12s ease}
.top-menu[open]>summary{background:var(--yellow-soft);border-color:#ddbf42}
.top-menu[open]>summary::after{transform:rotate(180deg)}
.top-menu-popover{position:absolute;top:calc(100% + 6px);left:0;z-index:80;min-width:220px;padding:6px;background:#fff;border:1px solid #d6dde1;border-radius:10px;box-shadow:0 14px 35px rgba(20,30,40,.18)}
.top-menu-popover-right{left:auto;right:0;min-width:170px}
.top-menu-popover button,.top-menu-file{width:100%;display:flex;align-items:center;border:0;border-radius:7px;background:#fff;color:var(--ink);padding:9px 10px;text-align:left;font-size:12px;font-weight:750;cursor:pointer}
.top-menu-popover button:hover,.top-menu-file:hover{background:#f5f7f8}

.workspace{max-width:1780px}
.page-head{margin-bottom:13px}.page-head h1{font-size:25px}.page-head p{max-width:1120px}
.measure-workspace{grid-template-columns:320px 270px minmax(0,1fr);gap:12px;align-items:start}
.project-column,.project-overview-column{position:sticky;top:88px;display:grid;gap:10px;align-self:start;min-width:0}
.project-overview-column .room-sidebar{min-height:250px}
.project-overview-column .room-nav{max-height:calc(100vh - 380px);min-height:180px}
.work-column{display:grid;gap:10px;min-width:0}
.work-toolbar{position:sticky;top:88px;z-index:24;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 12px;border-color:#d8c35b;background:linear-gradient(90deg,#fffdf1 0,#fff 58%);box-shadow:0 7px 20px rgba(20,30,40,.09)}
.work-toolbar-copy{display:grid;gap:2px}.work-toolbar-copy strong{font-size:15px}
.work-save-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;min-width:0}
.work-save-actions .save-state{white-space:nowrap;font-size:11px}
.work-save-button{min-width:112px;padding:10px 18px;font-size:14px;box-shadow:0 2px 0 rgba(92,72,0,.14)}
.room-editor{min-height:calc(100vh - 210px)}
.project-sidebar-panel .project-summary-line{cursor:default}

@media(max-width:1260px){
  .measure-workspace{grid-template-columns:minmax(280px,1fr) minmax(250px,.85fr)}
  .project-column,.project-overview-column{position:static}
  .work-column{grid-column:1/-1}
  .work-toolbar{top:88px}
  .project-overview-column .room-nav{max-height:330px}
}
@media(max-width:900px){
  .topbar-right{width:100%;justify-items:stretch}.top-status-row{justify-content:flex-start}.top-menu-bar{justify-content:flex-start;width:100%}
  .top-menu-popover{position:fixed;left:14px;right:14px;top:auto;min-width:0}.top-menu-popover-right{left:14px;right:14px}
  .measure-workspace{grid-template-columns:1fr}.project-column,.project-overview-column,.work-column{grid-column:auto;position:static}
  .work-toolbar{position:static}.project-overview-column .room-nav{max-height:none}
}
@media(max-width:600px){
  .top-menu-bar{display:grid;grid-template-columns:repeat(3,1fr)}.top-menu>summary{justify-content:center;padding:8px 7px}
  .work-toolbar{align-items:flex-start}.work-save-actions{align-items:flex-end;flex-direction:column;gap:6px}.work-save-button{min-width:105px}
}

/* v0.6.10: schermvullende werkruimte, gelijke kolomhoogte en grotere UI-typografie */
@media screen {
  body{font-size:11pt}
  button,input,select,textarea{font-size:10.5pt}
  label{font-size:10pt}
  .small{font-size:10pt}
  .eyebrow{font-size:10pt}
  .brand-title{font-size:14pt}
  .brand-sub{font-size:10pt}
  .build-badge{font-size:10pt}
  .current-user,.network-state{font-size:10pt}
  .page-head h1{font-size:20pt}
  .page-head p{font-size:10.5pt}
  .project-summary-line strong,.work-toolbar-copy strong{font-size:12pt}
  .sidebar-head h2{font-size:13pt}
  .save-state,.work-save-actions .save-state{font-size:10pt}
  .summary-card strong{font-size:12pt}
  .summary-card span{font-size:10pt}
  .room-nav-order,.warning-dot{font-size:10pt}
  .room-nav-main strong{font-size:11pt}
  .room-nav-main small,.room-nav-main em{font-size:10pt}
  .nav-empty{font-size:10pt}
  .room-title-input{font-size:16pt}
  .field-note{font-size:10pt}
  .room-kpis span{font-size:10pt}
  .room-kpis strong{font-size:11pt}
  .room-tabs button{font-size:10pt}
  .tab-warning{font-size:10pt}
  .tab-intro h3,.plane-head h3{font-size:13pt}
  .tab-intro p,.plane-head p,.copy-tools{font-size:10pt}
  .simple-table th,.simple-table td{font-size:10pt}
  .cell-input span{font-size:10pt}
  .inline-options-fields label,.inline-options-fields small,.inline-check{font-size:10pt!important}
  .top-menu>summary,.top-menu-popover button,.top-menu-file{font-size:10pt}
  .project-search-label,.project-select-label{font-size:10pt}
  .project-selector-meta{font-size:10pt}
}

@media screen and (min-width:1261px){
  .workspace{
    width:100%;
    max-width:none;
    margin:0;
    padding:18px 20px 20px;
  }
  .page-head{margin-bottom:14px}
  .page-head p{max-width:none}
  .measure-workspace{
    grid-template-columns:minmax(320px,21vw) minmax(290px,18vw) minmax(0,1fr);
    gap:14px;
    align-items:stretch;
    min-height:calc(100vh - 190px);
  }
  .project-column,.project-overview-column,.work-column{
    min-height:100%;
    height:100%;
    align-self:stretch;
  }
  .project-column{
    grid-template-rows:auto minmax(0,1fr);
  }
  .project-overview-column{
    grid-template-rows:auto minmax(0,1fr);
  }
  .work-column{
    grid-template-rows:auto minmax(0,1fr);
  }
  .project-sidebar-panel,.project-overview-column .room-sidebar,.room-editor{
    min-height:0;
    height:100%;
  }
  .project-overview-column .room-sidebar{
    display:flex;
    flex-direction:column;
  }
  .project-overview-column .room-nav{
    flex:1 1 auto;
    max-height:none;
    min-height:0;
    overflow:auto;
  }
  .room-editor{overflow:visible}
}


/* v0.6.11: duidelijke werkbladtabs met subtiele datateller */
.room-tabs{
  display:flex;
  align-items:flex-end;
  gap:5px;
  padding:9px 12px 0;
  border-top:1px solid var(--line);
  border-bottom:1px solid #cfd6da;
  background:#f2f4f5;
  overflow-x:auto;
  overflow-y:hidden;
  scrollbar-width:thin;
}
.room-tabs button{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  min-height:38px;
  margin:0 0 -1px;
  padding:8px 13px 9px;
  border:1px solid #d2d9dd;
  border-bottom-color:#cfd6da;
  border-radius:8px 8px 0 0;
  background:#e8ecee;
  color:#5f6a72;
  font-weight:850;
  white-space:nowrap;
  cursor:pointer;
  transition:background .12s ease,border-color .12s ease,color .12s ease,transform .12s ease;
}
.room-tabs button:hover{
  background:#f8f9fa;
  color:var(--ink);
  border-color:#c5cdd2;
}
.room-tabs button:focus-visible{
  outline:2px solid rgba(245,197,21,.5);
  outline-offset:-2px;
}
.room-tabs button.active{
  z-index:2;
  background:#fff;
  color:var(--ink);
  border-color:#c8d0d5;
  border-bottom-color:#fff;
  box-shadow:inset 0 3px 0 var(--yellow);
  transform:translateY(0);
}
.room-tabs .tab-label{display:inline-block}
.tab-count{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:20px;
  height:20px;
  padding:0 5px;
  border-radius:999px;
  background:#cfd6da;
  color:#344047;
  border:1px solid #bcc5ca;
  font-size:9pt;
  font-weight:900;
  line-height:1;
  font-variant-numeric:tabular-nums;
}
.room-tabs button.active .tab-count{
  background:var(--yellow);
  border-color:#d4ab00;
  color:#332900;
}
.room-tabs button:hover .tab-count{background:#dde2e5}
.room-tabs button.active:hover .tab-count{background:var(--yellow)}
.room-tab-body{
  border-top:0;
  background:#fff;
}
@media(max-width:700px){
  .room-tabs{padding-left:8px;padding-right:8px;gap:4px}
  .room-tabs button{padding-left:10px;padding-right:10px}
}

/* v0.6.12: visuele hiërarchie voor invoer en consistente toevoeg-acties */
:root{
  --data-navy:#243b53;
  --placeholder:#a8b0b6;
}
input,select,textarea{
  color:var(--data-navy);
}
input::placeholder,textarea::placeholder{
  color:var(--placeholder);
  font-weight:400!important;
  opacity:1;
}
input::-webkit-input-placeholder,textarea::-webkit-input-placeholder{
  color:var(--placeholder);
  font-weight:400!important;
  opacity:1;
}
input::-moz-placeholder,textarea::-moz-placeholder{
  color:var(--placeholder);
  font-weight:400!important;
  opacity:1;
}
input:-ms-input-placeholder,textarea:-ms-input-placeholder{
  color:var(--placeholder);
  font-weight:400!important;
}
/* Ingevoerde gegevens zijn herkenbaar, maar blijven rustiger dan titels. */
.project-body input,.project-body select,.project-body textarea,
.room-editor input,.room-editor select,.room-editor textarea,
.project-switcher-panel input,.project-switcher-panel select{
  color:var(--data-navy);
}
/* De semantiek is overal gelijk: geel = iets toevoegen/opbouwen. */
.add-action{
  background:var(--yellow)!important;
  border-color:#d6aa00!important;
  color:#2f2800!important;
  font-weight:850;
}
.add-action:hover{
  background:#ffd22a!important;
  border-color:#cda300!important;
}

/* Centraal, bedrijfsneutraal klantenregister */
.top-menu-separator{height:1px;background:#e6e9eb;margin:5px 4px}
.project-customer-field{display:grid;gap:6px}
.project-customer-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;align-items:center}
.project-customer-row select{min-width:0;width:100%}
.project-customer-preview{display:grid;gap:2px;padding:7px 9px;border:1px solid #e3e7e9;border-radius:7px;background:#f8f9f9;color:#65717a;font-size:9.5pt;font-weight:400;line-height:1.3}
.project-customer-preview strong{color:var(--data-navy);font-weight:750}
.customer-unlinked{color:#946800}
.customer-dialog{width:min(1180px,96vw);max-height:92vh;overflow:hidden}
.customer-dialog-head{padding:18px 20px 14px;border-bottom:1px solid var(--line)}
.customer-dialog-head h2{font-size:18pt;margin:2px 0 2px}.customer-dialog-head p{margin:0;color:var(--muted);font-size:10pt}
.customer-dialog-grid{display:grid;grid-template-columns:minmax(300px,34%) minmax(0,1fr);min-height:560px;max-height:calc(92vh - 88px)}
.customer-list-pane{display:flex;flex-direction:column;min-width:0;padding:14px;border-right:1px solid var(--line);background:#f5f7f8}
.customer-list-toolbar{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center}
.customer-list-toolbar input{width:100%;min-width:0}
.customer-archive-filter{display:flex;align-items:center;gap:7px;margin:10px 2px 8px;color:#66727a;font-size:9.5pt;font-weight:550}.customer-archive-filter input{width:auto}
.customer-list{display:grid;align-content:start;gap:6px;overflow:auto;min-height:0;padding-right:2px}
.customer-list-item{display:grid;gap:3px;width:100%;padding:10px 11px;border:1px solid #dce2e5;border-radius:8px;background:#fff;text-align:left;cursor:pointer}
.customer-list-item:hover{border-color:#bfc9ce;background:#fbfcfc}.customer-list-item.active{border-color:#d6aa00;background:var(--yellow-soft);box-shadow:inset 3px 0 0 var(--yellow)}
.customer-list-item.archived{opacity:.62}.customer-list-item strong{color:var(--data-navy);font-size:10.5pt}.customer-list-item span{color:#6c777e;font-size:9.5pt;font-weight:400}
.customer-list-empty{padding:18px 12px;text-align:center;color:var(--muted);font-size:10pt}
.customer-editor-pane{display:flex;flex-direction:column;min-width:0;overflow:auto;padding:18px 20px;background:#fff}
.customer-editor-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:14px}.customer-editor-head h3{margin:2px 0 0;font-size:16pt}.customer-editor-actions{display:flex;gap:8px}
.customer-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px 12px}.customer-form-grid label{display:grid;gap:5px}.customer-wide{grid-column:1/-1}.customer-address-row{display:grid;grid-template-columns:minmax(0,1fr) 110px;gap:8px}.customer-form-grid input,.customer-form-grid textarea{width:100%;box-sizing:border-box}
.customer-message{min-height:22px;margin-top:10px;font-size:9.5pt}.customer-message.success{color:#216b2c}.customer-message.error{color:#a51616}
.customer-editor-footer{display:flex;justify-content:flex-end;gap:9px;margin-top:auto;padding-top:14px;border-top:1px solid #eceeef}
@media(max-width:850px){.customer-dialog-grid{grid-template-columns:1fr;max-height:calc(92vh - 88px);overflow:auto}.customer-list-pane{border-right:0;border-bottom:1px solid var(--line);max-height:330px}.customer-editor-pane{overflow:visible}.customer-form-grid{grid-template-columns:1fr}.customer-wide{grid-column:auto}}

/* v0.6.14: hoofdadres + herbruikbare werfadressen */
.project-site-field{display:grid;gap:6px}
.project-site-field select{width:100%;min-width:0}
.field-help{display:block;color:#879198;font-size:9pt;font-weight:400;line-height:1.3;margin-top:2px}
.customer-section-title{display:flex;align-items:baseline;gap:10px;margin-top:4px;padding-top:10px;border-top:1px solid #edf0f1}
.customer-section-title strong{color:#202a32;font-size:10.5pt}.customer-section-title span{color:#7b868d;font-size:9.5pt;font-weight:400}
.customer-sites-section{margin-top:16px;padding-top:14px;border-top:1px solid #e6eaec}
.customer-sites-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:9px}
.customer-sites-head>div{display:grid;gap:2px}.customer-sites-head strong{font-size:11pt;color:#202a32}.customer-sites-head span{font-size:9.5pt;color:#758087;font-weight:400}
.customer-site-list{display:grid;gap:6px}
.customer-site-empty{padding:12px;border:1px dashed #d9dfe2;border-radius:8px;color:#7a858c;background:#fafbfb;font-size:9.5pt;font-weight:400}
.customer-site-item{display:flex;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:9px 10px;border:1px solid #dce2e5;border-radius:8px;background:#fff;text-align:left;cursor:pointer}
.customer-site-item:hover{background:#fbfcfc;border-color:#bcc7cc}.customer-site-item.archived{opacity:.58}
.customer-site-item span{display:grid;gap:2px;min-width:0}.customer-site-item strong{color:var(--data-navy);font-size:10pt}.customer-site-item small{color:#6f7a81;font-size:9.2pt;font-weight:400;white-space:normal}.customer-site-item em{font-size:9pt;color:#7b858b;font-style:normal;white-space:nowrap}
.customer-site-editor{margin-top:10px;padding:12px;border:1px solid #d9dfe2;border-radius:9px;background:#f8fafb}
.customer-site-editor-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px}.customer-site-editor-head strong{color:#202a32}
.customer-site-form-grid{gap:9px 10px}.customer-site-editor-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:10px}
@media(max-width:850px){.customer-section-title{display:grid;gap:2px}.customer-sites-head{align-items:center}.customer-address-row{grid-template-columns:minmax(0,1fr) 90px}}

/* v0.6.17: klantenbestand in dezelfde ATech-huisstijl en bruikbare scroll/layout */
.customer-dialog{
  width:min(1240px,97vw);
  height:min(820px,92vh);
  max-height:92vh;
  border:1px solid #d9dee1;
  box-shadow:0 22px 60px rgba(20,30,40,.24);
}
.customer-dialog-head{
  flex:0 0 auto;
  background:#fff;
  border-top:4px solid var(--yellow);
  border-bottom:1px solid #e7dfb7;
}
.customer-dialog-head .eyebrow,.customer-editor-head .eyebrow{color:#6f5b00}
.customer-dialog-head h2,.customer-editor-head h3,.customer-section-title strong,.customer-sites-head strong{color:var(--data-navy)}
.customer-dialog-grid{
  height:calc(100% - 91px);
  min-height:0;
  max-height:none;
  grid-template-columns:minmax(330px,35%) minmax(0,1fr);
}
.customer-list-pane{
  min-height:0;
  overflow:hidden;
  background:linear-gradient(180deg,#fffdf4 0,#fbfcfc 150px);
  border-right:1px solid #e7dfb7;
}
.customer-list-toolbar{flex:0 0 auto}
.customer-list-secondary{
  flex:0 0 auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:8px;
  margin:10px 2px 5px;
}
.customer-archive-filter{
  display:inline-flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-start;
  gap:7px;
  margin:0!important;
  width:auto;
  min-width:0;
  white-space:nowrap;
  color:#59666f;
  font-size:9.5pt;
  font-weight:550;
}
.customer-archive-filter input{
  flex:0 0 auto;
  width:15px!important;
  height:15px;
  margin:0;
}
.customer-archive-filter span{display:inline;line-height:1.2}
.customer-import-status{
  flex:0 0 auto;
  min-height:17px;
  margin:0 2px 6px;
  color:#6c777e;
  font-size:9pt;
  line-height:1.35;
}
.customer-import-status.success{color:var(--ok)}
.customer-import-status.error{color:var(--danger)}
.customer-list{
  flex:1 1 auto;
  min-height:0;
  height:0;
  overflow-y:auto!important;
  overflow-x:hidden;
  overscroll-behavior:contain;
  scrollbar-gutter:stable;
  padding:2px 4px 10px 0;
}
.customer-list-item{
  position:relative;
  border-color:#dce2e5;
  background:#fff;
}
.customer-list-item:hover{border-color:#c8b85e;background:#fffef8}
.customer-list-item.active{border-color:#d6aa00;background:var(--yellow-soft);box-shadow:inset 4px 0 0 var(--yellow)}
.customer-list-item.archived{
  opacity:1;
  background:#eef2f5;
  border-color:#cbd5dc;
  box-shadow:inset 4px 0 0 #8293a0;
}
.customer-list-item.archived:hover{background:#e8eef2;border-color:#aebdc7}
.customer-list-item.archived strong{color:#4f6372}
.customer-list-item.archived span{color:#74838d}
.customer-list-item.active.archived{border-color:#8d9ca6;background:#e4ebef;box-shadow:inset 4px 0 0 #657b8a}
.customer-list-item-head{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}
.customer-list-item-head strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.customer-archived-badge{flex:0 0 auto;border:1px solid #a8b6c0;border-radius:999px;background:#f6f8fa;padding:2px 6px;color:#566a78!important;font-size:8pt!important;font-weight:750!important}
.customer-editor-pane{min-height:0;background:#fff}
.customer-editor-head{padding-bottom:10px;border-bottom:1px solid #efe6b7}
.customer-editor-actions{flex-wrap:wrap;justify-content:flex-end}
.customer-form-grid label{color:#52606a}
.customer-form-grid input,.customer-form-grid select,.customer-form-grid textarea{color:var(--data-navy);font-weight:600}
.customer-address-street{grid-column:span 1}
.customer-address-preview-wrap{
  display:grid;
  gap:5px;
  margin-top:1px;
}
.customer-address-preview-wrap>span{
  color:#59636a;
  font-size:11px;
  font-weight:800;
}
.customer-address-preview{
  min-height:38px;
  padding:9px 10px;
  border:1px solid #dde3e6;
  border-left:4px solid var(--yellow);
  border-radius:7px;
  background:#f8fafb;
  color:var(--data-navy);
  font-size:10pt;
  font-weight:600;
  line-height:1.35;
}
.customer-address-preview.empty{color:#8d979e;font-weight:400}
.customer-sites-section{border-top-color:#efe6b7}
.customer-site-editor{background:#fffdf4;border-color:#e4dcae}
.customer-site-item.archived{opacity:1;background:#eef2f5;border-color:#cbd5dc}
.customer-editor-footer{background:#fff;position:sticky;bottom:-18px;margin-left:-20px;margin-right:-20px;padding:12px 20px 18px;border-top:1px solid #e8ecee;z-index:3}
#btnCustomerDelete:not(:disabled){background:#fff;border-color:#d9bcbc}
#btnCustomerImportOnFact{white-space:nowrap;background:#fff}
#btnCustomerImportOnFact:hover{border-color:#d0b638;background:#fffdf1}
@media(max-width:850px){
  .customer-dialog{height:min(900px,94vh)}
  .customer-dialog-grid{height:auto;max-height:calc(94vh - 91px);overflow:auto}
  .customer-list-pane{min-height:260px;max-height:360px;overflow:hidden}
  .customer-list{height:auto;min-height:150px}
  .customer-list-secondary{align-items:flex-start;flex-wrap:wrap}
  .customer-editor-footer{position:static;margin-left:0;margin-right:0;padding-left:0;padding-right:0}
}

/* v0.6.22 - klantlocaties en projectkoppeling */
.project-site-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px;align-items:center}
.project-site-row .primary.small{white-space:nowrap}
.project-customer-preview .project-address-badge{display:inline-flex;width:max-content;align-items:center;border-radius:999px;padding:2px 7px;font-size:8.8pt;font-weight:700;line-height:1.2;margin-bottom:2px}
.project-address-badge.main{background:#eef2f5;color:#435663;border:1px solid #d5dde2}
.project-address-badge.site{background:#fff2b8;color:#665000;border:1px solid #e5c84b}
.project-customer-preview small{font-size:9pt;color:#6f7a81;font-weight:400}
.project-address-archived{font-size:8.8pt;color:#9b2f2f;font-style:normal;font-weight:600}
.customer-site-item small+small{color:#697780}
.customer-site-editor-actions{flex-wrap:wrap}
.customer-site-editor-actions #btnCustomerSiteUse{margin-left:auto}
@media(max-width:850px){.project-site-row{grid-template-columns:1fr}.customer-site-editor-actions #btnCustomerSiteUse{margin-left:0}}


/* v0.6.24 - compactere ruimtelijst, klant-autocomplete en duidelijkere werflocatie */
.project-overview-column .room-nav{
  align-content:start;
  grid-auto-rows:max-content;
  gap:3px;
  padding:5px 6px 8px;
}
.project-overview-column .room-nav-item{
  padding:7px 8px;
  border-radius:7px;
  grid-template-columns:23px minmax(0,1fr) auto;
  gap:7px;
}
.project-overview-column .room-nav-order{width:22px;height:22px}
.project-overview-column .room-nav-main small,
.project-overview-column .room-nav-main em{margin-top:1px}

.project-customer-search-wrap{position:relative;min-width:0}
.project-customer-row input{min-width:0;width:100%}
.project-customer-suggestions{
  position:absolute;
  z-index:35;
  left:0;
  right:0;
  top:calc(100% + 4px);
  max-height:290px;
  overflow:auto;
  padding:4px;
  border:1px solid #cfd7db;
  border-radius:8px;
  background:#fff;
  box-shadow:0 12px 30px rgba(26,38,48,.16);
}
.project-customer-suggestion{
  display:grid;
  gap:2px;
  width:100%;
  padding:7px 8px;
  border:0;
  border-radius:6px;
  background:#fff;
  text-align:left;
  color:var(--data-navy);
}
.project-customer-suggestion:hover,.project-customer-suggestion:focus{background:var(--yellow-soft);outline:none}
.project-customer-suggestion strong{font-size:9.8pt}
.project-customer-suggestion span{font-size:8.8pt;color:#6d7880;font-weight:400;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.project-customer-suggestion-empty{padding:9px 10px;color:#758087;font-size:9pt;font-weight:400;line-height:1.35}

.project-site-field{
  padding:9px 10px 10px;
  border:1px solid #ead46b;
  border-left:4px solid var(--yellow);
  border-radius:8px;
  background:#fff9d9;
}
.project-site-field>select,.project-site-field .project-site-row select{background:#fff}
.project-site-field .project-customer-preview{background:#fffdf3;border-color:#eadfa7}

.inline-options-fields{
  grid-template-columns:110px 110px 150px minmax(195px,220px) 210px;
  align-items:start;
}
.inline-option-field{
  display:grid!important;
  grid-template-rows:18px 38px 15px;
  gap:4px!important;
  align-self:start;
  min-width:0;
}
.inline-option-field .option-label{display:block;line-height:18px;white-space:nowrap;color:#59636a;font-size:10px;font-weight:800}
.inline-option-field input,.inline-option-field select{height:38px;min-height:38px}
.inline-option-field .option-help{display:block;min-height:15px;line-height:15px;font-size:9px;color:var(--muted);font-weight:400;white-space:nowrap}
.inline-option-check-field{width:210px;max-width:210px;justify-self:start}
.inline-option-check-field .inline-check{height:38px;min-height:38px;width:210px;max-width:210px;margin:0;padding:6px 9px}
.inline-option-check-field .inline-check span{white-space:nowrap}
@media(max-width:1320px){
  .inline-options-fields{grid-template-columns:repeat(3,minmax(140px,1fr))}
  .inline-option-check-field{width:210px;max-width:100%}
  .inline-option-check-field .inline-check{width:210px;max-width:100%}
}
@media(max-width:600px){
  .inline-option-field{grid-template-rows:auto 38px auto}
  .inline-option-field .option-label,.inline-option-field .option-help{white-space:normal}
  .inline-option-check-field,.inline-option-check-field .inline-check{width:100%;max-width:none}
}


/* v0.6.25: Openingen productieklaar */
.opening-table .qty-cell{min-width:64px;text-align:right}
.opening-table .opening-parent-select{min-width:210px}
.opening-table .opening-parent-select.needs-choice{border-color:#d8ae00;background:#fff9dc;box-shadow:0 0 0 2px rgba(245,197,21,.12)}
.opening-table tr.row-needs-attention>td{background:#fffdf3}
.opening-table tr.row-needs-attention>td:first-child{box-shadow:inset 4px 0 0 var(--yellow)}
.opening-alert{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:0 0 10px;padding:9px 11px;border:1px solid #e2c34d;border-radius:8px;background:var(--yellow-soft);font-size:11px;color:#5f520d}
.opening-alert strong{color:#4d4207}.opening-alert span{color:#6d6540}
.wall-opening-summary{display:inline-flex;align-items:center;justify-content:flex-end;gap:6px;white-space:nowrap;cursor:help}
.wall-opening-summary .mini-count{display:inline-grid;place-items:center;min-width:20px;height:20px;padding:0 5px;border-radius:999px;background:#e7edf2;color:#243b53;font-size:10px;font-weight:900}
.wall-opening-summary strong{color:#7b5a00;font-size:11px}.opening-summary-cell{min-width:110px}.muted-dash{color:#9aa3aa;font-weight:500}.no-deduction{font-size:10px;color:var(--muted);font-weight:600;white-space:nowrap}
@media(max-width:1500px){.opening-table{min-width:1120px}}


/* v0.6.27: robuuste uitlijning openingsopties */
.opening-options-fields{
  display:grid;
  grid-template-columns:minmax(105px,120px) minmax(210px,260px) minmax(230px,280px) minmax(210px,260px);
  gap:14px;
  align-items:start;
  width:max-content;
  max-width:100%;
}
.opening-options-fields .inline-option-field{grid-template-rows:18px 38px 15px;min-width:0}
.opening-options-fields .opening-option-check-field{width:100%;max-width:none;min-width:0;justify-self:stretch}
.opening-options-fields .opening-option-check-field .inline-check{box-sizing:border-box;height:38px;min-height:38px;width:100%;max-width:100%;margin:0;padding:6px 10px;display:flex;align-items:center;gap:8px;overflow:hidden}
.opening-options-fields .opening-option-check-field .inline-check input{flex:0 0 auto}
.opening-options-fields .opening-option-check-field .inline-check span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
@media(max-width:1450px){
  .opening-options-fields{grid-template-columns:minmax(105px,120px) minmax(210px,1fr) minmax(220px,1fr);width:100%}
  .opening-options-fields .opening-option-check-field:last-child{grid-column:3}
}
@media(max-width:1180px){
  .opening-options-fields{grid-template-columns:minmax(105px,130px) minmax(210px,1fr);width:100%}
  .opening-options-fields .opening-option-check-field:last-child{grid-column:auto}
}
@media(max-width:700px){
  .opening-options-fields{grid-template-columns:1fr;width:100%}
  .opening-options-fields .inline-option-field{grid-template-rows:auto 38px auto}
  .opening-options-fields .opening-option-check-field .inline-check span{white-space:normal;overflow:visible;text-overflow:clip}
}

/* v0.6.27: plafond en vloer als afzonderlijke tabs */
.plane-block{width:100%}
.plane-block .simple-table-wrap{width:100%}

/* v0.6.28: interactieve controlepunten en productieready PDF-controle */
.warning-dot-action{cursor:pointer;transition:transform .12s ease,box-shadow .12s ease,background .12s ease}
.warning-dot-action:hover,.warning-dot-action:focus{background:#ffe28a;box-shadow:0 0 0 3px rgba(245,197,21,.22);outline:none;transform:translateY(-1px)}
.validation-help{margin:4px 0 8px;color:var(--muted);font-size:10.5pt}
.validation-list{list-style:none!important;padding:0!important;margin:8px 0 0!important;display:grid;gap:6px}
.validation-list li{margin:0!important;padding:0!important}
.control-point-link{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;text-align:left;border:1px solid #e4cb67;background:#fffdf4;border-radius:8px;padding:8px 10px;color:var(--ink);font:inherit;cursor:pointer}
.control-point-link:hover,.control-point-link:focus{border-color:#cda900;background:#fff7d1;outline:none}
.control-point-link span{min-width:0;line-height:1.35}
.control-point-link em{font-style:normal;font-size:10pt;font-weight:800;color:#705500;white-space:nowrap}
.control-target-highlight{animation:controlTargetPulse 1.8s ease-out}
@keyframes controlTargetPulse{0%{box-shadow:0 0 0 4px rgba(245,197,21,.45);background:#fff7c9}100%{box-shadow:0 0 0 0 rgba(245,197,21,0)}}
.report-check-ok{border:1px solid #b9d6bf;background:#f1f8f2;padding:2mm 2.5mm;font-size:7.8pt;margin:0 0 4mm;color:#315c39}
.report-check-ok strong{margin-right:1mm}
.report-warning-summary{margin:0 0 4mm}

/* v0.7.0 Calculatie */
.calculation-workspace{padding-bottom:24px}
.calculation-page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px}
.calculation-project-bar{margin:0 16px 10px;padding:12px 14px;border:1px solid #e1c653;border-left:4px solid var(--accent,#f4b400);border-radius:10px;background:#fffdf3;display:flex;justify-content:space-between;align-items:center;gap:16px}
.calculation-project-bar strong{display:block;font-size:13pt;color:#1f3a5f}.calc-project-customer{display:block;color:#5f6b76;margin-top:2px}
.calc-save-area{display:flex;align-items:center;gap:10px}.calc-save-area .autosave-state{white-space:nowrap}
.calculation-layout{display:grid;grid-template-columns:minmax(280px,24%) minmax(0,1fr);gap:10px;padding:0 16px;min-height:calc(100vh - 245px)}
.calc-source-panel,.calc-main-panel{min-height:100%;overflow:hidden}.calc-panel-head,.calc-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px}
.calc-panel-head h2,.calc-toolbar h2{margin:0}.calc-source-panel>.helper{margin:8px 0 10px}
.calc-source-list{display:flex;flex-direction:column;gap:8px;max-height:calc(100vh - 350px);overflow:auto;padding-right:3px}
.calc-source-room{border:1px solid #d9e0e5;border-radius:9px;overflow:hidden;background:#fff}.calc-source-room>h3{margin:0;padding:8px 10px;background:#f3f6f8;color:#243b53;font-size:11pt}
.calc-source-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center;padding:7px 10px;border-top:1px solid #eef1f3}.calc-source-row:first-of-type{border-top:0}.calc-source-row span{color:#52616d}.calc-source-row strong{color:#1f3a5f;white-space:nowrap}.calc-source-row button{padding:5px 8px}
.calc-summary{display:grid;grid-template-columns:repeat(4,minmax(130px,1fr));gap:8px;margin-bottom:12px}.calc-summary>div{background:#f7f9fa;border:1px solid #dce3e8;border-radius:8px;padding:9px 11px}.calc-summary span{display:block;color:#6a747d;font-size:9.5pt}.calc-summary strong{display:block;color:#1f3a5f;font-size:14pt;margin-top:2px}.calc-summary>div:nth-child(2),.calc-summary>div:nth-child(4){background:#fff9dc;border-color:#efd15a}
.calc-toolbar{margin:4px 0 8px}.calc-table-wrap{overflow:auto;border:1px solid #dce3e8;border-radius:9px}.calc-table{width:100%;border-collapse:collapse;min-width:1180px}.calc-table th{background:#eef2f4;color:#4e5c67;text-align:left;padding:8px;font-size:9.5pt;white-space:nowrap}.calc-table td{padding:6px 7px;border-top:1px solid #edf0f2;vertical-align:middle}.calc-table input,.calc-table select{width:100%;min-height:34px;color:#1f3a5f}.calc-table .calc-number{text-align:right}.calc-table .calc-total{font-weight:700;color:#1f3a5f;white-space:nowrap;text-align:right}.calc-table .calc-source-label{min-width:125px;color:#66727c}.calc-table .calc-quote-check{text-align:center}.calc-table .calc-delete{text-align:center}.calc-table .calc-delete button{color:#a72d25;background:#fff;border-color:#e3c6c3}.calc-empty{padding:30px;text-align:center;color:#7a858d}
.calc-notes{display:block;margin-top:10px;color:#4f5b65;font-weight:600}.calc-notes textarea{display:block;width:100%;margin-top:5px;color:#1f3a5f;font-weight:400}
@media(max-width:1100px){.calculation-layout{grid-template-columns:1fr}.calc-source-list{max-height:320px}.calc-summary{grid-template-columns:repeat(2,1fr)}}
@media(max-width:650px){.calculation-project-bar,.calculation-page-head{align-items:stretch;flex-direction:column}.calc-save-area{justify-content:space-between}.calc-summary{grid-template-columns:1fr 1fr}}

/* v0.8.0 Calculatiebibliotheek & sjablonen */
.calc-toolbar-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}
.calc-source-actions{display:flex;gap:6px;align-items:center;justify-content:flex-end;flex-wrap:wrap}
.calc-room-group td{background:#f4f6f7!important;color:#243b53!important;font-weight:800;border-top:2px solid #d7dee3!important;padding:7px 9px!important}
.calc-line-badge{display:inline-block;margin-left:6px;padding:2px 6px;border-radius:999px;background:#fff3b8;border:1px solid #efd15a;color:#6f5800;font-size:8pt;font-weight:700;vertical-align:middle}
.calc-line-badge.muted{background:#eef2f4;border-color:#d7dee3;color:#60707d}
.calc-masterdata-dialog{width:min(1500px,96vw);height:min(900px,92vh);padding:0;overflow:hidden}
.calc-masterdata-dialog::backdrop,.calc-apply-template-dialog::backdrop{background:rgba(20,30,38,.58)}
.calc-masterdata-dialog .dialog-head,.calc-apply-template-dialog .dialog-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start;padding:16px 18px;border-bottom:1px solid #e4e7e9;background:#fff}
.calc-masterdata-dialog .dialog-head h2,.calc-apply-template-dialog .dialog-head h2{margin:2px 0 2px;color:#1f3a5f}
.calc-master-tabs{display:flex;gap:5px;padding:10px 16px 0;background:#f6f8f9;border-bottom:1px solid #dce2e6}
.calc-master-tab{border:1px solid #d6dde1;border-bottom:0;border-radius:8px 8px 0 0;background:#e9eef1;color:#566570;padding:9px 14px;font-weight:800}
.calc-master-tab.active{background:#fff;color:#1f3a5f;border-top:3px solid var(--accent,#f4b400);padding-top:7px;position:relative;top:1px}
.calc-master-panel{padding:14px 16px;height:calc(92vh - 190px);overflow:auto;background:#fff}
.calc-master-toolbar{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;margin-bottom:10px}
.calc-master-toolbar h3{margin:0;color:#243b53}.calc-master-toolbar .helper{margin:2px 0 0}
.calc-master-table-wrap{overflow:auto;border:1px solid #dce3e8;border-radius:9px}
.calc-master-table{width:100%;border-collapse:collapse;min-width:1120px}.calc-master-table th{background:#eef2f4;color:#4e5c67;text-align:left;padding:8px;font-size:9.5pt;white-space:nowrap}.calc-master-table td{padding:6px;border-top:1px solid #edf0f2}.calc-master-table input,.calc-master-table select{width:100%;min-height:34px;color:#1f3a5f}.calc-master-check{text-align:center}.calc-master-check input{width:auto}
.danger-lite{color:#a72d25;background:#fff;border:1px solid #e3c6c3;border-radius:7px;padding:6px 9px;font-weight:700}
.calc-master-foot{display:flex;justify-content:flex-end;align-items:center;gap:12px;padding:10px 16px;border-top:1px solid #dce2e6;background:#fff}
.calc-templates-list{display:flex;flex-direction:column;gap:12px}
.calc-template-card{border:1px solid #d9e0e5;border-radius:10px;overflow:hidden;background:#fff}
.calc-template-head{display:flex;justify-content:space-between;gap:10px;align-items:flex-start;padding:12px;background:#f8fafb;border-bottom:1px solid #e4e9ec}
.calc-template-fields{display:grid;grid-template-columns:minmax(180px,1fr) minmax(170px,.8fr) minmax(260px,1.5fr) auto;gap:10px;flex:1;align-items:end}
.calc-template-fields label{font-weight:700;color:#4e5c67}.calc-template-fields input,.calc-template-fields select{display:block;width:100%;margin-top:4px;min-height:36px;color:#1f3a5f}.calc-template-active{display:flex;align-items:center;gap:6px;white-space:nowrap;padding-bottom:8px}.calc-template-active input{width:auto;margin:0}
.calc-template-lines{padding:10px 12px}.calc-template-lines-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:8px;color:#243b53}.calc-template-lines table{width:100%;border-collapse:collapse}.calc-template-lines th{background:#f3f6f8;color:#566570;text-align:left;padding:7px;font-size:9.3pt}.calc-template-lines td{padding:6px;border-top:1px solid #edf0f2}.calc-template-lines input,.calc-template-lines select{width:100%;min-height:34px;color:#1f3a5f}.calc-template-empty{padding:16px;color:#78848d;text-align:center;background:#fafbfc;border-radius:8px}
.calc-apply-template-dialog{width:min(850px,94vw);padding:0;max-height:86vh;overflow:hidden}.calc-apply-template-list{padding:14px;display:flex;flex-direction:column;gap:10px;max-height:65vh;overflow:auto}.calc-apply-card{display:flex;justify-content:space-between;gap:14px;align-items:center;border:1px solid #dce3e8;border-radius:10px;padding:12px 14px;background:#fff}.calc-apply-card strong{display:block;color:#1f3a5f;font-size:11pt}.calc-apply-card span{display:block;color:#566570;margin-top:2px}.calc-apply-card ul{margin:6px 0 0;padding-left:18px;color:#66737c}
@media(max-width:1050px){.calc-template-fields{grid-template-columns:1fr 1fr}.calc-template-active{padding-bottom:0}.calc-source-row{grid-template-columns:minmax(0,1fr) auto}.calc-source-actions{grid-column:1/-1;justify-content:flex-start}}
@media(max-width:700px){.calc-masterdata-dialog{width:98vw;height:94vh}.calc-master-panel{height:calc(94vh - 190px)}.calc-template-fields{grid-template-columns:1fr}.calc-template-head,.calc-apply-card{flex-direction:column;align-items:stretch}.calc-master-toolbar{align-items:stretch;flex-direction:column}}


/* v0.8.1 Professionele calculatiebibliotheek */
.calc-catalog-filters{display:grid;grid-template-columns:minmax(240px,1fr) minmax(180px,.45fr) minmax(160px,.35fr);gap:8px;margin:0 0 10px}.calc-catalog-filters input,.calc-catalog-filters select{min-height:38px;color:#1f3a5f}.calc-catalog-table{min-width:1300px}.calc-catalog-table td:last-child{white-space:nowrap}.calc-item-detail td{background:#fffdf4!important;border-top:0!important}.calc-item-detail-grid{display:grid;grid-template-columns:2fr 1.1fr .7fr .7fr .6fr .8fr;gap:10px;align-items:end}.calc-item-detail-grid label{font-weight:700;color:#52606b}.calc-item-detail-grid input,.calc-item-detail-grid textarea{display:block;width:100%;margin-top:4px;color:#1f3a5f;font-weight:400}.calc-item-notes{grid-column:1/-1}.calc-template-previewbar{display:flex;justify-content:space-between;gap:12px;padding:8px 12px;background:#fff9dc;border-bottom:1px solid #ecd45f;color:#5c6570}.calc-template-previewbar strong{color:#1f3a5f}.calc-template-pro-table{min-width:1350px}.calc-template-pro-table th:nth-child(1){min-width:220px}.calc-template-pro-table th:nth-child(2){min-width:220px}.calc-template-pro-table th:nth-child(3){min-width:190px}.calc-template-preview{color:#1f3a5f!important;font-weight:700!important;margin-top:7px!important}
@media(max-width:1000px){.calc-catalog-filters{grid-template-columns:1fr 1fr}.calc-catalog-filters input{grid-column:1/-1}.calc-item-detail-grid{grid-template-columns:1fr 1fr 1fr}}
@media(max-width:650px){.calc-catalog-filters,.calc-item-detail-grid{grid-template-columns:1fr}.calc-template-previewbar{flex-direction:column}}

/* v0.8.2 Centrale categorieen en duidelijke calculatie-invoer */
.calc-catalog-table{min-width:1540px}
.calc-catalog-table th:nth-child(3){min-width:250px}
.calc-categories-list{display:flex;flex-direction:column;gap:8px;max-width:900px}
.calc-category-row{display:grid;grid-template-columns:42px minmax(260px,1fr) 110px 110px;gap:10px;align-items:center;padding:10px;border:1px solid #dce3e8;border-radius:9px;background:#fff}
.calc-category-order{display:grid;place-items:center;width:28px;height:28px;border-radius:999px;background:#fff3b8;border:1px solid #efd15a;color:#6f5800;font-weight:900}
.calc-category-row input[type="text"],.calc-category-row>input{min-height:36px;color:#1f3a5f}
.calc-category-active{display:flex;align-items:center;gap:7px;font-weight:700;color:#52606b}.calc-category-active input{width:auto}
.calc-template-preview-details{list-style:none;margin:0;padding:8px 12px;background:#fffdf4;border-bottom:1px solid #eee5b9;display:grid;gap:5px}
.calc-template-preview-details li{display:flex;gap:10px;align-items:baseline;flex-wrap:wrap}.calc-template-preview-details strong{color:#243b53}.calc-template-preview-details span{color:#64727d}
.calc-template-line-card{border:1px solid #dce3e8;border-radius:9px;background:#fff;margin:8px 0;overflow:hidden}
.calc-template-line-main{display:grid;grid-template-columns:minmax(220px,1.25fr) minmax(220px,1fr) minmax(190px,.9fr) minmax(150px,.65fr);gap:10px;padding:10px;background:#f8fafb}
.calc-template-line-main label,.calc-template-line-params label{font-weight:700;color:#4e5c67}.calc-template-line-main input,.calc-template-line-main select,.calc-template-line-params input,.calc-template-line-params select{display:block;width:100%;margin-top:4px;min-height:36px;color:#1f3a5f;font-weight:400}
.calc-template-line-params{display:flex;gap:10px;align-items:end;padding:10px;border-top:1px solid #edf0f2}.calc-template-line-params label{min-width:190px;max-width:300px}.mini-help{font-size:8.5pt;color:#7a858d;font-weight:500}
.calc-template-line-example{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:8px 10px;background:#fffdf4;border-top:1px solid #eee5b9}.calc-template-line-example span{color:#52616d;font-weight:600}
@media(max-width:1100px){.calc-template-line-main{grid-template-columns:1fr 1fr}.calc-template-line-params{flex-wrap:wrap}}
@media(max-width:700px){.calc-template-line-main{grid-template-columns:1fr}.calc-category-row{grid-template-columns:34px 1fr}.calc-category-active,.calc-category-row .danger-lite{grid-column:2}.calc-template-line-example{align-items:stretch;flex-direction:column}}
/* v0.9.2 - calculatiesjablonen: historische richtprijs en duidelijke interne opbouw */
.calc-template-fields{grid-template-columns:minmax(170px,1fr) minmax(160px,.8fr) minmax(220px,1.25fr) minmax(220px,1.25fr) auto}
.calc-template-reference{display:block;margin-top:5px;font-size:9pt;font-weight:700;color:#7a6410}
@media(max-width:1250px){.calc-template-fields{grid-template-columns:1fr 1fr}.calc-template-active{padding-bottom:0}}

/* v0.9.2 - concrete materialen en verpakkingsvarianten */
.calc-materials-list{display:grid;gap:12px;padding:8px 0 16px}.calc-material-card{border:1px solid #d9e0e7;border-radius:10px;background:#fff;padding:12px}.calc-material-main{display:grid;grid-template-columns:repeat(5,minmax(130px,1fr));gap:8px;align-items:end}.calc-material-main label,.calc-template-material-config label,.calc-material-foot label{display:grid;gap:4px;font-size:12px}.calc-material-variants{margin-top:12px;border-top:1px solid #e7ebef;padding-top:10px}.calc-material-variant{display:grid;grid-template-columns:1.4fr .65fr .65fr .8fr .8fr .9fr auto;gap:7px;align-items:center;margin-top:7px}.calc-material-unitcost{font-size:11px;color:#596878;white-space:nowrap}.calc-material-foot{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end;margin-top:10px}.calc-template-material-config{display:grid;grid-template-columns:1fr 1.5fr 1.3fr 1fr auto;gap:8px;margin:8px 0;padding:8px;background:#f8fafc;border:1px solid #e1e6eb;border-radius:8px}.calc-apply-template-card>div{display:grid;gap:7px}.calc-apply-material{display:grid;grid-template-columns:1.1fr .65fr 1.4fr 1.4fr;gap:7px;align-items:end;padding:8px;border:1px solid #e2e7ec;border-radius:8px;background:#fbfcfd}.calc-apply-material label{display:grid;gap:3px;font-size:11px}.calc-apply-line{display:flex;justify-content:space-between;gap:12px;padding:5px 0;border-bottom:1px solid #eef1f4}.calc-apply-line span,.calc-apply-material span{font-size:11px;color:#5f6d7b}@media(max-width:1100px){.calc-material-main{grid-template-columns:repeat(2,minmax(140px,1fr))}.calc-material-variant{grid-template-columns:1fr 1fr 1fr}.calc-template-material-config,.calc-apply-material{grid-template-columns:1fr 1fr}.calc-material-foot{grid-template-columns:1fr}}

/* v0.9.3 - onbeperkt geneste categorieboom */
.calc-categories-list{max-width:none}
.calc-category-row{grid-template-columns:32px minmax(230px,1.25fr) minmax(220px,1fr) 90px auto;padding-left:calc(10px + min(var(--category-depth),8)*18px);border-left:calc(3px + min(var(--category-depth),8)*1px) solid #e7ebef}
.calc-category-treeguide{font-weight:900;color:#8a7200;text-align:center}
.calc-category-namewrap{display:grid;gap:3px}.calc-category-namewrap input,.calc-category-row select{min-height:36px;color:#1f3a5f}
.calc-category-path{font-size:10px;color:#78848d;overflow-wrap:anywhere}
.calc-category-row>label:not(.calc-category-active){display:grid;gap:4px;font-size:11px;font-weight:700;color:#52606b}
.calc-category-actions{display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap}
@media(max-width:900px){.calc-category-row{grid-template-columns:28px 1fr}.calc-category-namewrap,.calc-category-row>label,.calc-category-actions{grid-column:2}.calc-category-actions{justify-content:flex-start}}

/* v0.9.4 - gebruiksvriendelijke categorieboom */
.calc-category-toolbar{align-items:center}.calc-category-composer{margin:8px 0 14px;padding:14px 16px;border:1px solid #e3bf24;border-radius:12px;background:#fffbee;box-shadow:0 6px 18px rgba(31,58,95,.08)}
.calc-category-composer-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:10px}.calc-category-composer-head>div{display:grid;gap:2px}.calc-category-composer-head strong{font-size:16px;color:#1f3a5f}.calc-category-composer-grid{display:grid;grid-template-columns:minmax(240px,1.2fr) minmax(240px,1fr) auto;gap:10px;align-items:end}.calc-category-composer-grid label{display:grid;gap:5px;font-size:11px;font-weight:800;color:#52606b}.calc-category-composer-grid input,.calc-category-composer-grid select{min-height:40px;color:#1f3a5f}.calc-category-composer-actions{display:flex;gap:7px}
.calc-category-list-tools{display:flex;align-items:end;justify-content:space-between;gap:12px;margin:4px 0 10px;padding:10px 12px;border:1px solid #e1e6eb;border-radius:10px;background:#f8fafc}.calc-category-search{display:grid;gap:4px;min-width:min(460px,70%);font-size:11px;font-weight:800;color:#52606b}.calc-category-search input{min-height:38px}.calc-category-count{font-size:11px;font-weight:800;color:#6b7782;white-space:nowrap}
.calc-categories-list{display:grid;gap:7px;max-width:none;padding-bottom:8px}.calc-category-node{position:relative;margin-left:calc(min(var(--category-depth),12)*24px);border:1px solid #dce3e8;border-radius:10px;background:#fff;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.calc-category-node::before{content:"";position:absolute;left:calc(-1 * min(var(--category-depth),12)*24px);top:50%;width:calc(min(var(--category-depth),12)*24px);height:1px;background:#d9dee3}.calc-category-node[data-category-depth="0"]::before{display:none}.calc-category-node.is-editing{border-color:#e0b80e;box-shadow:0 0 0 2px rgba(244,195,0,.12)}.calc-category-node.just-created{border-color:#d0a900;background:#fffbea;box-shadow:0 0 0 3px rgba(244,195,0,.15)}.calc-category-branch{position:absolute;left:-13px;top:-8px;bottom:-8px;width:1px;background:#e1e6eb;display:none}.calc-category-node:not([data-category-depth="0"]) .calc-category-branch{display:block}
.calc-category-rowview{display:grid;grid-template-columns:34px minmax(260px,1fr) 120px auto;gap:10px;align-items:center;padding:10px 12px}.calc-category-toggle{width:30px;height:30px;padding:0;border:1px solid #d7dee5;border-radius:7px;background:#f8fafc;color:#536475;font-size:16px;font-weight:900}.calc-category-toggle:hover:not(:disabled){background:#fff6cc;border-color:#e3bf24}.calc-category-toggle.is-empty{border-color:transparent;background:transparent;color:#a9b1b8;cursor:default}.calc-category-summary{display:grid;gap:3px;min-width:0}.calc-category-titleline{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.calc-category-titleline strong{font-size:14px;color:#1f3a5f}.calc-category-level,.calc-category-inactive{display:inline-flex;align-items:center;min-height:22px;padding:2px 7px;border-radius:999px;font-size:9px;font-weight:900;letter-spacing:.02em}.calc-category-level{background:#eef3f7;color:#536475}.calc-category-inactive{background:#fff0ee;color:#a63a2c}.calc-category-path{font-size:10px;color:#778490;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.calc-category-meta{display:grid;justify-items:start;font-size:10px;color:#7a8792}.calc-category-meta strong{font-size:13px;color:#52616d}.calc-category-actions{display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap}
.calc-category-editor{display:grid;grid-template-columns:minmax(220px,1.2fr) minmax(240px,1fr) 100px minmax(150px,.6fr) auto;gap:10px;align-items:end;padding:12px 12px 13px 56px;border-top:1px solid #ece5c7;background:#fffdf5;border-radius:0 0 10px 10px}.calc-category-editor>label:not(.calc-category-active){display:grid;gap:4px;font-size:11px;font-weight:800;color:#52606b}.calc-category-editor input,.calc-category-editor select{min-height:38px;color:#1f3a5f}.calc-category-editor-info{display:grid;gap:3px;font-size:9px;color:#7b8791}.calc-category-editor-info strong{font-size:11px;color:#52616d}.calc-category-empty{display:grid;gap:4px;place-items:center;padding:30px;border:1px dashed #ccd5dd;border-radius:10px;background:#fafbfc;color:#667582}.calc-category-empty strong{color:#314a64}
@media(max-width:1050px){.calc-category-composer-grid{grid-template-columns:1fr 1fr}.calc-category-composer-actions{grid-column:1/-1;justify-content:flex-end}.calc-category-rowview{grid-template-columns:34px 1fr auto}.calc-category-meta{display:none}.calc-category-editor{grid-template-columns:1fr 1fr;padding-left:56px}.calc-category-editor .danger-lite{justify-self:start}}
@media(max-width:700px){.calc-category-list-tools{align-items:stretch;flex-direction:column}.calc-category-search{min-width:0;width:100%}.calc-category-composer-grid{grid-template-columns:1fr}.calc-category-composer-actions{grid-column:auto}.calc-category-node{margin-left:calc(min(var(--category-depth),6)*14px)}.calc-category-node::before{left:calc(-1 * min(var(--category-depth),6)*14px);width:calc(min(var(--category-depth),6)*14px)}.calc-category-rowview{grid-template-columns:30px 1fr}.calc-category-actions{grid-column:2;justify-content:flex-start}.calc-category-editor{grid-template-columns:1fr;padding-left:42px}.calc-category-path{white-space:normal}.calc-category-editor-info{display:none}}
