:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--page:#f4f6f9;--surface:#fff;--surface-raised:#f8fafc;--surface-inset:#eef1f6;--border:#e2e6ee;--border-strong:#c9d0dc;--text:#0f1219;--text-secondary:#4c5462;--text-muted:#78808f;--accent:#2a78d6;--accent-hover:#256abf;--accent-wash:#eaf2fd;--accent-ink:#1c5cab;--status-good:#0ca30c;--status-warning:#fab219;--status-critical:#d03b3b;--status-critical-wash:#fdeceb;--status-critical-ink:#9b1c1c;--chart-grid:#e8ebf1;--chart-axis:#c9d0dc;--chart-ink:var(--text-muted);--series-1:#2a78d6;--series-2:#eb6834;--series-3:#1baf7a;--series-4:#eda100;--series-5:#e87ba4;--series-6:#008300;--series-7:#4a3aa7;--series-8:#e34948;--series-measured:var(--series-1);--series-forecast:var(--series-2);--series-forecast-12h:var(--series-2);--series-forecast-24h:var(--series-3);--series-measured-ecodan:var(--series-4);--series-measured-airco1:var(--series-5);--series-measured-airco2:var(--series-6);--shadow-sm:0 1px 2px #0f12190a;--shadow-md:0 2px 4px #0f12190a, 0 8px 24px #0f12190f;--shadow-pop:0 4px 12px #0f12191a, 0 16px 40px #0f12191a;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-pill:999px;--font-sans:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", sans-serif;--font-mono:ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--text-xs:11px;--text-sm:12px;--text-base:13px;--text-md:14px;--text-lg:16px;--text-xl:20px;--text-2xl:26px;--text-hero:34px;--sidebar-width:252px;--transition:.12s ease}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--page:#0e1116;--surface:#161a1f;--surface-raised:#1c2128;--surface-inset:#22272f;--border:#272d36;--border-strong:#3a424e;--text:#eef1f6;--text-secondary:#b0b8c4;--text-muted:#848d9b;--accent:#3987e5;--accent-hover:#5598e7;--accent-wash:#1a2a3f;--accent-ink:#86b6ef;--status-good:#0ca30c;--status-warning:#fab219;--status-critical:#d03b3b;--status-critical-wash:#2c1719;--status-critical-ink:#f0a6a6;--chart-grid:#242a33;--chart-axis:#3a424e;--series-1:#3987e5;--series-2:#d95926;--series-3:#199e70;--series-4:#c98500;--series-5:#d55181;--series-6:#008300;--series-7:#9085e9;--series-8:#e66767;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 2px 4px #0000004d, 0 8px 24px #0000005c;--shadow-pop:0 4px 12px #00000070, 0 16px 40px #00000070}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--page:#0e1116;--surface:#161a1f;--surface-raised:#1c2128;--surface-inset:#22272f;--border:#272d36;--border-strong:#3a424e;--text:#eef1f6;--text-secondary:#b0b8c4;--text-muted:#848d9b;--accent:#3987e5;--accent-hover:#5598e7;--accent-wash:#1a2a3f;--accent-ink:#86b6ef;--status-good:#0ca30c;--status-warning:#fab219;--status-critical:#d03b3b;--status-critical-wash:#2c1719;--status-critical-ink:#f0a6a6;--chart-grid:#242a33;--chart-axis:#3a424e;--series-1:#3987e5;--series-2:#d95926;--series-3:#199e70;--series-4:#c98500;--series-5:#d55181;--series-6:#008300;--series-7:#9085e9;--series-8:#e66767;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 2px 4px #0000004d, 0 8px 24px #0000005c;--shadow-pop:0 4px 12px #00000070, 0 16px 40px #00000070}*,:before,:after{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{background:var(--page);color:var(--text);font-family:var(--font-sans);font-size:var(--text-base);-webkit-font-smoothing:antialiased;line-height:1.5}h1,h2,h3,h4,h5,h6,p{margin:0}button{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:var(--radius-sm)}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app-shell{grid-template-columns:var(--sidebar-width) minmax(0, 1fr);height:100vh;display:grid}.sidebar{background:var(--surface);border-right:1px solid var(--border);flex-direction:column;min-height:0;display:flex}.sidebar-brand{align-items:center;gap:var(--space-3);padding:var(--space-5) var(--space-5) var(--space-4);display:flex}.sidebar-mark{background:linear-gradient(140deg, var(--accent), var(--accent-ink));color:#fff;width:30px;height:30px;font-size:var(--text-md);border-radius:9px;flex-shrink:0;place-items:center;font-weight:700;display:grid}.sidebar-title{font-size:var(--text-md);letter-spacing:-.01em;font-weight:650}.sidebar-nav{min-height:0;padding:0 var(--space-3) var(--space-4);flex:1;overflow-y:auto}.nav-topic+.nav-topic{margin-top:var(--space-5)}.nav-topic-header{align-items:center;gap:var(--space-2);padding:0 var(--space-3);margin-bottom:var(--space-2);display:flex}.nav-topic-icon{font-size:var(--text-base);line-height:1}.nav-topic-label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-weight:650}.nav-list{flex-direction:column;gap:1px;display:flex}.nav-item{align-items:center;gap:var(--space-2);width:100%;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:var(--text-md);text-align:left;cursor:pointer;transition:background var(--transition), color var(--transition);background:0 0;border:none;display:flex;position:relative}.nav-item:hover{background:var(--surface-inset);color:var(--text)}.nav-item[aria-current=page]{background:var(--accent-wash);color:var(--accent-ink);font-weight:600}.nav-dot{opacity:.5;border:1px solid;border-radius:50%;flex-shrink:0;width:5px;height:5px}.nav-dot.is-analysis{background:currentColor}.nav-item[aria-current=page] .nav-dot{opacity:1}.sidebar-footer{padding:var(--space-3) var(--space-5) var(--space-5);border-top:1px solid var(--border)}.theme-toggle{border-radius:var(--radius-sm);background:var(--surface-inset);gap:2px;padding:2px;display:flex}.theme-toggle button{padding:var(--space-1) 0;color:var(--text-muted);font-size:var(--text-sm);cursor:pointer;transition:background var(--transition), color var(--transition);background:0 0;border:none;border-radius:4px;flex:1}.theme-toggle button:hover{color:var(--text)}.theme-toggle button[aria-pressed=true]{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm)}.page{min-width:0;overflow-y:auto}.page-header{z-index:10;justify-content:space-between;align-items:flex-start;gap:var(--space-6);padding:var(--space-6) var(--space-8) var(--space-5);background:color-mix(in srgb, var(--page) 94%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);display:flex;position:sticky;top:0}.page-eyebrow{align-items:center;gap:var(--space-2);margin-bottom:var(--space-1);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-weight:600;display:flex}.page-title{font-size:var(--text-xl);letter-spacing:-.015em;font-weight:650}.page-subtitle{margin-top:var(--space-1);max-width:68ch;font-size:var(--text-md);color:var(--text-secondary)}.page-body{gap:var(--space-5);padding:var(--space-6) var(--space-8) var(--space-10);flex-direction:column;display:flex}.section-head{margin-top:var(--space-3);padding-top:var(--space-5);border-top:1px solid var(--border)}.section-title{margin-bottom:var(--space-1);font-size:var(--text-lg);letter-spacing:-.01em;font-weight:650}.stack{gap:var(--space-5);flex-direction:column;display:flex}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.card-header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);padding:var(--space-5) var(--space-5) 0;display:flex}.card-title{font-size:var(--text-md);letter-spacing:-.005em;font-weight:650}.card-desc{margin-top:var(--space-1);max-width:78ch;font-size:var(--text-base);color:var(--text-secondary)}.card-body{padding:var(--space-4) var(--space-5) var(--space-5)}.stat-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));display:grid}.stat{padding:var(--space-4) var(--space-5);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm)}.stat-label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-weight:600}.stat-value{margin-top:var(--space-2);font-size:var(--text-2xl);letter-spacing:-.02em;font-weight:640;line-height:1.1;display:block}.stat-note{margin-top:var(--space-1);font-size:var(--text-sm);color:var(--text-muted);display:block}.toolbar{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.segmented{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-inset);gap:2px;padding:3px;display:inline-flex}.segmented button{padding:var(--space-1) var(--space-3);color:var(--text-secondary);font-size:var(--text-base);white-space:nowrap;cursor:pointer;transition:background var(--transition), color var(--transition);background:0 0;border:none;border-radius:7px;font-weight:500}.segmented button:hover{color:var(--text)}.segmented button[aria-pressed=true]{background:var(--surface);color:var(--text);box-shadow:var(--shadow-sm);font-weight:600}.segmented.is-compact button{padding:2px var(--space-2);font-size:var(--text-sm)}.input,.field input{padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);color:var(--text);font-size:var(--text-md);transition:border-color var(--transition), box-shadow var(--transition);font-family:inherit}.input:focus,.field input:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-wash);outline:none}.input::placeholder{color:var(--text-muted)}.input.is-search{width:100%;max-width:320px}.field{gap:var(--space-1);flex-direction:column;display:flex}.field-label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-weight:600}.btn{padding:var(--space-2) var(--space-4);border:1px solid var(--border-strong);border-radius:var(--radius-md);background:var(--surface);color:var(--text);font-size:var(--text-md);cursor:pointer;transition:background var(--transition), border-color var(--transition);font-weight:500}.btn:hover{background:var(--surface-inset)}.btn.is-primary{background:var(--accent);color:#fff;border-color:#0000}.btn.is-primary:hover{background:var(--accent-hover)}.btn.is-klein{padding:var(--space-1) var(--space-3);font-size:var(--text-base)}.btn:disabled{opacity:.5;cursor:not-allowed}.custom-range{align-items:flex-end;gap:var(--space-3);padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);flex-wrap:wrap;display:flex}.banner{align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);font-size:var(--text-md);display:flex}.banner.is-error{background:var(--status-critical-wash);border:1px solid color-mix(in srgb, var(--status-critical) 35%, transparent);color:var(--status-critical-ink)}.banner-icon{flex-shrink:0;line-height:1.45}.note{color:var(--text-secondary);font-size:var(--text-md)}.empty{align-items:center;gap:var(--space-2);padding:var(--space-10) var(--space-6);color:var(--text-muted);text-align:center;flex-direction:column;display:flex}.empty-title{font-size:var(--text-md);color:var(--text-secondary);font-weight:600}.is-stale{opacity:.5;transition:opacity var(--transition);pointer-events:none}.spinner{border:2px solid var(--border-strong);border-top-color:var(--accent);border-radius:50%;width:13px;height:13px;animation:.64s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.loading-row{align-items:center;gap:var(--space-2);color:var(--text-muted);font-size:var(--text-md);display:flex}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.table-wrap{border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);max-height:68vh;overflow:auto}.data-table{border-collapse:separate;border-spacing:0;width:100%;font-size:var(--text-base);white-space:nowrap}.data-table th{z-index:1;padding:var(--space-2) var(--space-4);background:var(--surface-raised);border-bottom:1px solid var(--border);color:var(--text-muted);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em;text-align:left;white-space:nowrap;font-weight:650;position:sticky;top:0}.data-table th.is-sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.data-table th.is-sortable:hover{color:var(--text)}.sort-caret{margin-left:var(--space-1);color:var(--accent)}.data-table td{padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--border);font-variant-numeric:tabular-nums}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr:hover td{background:var(--surface-raised)}.data-table td.is-null{color:var(--text-muted)}.chart-axis{font-size:var(--text-xs);fill:var(--chart-ink);font-variant-numeric:tabular-nums}.chart-grid line{stroke:var(--chart-grid)}.recharts-cartesian-axis-line,.recharts-cartesian-axis-tick-line{stroke:var(--chart-axis)}.chart-legend{gap:var(--space-4);margin-bottom:var(--space-3);flex-wrap:wrap;display:flex}.legend-item{align-items:center;gap:var(--space-2);font-size:var(--text-base);color:var(--text-secondary);display:inline-flex}.legend-key{background:var(--key-color);border-radius:1px;width:14px;height:2px}.legend-key.is-area{border-radius:2px;width:10px;height:10px}.legend-key.is-dashed{background:repeating-linear-gradient(90deg, var(--key-color) 0 4px, transparent 4px 7px)}.legend-key.is-dotted{background:repeating-linear-gradient(90deg, var(--key-color) 0 2px, transparent 2px 5px)}.chart-tooltip{min-width:168px;padding:var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-pop);font-size:var(--text-base)}.tooltip-heading{margin-bottom:var(--space-2);padding-bottom:var(--space-2);border-bottom:1px solid var(--border);font-size:var(--text-sm);color:var(--text-secondary);font-weight:600}.tooltip-row{justify-content:space-between;align-items:baseline;gap:var(--space-4);padding:1px 0;display:flex}.tooltip-name{align-items:center;gap:var(--space-2);color:var(--text-secondary);display:inline-flex}.tooltip-key{background:var(--key-color);border-radius:1px;width:12px;height:2px}.tooltip-key.is-dashed{background:repeating-linear-gradient(90deg, var(--key-color) 0 4px, transparent 4px 7px)}.tooltip-key.is-dotted{background:repeating-linear-gradient(90deg, var(--key-color) 0 2px, transparent 2px 5px)}.tooltip-value{font-variant-numeric:tabular-nums;color:var(--text);font-weight:640}.tooltip-meta{margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--border)}.tooltip-meta .tooltip-row{font-size:var(--text-sm)}@media (width<=900px){.app-shell{grid-template-rows:auto minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.sidebar{border-right:none;border-bottom:1px solid var(--border);grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"brand theme""nav nav";align-items:center;display:grid;overflow:visible}.sidebar-brand{padding:var(--space-3) var(--space-4);grid-area:brand}.sidebar-footer{padding:var(--space-3) var(--space-4);border-top:none;grid-area:theme}.sidebar-nav{gap:var(--space-5);padding:0 var(--space-4) var(--space-3);flex:none;grid-area:nav;display:flex;overflow:auto hidden}.nav-topic,.nav-topic+.nav-topic{flex:none;margin-top:0}.nav-topic-header{margin-bottom:var(--space-1)}.nav-topic-label{white-space:nowrap}.nav-list{gap:var(--space-1);flex-direction:row}.nav-item{white-space:nowrap}.theme-toggle button{padding:var(--space-1) var(--space-2)}.page-header,.page-body{padding-left:var(--space-4);padding-right:var(--space-4)}.card-header{gap:var(--space-3);flex-direction:column}}.section-desc{max-width:78ch;font-size:var(--text-base);color:var(--text-secondary)}.status-badge{align-items:center;gap:var(--space-2);padding:2px var(--space-3);border:1px solid var(--border);border-radius:var(--radius-pill);background:var(--surface-inset);color:var(--text-secondary);font-size:var(--text-base);white-space:nowrap;flex-shrink:0;font-weight:600;display:inline-flex}.status-badge.is-klein{padding:1px var(--space-2);font-size:var(--text-sm)}.status-teken{font-size:var(--text-sm);line-height:1}.status-badge.is-ok{border-color:var(--border);color:var(--text-secondary);background:0 0}.status-badge.is-ok .status-teken{color:var(--status-good)}.status-badge.is-fout{border-color:color-mix(in srgb, var(--status-critical) 45%, transparent);background:var(--status-critical-wash);color:var(--status-critical-ink)}.status-badge.is-waarschuwing{border-color:color-mix(in srgb, var(--status-warning) 50%, transparent);background:color-mix(in srgb, var(--status-warning) 16%, var(--surface));color:color-mix(in srgb, var(--status-warning) 60%, var(--text))}.status-badge.is-neutraal{background:var(--surface-inset);color:var(--text-secondary)}.status-badge.is-leeg{padding:2px var(--space-3);border:1px dashed var(--border-strong);border-radius:var(--radius-pill);color:var(--text-muted);font-size:var(--text-sm);font-weight:500;display:inline-flex}.overzicht{gap:var(--space-3);flex-direction:column;display:flex}.overzicht-balk{align-items:center;gap:var(--space-2) var(--space-4);padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);box-shadow:var(--shadow-sm);flex-wrap:wrap;display:flex}.overzicht-totaal{font-size:var(--text-md);letter-spacing:-.01em;font-weight:650}.teller{align-items:center;gap:var(--space-2);font-size:var(--text-base);color:var(--text-secondary);white-space:nowrap;display:inline-flex}.teller strong{font-variant-numeric:tabular-nums;color:var(--text);font-weight:650}.teller .status-teken{color:var(--text-muted)}.teller.is-ok .status-teken{color:var(--status-good)}.teller.is-sterk{padding:1px var(--space-3);border-radius:var(--radius-pill)}.teller.is-sterk.is-waarschuwing{background:color-mix(in srgb, var(--status-warning) 18%, var(--surface));color:color-mix(in srgb, var(--status-warning) 55%, var(--text))}.teller.is-sterk.is-waarschuwing strong,.teller.is-sterk.is-waarschuwing .status-teken{color:inherit}.teller.is-sterk.is-fout,.teller.is-fout{color:var(--status-critical-ink)}.teller.is-sterk.is-fout{background:var(--status-critical-wash)}.teller.is-sterk.is-fout strong,.teller.is-sterk.is-fout .status-teken{color:inherit}.aandachtspunten{gap:var(--space-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.aandachtspunt{align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);font-size:var(--text-base);border-left-width:3px;display:flex}.aandachtspunt.is-fout{border-left-color:var(--status-critical);background:var(--status-critical-wash);color:var(--status-critical-ink)}.aandachtspunt.is-waarschuwing{border-left-color:var(--status-warning);background:color-mix(in srgb, var(--status-warning) 12%, var(--surface))}.aandachtspunt-teken{flex-shrink:0;font-weight:700}.aandachtspunt-tekst{flex-direction:column;flex:1;gap:1px;min-width:0;display:flex}.aandachtspunt-bijzin{font-size:var(--text-sm);opacity:.85}.aandachtspunt .btn{flex-shrink:0}.automatiseringen{gap:var(--space-3);flex-direction:column;display:flex}.app-lijst{gap:var(--space-2);flex-direction:column;display:flex}.app-rij{border:1px solid var(--border);border-left:3px solid var(--border);border-radius:var(--radius-md);background:var(--surface)}.app-rij.is-fout{border-left-color:var(--status-critical)}.app-rij.is-waarschuwing{border-left-color:var(--status-warning)}.app-rij.is-open{box-shadow:var(--shadow-sm)}.rij-kop{align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-4);grid-template-columns:max-content minmax(200px,1.1fr) minmax(0,2.4fr) max-content;display:grid}.rij-status{min-width:110px;display:flex}.rij-naam{min-width:0}.rij-titel{align-items:baseline;gap:var(--space-2);font-size:var(--text-md);letter-spacing:-.005em;flex-wrap:wrap;font-weight:650;display:flex}.rij-technisch{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--text-muted);flex-shrink:0;font-weight:400}.rij-kort{align-items:baseline;gap:var(--space-2);min-width:0;font-size:var(--text-base);color:var(--text-secondary);margin-top:1px;display:flex}.rij-omschrijving{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.rij-feiten{gap:var(--space-3);grid-template-columns:repeat(4,minmax(0,1fr));min-width:0;margin:0;display:grid}.rij-feit{min-width:0}.rij-feit dt{font-size:var(--text-xs);color:var(--text-muted);white-space:nowrap;font-weight:600}.rij-feit dd{font-size:var(--text-base);text-overflow:ellipsis;white-space:nowrap;margin:0;font-weight:600;line-height:1.35;overflow:hidden}.rij-feit-bijzin{font-size:var(--text-sm);color:var(--text-muted);text-overflow:ellipsis;font-weight:400;display:block;overflow:hidden}.rij-feit.is-let-op .rij-feit-bijzin{color:color-mix(in srgb, var(--status-warning) 55%, var(--text));font-weight:600}.rij-feit.is-let-op dd:not(:has(.rij-feit-bijzin)){color:color-mix(in srgb, var(--status-warning) 55%, var(--text));font-weight:600}.rij-feit.is-afbreken dd{-webkit-line-clamp:2;white-space:normal;-webkit-box-orient:vertical;line-height:1.3;display:-webkit-box}.rij-acties{justify-content:flex-end;align-items:center;gap:var(--space-2);display:flex}.rij-acties .btn{text-align:center;min-width:108px}.rij-uitzonderingen{padding:0 var(--space-4) var(--space-3);flex-direction:column;gap:1px;margin:0;list-style:none;display:flex}.uitzondering{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);font-size:var(--text-base);display:flex}.uitzondering.is-bedrijf{background:color-mix(in srgb, var(--status-warning) 14%, var(--surface));color:color-mix(in srgb, var(--status-warning) 50%, var(--text))}.uitzondering .btn{margin-left:auto}.rij-details{gap:var(--space-4);padding:var(--space-4);border-top:1px solid var(--border);background:var(--surface-raised);border-radius:0 0 var(--radius-md) var(--radius-md);flex-direction:column;display:flex}.details-paneel{gap:var(--space-4);flex-direction:column;display:flex}.details-paneel>.btn,.timesheet>.btn,.wachtrij>.btn,.run>.btn,.uitvoeren>.btn{align-self:flex-start}.subkop{font-size:var(--text-md);font-weight:650}.subkop-rij{justify-content:space-between;align-items:flex-start;gap:var(--space-3);flex-wrap:wrap;display:flex}.subkop-rij>:first-child{flex:auto;min-width:0}.paneel-zin{max-width:88ch;font-size:var(--text-base);color:var(--text-secondary)}.feiten{gap:var(--space-3) var(--space-4);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--surface);border:1px solid var(--border);grid-template-columns:repeat(auto-fit,minmax(140px,1fr));margin:0;display:grid}.feit{min-width:0}.feit dt{font-size:var(--text-xs);color:var(--text-muted);font-weight:600}.feit dd{font-size:var(--text-base);overflow-wrap:anywhere;margin:0;font-weight:600;line-height:1.35}.feit dd.is-groot{font-size:var(--text-xl);letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-weight:640}.feit dd code{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--text-secondary);font-weight:400}.melding{font-size:var(--text-base);line-height:1.5}.melding.is-uit{color:var(--text-muted)}.melding.is-fout{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--status-critical-wash);color:var(--status-critical-ink)}.melding.is-waarschuwing{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:color-mix(in srgb, var(--status-warning) 14%, var(--surface));color:var(--text)}.melding.is-goed{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:color-mix(in srgb, var(--status-good) 10%, var(--surface));color:color-mix(in srgb, var(--status-good) 45%, var(--text))}.uitvoeren{gap:var(--space-4);flex-direction:column;display:flex}.velden{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(260px,1fr));align-items:start;display:grid}.veld{gap:var(--space-1);border:none;flex-direction:column;min-width:0;margin:0;padding:0;display:flex}.veld-label{font-size:var(--text-base);font-weight:600;display:block}.optie-vlag{font-family:var(--font-mono);font-size:var(--text-sm);color:var(--text-muted);font-weight:400}.veld-uitleg{font-size:var(--text-sm);color:var(--text-muted);line-height:1.45}.veld-invoer{align-items:center;gap:var(--space-2);display:flex}.veld-invoer .input{min-width:0;padding:var(--space-1) var(--space-2);font-size:var(--text-base);flex:1}.input.is-getal{font-variant-numeric:tabular-nums;max-width:12ch}.veld-vinkje{align-items:center;gap:var(--space-2);cursor:pointer;display:flex}.veld.is-keuze{gap:var(--space-2)}.veld.is-keuze legend{margin-bottom:var(--space-1);padding:0}.keuze-optie{align-items:flex-start;gap:var(--space-2);padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);cursor:pointer;transition:border-color var(--transition);display:flex}.keuze-optie:hover{border-color:var(--border-strong)}.keuze-optie:has(input:checked){border-color:var(--accent);background:var(--accent-wash)}.keuze-optie input{margin-top:3px}.keuze-naam{font-size:var(--text-base);font-weight:600;display:block}.keuze-kort{font-size:var(--text-sm);color:var(--text-muted);display:block}.actiebalk{justify-content:space-between;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);flex-wrap:wrap;display:flex}.proefschakelaar{align-items:flex-start;gap:var(--space-2);cursor:pointer;display:flex}.proef-titel{font-size:var(--text-base);font-weight:600;display:block}.proef-kort{font-size:var(--text-sm);color:var(--text-muted);display:block}.proefschakelaar.is-scherp:not(.is-aan) .proef-kort{color:color-mix(in srgb, var(--status-warning) 55%, var(--text));font-weight:600}.actiebalk.is-kaal{background:0 0;border:none;justify-content:flex-start;padding:0}.actiebalk.is-kaal .actiebalk-knop{margin-left:0}.actiebalk-knop{align-items:center;gap:var(--space-2);margin-left:auto;display:flex}.bevestiging{align-items:flex-start;gap:var(--space-3);padding:var(--space-3) var(--space-4);border:1px solid color-mix(in srgb, var(--status-warning) 50%, transparent);border-radius:var(--radius-md);background:color-mix(in srgb, var(--status-warning) 12%, var(--surface));font-size:var(--text-base);cursor:pointer;line-height:1.45;display:flex}.commando code{padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);background:var(--surface-inset);color:var(--text-secondary);font-family:var(--font-mono);font-size:var(--text-sm);white-space:nowrap;display:block;overflow-x:auto}.run{gap:var(--space-3);flex-direction:column;display:flex}.run-zin{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--surface-inset);font-size:var(--text-md);line-height:1.45}.kerncijfers{gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(96px,1fr));display:grid}.kerncijfer{padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);flex-direction:column;gap:2px;display:flex}.kerncijfer-waarde{font-size:var(--text-lg);font-variant-numeric:tabular-nums;font-weight:650;line-height:1.1}.kerncijfer-naam{font-size:var(--text-xs);color:var(--text-muted)}.foutregels{gap:var(--space-1);padding:var(--space-3) var(--space-4);border:1px solid color-mix(in srgb, var(--status-critical) 35%, transparent);border-radius:var(--radius-md);background:var(--status-critical-wash);color:var(--status-critical-ink);font-size:var(--text-base);flex-direction:column;margin:0;list-style:none;display:flex}.log-kop{align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.log-telling{align-items:center;gap:var(--space-3);font-size:var(--text-sm);color:var(--text-muted);display:inline-flex}.log-telling .telling{font-weight:600}.log-telling .telling.is-fout{color:var(--status-critical-ink)}.log-telling .telling.is-waarschuwing{color:color-mix(in srgb, var(--status-warning) 55%, var(--text))}.logregels{max-height:340px;padding:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface-inset);margin:0;list-style:none;overflow:auto}.logregel{gap:var(--space-3);padding:2px var(--space-2);font-family:var(--font-mono);font-size:var(--text-sm);grid-template-columns:max-content max-content minmax(0,1fr);line-height:1.5;display:grid}.logregel-tijd,.logregel-niveau{color:var(--text-muted);font-variant-numeric:tabular-nums}.logregel.is-error,.logregel.is-critical{background:var(--status-critical-wash);border-radius:var(--radius-sm)}.logregel.is-error .logregel-niveau,.logregel.is-critical .logregel-niveau{color:var(--status-critical-ink);font-weight:600}.logregel.is-warning .logregel-niveau{color:color-mix(in srgb, var(--status-warning) 55%, var(--text));font-weight:600}.logregel-tekst{white-space:pre-wrap;overflow-wrap:anywhere}.upload{gap:var(--space-2);flex-direction:column;display:flex}.dropzone{gap:var(--space-2);padding:var(--space-4);border:1px dashed var(--border-strong);border-radius:var(--radius-md);background:var(--surface);transition:border-color var(--transition), background var(--transition);flex-direction:column;display:flex}.dropzone.is-sleept{border-color:var(--accent);background:var(--accent-wash)}.dropzone-label{font-size:var(--text-base);cursor:pointer;font-weight:600}.input.is-bestand{width:100%;padding:var(--space-2);font-size:var(--text-base)}.upload-lijst{gap:var(--space-1);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.upload-lijst li{justify-content:space-between;align-items:baseline;gap:var(--space-3);padding:var(--space-1) var(--space-3);border-radius:var(--radius-sm);background:var(--surface-inset);display:flex}.upload-lijst code{font-family:var(--font-mono);font-size:var(--text-sm);overflow-wrap:anywhere}.factuurstroom{gap:var(--space-2);flex-direction:column;display:flex}.merk{align-items:center;gap:var(--space-1);padding:1px var(--space-2);border-radius:var(--radius-pill);background:var(--surface-inset);color:var(--text-secondary);font-size:var(--text-sm);white-space:nowrap;display:inline-flex}.merk.is-klein{font-size:var(--text-xs)}.merk.is-aankoop{background:var(--accent-wash);color:var(--accent-ink)}.merk.is-verkoop{background:color-mix(in srgb, var(--status-warning) 20%, var(--surface-inset));color:var(--text)}.merk.is-factureerbaar{background:var(--accent-wash);color:var(--accent-ink)}.merk.is-let-op{background:color-mix(in srgb, var(--status-warning) 20%, var(--surface-inset));color:var(--text)}.merk.is-ontbreekt{background:var(--status-critical-wash);color:var(--status-critical-ink)}.merk.is-terugbetaling{background:color-mix(in srgb, var(--status-warning) 20%, var(--surface-inset));color:var(--text);font-size:var(--text-xs);text-transform:lowercase}.factuur-bronnen{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(260px,1fr));display:grid}.factuur-bron{gap:var(--space-2);padding:var(--space-3);border-radius:var(--radius-md);background:var(--surface);border:1px solid var(--border);flex-direction:column;display:flex}.factuur-bron-kop{align-items:baseline;gap:var(--space-2);flex-wrap:wrap;display:flex}.factuur-bron-naam{font-size:var(--text-base);font-weight:650}.factuur-bron-kort{font-size:var(--text-base);color:var(--text-secondary)}.factuur-lijst{gap:var(--space-1);padding-left:var(--space-4);font-size:var(--text-sm);color:var(--text-secondary);flex-direction:column;margin:0;display:flex}.factuur-lijst li{list-style:outside}.timesheet,.kaartbetalingen,.loonstroken{gap:var(--space-3);flex-direction:column;display:flex}.loonstroken>.btn{align-self:flex-start}.maandkeuze{align-items:center;gap:var(--space-2);display:flex}.input.is-maand,.input.is-zoek{padding:var(--space-1) var(--space-2);font-size:var(--text-base)}.input.is-zoek{width:100%;max-width:340px}.factuurregel{gap:var(--space-2);padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);font-size:var(--text-base);flex-direction:column;display:flex}.factuurregel.is-let-op{border-color:color-mix(in srgb, var(--status-warning) 40%, transparent);background:color-mix(in srgb, var(--status-warning) 12%, var(--surface))}.factuurregel-voet{justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.data-table.is-timesheet th,.data-table.is-timesheet td,.data-table.is-kaartbetalingen th,.data-table.is-kaartbetalingen td{white-space:normal;vertical-align:top}.data-table.is-timesheet .is-getal,.data-table.is-kaartbetalingen .is-getal{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.data-table.is-timesheet td.is-nul{color:var(--text-muted)}.data-table.is-timesheet td.is-totaal{border-left:1px solid var(--border)}.data-table.is-timesheet td.is-sterk{font-weight:650}.data-table.is-timesheet tbody tr:last-child td{border-bottom:1px solid var(--border)}.data-table.is-timesheet .is-code-id .btn{align-items:center;gap:var(--space-2);font-family:var(--font-mono);font-variant-numeric:tabular-nums;display:inline-flex}.btn.is-plat{background:0 0;border-color:#0000}.btn.is-plat:hover{background:var(--surface-inset)}.data-table.is-timesheet .is-naam,.data-table.is-kaartbetalingen .is-naam,.data-table.is-loonstroken .is-naam{font-weight:600;display:block}.data-table.is-timesheet .is-bijzin,.data-table.is-kaartbetalingen .is-bijzin,.data-table.is-loonstroken .is-bijzin,.feit dd .is-bijzin{color:var(--text-muted);font-size:var(--text-sm);font-weight:400;display:block}.data-table.is-kaartbetalingen .is-datum{white-space:nowrap;color:var(--text-secondary);font-variant-numeric:tabular-nums}.data-table.is-kaartbetalingen .is-getal.is-negatief,.feit dd.is-negatief{font-weight:600}.data-table.is-kaartbetalingen .is-getal .merk{margin-top:var(--space-1);display:inline-flex}.data-table.is-timesheet tr.is-registratie td{background:var(--surface-raised);color:var(--text-secondary);font-size:var(--text-base)}.data-table.is-timesheet .is-datum{padding-left:calc(var(--space-4) + var(--space-5));white-space:nowrap}.data-table.is-timesheet .is-opmerking{white-space:pre-line;min-width:20ch}.data-table.is-timesheet .is-leeg{color:var(--text-muted)}.data-table.is-timesheet tfoot th,.data-table.is-timesheet tfoot td{padding:var(--space-2) var(--space-4);border-top:1px solid var(--border-strong);background:var(--surface-raised);color:var(--text);font-size:var(--text-md);font-variant-numeric:tabular-nums;text-align:left;text-transform:none;letter-spacing:normal;font-weight:650;position:static}.data-table.is-timesheet tfoot .is-getal{text-align:right}.data-table.is-timesheet tfoot .is-deel th,.data-table.is-timesheet tfoot .is-deel td{color:var(--text-secondary);font-size:var(--text-base);border-top:none;padding-top:0;font-weight:500}.wachtrij{gap:var(--space-3);flex-direction:column;display:flex}.wachtrij-tellers{align-items:center;gap:var(--space-2) var(--space-5);padding:var(--space-3) var(--space-4);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface);flex-wrap:wrap;display:flex}.opdrachten{gap:var(--space-1);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.opdracht{align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-3);border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);font-size:var(--text-base);flex-wrap:wrap;display:flex}.opdrachten.is-mislukt .opdracht{border-color:color-mix(in srgb, var(--status-critical) 30%, transparent);background:var(--status-critical-wash);color:var(--status-critical-ink)}.opdracht-app{align-items:baseline;gap:var(--space-2);font-weight:600;display:inline-flex}.opdracht-bijzin{color:var(--text-muted);font-size:var(--text-sm);text-align:right;margin-left:auto}.opdrachten.is-mislukt .opdracht-bijzin{color:inherit;opacity:.85}.opdracht-weg{border-radius:var(--radius-sm);width:2rem;height:2rem;color:inherit;opacity:.55;font-size:var(--text-lg);cursor:pointer;background:0 0;border:1px solid #0000;flex:none;justify-content:center;align-items:center;padding:0;line-height:1;transition:opacity .12s,border-color .12s;display:inline-flex}.opdracht-weg:hover{opacity:1;border-color:color-mix(in srgb, var(--status-critical) 40%, transparent)}@media (width<=1180px){.rij-kop{row-gap:var(--space-3);grid-template-columns:max-content minmax(0,1fr) max-content;grid-template-areas:"status naam acties""feiten feiten feiten"}.rij-status{grid-area:status}.rij-naam{grid-area:naam}.rij-acties{grid-area:acties}.rij-feiten{grid-area:feiten}}@media (width<=720px){.rij-kop{grid-template-columns:minmax(0,1fr) max-content;grid-template-areas:"status acties""naam naam""feiten feiten"}.rij-feiten{grid-template-columns:repeat(2,minmax(0,1fr))}.actiebalk{align-items:flex-start}.actiebalk-knop{margin-left:0}.logregel{grid-template-columns:max-content minmax(0,1fr)}.logregel-tijd{display:none}.opdracht-bijzin{text-align:left;width:100%;margin-left:0}}
