@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500;600;700&family=IBM+Plex+Sans:wght@400;500;600;700&family=IBM+Plex+Sans+Condensed:wght@500;600;700&display=swap";:root{color-scheme:light;--page: #f8fafc;--surface-1: #ffffff;--surface-2: #f1f5f9;--text-primary: #0f172a;--text-secondary: #475569;--text-muted: #64748b;--gridline: #e2e8f0;--axis: #cbd5e1;--axis-sterk: #94a3b8;--border: #e2e8f0;--accent: #1e40af;--accent-deep: #1e3a8a;--accent-soft: #eff6ff;--ok: #059669;--ok-tekst: #047857;--ok-zacht: #ecfdf5;--waarschuwing: #d97706;--waarschuwing-tekst: #b45309;--waarschuwing-zacht: #fffbeb;--fout: #ef4444;--fout-tekst: #b91c1c;--fout-zacht: #fef2f2;--info: #0d9488;--info-tekst: #0f766e;--info-zacht: #f0fdfa;--blokkade: #f97316;--m-color: #dc2626;--v-color: #1766b1;--w-color: #059669;--load: #dc2626;--udl: #d97706;--snede: #7c3aed;--display: "IBM Plex Sans Condensed", "IBM Plex Sans", "Segoe UI", sans-serif;--body-font: "IBM Plex Sans", system-ui, sans-serif;--mono: "IBM Plex Mono", Consolas, monospace;--shadow: 0 12px 30px -12px rgba(15, 23, 42, .1), 0 4px 10px -6px rgba(15, 23, 42, .06);--shadow-lg: 0 38px 90px -50px rgba(15, 23, 42, .34), 0 16px 36px -24px rgba(15, 23, 42, .18)}*{box-sizing:border-box}body{margin:0;background:var(--page);color:var(--text-primary);font-family:var(--body-font);font-size:14px;-webkit-font-smoothing:antialiased}.root{min-height:100vh;display:flex;flex-direction:column}.app{display:grid;grid-template-columns:320px minmax(0,1fr) 320px;gap:14px;padding:16px 18px 18px;align-items:start;max-width:1640px;width:100%;margin:0 auto}.app.beam-workspace,.app.specialized-workspace{grid-template-columns:auto minmax(0,1fr) auto;grid-template-rows:minmax(0,1fr) auto;gap:14px;max-width:1900px}.app.beam-workspace>.workspace-controls,.app.specialized-workspace>.workspace-controls{grid-column:1;grid-row:1}.app.beam-workspace>.workspace-results,.app.specialized-workspace>.workspace-results{grid-column:2;grid-row:1}.app.beam-workspace>.assistent-lade,.app.specialized-workspace>.assistent-lade{grid-column:3;grid-row:1}.app.beam-workspace>.status-balk,.app.specialized-workspace>.status-balk{grid-column:1 / -1;grid-row:2}.workspace-header{position:sticky;top:0;z-index:40;display:grid;grid-template-columns:auto minmax(260px,320px) minmax(400px,1fr) auto;grid-template-areas:"brand scenario modes tools";align-items:center;gap:16px;min-height:68px;padding:10px 18px;width:100%;background:color-mix(in srgb,var(--page) 97%,transparent);border-bottom:1px solid var(--border);box-shadow:0 12px 30px -28px #15120eb3}.workspace-brand{grid-area:brand;display:flex;align-items:center;gap:9px;min-width:max-content}.workspace-brand-mark{display:grid;place-items:center;width:35px;height:35px;border-radius:11px;color:#fff;background:linear-gradient(145deg,var(--accent),#fb923c);box-shadow:0 8px 18px -8px #dc2626b3;font:700 19px var(--display)}.workspace-brand-name{font:700 20px var(--display);letter-spacing:-.04em}.scenario-switcher{grid-area:scenario;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:7px;min-width:0}.scenario-label,.mode-groep-label,.tools-groeplabel{color:var(--text-muted);font:700 10px var(--body-font);letter-spacing:.07em;text-transform:uppercase;line-height:1;-webkit-user-select:none;user-select:none}.scenario-select,.scenario-name-input{width:100%;min-width:0;background:var(--surface-1);border:1px solid var(--axis);border-radius:10px;color:var(--text-primary);font:700 12px var(--body-font);padding:8px 30px 8px 10px}.scenario-name-input{padding-right:10px}.scenario-select:focus,.scenario-name-input:focus{outline:3px solid var(--accent-soft);border-color:var(--accent)}.scenario-actions,.workspace-tools{display:flex;align-items:center;gap:4px}.workspace-tools{grid-area:tools;justify-self:end}.workspace-icon-btn{display:inline-grid;place-items:center;width:34px;height:34px;flex:0 0 auto;padding:0;border:1px solid var(--axis);border-radius:10px;background:var(--surface-1);color:var(--text-secondary);box-shadow:0 4px 12px -10px #15120e80;font:750 17px var(--display);line-height:1;cursor:pointer}.resultatenblad{display:grid;grid-template-columns:214px minmax(0,1fr);gap:18px;align-items:start}.resultatenblad-toc{position:sticky;top:0;max-height:70vh;overflow-y:auto;border-right:1px solid var(--axis);padding-right:10px;font-size:12.5px}.resultatenblad-toc a{display:block;padding:5px 8px;border-radius:7px;color:var(--text-secondary);text-decoration:none}.resultatenblad-toc a:hover{background:var(--surface-2)}.resultatenblad-toc a.actief{background:var(--accent-soft);color:var(--accent);font-weight:600}.resultatenblad-inhoud{min-width:0}.resultatenblad-cijfers{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 16px}@media (max-width: 900px){.resultatenblad{grid-template-columns:1fr}.resultatenblad-toc{position:static;max-height:none;border-right:0;border-bottom:1px solid var(--axis);padding:0 0 8px;display:flex;flex-wrap:wrap;gap:4px}}.workspace-icon-btn__label{font:600 12px var(--body-font);letter-spacing:.01em;white-space:nowrap}.workspace-icon-btn:has(.workspace-icon-btn__label){width:auto;grid-auto-flow:column;gap:7px;padding:0 11px}@media (max-width: 2150px){.tools-groep:not(:first-of-type) .workspace-icon-btn__label{display:none}.tools-groep:not(:first-of-type) .workspace-icon-btn:has(.workspace-icon-btn__label){width:34px;padding:0}}@media (max-width: 1620px){.workspace-icon-btn__label{display:none}.workspace-icon-btn:has(.workspace-icon-btn__label){width:34px;padding:0}}.workspace-icon-btn--text{font-size:15px}.workspace-icon-btn--color{color:var(--accent)}.workspace-icon-btn:hover:not(:disabled){color:var(--accent);border-color:color-mix(in srgb,var(--accent) 45%,var(--axis));background:var(--accent-soft)}.workspace-icon-btn:focus-visible{outline:3px solid var(--accent-soft);border-color:var(--accent)}.workspace-icon-btn:disabled{opacity:.3;cursor:default}.tools-groep{display:flex;align-items:center;gap:6px}.tools-groep+.tools-groep{margin-left:4px;padding-left:10px;border-left:1px solid var(--axis)}.tools-groeplabel{margin-right:1px}.workspace-icon-btn--primair{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 35%,var(--axis))}.subkop-hint{margin:6px 0 2px;font-size:11.5px;color:var(--text-muted)}.strook-invoer{background:var(--surface-2);border:1px solid var(--border);border-radius:8px;padding:6px 8px 2px;margin:0 0 6px}.fase-select{font:500 11.5px var(--body-font);color:var(--text-secondary);background:var(--surface-1);border:1px solid var(--border);border-radius:6px;padding:2px 4px;max-width:92px}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#15120e73;display:flex;align-items:center;justify-content:center;z-index:100;padding:20px}.modal{background:var(--surface-1);border:1px solid var(--border);border-radius:20px;width:min(440px,100%);max-height:min(82vh,900px);display:flex;flex-direction:column;box-shadow:var(--shadow-lg)}.modal-wide{width:min(860px,100%)}.modal-groot{width:min(1320px,100%);max-height:min(92vh,1200px)}@media (max-width: 900px){.modal-backdrop{padding:10px}}.modal-head{display:flex;justify-content:space-between;align-items:center;padding:14px 18px;background:var(--surface-2);border-bottom:1px solid var(--gridline);border-radius:20px 20px 0 0}.modal-head h2{margin:0;font:650 16px var(--display);letter-spacing:-.01em}.modal-body{padding:12px 18px 18px;overflow-y:auto}.modal-body h4{margin:14px 0 8px;font:700 11px var(--mono);text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted)}.modal-body h4:first-child{margin-top:0}.color-row{gap:10px}.swatch{width:34px;height:24px;padding:0;border:1px solid var(--axis);border-radius:6px;background:none;cursor:pointer}.color-label{font-size:13px;font-weight:600;color:var(--text-secondary)}.color-dot{width:10px;height:10px;border-radius:4px;flex:0 0 auto;border:1px solid rgba(21,18,14,.15)}.calc-text{font-size:13px;color:var(--text-secondary);line-height:1.6;margin:6px 0}.formula-block{background:var(--surface-2);border:1px solid var(--gridline);border-radius:10px;padding:10px 12px;font-family:var(--mono);font-size:11.5px;color:var(--text-secondary);display:flex;flex-direction:column;gap:7px;overflow-x:auto}.matrix-scroll{overflow-x:auto}.matrix{border-collapse:collapse;font-family:var(--mono);font-size:11.5px;margin:4px 0}.matrix th,.matrix td{border:1px solid var(--gridline);padding:4px 9px;text-align:right;color:var(--text-secondary)}.matrix th{color:var(--text-muted);font-weight:600;background:var(--surface-2)}.matrix .sep{border-left:2px solid var(--axis)}.matrix.trace td:first-child{text-align:left;color:var(--text-primary)}.matrix .total td{border-top:2px solid var(--axis);font-weight:700;color:var(--text-primary)}.setting-label{min-width:220px}.calc-section{margin:10px 0;border:1px solid var(--border);border-radius:12px;padding:8px 12px}.calc-section>summary{cursor:pointer;font:700 11px var(--mono);text-transform:uppercase;letter-spacing:.12em;color:var(--text-secondary);-webkit-user-select:none;user-select:none}.calc-section>summary:hover{color:var(--accent)}.calc-section[open]>summary{margin-bottom:8px}.calc-subhead{font:700 10.5px var(--mono);color:var(--text-muted);margin:10px 0 4px;text-transform:uppercase;letter-spacing:.1em}.calc-subblock{margin:6px 0 10px}.calc-name{font:650 13px var(--display);margin-right:4px}.matrix-row{display:flex;gap:16px;overflow-x:auto;padding-bottom:4px;align-items:flex-start}.matrix-caption{font:600 10.5px var(--mono);color:var(--text-muted);margin-bottom:4px;white-space:nowrap}.input-table td,.input-table .num{padding:3px 6px}.workspace-controls{position:sticky;top:84px;display:grid;grid-template-rows:auto minmax(0,1fr);height:calc(100vh - 120px);max-height:calc(100vh - 120px);overflow:hidden;width:440px;min-width:0;padding:12px;border:1px solid var(--border);border-radius:18px;background:color-mix(in srgb,var(--surface-2) 82%,transparent)}.specialized-workspace-controls{grid-template-rows:auto minmax(0,1fr)}.workspace-section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin:0 2px 13px}.workspace-section-heading h2{margin:2px 0 0;font:700 17px var(--display);letter-spacing:-.025em}.workspace-eyebrow{color:var(--accent);font:700 10px var(--mono);letter-spacing:.1em;text-transform:uppercase}.workspace-section-hint{color:var(--text-muted);font-size:10.5px}.control-workspace{display:grid;grid-template-columns:66px minmax(0,1fr);gap:10px;min-height:0;overflow:hidden}.onderwerp-rail{display:flex;flex-direction:column;gap:3px;padding:6px 5px;border-radius:12px;background:#e6ecf4;border:1px solid var(--border);box-shadow:inset 0 1px 2px #0f172a0f;overflow-y:auto;overflow-x:hidden;scrollbar-width:thin;scrollbar-color:var(--axis) transparent}.onderwerp-rail::-webkit-scrollbar{width:5px}.onderwerp-rail::-webkit-scrollbar-thumb{background:var(--axis);border-radius:3px}.rail-knop{display:flex;flex-direction:column;align-items:center;gap:3px;padding:7px 2px 6px;border:1px solid #d5dee9;border-radius:9px;background:linear-gradient(180deg,#fff,#f2f6fa);color:var(--text-secondary);font:600 10.5px var(--display);line-height:1;cursor:pointer;box-shadow:inset 0 1px #fff,0 1px 1.5px #0f172a1a;transition:background .12s,color .12s,box-shadow .12s,transform .06s}.rail-knop svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.rail-knop span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rail-knop:hover{background:linear-gradient(180deg,#fff,#e7eef7);color:var(--text-primary);border-color:var(--axis)}.rail-knop:active{transform:translateY(1px);box-shadow:inset 0 1px 3px #0f172a29}.rail-knop--actief{background:linear-gradient(180deg,#2b55c4,#1e40af);border-color:#1b3a9e;color:#fff;box-shadow:inset 0 1px #ffffff4d,0 1px 3px #1e40af59}.rail-knop--actief:hover{background:linear-gradient(180deg,#3160d0,#1e40af);color:#fff}.rail-knop:focus-visible{outline:3px solid var(--accent-soft);outline-offset:1px}.rail-melding{position:absolute;top:3px;right:3px;min-width:14px;height:14px;padding:0 3px;border-radius:7px;border:1.5px solid #ffffff;font:700 9px var(--display);font-style:normal;line-height:11px;text-align:center;color:#fff;box-shadow:0 1px 2px #0f172a4d}.maaiveld-profiel{fill:none;stroke:var(--text-secondary);stroke-width:1.2;stroke-linejoin:round}.rail-melding--fout{background:var(--fout)}.rail-melding--waarschuwing{background:var(--waarschuwing)}.rail-knop{position:relative}@media (prefers-reduced-motion: reduce){.rail-knop{transition:none}.rail-knop:active{transform:none}}.control-topic{display:grid;grid-template-rows:auto minmax(0,1fr);min-height:0;overflow:hidden;border:1px solid var(--border);border-left:3px solid var(--topic-accent);border-radius:13px;background:var(--surface-1)}.control-topic-head{display:flex;align-items:center;gap:9px;min-height:43px;padding:7px 10px;background:color-mix(in srgb,var(--topic-accent) 6%,var(--surface-1));border-bottom:1px solid var(--gridline)}.control-topic-head>div{display:grid;min-width:0;line-height:1.2}.control-topic-head strong{font:550 13px var(--display)}.control-topic-head small{overflow:hidden;color:var(--text-muted);font-size:10px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.control-topic-nr{display:grid;place-items:center;width:27px;height:27px;flex:0 0 auto;border-radius:9px;color:var(--topic-accent);background:color-mix(in srgb,var(--topic-accent) 13%,#fff);font:700 10px var(--mono)}.control-tab-content{min-height:0;overflow:auto;scrollbar-width:thin}.control-tab-content>.panel{border:0;border-radius:0;box-shadow:none;padding:10px 12px 12px}.control-tab-content .panel-head{display:flex;justify-content:flex-end;gap:6px;margin-bottom:10px;cursor:default}.control-tab-content .panel-head--leeg,.control-tab-content .panel-head .panel-nr,.control-tab-content .panel-head .panel-titles{display:none}.control-tab-content .panel-head:after{content:none}.control-tab-content .panel-head-actions{display:flex;flex-wrap:wrap;gap:6px;margin-left:0}.control-tab-content .row{min-width:0}.span-field-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:6px}.span-field{display:grid;grid-template-columns:auto minmax(58px,1fr) auto auto;margin:0;padding:7px 8px;border:1px solid var(--gridline);border-radius:9px;background:var(--surface-2)}.span-field .row-label{min-width:42px}.span-field .num{width:100%!important;min-width:0}.system-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:8px}.system-detail-card,.load-type-card{min-width:0;padding:9px 10px;border:1px solid var(--gridline);border-radius:10px;background:var(--surface-2)}.system-detail-card h3,.load-type-card h3{margin-bottom:7px}.stiffness-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}.stiffness-grid label{display:grid;gap:4px;min-width:0}.stiffness-grid label>span{color:var(--text-muted);font:700 9.5px var(--mono);text-transform:uppercase}.stiffness-grid .num{width:100%!important}.wide-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:8px}.wide-card-grid>.group-card{min-width:0;margin:0}.vehicle-card-grid .group-card>.row:first-child{display:grid;grid-template-columns:auto auto minmax(110px,1fr) auto auto auto}.axle-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:4px 8px}.axle-grid .axle-row{margin:0;padding:5px 7px;border:1px solid var(--gridline);border-radius:8px;background:var(--surface-1)}.udl-card-grid{grid-template-columns:repeat(auto-fit,minmax(230px,1fr))}.control-tab-content .udl-fields{grid-template-columns:repeat(4,minmax(0,1fr))}.control-tab-content .udl-field--class{grid-column:auto}.load-type-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:8px}.load-item-grid{display:grid;gap:5px}.load-item-grid>.row{display:grid;grid-template-columns:auto auto minmax(55px,1fr) auto minmax(55px,1fr) auto auto auto;margin:0;padding:6px;border:1px solid var(--gridline);border-radius:8px;background:var(--surface-1)}.load-item-grid .num{width:100%!important;min-width:0}.formula-grid,.check-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:8px}.formula-grid .formula-row{margin:0;padding:7px;border:1px solid var(--gridline);border-radius:9px;background:var(--surface-2)}.check-grid>.check-card{min-width:0;margin:0}.combo-toolbar{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:8px}.combo-toolbar .row{display:grid;grid-template-columns:auto minmax(0,1fr);margin:0;padding:7px 8px;border:1px solid var(--gridline);border-radius:9px;background:var(--surface-2)}.combo-toolbar .combo-select{width:100%}.wide-combos-table,.wide-combos-table tbody{display:block;width:100%}.wide-combos-table thead{display:none}.wide-combos-table tbody{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:8px}.wide-combos-table tr{position:relative;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:9px;border:1px solid var(--gridline);border-radius:10px;background:var(--surface-2)}.wide-combos-table td{display:grid;gap:3px;min-width:0;border:0;padding:0;text-align:left}.wide-combos-table td:before{content:attr(data-label);color:var(--text-muted);font:700 8.5px var(--mono);letter-spacing:.03em;text-transform:uppercase}.wide-combos-table td:first-child{grid-column:1 / -1;padding-right:28px}.wide-combos-table td .num,.wide-combos-table td .name-input{width:100%!important;min-width:0}.wide-combos-table .combo-delete-cell{position:absolute;top:5px;right:5px;display:block}.wide-combos-table .combo-delete-cell:before{display:none}.wide-combos-table .combo-active{outline:2px solid var(--accent);outline-offset:-2px}.assistent-lade{position:sticky;top:84px;display:grid;grid-template-columns:40px minmax(0,1fr);width:40px;overflow:hidden;height:calc(100vh - 120px);max-height:calc(100vh - 120px)}.assistent-lade--open{width:422px}.assistent-greep{display:flex;flex-direction:column;align-items:center;gap:10px;padding:12px 0;border:1px solid var(--border);border-radius:14px;background:var(--surface-1);color:var(--text-secondary);cursor:pointer;font:600 10.5px var(--display);letter-spacing:.1em}.assistent-greep span{writing-mode:vertical-rl;text-transform:uppercase}.assistent-greep em{font-style:normal;font-size:14px;color:var(--text-muted)}.assistent-greep svg{width:17px;height:17px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}.assistent-greep:hover{color:var(--accent);border-color:var(--accent)}.assistent-greep:focus-visible{outline:3px solid var(--accent-soft);outline-offset:1px}.assistent-lade--open .assistent-greep{background:var(--accent);border-color:var(--accent);color:#fff}.assistent-lade--open .assistent-greep em{color:#ffffffbf}.assistent-inhoud{min-width:0;overflow:hidden;opacity:0;pointer-events:none;transition:opacity .14s ease}.assistent-lade--open .assistent-inhoud{opacity:1;pointer-events:auto;padding-left:10px}.assistent-inhoud .panel{display:flex;flex-direction:column;height:100%;max-height:100%;overflow-y:auto}.assistent-inhoud .panel-head{cursor:default}.assistent-inhoud .panel-head:after{display:none}.status-balk{grid-column:1 / -1;display:flex;align-items:center;gap:6px 18px;flex-wrap:wrap;padding:7px 14px;border:1px solid var(--border);border-radius:10px;background:var(--surface-1);color:var(--text-secondary);font-size:12px}.status-balk-oordeel{display:inline-flex;align-items:center;gap:8px;font:550 12.5px var(--display);color:var(--text-primary);padding-right:4px;border-right:1px solid var(--border);margin-right:-4px}.status-balk-oordeel i{width:8px;height:8px;border-radius:50%;background:var(--axis-sterk);box-shadow:0 0 0 3px #94a3b829}.status-balk--ok .status-balk-oordeel i{background:var(--ok);box-shadow:0 0 0 3px #05966929}.status-balk--nok .status-balk-oordeel i,.status-balk--bezwijkt .status-balk-oordeel i{background:var(--fout);box-shadow:0 0 0 3px #ef444429}.status-balk-post{display:inline-flex;align-items:baseline;gap:6px}.status-balk-post small{font:450 10.5px var(--body-font);color:var(--text-muted)}.status-balk-post b{font:500 12px var(--mono);font-variant-numeric:tabular-nums;color:var(--text-primary)}.panel-head-actions{display:flex;align-items:center;margin-left:auto}.assistant-size-btn{display:inline-flex;align-items:center;gap:5px;min-height:28px;padding:4px 9px;border:1px solid color-mix(in srgb,var(--panel-accent) 28%,var(--border));border-radius:999px;color:var(--panel-accent);background:color-mix(in srgb,var(--panel-accent) 7%,var(--surface-1));font:700 10px var(--body-font);cursor:pointer}.assistant-size-btn:hover{border-color:var(--panel-accent);background:color-mix(in srgb,var(--panel-accent) 13%,var(--surface-1))}.assistant-size-btn:focus-visible{outline:3px solid var(--accent-soft);outline-offset:2px}.specialized-workspace .control-tab-content .knoop-row{display:grid;grid-template-columns:auto minmax(52px,1fr) minmax(52px,1fr) minmax(110px,1.4fr) auto;gap:7px;margin:0 0 6px;padding:6px 7px;border:1px solid var(--gridline);border-radius:9px;background:var(--surface-2)}.specialized-workspace .control-tab-content .knoop-row .num{width:100%!important;min-width:0}.specialized-workspace .control-tab-content .group-card{min-width:0}.specialized-result-panel{grid-column:2;position:static;max-height:none;overflow:visible}.specialized-result-panel .side-stack{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.sidebar{display:flex;flex-direction:column;gap:12px;position:sticky;top:14px;max-height:calc(100vh - 28px);overflow-y:auto;padding-right:2px}.side-stack{display:flex;flex-direction:column;gap:12px;min-height:80px}.brand h1{margin:0;font:700 22px var(--display);letter-spacing:-.04em}.brand h1:first-letter{color:var(--accent)}.brand p{margin:2px 0 0;color:var(--text-muted);font-size:12px;font-weight:600}.panel,.group-card{background:var(--surface-1);border:1px solid var(--border);border-radius:16px;box-shadow:var(--shadow);padding:14px}.panel-shell{border-left:3px solid var(--panel-accent)}.panel-head{display:flex;align-items:center;gap:10px;margin-bottom:12px;cursor:grab;position:relative}.panel-head:active{cursor:grabbing}.panel-head:after{content:"⠿";position:absolute;right:0;color:var(--text-muted);opacity:.45;font-size:13px}.param-name{background:none;border:none;padding:0;cursor:copy;font:inherit}.param-name code{color:var(--accent-deep);font-family:var(--mono);font-size:11.5px;font-weight:700}.param-name:hover code{text-decoration:underline}.params-table td{text-align:left}.param-val{font-weight:700;color:var(--text-primary);white-space:nowrap}.param-desc{color:var(--text-secondary)}.panel-nr{width:27px;height:27px;flex:0 0 auto;display:grid;place-items:center;border-radius:9px;background:color-mix(in srgb,var(--panel-accent) 13%,#fff);color:var(--panel-accent);font:700 10px var(--mono)}.panel-titles{display:grid;line-height:1.25}.panel-titles strong{font:700 13px var(--display);letter-spacing:-.01em}.panel-titles small{color:var(--text-muted);font-size:10.5px;font-weight:600}.group-card{background:var(--surface-2);box-shadow:none;margin-bottom:6px;padding:8px 9px;border-radius:8px}.groep-kop{display:flex;align-items:center;gap:8px;flex-wrap:nowrap;margin-bottom:5px}.groep-kop .groep-naam{font:700 10.5px var(--display);color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.groep-kop .groep-meta{font:500 9.5px var(--mono);color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:0}.groep-kop .icon-btn{margin-left:auto;flex:none}.voorstel-effect{display:flex;flex-direction:column;gap:2px;margin:6px 0 0;padding:6px 8px;border-left:3px solid var(--ok);border-radius:6px;background:var(--surface-2);font:500 10.5px var(--mono);color:var(--text-secondary)}.voorstel-effect strong{font:700 9.5px var(--display);text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted)}.rekenmethode{margin:0 0 10px;padding:8px 9px;border:1px solid var(--border);border-left:3px solid var(--axis);border-radius:8px;background:var(--surface-2)}.rekenmethode>.hint{margin-bottom:0}.rekenmethode-details{margin-top:6px}.rekenmethode-details>summary{cursor:pointer;font:600 10px var(--display);color:var(--text-muted);padding:2px 0}.rekenmethode-details>summary:hover{color:var(--text-primary)}.rekenmethode-details[open]>summary{margin-bottom:4px}.voorstel-effect--let-op{border-left-color:var(--waarschuwing);background:var(--waarschuwing-zacht);color:var(--waarschuwing-tekst)}.panel h3{margin:0 0 10px;font:700 10.5px var(--mono);text-transform:uppercase;letter-spacing:.12em;color:var(--text-secondary);display:flex;justify-content:space-between;align-items:baseline}.hint{font-size:11px;font-weight:500;color:var(--text-muted);text-transform:none;letter-spacing:0}.hint--intro{font-size:12.5px;line-height:1.55;color:var(--text-secondary);max-width:92ch;margin:0 0 12px}.waarde-eigen{color:var(--text-primary);font-weight:700}.hint--fout{color:var(--fout-tekst);font-weight:600}.row{display:flex;align-items:center;gap:7px;margin-bottom:5px}.row-label{color:var(--text-secondary);font-size:12px;font-weight:450;min-width:62px}.unit{color:var(--text-muted);font-size:11.5px;font-weight:450;white-space:nowrap}.mono{font-family:var(--mono);font-size:11.5px;font-weight:600;color:var(--text-secondary);min-width:48px;text-align:right}.axle-row .row-label{min-width:34px}.num,.name-input,.formula-input{background:var(--surface-1);border:1px solid var(--axis);border-radius:8px;color:var(--text-primary);padding:5px 7px;font:600 12px var(--mono)}.num:focus,.name-input:focus,.formula-input:focus{border-color:var(--accent);outline:3px solid var(--accent-soft)}.name-input{flex:1;min-width:0;font-family:var(--body-font);font-weight:700}.num--getal{font-size:12.5px;font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;text-align:right;letter-spacing:.01em}.num--fout,.num--fout:focus{border-color:var(--accent-deep);background:var(--accent-soft)}.num-wrap{position:relative;display:inline-flex;align-items:center;flex:1 1 var(--num-w, 64px);min-width:0}.num-wrap>.num{width:100%;min-width:0}.num-wrap--unit>.num{padding-right:calc(var(--num-unit-len, 3) * .58em + 9px)}.num-unit{position:absolute;right:7px;pointer-events:none;color:var(--text-muted);font:450 10.5px var(--mono);white-space:nowrap}.num-field{display:flex;align-items:center;gap:8px;min-width:0;width:100%}.num-field-label{flex:1 1 auto;color:var(--text-secondary);font:450 12px var(--body-font);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.num-field>.num-wrap{flex:0 0 var(--num-w, 92px);max-width:60%}.veld-regel{display:flex;align-items:center;gap:9px;margin-bottom:7px}.veld-regel>span{flex:0 0 auto;color:var(--text-secondary);font:450 12px var(--body-font)}.veld-regel>select,.veld-regel>.num{flex:1 1 auto;min-width:0}.veld-regel--kop{padding:7px 9px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);margin-bottom:9px}.num-row{margin-bottom:8px}.num-row-label{display:block;color:var(--text-secondary);font:700 11px var(--body-font);margin-bottom:4px}.num-row-fields{display:flex;flex-wrap:wrap;gap:6px 8px;align-items:flex-end}.num-row-hint{display:block;color:var(--text-muted);font-size:10.5px;margin-top:4px;line-height:1.4}.panel-shell .row{flex-wrap:wrap}.span-field .num-wrap,.stiffness-grid .num-wrap,.load-item-grid .num-wrap,.udl-load-row .num-wrap,.udl-field .num-wrap,.knoop-row .num-wrap,.input-table .num-wrap,.combos-table .num-wrap,.wide-combos-table td .num-wrap{width:100%;flex:1 1 auto;min-width:0}.combos-table .num--getal{font-size:11.5px;padding:3px 4px}.icon-btn{background:none;border:1px solid transparent;color:var(--text-muted);border-radius:8px;cursor:pointer;padding:3px 6px;font-size:14px;line-height:1;flex:0 0 auto}.icon-btn:hover:not(:disabled){color:var(--accent);background:var(--accent-soft)}.icon-btn:disabled{opacity:.3;cursor:default}.icon-btn.play.active{color:var(--accent)}.add-btn{background:none;border:1px dashed var(--axis);color:var(--text-secondary);border-radius:8px;padding:6px 10px;cursor:pointer;font:700 12px var(--body-font);width:100%}.add-btn:hover{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.slider{flex:1;min-width:40px;accent-color:var(--m-color)}.formula-row{gap:6px}.formula-input{flex:1;min-width:0;font-size:12px}.formula-out{min-width:56px;text-align:right;font-family:var(--mono);color:var(--text-primary);font-weight:700;font-size:12.5px}.formula-out.err{color:var(--accent);cursor:help}.err-text{color:var(--accent-deep)}.status-chip{flex:0 0 auto;border-radius:999px;padding:3px 7px;font:700 9.5px var(--mono);white-space:nowrap}.check-card .row{flex-wrap:wrap}.check-card .row-label{min-width:0}.status-chip.ok{color:var(--ok-tekst);background:var(--ok-zacht)}.status-chip.fail{color:var(--fout-tekst);background:var(--fout-zacht)}.status-chip.warn{color:var(--waarschuwing-tekst);background:var(--waarschuwing-zacht)}.formula-hint{margin:8px 0 0;line-height:1.6}.formula-hint code{color:var(--text-secondary);font-family:var(--mono);font-size:10.5px}.main{display:flex;flex-direction:column;gap:14px;min-width:0}.chart-card{background:var(--surface-1);border:1px solid var(--border);border-radius:18px;box-shadow:var(--shadow);padding:12px 14px 8px}.chart-head{display:flex;justify-content:space-between;align-items:center;padding:2px 6px 8px}.chart-title{font:650 14px var(--display);letter-spacing:-.01em;color:var(--text-primary);display:flex;align-items:center;gap:8px}.chart-title[style]:before{content:"";width:9px;height:9px;border-radius:3px;background:var(--dot)}.chart-unit{color:var(--text-muted);font:600 11px var(--mono)}.chart,.beamview{width:100%;height:auto;display:block;touch-action:none}.toggle-btn{background:var(--surface-1);border:1px solid var(--axis);color:var(--text-secondary);border-radius:999px;padding:4px 13px;font:750 12px var(--body-font);cursor:pointer}.fase-balk{display:flex;flex-wrap:wrap;gap:6px;padding:8px 12px 2px}.fase-chip{padding:3px 11px;font-size:11.5px}.fase-card--actief{border-color:var(--panel-accent, #0d9488);box-shadow:0 0 0 1px var(--panel-accent, #0d9488) inset}.fase-naam{flex:1;min-width:90px;text-align:left}.fase-samenvatting{margin:4px 0 0}code.sym{font-family:var(--mono);font-size:.94em;font-weight:700;color:var(--accent-deep);background:none;padding:0}.oordeel-banner{display:flex;align-items:flex-start;gap:10px;border-radius:10px;padding:10px 12px;margin:0 0 10px;border:1px solid;font-size:12.5px;line-height:1.45}.oordeel-banner--ok{background:var(--ok-zacht);border-color:var(--ok);color:var(--ok-tekst)}.oordeel-banner--nok,.oordeel-banner--bezwijkt{background:var(--fout-zacht);border-color:var(--fout);color:var(--fout-tekst)}.oordeel-banner--onbekend{background:var(--surface-2);border-color:var(--axis);color:var(--text-secondary)}.oordeel-icoon{font-size:16px;font-weight:800;line-height:1.2}.oordeel-tekst{display:flex;flex-direction:column;gap:2px}.oordeel-tekst strong{font-size:13px}.toets-kaarten{display:grid;grid-template-columns:repeat(auto-fit,minmax(128px,1fr));gap:8px;margin:0 0 10px}.toets-kaart{background:var(--surface-2);border:1px solid var(--border);border-left-width:3px;border-radius:0 10px 10px 0;padding:8px 10px;display:flex;flex-direction:column;gap:2px;min-width:0}.toets-kaart--ok{border-left-color:var(--ok)}.toets-kaart--nok,.toets-kaart--bezwijkt{border-left-color:var(--fout)}.toets-kaart--krap{border-left-color:var(--waarschuwing)}.toets-kaart--onbekend{border-left-color:var(--axis)}.toets-kaart-label{font:700 10px var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary)}.toets-kaart-waarde{font:650 15px var(--body-font)}.toets-kaart-waarde em{font-style:normal;font-size:11px;color:var(--text-secondary)}.toets-kaart-detail{font-size:11px;color:var(--text-secondary)}.toets-kaart--nok .toets-kaart-detail,.toets-kaart--bezwijkt .toets-kaart-detail{color:var(--fout-tekst)}.instructie{margin:10px 0 0;border-top:1px dashed var(--axis);padding-top:8px}.instructie summary{cursor:pointer;font:700 11px var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary)}.instructie ol{margin:8px 0 0;padding-left:18px;font-size:12.5px;line-height:1.55}.instructie li{margin:0 0 5px}.fase-stip{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:5px;vertical-align:0}.fase-stip--ok{background:var(--ok)}.fase-stip--krap{background:var(--waarschuwing)}.fase-stip--nok{background:var(--fout)}.verantwoording{font-size:13px;line-height:1.6;display:flex;flex-direction:column;gap:12px}.verantwoording-intro{margin:0}.verantwoording-stap{margin:0;background:var(--surface-2);border:1px solid var(--border);border-left:4px solid var(--stap-accent, #1766b1);border-radius:0 12px 12px 0;padding:12px 16px}.verantwoording-stap:nth-of-type(1){--stap-accent: #7c3aed}.verantwoording-stap:nth-of-type(2){--stap-accent: #059669}.verantwoording-stap:nth-of-type(3){--stap-accent: #d97706}.verantwoording-stap:nth-of-type(4){--stap-accent: #dc2626}.verantwoording-stap:nth-of-type(5){--stap-accent: #1766b1}.verantwoording-stap:nth-of-type(6){--stap-accent: #475569}.verantwoording-stap h4{margin:0 0 8px;font:700 12px var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);display:flex;align-items:center;gap:9px}.verantwoording-nr{display:inline-flex;align-items:center;justify-content:center;flex:none;width:22px;height:22px;border-radius:50%;background:var(--stap-accent, #1766b1);color:#fff;font:700 11.5px var(--mono)}.verantwoording-stap p{margin:0 0 6px}.verantwoording-stap p:last-child{margin-bottom:0}.verantwoording .mono{display:inline-block;background:var(--surface-1);border:1px solid var(--border);border-radius:6px;padding:0 5px;font:650 12px var(--mono);white-space:nowrap}.verantwoording-scroll{overflow-x:auto;margin:2px 0 8px;border:1px solid var(--border);border-radius:8px}.verantwoording-tabel{border-collapse:collapse;font:500 12px var(--mono);white-space:nowrap;width:100%}.verantwoording-tabel th,.verantwoording-tabel td{border-bottom:1px solid var(--border);padding:5px 10px;text-align:right}.verantwoording-tabel th{background:var(--surface-1);font-weight:700;text-transform:uppercase;font-size:10.5px;letter-spacing:.06em;color:var(--text-secondary)}.verantwoording-tabel tbody tr:nth-child(2n) td{background:var(--surface-1)}.verantwoording-tabel tbody tr:last-child td{border-bottom:none}.verantwoording-tabel td:first-child,.verantwoording-tabel th:first-child{text-align:left;font-weight:650}.verantwoording-lijst{margin:0 0 6px;padding-left:18px}.params-zoekrij{margin-bottom:8px}.params-zoek{width:220px;font-family:var(--mono)}.params-lijst{columns:470px auto;column-gap:26px}.params-groep{break-inside:avoid;margin:0 0 10px}.params-tabel{width:100%;white-space:normal;table-layout:fixed}.params-tabel td{padding:3px 8px;vertical-align:top;word-break:break-word}.params-tabel td:first-child{width:62%}.params-voor{color:var(--text-muted);font-weight:500}.params-waarde{text-align:right;font-family:var(--mono)}.verantwoording-lijst li{margin:0 0 5px}.blad{font-size:13px;line-height:1.55;display:flex;flex-direction:column;gap:12px}.blad-intro{margin:0 0 4px}.blad-context{position:sticky;top:0;z-index:3;display:flex;gap:20px;align-items:center;flex-wrap:wrap;background:var(--surface-1);border:1px solid var(--border);border-radius:10px;padding:9px 14px;box-shadow:0 2px 8px -4px #0f172a24}.blad-context label{display:flex;align-items:center;gap:7px;font-size:11.5px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-weight:600}.blad-context select{font:500 12.5px var(--body-font);text-transform:none;letter-spacing:0;color:var(--text-primary);background:var(--surface-1);border:1px solid var(--border);border-radius:6px;padding:3px 6px;max-width:260px}.blad-context select:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.blad-status{margin-left:auto;font-size:12px;color:var(--text-secondary)}.blad-stap{margin:0;background:var(--surface-2);border:1px solid var(--border);border-left:4px solid var(--stap-accent, #1766b1);border-radius:0 12px 12px 0;padding:12px 16px}.blad-stap:nth-of-type(1){--stap-accent: #7c3aed}.blad-stap:nth-of-type(2){--stap-accent: #059669}.blad-stap:nth-of-type(3){--stap-accent: #d97706}.blad-stap:nth-of-type(4){--stap-accent: #dc2626}.blad-stap:nth-of-type(5){--stap-accent: #1766b1}.blad-stap:nth-of-type(6){--stap-accent: #475569}.blad-stap:nth-of-type(7){--stap-accent: #7c3aed}.blad-stap:nth-of-type(8){--stap-accent: #475569}.blad-stap h4{margin:0 0 3px;font:700 12px var(--mono);text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);display:flex;align-items:center;gap:9px;flex-wrap:wrap}.blad-nr{display:inline-flex;align-items:center;justify-content:center;flex:none;width:22px;height:22px;border-radius:50%;background:var(--stap-accent, #1766b1);color:#fff;font:700 11.5px var(--mono)}.blad-kop{font:650 11px var(--mono);letter-spacing:.04em;color:var(--accent-deep);background:var(--accent-soft);border-radius:4px;padding:1px 7px;text-transform:none}.blad-bron,.blad-noot,.blad-intro,.blad p:not([class]){max-width:96ch}.blad-bron{margin:0 0 10px;font-size:11.5px;color:var(--text-muted);line-height:1.45}.blad-formule{border-top:1px solid var(--border);padding:10px 0 2px}.blad-formule:first-of-type{border-top:0;padding-top:2px}.blad-naam{font-size:11.5px;color:var(--text-muted);margin-bottom:5px}.blad-rij{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:baseline;font:500 12.5px var(--mono);padding:1px 0}.blad-sym{color:var(--text-secondary)}.blad-inv{color:var(--text-primary);padding-left:13px;border-left:2px solid var(--axis-sterk);min-width:0}.blad-g{color:var(--accent-deep);font-weight:700}.blad-uit{font:700 12.5px var(--mono);white-space:nowrap;text-align:right}.blad-merk{border-radius:4px;padding:0 5px}.blad-merk--M{background:#dc26261a;color:#991b1b}.blad-merk--V{background:#1766b11a;color:#134e7a}.blad-merk--w{background:#0596691a;color:#065f46}.blad-vlag{display:inline-block;font:600 10.5px var(--body-font);padding:1px 7px;border-radius:99px;white-space:nowrap}.blad-vlag--ok{background:var(--ok-zacht);color:var(--ok-tekst)}.blad-vlag--waarschuwing{background:var(--waarschuwing-zacht);color:var(--waarschuwing-tekst)}.blad-vlag--fout{background:var(--fout-zacht);color:var(--fout-tekst)}.blad-noot{margin:8px 0 0;font-size:12px;color:var(--text-secondary)}.blad-lijst{margin:0 0 6px;padding-left:18px;font-size:12.5px;color:var(--text-secondary)}.blad-lijst li{margin:0 0 5px}.verantwoording-tabel tbody tr.blad-hier td{background:var(--accent-soft);font-weight:700}.verantwoording-tabel tbody tr.blad-hier td:first-child{box-shadow:inset 3px 0 0 var(--accent)}@media (max-width: 720px){.blad-rij{grid-template-columns:minmax(0,1fr)}.blad-uit{text-align:left;padding-left:13px}.blad-status{margin-left:0}}.toggle-btn.active{border-color:var(--accent);color:var(--accent);background:var(--accent-soft)}.toggle-btn:disabled{opacity:.35;cursor:default}.toggle-btn:hover:not(:disabled):not(.active){color:var(--text-primary);border-color:var(--text-muted)}.head-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.env-note{color:var(--text-muted);font-size:12px;font-weight:500;margin:4px 6px 8px}.env-note code{color:var(--text-secondary);font-family:var(--mono)}.warn-note{color:var(--accent-deep);background:var(--accent-soft);border-radius:8px;padding:8px 12px;font-size:12.5px;font-weight:600;margin:6px 4px 8px}.influence-panel{display:flex;flex-direction:column;gap:9px;padding:11px;border:1px solid var(--border);border-radius:18px;background:var(--surface-2);box-shadow:var(--shadow)}.influence-panel>.chart-card{margin:0;box-shadow:none}.influence-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:2px 5px}.influence-heading{display:flex;flex-direction:column;gap:2px}.influence-heading strong{font:700 14px var(--display);color:var(--text-primary)}.influence-heading span{color:var(--text-muted);font-size:11.5px}.influence-actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.influence-summary{display:grid;grid-template-columns:minmax(220px,1.6fr) repeat(3,minmax(100px,1fr));gap:8px}.influence-summary>span{display:flex;flex-direction:column;gap:2px;min-width:0;padding:9px 11px;border:1px solid var(--border);border-radius:10px;background:var(--surface-1)}.influence-summary small{color:var(--text-muted);font-size:10px;text-transform:uppercase;letter-spacing:.04em}.influence-summary strong{color:var(--text-primary);font:650 12px var(--mono);overflow-wrap:anywhere}.support-row{flex-wrap:wrap}.support-btn{background:var(--surface-1);border:1px solid var(--axis);border-radius:8px;padding:3px 7px;cursor:pointer;font-size:13px;color:var(--text-secondary);display:inline-flex;align-items:baseline;gap:3px}.support-btn small{font:700 9px var(--mono);color:var(--text-muted)}.support-btn:hover{border-color:var(--accent);color:var(--accent)}.beam-bar{fill:var(--beam-color, var(--text-secondary))}.support{fill:var(--surface-2);stroke:var(--support-color, var(--text-secondary));stroke-width:1.5}.support-ground{stroke:var(--support-color, var(--text-secondary));stroke-width:1.5}.support-node{cursor:pointer}.support-node:hover .support,.support-node:hover .support-fixed-line,.support-node:hover .support-free{stroke:var(--accent)}.support-free{fill:none;stroke:var(--support-color, var(--text-muted));stroke-width:1.5;stroke-dasharray:2 2}.support-fixed-line{stroke:var(--support-color, var(--text-secondary));stroke-width:1.6}.support-hatch{stroke:var(--support-color, var(--text-muted));stroke-width:1.2}.udl-band{fill:var(--udl);opacity:.2;stroke:var(--udl);stroke-width:1;cursor:grab}.udl-band:active{cursor:grabbing}.udl-arrow line{stroke:var(--udl);stroke-width:1.6;pointer-events:none}.udl-arrow path{fill:var(--udl);pointer-events:none}.t-udl{fill:var(--text-secondary);font:700 10px var(--mono);text-anchor:middle;pointer-events:none}.udl-handle{fill:var(--surface-1);stroke:var(--udl);stroke-width:2;cursor:ew-resize}.moment-glyph{cursor:grab}.moment-glyph:active{cursor:grabbing}.moment-arc{fill:none;stroke:var(--load);stroke-width:2.2}.moment-head{fill:var(--load)}.moment-icon{color:var(--load);font-size:15px;line-height:1}.support-force-line{stroke:var(--accent-deep);stroke-width:1.4}.support-force-head{fill:var(--accent-deep)}.t-support-force{fill:var(--accent-deep);font:700 9px var(--mono);text-anchor:middle}.soort-chip{flex:0 0 auto;width:22px;height:20px;border-radius:6px;border:1px solid var(--axis);background:var(--surface-1);font:700 10px var(--mono);cursor:pointer;padding:0}.soort-chip.g{color:#059669;border-color:#059669;background:#ecfdf5}.soort-chip.q{color:var(--accent-deep);border-color:var(--accent);background:var(--accent-soft)}.combo-row-wrap{flex-wrap:wrap}.combos-table .num{font-size:11px;padding:3px 4px}.combo-name{width:118px;font-size:11px;padding:3px 5px}.psi-select{width:56px}.combo-select{flex:1;min-width:0}.combo-active td{background:var(--accent-soft)}.factor-badge{font-family:var(--mono);font-weight:700;color:var(--accent-deep)}.soort-cell{white-space:nowrap}.gunstig-label{font-size:10px;color:var(--text-muted);display:inline-flex;align-items:center;gap:3px;margin-left:4px}.combo-note{background:var(--surface-2);border-radius:8px;padding:8px 10px}.section-marker{cursor:ew-resize}.section-line{stroke:var(--snede);stroke-width:1.5;stroke-dasharray:6 4}.section-pill{fill:var(--snede)}.t-section{fill:#fff;font:700 9.5px var(--mono);text-anchor:middle;pointer-events:none}.marker-line{stroke-width:1.5;stroke-dasharray:6 4;opacity:.6;pointer-events:none}.t-node{fill:var(--text-secondary);font:700 13px var(--body-font);text-anchor:middle}.t-dim{fill:var(--dim-color, var(--text-muted));font:600 10px var(--mono)}.dim-line{stroke:var(--dim-color, var(--axis));stroke-width:1;opacity:.55}.load{cursor:grab}.load:active{cursor:grabbing}.load-line{stroke:var(--load);stroke-width:1.4}.load-head{fill:var(--load)}.t-load{fill:var(--text-secondary);font:700 10px var(--mono);text-anchor:middle}.t-pos{fill:var(--dim-color, var(--text-muted));font:600 8.5px var(--mono);text-anchor:middle;pointer-events:none}.klasse-select{width:62px;flex:0 0 auto;font-size:10.5px;padding:3px 2px}.klassen-table{font-size:10.5px;width:100%}.klassen-table td,.klassen-table th{padding:3px 5px}.klassen-table td:nth-child(2){text-align:left}.load-off{opacity:.28}.hit{fill:transparent}.axle-group{cursor:grab}.axle-group:active{cursor:grabbing}.truck-body{fill:var(--surface-2);stroke:var(--axis);stroke-width:1.5}.t-truck{fill:var(--text-muted);font:700 10px var(--mono);text-anchor:middle}.vehicle-tag{pointer-events:none}.vehicle-tag-card{fill:color-mix(in srgb,var(--surface-1) 96%,var(--vehicle-color) 4%);stroke:color-mix(in srgb,var(--vehicle-color) 58%,var(--border));stroke-width:1}.vehicle-tag-title{fill:var(--text-primary);font:760 13px var(--body-font);text-anchor:middle}.vehicle-tag-meta{fill:var(--text-muted);font:670 10.75px var(--mono);text-anchor:middle}.axle-value-card{fill:var(--surface-1);stroke:color-mix(in srgb,var(--vehicle-color) 64%,var(--border));stroke-width:.8}.axle-value-text{fill:var(--text-primary);font:750 11.5px var(--mono);text-anchor:middle}.axle-spacing-line,.axle-spacing-tick{stroke:var(--dim-color, var(--text-muted));stroke-width:.8;opacity:.72;pointer-events:none}.axle-spacing-card{fill:var(--surface-1);stroke:none;pointer-events:none}.axle-spacing-text{fill:var(--dim-color, var(--text-muted));font:670 10px var(--mono);text-anchor:middle;pointer-events:none}.load-label-card{fill:color-mix(in srgb,var(--surface-1) 95%,transparent);stroke:var(--border);stroke-width:.7;pointer-events:none}.gridline{stroke:var(--gridline);stroke-width:1}.zero-axis{stroke:#cbd5e1;stroke-width:1.5}.support-line{stroke:var(--text-muted);stroke-width:1;stroke-dasharray:2 4;opacity:.5}.t-tick{fill:var(--text-muted);font:600 10px var(--mono);text-anchor:end}.t-extreme{fill:var(--text-primary);font:700 11.5px var(--mono);text-anchor:middle;paint-order:stroke;stroke:var(--surface-1);stroke-width:3px;stroke-linejoin:round}.crosshair{stroke:var(--text-secondary);stroke-width:1;stroke-dasharray:3 3;pointer-events:none}.tooltip-layer{pointer-events:none}.tip-box{fill:var(--surface-1);stroke:var(--border);filter:drop-shadow(0 4px 10px rgba(21,18,14,.12))}.t-tip-x{fill:var(--text-muted);font:450 10.5px var(--mono)}.t-tip-v{font:500 11.5px var(--mono)}.env-line{fill:none;stroke-width:1.5;stroke-dasharray:5 4;opacity:.65}.results{display:flex;flex-wrap:wrap;gap:10px}.stat{background:var(--surface-1);border:1px solid var(--border);border-radius:8px;box-shadow:none;padding:9px 14px;display:flex;flex-direction:column;gap:2px;min-width:96px}.stat-label{color:var(--text-muted);font:450 10px var(--body-font);text-transform:uppercase;letter-spacing:.08em}.stat-value{font:550 16px var(--mono);letter-spacing:-.01em}.stat-value em{font-style:normal;font:600 10px var(--mono);color:var(--text-muted)}.stat-value small{font:500 10px var(--mono);color:var(--text-muted)}.stat.accent-m{border-left:3px solid var(--m-color);background:linear-gradient(145deg,#fff,var(--accent-soft))}.stat.accent-v{border-left:3px solid var(--v-color)}.stat.accent-w{border-left:3px solid var(--w-color)}.stat.accent-snede{border-left:3px solid var(--snede-color)}.formula-list{display:flex;flex-direction:column}.formula-item{display:grid;grid-template-columns:150px 1fr;gap:12px;padding:9px 2px;border-bottom:1px solid var(--gridline)}.formula-item:last-child{border-bottom:0}.formula-name{font:700 11.5px var(--display);color:var(--text-primary);padding-top:2px}.formula-body{display:grid;gap:3px;min-width:0}.formula-math{font-family:var(--mono);font-size:12px;color:var(--accent-deep);background:var(--surface-2);border-radius:6px;padding:4px 8px;overflow-x:auto;white-space:nowrap}.matrix-inline{font-size:10.5px;color:var(--text-secondary)}.formula-note{font-size:11.5px;color:var(--text-muted);line-height:1.5}.table-scroll{max-height:46vh;overflow-y:auto}.result-table{width:100%}.result-table th{position:sticky;top:0}.report{max-width:880px;margin:0 auto;padding:18px 24px 48px;background:#fff;min-height:100vh}.report-toolbar{display:flex;gap:8px;padding:10px 0 18px}.report-head{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;border-bottom:2px solid var(--text-primary);padding-bottom:12px}.report-head h1{margin:0;font:700 24px var(--display);letter-spacing:-.03em}.report-sub{margin:4px 0 0;color:var(--text-secondary);font-size:13px}.report-meta{text-align:right;color:var(--text-muted);font:600 11px var(--mono);line-height:1.6}.report-section{margin-top:22px;break-inside:avoid}.report-section h2{font:700 14px var(--display);letter-spacing:-.01em;margin:0 0 10px;color:var(--text-primary)}.report-cols{display:flex;gap:14px;flex-wrap:wrap;align-items:flex-start}.report .matrix{margin:4px 0 10px}.report-chart{break-inside:avoid;margin-bottom:6px}.report-chart .chart-card{box-shadow:none}.report-disclaimer{margin-top:14px;padding:10px 12px;border:1px solid var(--axis);border-radius:8px;color:var(--text-secondary);font-size:11.5px;line-height:1.6}.check-ok{color:#059669;font-weight:700}.check-fail{color:var(--accent-deep);font-weight:700}.help-toc{display:flex;flex-wrap:wrap;gap:6px 14px;margin:16px 0 4px;padding:12px 14px;background:var(--surface-2);border:1px solid var(--gridline);border-radius:12px}.help-toc a{color:var(--text-secondary);text-decoration:none;font:700 12px var(--body-font)}.help-toc a:hover{color:var(--accent)}.help-page h3{font:700 13px var(--display);margin:14px 0 6px;color:var(--text-primary)}.help-text{font-size:13px;color:var(--text-secondary);line-height:1.65;margin:6px 0}.help-text--klein{font-size:12px;color:var(--text-muted)}.help-modusbalk{display:flex;flex-wrap:wrap;gap:6px;margin:14px 0 0}.help-modusknop{flex:0 1 auto;text-align:left;padding:6px 12px;border:1px solid var(--gridline);border-radius:8px;background:var(--surface-1);color:var(--text-secondary);font:700 12.5px var(--body-font);cursor:pointer;transition:color .12s,border-color .12s}.help-modusknop:hover{color:var(--accent);border-color:var(--accent)}.help-modusknop small{display:block;font:500 10.5px var(--body-font);letter-spacing:.03em;opacity:.75}.help-modusknop.actief{background:var(--text-primary);border-color:var(--text-primary);color:var(--surface-1)}.help-modusknop.actief:hover{color:var(--surface-1)}.help-moduskaarten{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px;margin:8px 0 12px}.help-moduskaart{text-align:left;padding:10px 12px;border:1px solid var(--gridline);border-radius:10px;background:var(--surface-1);cursor:pointer;transition:border-color .12s}.help-moduskaart:hover{border-color:var(--accent)}.help-moduskaart.actief{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.help-moduskaart b{display:block;font:700 13px var(--display);color:var(--text-primary)}.help-moduskaart span{display:block;margin-top:3px;font-size:12px;line-height:1.5;color:var(--text-secondary)}.help-modus-scheiding{margin:28px 0 0;padding-bottom:4px;border-bottom:2px solid var(--accent);font:700 15px var(--display);letter-spacing:.06em;text-transform:uppercase;color:var(--accent)}.help-toc-scheiding{font:700 11px var(--body-font);letter-spacing:.08em;text-transform:uppercase;color:var(--text-secondary);width:100%;margin-top:4px}.validatie-modules{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0 6px}.validatie-module{flex:1 1 340px;padding:10px 13px;border:1px solid var(--border);border-radius:10px;background:var(--surface-1)}.validatie-module--zonder{border-color:color-mix(in srgb,var(--waarschuwing) 55%,var(--border))}.validatie-module h4{margin:0 0 6px;font:700 13px var(--body-font)}.validatie-module dl{margin:0;display:grid;grid-template-columns:auto;gap:1px 0}.validatie-module dt{font:700 9.5px var(--body-font);text-transform:uppercase;letter-spacing:.07em;color:var(--text-muted);margin-top:6px}.validatie-module dd{margin:0;font-size:12px;color:var(--text-secondary);line-height:1.45}.validatie-module dd.nok{color:var(--fout-tekst);font-weight:600}.validatie-module dd.mono{font-family:var(--mono);font-size:11.5px}.validatie-start{font-weight:700}.validatie-duur{color:var(--text-muted);font:600 11px var(--mono);margin-left:6px}.validatie-voortgang{display:flex;align-items:center;gap:10px;margin:10px 0;font:600 12px var(--mono);color:var(--text-secondary)}.validatie-balk{flex:1 1 auto;height:6px;background:var(--surface-2);border-radius:999px;overflow:hidden}.validatie-balk i{display:block;height:100%;background:var(--accent);transition:width .12s linear}.validatie-kaarten{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.validatie-kaart{display:flex;flex-direction:column;gap:2px;padding:8px 12px;min-width:128px;background:var(--surface-1);border:1px solid var(--border);border-radius:10px}.validatie-kaart--oordeel{flex:1 1 260px}.validatie-kaart-label{font:700 10px var(--body-font);letter-spacing:.07em;text-transform:uppercase;color:var(--text-muted)}.validatie-kaart-label em{font-style:normal;font-weight:600;opacity:.75}.validatie-kaart strong{font:700 17px var(--mono);color:var(--text-primary)}.validatie-kaart strong.ok{color:var(--ok-tekst);font-size:13px}.validatie-kaart strong.nok{color:var(--fout-tekst);font-size:13px}.validatie-kaart-sub{font-size:11px;color:var(--text-muted)}.validatie-tabel{width:100%;border-collapse:collapse;margin:10px 0 4px;font-size:12px}.validatie-tabel th{text-align:left;padding:5px 8px;border-bottom:1px solid var(--axis);font:700 10px var(--body-font);letter-spacing:.07em;text-transform:uppercase;color:var(--text-muted)}.validatie-tabel td{padding:4px 8px;border-bottom:1px solid var(--surface-2)}.validatie-tabel td.n,.validatie-tabel th:not(:first-child){text-align:right}.validatie-tabel td.n{font-family:var(--mono)}.validatie-rij{cursor:pointer}.validatie-rij:hover td{background:var(--surface-2)}.validatie-rij--nok td{color:var(--fout-tekst)}.validatie-rij--open td{background:var(--accent-soft)}.validatie-caret{color:var(--text-muted);font-size:10px}.validatie-fase td{color:var(--text-secondary);background:var(--surface-2);font-size:11.5px}.validatie-fase td:first-child{padding-left:26px}.validatie-fase td em{display:block;font-style:normal;font-size:10px;color:var(--text-muted)}.validatie-leeg{color:var(--text-muted)}.validatie-blok{margin:14px 0 0;padding:10px 12px;border:1px solid var(--border);border-radius:10px;background:var(--surface-1)}.validatie-blok h4{margin:0 0 4px;font:700 12.5px var(--body-font);display:flex;align-items:center;gap:10px}.validatie-blok ul{margin:6px 0 0;padding-left:18px;font-size:12px;color:var(--text-secondary)}.validatie-blok li{margin:2px 0}.validatie-blok--onderzoek{border-color:color-mix(in srgb,var(--waarschuwing) 45%,var(--border))}.validatie-blok--fout{border-color:color-mix(in srgb,var(--fout) 45%,var(--border))}.validatie-bron{margin-top:12px;font-style:italic}.help-text code,.help-list code{font-family:var(--mono);font-size:11.5px;color:var(--accent-deep)}.help-list{margin:4px 0 10px;padding-left:20px;color:var(--text-secondary);font-size:13px;line-height:1.65}.help-list li{margin-bottom:5px}.help-list strong,.help-text strong{color:var(--text-primary)}.help-vars td:first-child{text-align:left;white-space:nowrap}.help-vars td{text-align:left}@media print{.no-print{display:none!important}body{background:#fff}.report{max-width:100%;padding:0}.report-chart .chart-card{border:1px solid var(--gridline)}}@media (max-width: 1460px){.workspace-header{position:static;grid-template-columns:auto minmax(240px,1fr) auto;grid-template-areas:"brand scenario tools" "modes modes modes";gap:8px 14px}.scenario-label{display:none}.scenario-switcher{grid-template-columns:minmax(0,1fr) auto}.app{grid-template-columns:320px minmax(0,1fr)}.app.beam-workspace,.app.specialized-workspace{grid-template-columns:auto minmax(0,1fr) auto}.sidebar-right{grid-column:1;position:static;max-height:none}.workspace-controls{top:16px;height:calc(100vh - 132px);max-height:calc(100vh - 132px)}}@media (max-width: 1040px){.app,.app.beam-workspace,.app.specialized-workspace{grid-template-columns:1fr}.workspace-controls{width:auto}.assistent-lade,.assistent-lade--open{width:auto;height:auto;max-height:none;position:static}.sidebar,.sidebar-right{position:static;max-height:none;grid-column:auto}.workspace-controls{position:static;height:auto;max-height:none;overflow:visible}.control-workspace{min-height:360px}.app.beam-workspace>.workspace-controls,.app.beam-workspace>.workspace-results,.app.beam-workspace>.assistent-lade,.app.beam-workspace>.status-balk,.app.specialized-workspace>.workspace-controls,.app.specialized-workspace>.workspace-results,.app.specialized-workspace>.assistent-lade,.app.specialized-workspace>.status-balk{grid-column:1;grid-row:auto}.specialized-result-panel{grid-column:auto}.influence-summary{grid-template-columns:1fr 1fr}}@media (max-width: 760px){.workspace-header{grid-template-columns:1fr auto;grid-template-areas:"brand tools" "scenario scenario" "modes modes";padding:10px 12px}.workspace-tools{max-width:100%;overflow-x:auto}.scenario-switcher{grid-template-columns:minmax(0,1fr) auto}.app{padding:12px}.control-tabs{grid-template-columns:repeat(var(--control-tab-count, 7),minmax(72px,1fr));overflow-x:auto}.workspace-section-hint{display:none}.influence-summary{grid-template-columns:1fr}}.udl-load-row{display:grid;grid-template-columns:10px 25px minmax(42px,1fr) 14px minmax(42px,1fr) auto 24px;gap:6px;width:100%}.udl-load-row .num{width:100%!important;min-width:0}.udl-load-row .icon-btn{width:24px;padding-inline:0}.udl-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;margin-top:8px}.udl-field{display:grid;gap:4px;min-width:0}.udl-field>span{color:var(--text-muted);font-size:10px;font-weight:700;letter-spacing:.03em;text-transform:uppercase}.udl-field .num{width:100%!important;min-width:0}.udl-field--class{grid-column:1 / -1}.udl-field--class .klasse-select{width:100%}.landing-page{--landing-ink: #0f172a;--landing-merk: #1e40af;--landing-coral: #dc2626;--landing-orange: #d97706;--landing-purple: #7c3aed;--landing-blue: #1766b1;min-height:100vh;overflow:hidden;position:relative;background:#f8fafc;color:var(--landing-ink)}.landing-page:before{content:"";position:absolute;inset:0 0 auto;height:840px;pointer-events:none;background-image:linear-gradient(rgba(30,41,59,.055) 1px,transparent 1px),linear-gradient(90deg,rgba(30,41,59,.055) 1px,transparent 1px),linear-gradient(rgba(30,41,59,.028) 1px,transparent 1px),linear-gradient(90deg,rgba(30,41,59,.028) 1px,transparent 1px);background-size:80px 80px,80px 80px,16px 16px,16px 16px;-webkit-mask-image:linear-gradient(to bottom,#000,transparent 82%);mask-image:linear-gradient(to bottom,#000,transparent 82%)}.landing-naamhoek{display:grid;grid-template-columns:1.5fr 1fr 1fr .8fr;border:1px solid var(--landing-ink);background:#fff;margin:40px 0 8px}.landing-naamhoek>div{padding:9px 13px;border-right:1px solid var(--landing-ink);min-width:0}.landing-naamhoek>div:last-child{border-right:0}.landing-naamhoek dt{margin:0 0 3px;font:600 9.5px var(--display);letter-spacing:.14em;text-transform:uppercase;color:var(--text-muted)}.landing-naamhoek dd{margin:0;font:600 12.5px var(--mono);font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}@media (max-width: 720px){.landing-naamhoek{grid-template-columns:1fr 1fr}.landing-naamhoek>div:nth-child(2){border-right:0}}.landing-page button,.landing-page input{font:inherit}.landing-shell{width:min(1220px,calc(100% - 48px));margin-inline:auto;position:relative}.landing-nav{min-height:88px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;z-index:5}.landing-brand{display:inline-flex;align-items:center;gap:3px;color:var(--landing-ink);text-decoration:none;width:max-content}.landing-brand-mark{color:var(--landing-merk);font:700 25px var(--display);letter-spacing:-.055em}.landing-brand-name{font:750 25px var(--display);letter-spacing:-.055em}.landing-brand-product{margin-left:8px;padding-left:9px;border-left:1px solid #cbd5e1;color:#64748b;font:700 10px var(--mono);text-transform:uppercase;letter-spacing:.12em}.landing-nav-links{display:flex;gap:3px;align-items:center;padding:5px;border:1px solid rgba(255,255,255,.75);border-radius:999px;background:#ffffffd9;box-shadow:inset 0 0 0 1px #17141108}.landing-nav-links a{padding:9px 16px;border-radius:999px;color:#475569;font-size:12px;font-weight:750;text-decoration:none}.landing-nav-links a:hover{color:var(--landing-ink);background:#ffffffb8}.landing-open{border:0;border-radius:999px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:13px;font-weight:800;white-space:nowrap}.landing-open>span{width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:var(--landing-ink);color:#fff;transition:transform .2s ease}.landing-open:hover>span{transform:translate(2px) rotate(-4deg)}.landing-open svg,.landing-text-link svg,.landing-access-submit svg{width:17px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.landing-open--nav{justify-self:end;padding:7px 8px 7px 20px;color:var(--landing-ink);background:linear-gradient(105deg,#ffffffc2,#dc26262e);box-shadow:0 10px 30px -16px #1714114d}.landing-hero{min-height:690px;display:grid;grid-template-columns:minmax(0,.88fr) minmax(500px,1.12fr);align-items:center;gap:clamp(40px,6vw,84px);padding-block:58px 92px;z-index:1}.landing-hero-copy{max-width:610px}.landing-kicker{display:flex;align-items:center;gap:10px;color:var(--landing-merk);font:750 10px var(--mono);text-transform:uppercase;letter-spacing:.14em}.landing-kicker i{width:34px;height:1px;background:currentColor}.landing-hero h1{margin:24px 0 20px;font:700 clamp(53px,5.4vw,78px)/.94 var(--display);letter-spacing:-.065em;max-width:660px}.landing-hero h1 span{color:var(--landing-coral);background:linear-gradient(90deg,var(--landing-merk),#2563eb 70%,#0d9488);background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent}.landing-hero-copy>p{max-width:570px;margin:0;color:#64748b;font-size:15px;font-weight:550;line-height:1.75}.landing-hero-actions{display:flex;align-items:center;gap:20px;margin-top:30px;flex-wrap:wrap}.landing-open--hero{padding:8px 8px 8px 22px;color:#fff;background:var(--landing-merk);box-shadow:0 20px 36px -22px #dc2626cc}.landing-text-link{display:inline-flex;align-items:center;gap:7px;color:#334155;font-size:12px;font-weight:800;text-decoration:none}.landing-text-link svg{width:15px}.landing-proof-list{display:flex;gap:16px;flex-wrap:wrap;margin-top:27px;color:#64748b;font-size:10.5px;font-weight:700}.landing-proof-list span{display:inline-flex;align-items:center;gap:5px}.landing-proof-list svg{width:14px;height:14px;fill:none;stroke:#059669;stroke-width:2}.landing-product-stage{min-height:560px;display:grid;place-items:center;position:relative;padding:44px 26px;border-radius:42px;background:radial-gradient(circle at 73% 20%,rgba(255,255,255,.92),transparent 26%),linear-gradient(145deg,#fee2e2,#fecaca 50%,#e2e8f0);box-shadow:inset 0 0 0 1px #ffffffb3}.landing-product-stage:before{content:"";position:absolute;top:22px;right:22px;bottom:22px;left:22px;border:1px solid rgba(255,255,255,.52);border-radius:31px;pointer-events:none}.landing-dashboard{width:min(570px,100%);border:1px solid rgba(255,255,255,.88);border-radius:22px;padding:15px;background:#ffffffde;box-shadow:0 34px 70px -34px #1e293b7a,0 12px 25px -20px #17141157;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);transform:rotate(-1deg)}.landing-dashboard-head{display:flex;align-items:center;justify-content:space-between;padding:2px 3px 12px;color:#334155;font:650 10px var(--mono)}.landing-dashboard-head>div{display:flex;align-items:center;gap:7px}.landing-mini-logo{color:var(--landing-merk);font:700 17px var(--display)}.landing-live{display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border-radius:999px;background:#ecfdf5;color:#059669}.landing-live i{width:6px;height:6px;border-radius:50%;background:currentColor;box-shadow:0 0 0 4px #1a8f5c1a}.landing-bridge-card,.landing-influence-card{border:1px solid #e2e8f0;border-radius:14px;background:#fff;overflow:hidden}.landing-card-label{display:flex;align-items:center;justify-content:space-between;padding:10px 12px 0;color:#64748b;font:650 9px var(--mono);text-transform:uppercase;letter-spacing:.06em}.landing-card-label strong{color:#334155;letter-spacing:0;text-transform:none}.landing-bridge-svg{display:block;width:100%;height:142px}.landing-svg-label{fill:#64748b;font:600 8px var(--mono)}.landing-svg-value{fill:#7c3aed;font:700 9px var(--mono)}.landing-svg-support{fill:#64748b;font:700 7.5px var(--mono)}.landing-svg-axis{fill:#64748b;font:650 7.5px var(--mono)}.landing-svg-extreme{fill:#475569;font:700 7px var(--mono)}.landing-svg-negative{fill:#dc2626;font:700 8px var(--mono)}.landing-metrics-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-block:8px}.landing-metrics-row article{display:flex;flex-direction:column;gap:4px;min-width:0;padding:10px 11px;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc}.landing-metrics-row small{color:#64748b;font:650 8.5px var(--mono)}.landing-metrics-row strong{color:#1e293b;font:750 13px var(--mono);letter-spacing:-.03em}.landing-metrics-row em{color:#94a3b8;font-size:8px;font-style:normal}.landing-metrics-row span{color:#94a3b8;font:600 8px var(--mono)}.landing-influence-card svg{display:block;width:100%;height:80px}.landing-float-card{position:absolute;z-index:3;display:flex;gap:9px;align-items:center;padding:11px 13px;border:1px solid rgba(255,255,255,.88);border-radius:13px;background:#ffffffe6;box-shadow:0 18px 35px -22px #17141180;color:#64748b;font-size:9.5px;font-weight:700;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.landing-float-card strong{display:block;color:#1e293b;font:700 9px var(--mono)}.landing-float-card--top{top:21px;right:9px;flex-direction:column;align-items:flex-start;gap:3px}.landing-float-card--bottom{bottom:22px;left:7px}.landing-status-dot{width:8px;height:8px;border-radius:50%;background:#059669;position:absolute;top:13px;right:13px}.landing-shield{width:27px;height:27px;display:grid;place-items:center;border-radius:9px;background:#ecfdf5;color:#059669}.landing-shield svg{width:15px;fill:none;stroke:currentColor;stroke-width:2}.landing-float-card>span:last-child{display:flex;flex-direction:column;gap:2px}.landing-signal-strip{border-block:1px solid #e2e8f0;background:#ffffff9e}.landing-signal-strip .landing-shell{min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:16px;color:#64748b;font:700 10px var(--mono);text-transform:uppercase;letter-spacing:.09em}.landing-signal-strip i{width:4px;height:4px;border-radius:50%;background:#cbd5e1}.landing-section{padding-block:118px}.landing-section-head{display:grid;grid-template-columns:.68fr 1.32fr;gap:40px;align-items:start;margin-bottom:55px}.landing-section-head>div{display:flex;align-items:center;gap:12px;padding-top:9px}.landing-section-nr{width:32px;height:32px;display:grid;place-items:center;border-radius:10px;background:#eff6ff;color:var(--landing-merk);font:750 10px var(--mono)}.landing-section-head p{margin:0;color:#64748b;font:750 10px var(--mono);text-transform:uppercase;letter-spacing:.1em}.landing-section-head h2{margin:0;font:700 clamp(38px,4.5vw,60px)/1 var(--display);letter-spacing:-.055em}.landing-section-head h2 span{color:#94a3b8}.landing-bento{display:grid;grid-template-columns:repeat(12,1fr);gap:14px}.landing-feature{grid-column:span 4;min-height:330px;position:relative;overflow:hidden;padding:29px;border:1px solid #e2e8f0;border-radius:24px;background:#fff;box-shadow:0 20px 45px -38px #17141157}.landing-feature--wide{grid-column:span 8}.landing-feature-tag{display:inline-flex;padding:6px 9px;border-radius:999px;background:#f1f5f9;color:#64748b;font:750 9px var(--mono);text-transform:uppercase;letter-spacing:.08em}.landing-feature h3{max-width:540px;margin:20px 0 10px;font:700 27px/1.04 var(--display);letter-spacing:-.04em}.landing-feature p{max-width:550px;margin:0;color:#64748b;font-size:12.5px;line-height:1.65}.landing-live-chart{position:absolute;inset:auto 25px 22px;height:145px;border:1px solid #e2e8f0;border-radius:15px;background:#f8fafc;overflow:hidden}.landing-live-chart-grid{position:absolute;top:0;right:0;bottom:0;left:0;background-image:linear-gradient(#e2e8f0 1px,transparent 1px),linear-gradient(90deg,#e2e8f0 1px,transparent 1px);background-size:40px 40px;opacity:.55}.landing-live-chart svg{position:relative;width:100%;height:100%}.landing-live-chart path{fill:none;stroke:var(--landing-blue);stroke-width:3}.landing-live-chart circle{fill:var(--landing-blue)}.landing-live-chart>span{position:absolute;top:9px;padding:4px 7px;border-radius:6px;background:#fff;color:var(--landing-blue);font:700 9px var(--mono);box-shadow:0 6px 15px -10px #000}.landing-feature--coral{background:linear-gradient(145deg,#fef2f2,#fecaca);border-color:#fecaca}.landing-feature--coral .landing-feature-tag{background:#ffffff94;color:var(--landing-coral)}.landing-big-number{position:absolute;bottom:28px;left:28px;font:750 56px/1 var(--display);letter-spacing:-.07em;color:var(--landing-coral)}.landing-big-number small{display:block;margin:8px 0 0 4px;color:#64748b;font:700 10px var(--mono);letter-spacing:.02em}.landing-feature--dark{color:#fff;background:#0f172a;border-color:#0f172a}.landing-feature--dark .landing-feature-tag{background:#1e293b;color:#94a3b8}.landing-feature--dark p,.landing-feature--dark li{color:#94a3b8}.landing-feature--dark ul{margin:28px 0 0;padding:0;list-style:none;display:grid;gap:13px}.landing-feature--dark li{padding-bottom:10px;border-bottom:1px solid #1e293b;font:650 11px var(--mono)}.landing-feature--report{display:flex;align-items:center;justify-content:space-between;gap:35px;background:linear-gradient(125deg,#fff,#f1f5f9)}.landing-feature--report>div:first-child{flex:1}.landing-compare-card{width:min(310px,46%);padding:16px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 22px 35px -28px #17141166}.landing-compare-card>span{color:#64748b;font:700 9px var(--mono)}.landing-compare-card>div{display:flex;justify-content:space-between;padding-block:12px;border-bottom:1px solid #e2e8f0}.landing-compare-card small{color:#94a3b8;font:650 9px var(--mono)}.landing-compare-card strong{font:750 11px var(--mono)}.landing-compare-card>p{display:flex;align-items:center;gap:5px;margin-top:12px;color:#059669;font:700 9px var(--mono)}.landing-compare-card svg{width:14px;fill:none;stroke:currentColor;stroke-width:2}.landing-section--workflow{background:#f1f5f9;border-block:1px solid #e2e8f0}.landing-steps{display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid #cbd5e1}.landing-steps article{padding:30px;border-right:1px solid #cbd5e1}.landing-steps article:last-child{border:0}.landing-steps article>span{color:var(--landing-coral);font:750 11px var(--mono)}.landing-steps h3{margin:50px 0 10px;font:700 25px var(--display);letter-spacing:-.04em}.landing-steps p{margin:0;color:#64748b;font-size:12px;line-height:1.65}.landing-cta{min-height:390px;margin-block:92px;padding:65px 70px;display:flex;align-items:center;justify-content:space-between;gap:50px;border-radius:32px;color:#fff;background:radial-gradient(circle at 82% 15%,rgba(220,38,38,.45),transparent 25rem),#0f172a;overflow:hidden}.landing-cta h2{margin:21px 0 9px;font:700 clamp(42px,5vw,65px)/.98 var(--display);letter-spacing:-.06em}.landing-cta p{color:#94a3b8}.landing-cta .landing-kicker{color:#f87171}.landing-footer{min-height:105px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px;border-top:1px solid #e2e8f0;color:#64748b;font-size:10px}.landing-footer p{margin:0;text-align:center}.landing-footer>span:last-child{justify-self:end;font:650 9px var(--mono);text-transform:uppercase;letter-spacing:.1em}.landing-access-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:grid;place-items:center;padding:20px;background:#17141187;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);animation:landing-fade .18s ease}.landing-access{width:min(430px,100%);position:relative;padding:34px;border:1px solid rgba(255,255,255,.78);border-radius:26px;background:#fff;box-shadow:0 42px 90px -42px #0009;animation:landing-rise .22s ease}.landing-access-close{position:absolute;top:14px;right:14px;width:30px;height:30px;border:0;border-radius:50%;background:#f1f5f9;color:#64748b;cursor:pointer;font-size:18px}.landing-access-icon{width:48px;height:48px;display:grid;place-items:center;border-radius:15px;color:#fff;background:linear-gradient(135deg,var(--landing-coral),var(--landing-orange));font:700 19px var(--display);box-shadow:0 14px 24px -15px #dc2626cc}.landing-access-kicker{margin:24px 0 5px!important;color:var(--landing-coral)!important;font:750 9px var(--mono)!important;text-transform:uppercase;letter-spacing:.12em}.landing-access h2{margin:0 0 8px;font:700 31px var(--display);letter-spacing:-.045em}.landing-access>p{margin:0;color:#64748b;font-size:12.5px;line-height:1.6}.landing-access form{margin-top:24px}.landing-access label{display:block;margin-bottom:7px;color:#475569;font-size:11px;font-weight:800}.landing-password-field{display:flex;align-items:center;overflow:hidden;border:1px solid #cbd5e1;border-radius:11px;background:#fff;transition:border-color .18s,box-shadow .18s}.landing-password-field:focus-within{border-color:var(--landing-coral);box-shadow:0 0 0 4px #dc26261a}.landing-password-field.has-error{border-color:var(--landing-coral)}.landing-password-field input{flex:1;min-width:0;border:0;outline:0;padding:12px 13px;color:var(--landing-ink);background:transparent;font:650 13px var(--mono)}.landing-password-field button{border:0;padding:8px 12px;color:#64748b;background:transparent;cursor:pointer;font-size:10px;font-weight:800}.landing-access-error{margin:7px 0 0!important;color:var(--landing-coral)!important;font-size:10.5px!important}.landing-access-submit{width:100%;margin-top:13px;padding:12px 15px;display:flex;align-items:center;justify-content:center;gap:9px;border:0;border-radius:11px;color:#fff;background:var(--landing-ink);cursor:pointer;font-weight:800}.landing-access>small{display:block;margin-top:16px;color:#94a3b8;font-size:9.5px;text-align:center}@keyframes landing-fade{0%{opacity:0}}@keyframes landing-rise{0%{opacity:0;transform:translateY(10px) scale(.98)}}@media (max-width: 1050px){.landing-nav{grid-template-columns:1fr auto}.landing-nav-links{display:none}.landing-hero{grid-template-columns:1fr;padding-top:60px}.landing-hero-copy{max-width:740px}.landing-product-stage{width:min(740px,100%);justify-self:center}.landing-section-head{grid-template-columns:1fr;gap:20px}.landing-section-head>div{padding:0}.landing-feature,.landing-feature--wide{grid-column:span 6}.landing-feature--report{grid-column:1 / -1}}@media (max-width: 720px){.landing-shell{width:min(100% - 28px,1220px)}.landing-nav{min-height:72px}.landing-brand-product{display:none}.landing-open--nav{padding-left:14px;font-size:11px}.landing-open--nav>span{width:26px;height:26px}.landing-hero{grid-template-columns:minmax(0,1fr);min-height:auto;padding-block:50px 68px;gap:52px}.landing-hero h1{font-size:clamp(48px,14vw,66px)}.landing-hero-copy>p{font-size:13px}.landing-product-stage{min-height:490px;padding:48px 10px 36px;border-radius:27px}.landing-dashboard{padding:9px;border-radius:17px;transform:none}.landing-metrics-row{gap:5px}.landing-metrics-row article{padding:8px 7px}.landing-metrics-row strong{font-size:10px}.landing-float-card--top{right:-4px}.landing-float-card--bottom{left:-4px}.landing-signal-strip .landing-shell{min-height:64px;justify-content:flex-start;overflow:hidden}.landing-signal-strip span:nth-of-type(n+4),.landing-signal-strip i:nth-of-type(n+3){display:none}.landing-section{padding-block:82px}.landing-section-head h2{font-size:40px}.landing-bento{grid-template-columns:1fr}.landing-feature,.landing-feature--wide,.landing-feature--report{grid-column:1;min-height:320px}.landing-feature--report{display:block}.landing-compare-card{width:100%;margin-top:26px}.landing-steps{grid-template-columns:1fr}.landing-steps article{border-right:0;border-bottom:1px solid #cbd5e1}.landing-steps h3{margin-top:24px}.landing-cta{margin-block:58px;padding:45px 28px;min-height:380px;flex-direction:column;align-items:flex-start;justify-content:center}.landing-footer{grid-template-columns:1fr auto;padding-block:24px}.landing-footer p{grid-column:1 / -1;grid-row:2;text-align:left}.landing-access{padding:28px 22px;border-radius:22px}}@media (prefers-reduced-motion: reduce){.landing-page *,.landing-page *:before,.landing-page *:after{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}}.frameview{touch-action:none}.frameview .t-load,.frameview .t-udl,.frameview .t-dim,.frameview .t-node{paint-order:stroke;stroke:var(--surface-1);stroke-width:4px;stroke-linejoin:round}.frame-grid{stroke:var(--axis);stroke-width:.5;opacity:.35}.frame-grid-main{stroke:var(--axis);stroke-width:.7;opacity:.6}.frame-member{stroke:var(--beam-color, var(--text-secondary));stroke-width:2.6;stroke-linecap:round}.frame-node{fill:var(--surface-1);stroke:var(--support-color, var(--text-secondary));stroke-width:2;cursor:grab}.support-node:hover .frame-node{stroke:var(--accent)}.frame-hinge{fill:var(--surface-1);stroke:var(--support-color, var(--text-muted));stroke-width:1.5}.frame-diagram-fill{fill:var(--diag);opacity:.14;pointer-events:none}.frame-diagram-line{fill:none;stroke:var(--diag);stroke-width:2;pointer-events:none}.t-diag{fill:var(--diag);font:500 10.5px var(--mono);text-anchor:middle;paint-order:stroke;stroke:var(--surface-1);stroke-width:3;pointer-events:none}.frame-deformed{fill:none;stroke-width:2;stroke-dasharray:6 4;opacity:.8;pointer-events:none}.frame-noevents{pointer-events:none}.steun-select{max-width:108px}.rel-check{display:inline-flex;align-items:center;gap:4px;cursor:pointer}.panel-shell .row{flex-wrap:wrap;row-gap:4px}.panel-shell .num,.panel-shell select.num{max-width:100%}.panel-shell .panel-titles small{white-space:normal}.knoop-row .row-label{min-width:26px}.zeroline{stroke:var(--axis);stroke-width:1.5}.girder-line{fill:none;stroke-width:1.8;opacity:.55}.girder-line--sel{stroke-width:2;opacity:1}.girder-dot{stroke:var(--surface-1);stroke-width:1.5}.legend-chip{display:inline-flex;align-items:center;gap:5px;border:1px solid var(--border);background:var(--surface-1);border-radius:999px;padding:3px 9px;font:700 11px var(--mono);color:var(--text-secondary);cursor:pointer}.legend-chip i{width:9px;height:9px;border-radius:50%;background:var(--chip);display:inline-block}.legend-chip.active{border-color:var(--chip);color:var(--text-primary);background:var(--surface-2)}.legend-chip:hover:not(.active){border-color:var(--text-muted)}.mode-nav{grid-area:modes;justify-self:center;display:inline-flex;gap:2px;padding:3px;background:var(--surface-2);border:1px solid var(--border);border-radius:12px;margin:0;flex:0 0 auto}.mode-btn{border:0;background:transparent;color:var(--text-muted);font:700 13px var(--display);letter-spacing:-.01em;padding:5px 12px;border-radius:9px;cursor:pointer;white-space:nowrap}.mode-btn:hover:not(.active){color:var(--text-primary)}.mode-btn.active{background:var(--surface-1);color:var(--accent);box-shadow:var(--shadow)}@media (max-width: 760px){.mode-nav{justify-self:stretch;overflow-x:auto}.mode-btn{flex:1 0 auto}}.grillageview{touch-action:none}.deck-surface{fill:var(--surface-2);stroke:var(--axis);stroke-width:1}.grillage-cross{stroke:var(--dim-color, var(--axis));stroke-width:1;opacity:.5}.grillage-girder{stroke:var(--beam-color, var(--text-secondary));stroke-width:1.8;stroke-linecap:round}.grillage-girder-hit{cursor:pointer}.grillage-girder-hit:hover .grillage-girder{stroke:var(--accent)}.grillage-girder--sel{stroke:var(--snede, #7c3aed);stroke-width:2.6}.grillage-support{stroke:var(--support-color, var(--text-secondary));stroke-width:2;stroke-dasharray:6 4;opacity:.85}.lane-line{stroke:var(--udl-color, #d97706);stroke-width:1.5;stroke-dasharray:10 6;opacity:.8}.grillage-vehicle{cursor:grab}.grillage-vehicle:active{cursor:grabbing}.vehicle-footprint{fill:color-mix(in srgb,var(--surface-1) 91%,var(--load) 9%);stroke:color-mix(in srgb,var(--load) 58%,var(--border));stroke-width:1.2}.vehicle-centerline{stroke:color-mix(in srgb,var(--load) 70%,var(--text-secondary));stroke-width:5;stroke-linecap:round}.axle-line{stroke:var(--load);stroke-width:2.2;opacity:.88}.wheel-dot{fill:var(--load);stroke:var(--surface-1);stroke-width:2}.axle-load-card{fill:var(--surface-1);stroke:color-mix(in srgb,var(--load) 58%,var(--border));stroke-width:.8;pointer-events:none}.axle-load-text{fill:var(--text-primary);font:750 9px var(--mono);text-anchor:middle;pointer-events:none}.axle-load-caption{fill:var(--text-muted);font:650 8px var(--mono);text-anchor:middle;paint-order:stroke;stroke:var(--surface-1);stroke-width:3px;stroke-linejoin:round;pointer-events:none}.grillage-vehicle-tag{pointer-events:none}.grillage-vehicle-tag-card{fill:color-mix(in srgb,var(--surface-1) 97%,var(--load) 3%);stroke:color-mix(in srgb,var(--load) 68%,var(--border));stroke-width:1}.grillage-vehicle-tag-title{fill:var(--text-primary);font:750 9.5px var(--body-font);text-anchor:middle}.grillage-vehicle-tag-meta{fill:var(--text-muted);font:650 9px var(--mono);text-anchor:middle}.heatmap-border{fill:none;stroke:var(--axis);stroke-width:1.5}.damwandview{touch-action:none}.damwandview text{paint-order:stroke;stroke:var(--surface-1);stroke-width:3px;stroke-linejoin:round}.t-laag{fill:var(--text-muted);font:600 10px var(--mono)}.side-heading{margin:8px 0 3px;font:700 10px var(--mono);letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.layer-label-card,.pressure-legend-card,.q-label-card,.water-label-card,.anchor-label-card{fill:color-mix(in srgb,var(--surface-1) 94%,transparent);stroke:var(--border);stroke-width:.8}.layer-label-title{fill:var(--text-primary);font:740 10.5px var(--body-font);stroke-width:0!important}.layer-label-meta{fill:var(--text-muted);font:630 8.5px var(--mono);stroke-width:0!important}.pressure-legend-text{fill:var(--text-secondary);font:680 9px var(--mono);stroke-width:0!important}.q-label-card{stroke:color-mix(in srgb,var(--udl) 55%,var(--border))}.q-label-text{fill:var(--text-primary);font:720 10px var(--mono);text-anchor:middle;stroke-width:0!important}.water-label-card{stroke:color-mix(in srgb,#1766b1 55%,var(--border))}.water-label-text{fill:#1766b1;font:720 9.5px var(--mono);text-anchor:middle;stroke-width:0!important}.anchor-label-card{stroke:color-mix(in srgb,var(--text-primary) 35%,var(--border))}.anchor-label-text{fill:var(--text-primary);font:700 9.5px var(--mono);stroke-width:0!important}.grond-laag{opacity:.6}.laag-grens{stroke:var(--dim-color, var(--axis));stroke-width:1;stroke-dasharray:3 4;opacity:.85}.wand-lijn{stroke:var(--beam-color, var(--text-secondary));stroke-width:3.5;stroke-linecap:butt}.wand-vervormd{fill:none;stroke-width:1.4;stroke-dasharray:5 4;opacity:.85;pointer-events:none}.t-peil,.hover-peil{fill:var(--text-muted);font:500 9.5px var(--mono)}.hover-waarde{font:500 10px var(--mono);paint-order:stroke;stroke:color-mix(in srgb,var(--surface-1) 85%,transparent);stroke-width:3px;stroke-linejoin:round}.hover-eenheid{fill:var(--text-muted);font:450 9px var(--mono)}.wand-overlay-vlak{opacity:.12}.wand-overlay-lijn{fill:none;stroke-width:1.4}.wand-overlay-label{font:500 9.5px var(--mono)}.teen-handle{cursor:ns-resize}.teen-dot{fill:var(--surface-1);stroke:var(--beam-color, var(--text-secondary));stroke-width:1.4}.teen-handle:hover .teen-dot{stroke:var(--accent)}.niveau-groep{cursor:ns-resize}.niveau-lijn{stroke:var(--text-secondary);stroke-width:1}.niveau-pill{fill:var(--surface-1);stroke:var(--axis)}.laag-naam{fill:var(--text-secondary);font:500 10px var(--body-font);paint-order:stroke;stroke:color-mix(in srgb,var(--surface-1) 78%,transparent);stroke-width:3px;stroke-linejoin:round}.laag-naam-meta{fill:var(--text-muted);font:450 9.5px var(--mono)}.peil-driehoek{fill:var(--text-secondary)}.peil-tekst{fill:var(--text-secondary);font:500 9.5px var(--mono)}.steun-annotatie{fill:var(--text-secondary);font:500 9.5px var(--mono);paint-order:stroke;stroke:color-mix(in srgb,var(--surface-1) 82%,transparent);stroke-width:3px;stroke-linejoin:round}.q-annotatie{fill:var(--udl);font:500 10px var(--mono)}.t-niveau{fill:var(--text-secondary);font:700 9.5px var(--mono);text-anchor:middle}.niveau-groep:hover .niveau-lijn{stroke:var(--accent)}.water-groep{cursor:ns-resize}.water-lijn{stroke:#1766b1;stroke-width:1;stroke-dasharray:6 4;opacity:.9}.water-driehoek{fill:none;stroke:#1766b1;stroke-width:1}.water-groep:hover .water-lijn{stroke-width:1.8}.anker-groep{cursor:ns-resize}.anker-lijn{stroke:var(--text-primary);stroke-width:1.4}.anker-blok{fill:var(--text-primary)}.anker-kop{fill:var(--surface-1);stroke:var(--text-primary);stroke-width:1.2}.anker-groep:hover .anker-lijn{stroke:var(--accent)}.druk-vlak{fill:var(--druk);opacity:.16;stroke:var(--druk);stroke-width:1;pointer-events:none}.druk-envelop{fill:none;stroke:var(--text-muted);stroke-width:1;stroke-dasharray:4 4;pointer-events:none}.depth-charts{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.depth-card{margin:0}.depthchart{width:100%;height:auto}.vergroot-knop{margin-left:6px;font-size:13px;line-height:1}.chart-head .vergroot-knop{opacity:.45}.chart-card:hover .vergroot-knop,.vergroot-knop:focus-visible{opacity:1}.depth-card--groot,.chart-card--groot{border:0;box-shadow:none;padding:0;margin:0}.chart-card--groot .chart{width:100%;height:min(70vh,620px)}.depth-card--groot .depthchart{width:100%;height:min(74vh,760px)}.depth-ref{stroke:var(--text-muted);stroke-width:1;stroke-dasharray:2 5;opacity:.8}@media (max-width: 1500px){.depth-charts{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 900px){.depth-charts{grid-template-columns:1fr}}.motor-select{flex:1;min-width:0}.motor-instelling{flex:1;min-width:0;font-family:var(--mono);font-size:11.5px}.chat-berichten{display:flex;flex-direction:column;gap:6px;height:280px;min-height:120px;max-height:70vh;resize:vertical;overflow-y:auto;background:var(--surface-2);border:1px solid var(--border);border-radius:12px;padding:8px;margin:6px 0}.assistent-paneel--groot .chat-berichten{height:auto;flex:1 1 auto;min-height:220px;max-height:none}.assistent-paneel--groot{display:flex;flex-direction:column;min-height:0;height:100%}.chat-bericht{max-width:92%;padding:6px 9px;border-radius:10px;font-size:12px;line-height:1.45;white-space:pre-wrap;word-break:break-word}.chat-user{align-self:flex-end;background:var(--accent-soft);color:var(--text-primary)}.chat-assistant{align-self:flex-start;background:var(--surface-1);border:1px solid var(--border);color:var(--text-secondary)}.chat-bezig{color:var(--text-muted)}.chat-invoer{align-items:flex-end}.assistant-tabbalk{gap:4px;margin-bottom:2px}.import-tab{display:flex;flex-direction:column;gap:6px}.import-upload{cursor:pointer}.import-data{display:flex;flex-direction:column;gap:6px}.import-context-pre{margin:4px 0 0;padding:8px;border:1px solid var(--border);border-radius:8px;background:var(--surface-2);font-size:10.5px;line-height:1.5;white-space:pre-wrap;word-break:break-word}.import-context summary{cursor:pointer}.chat-tekst{flex:1;min-width:0;resize:vertical;border:1px solid var(--axis);border-radius:10px;background:var(--surface-1);color:var(--text-primary);font:500 12px var(--body-font);padding:6px 8px}.chat-tekst:focus{outline:none;border-color:var(--accent)}.voorstel-kaart{border:1.5px solid var(--accent);border-radius:12px;padding:8px 10px;margin:6px 0;background:var(--surface-1)}.voorstel-titel{font:700 12px var(--display)}.voorstel-tabel{width:100%;border-collapse:collapse;margin:6px 0}.voorstel-tabel td{font-size:11.5px;padding:2px 4px;vertical-align:top}.voorstel-tabel td:first-child{color:var(--text-muted);font-weight:600;white-space:nowrap}.voorstel-van{color:var(--text-muted);text-decoration:line-through}.voorstel-naar{color:var(--text-primary);font-weight:600}.voorstel-acties{justify-content:flex-end}.motor-status{margin:-2px 0 6px}.motor-status--fout{color:var(--accent-deep)}.paneel-kop{font:700 11px var(--body-font);text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin:14px 0 6px}.controle-samenvatting{border-radius:10px;padding:8px 10px;font:700 12px var(--body-font);margin-bottom:10px;border-left:4px solid var(--axis);background:var(--surface-2);color:var(--text-secondary)}.controle-samenvatting--fout{border-left-color:var(--fout);background:var(--fout-zacht);color:var(--fout-tekst)}.controle-samenvatting--waarschuwing{border-left-color:var(--waarschuwing);background:var(--waarschuwing-zacht);color:var(--waarschuwing-tekst)}.controle-samenvatting--info,.controle-samenvatting--leeg{border-left-color:var(--ok);background:var(--ok-zacht);color:var(--ok-tekst)}.controle-lijst{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.controle-item{display:flex;gap:8px;align-items:flex-start;background:var(--surface-1);border:1px solid var(--border);border-left-width:4px;border-radius:10px;padding:8px 10px}.controle-item--fout{border-left-color:var(--fout)}.controle-item--waarschuwing{border-left-color:var(--waarschuwing)}.controle-item--info{border-left-color:var(--info)}.controle-badge{flex:0 0 18px;width:18px;height:18px;border-radius:50%;display:grid;place-items:center;font:700 11px var(--mono);color:#fff;background:var(--text-muted)}.controle-item--fout .controle-badge{background:var(--fout)}.controle-item--waarschuwing .controle-badge{background:var(--waarschuwing)}.controle-item--info .controle-badge{background:var(--info)}.controle-tekst{display:flex;flex-direction:column;gap:2px;min-width:0}.controle-tekst strong{font-size:12px}.controle-tekst span{font-size:11.5px;color:var(--text-secondary);line-height:1.45}.controle-actie{font-size:11px;color:var(--accent-deep);font-style:normal;font-weight:600}.corrosie-staat{background:var(--surface-2);border-radius:10px;padding:8px 10px;margin:8px 0}.corrosie-staat .row:last-child{margin-bottom:0}.toets-kaarten--compact{gap:6px}.mini-kaart{background:var(--surface-2);border-radius:9px;padding:6px 9px;display:flex;flex-direction:column;gap:1px;min-width:0;flex:1 1 92px}.mini-kaart-label{font:600 10px var(--body-font);color:var(--text-muted);white-space:nowrap}.mini-kaart-waarde{font:700 12.5px var(--mono);font-variant-numeric:tabular-nums}.mini-kaart-waarde em{font-style:normal;font-size:10px;color:var(--text-muted);font-weight:600}.criteria-balk{display:flex;flex-wrap:wrap;gap:4px;align-items:center;margin-bottom:10px}.crit-chip{font-size:10.5px;padding:3px 7px}.grens-kaart{border:1px solid var(--border);border-radius:10px;padding:8px 10px;margin-bottom:8px;background:var(--surface-1)}.grens-kaart--uit{opacity:.55}.grens-kop{margin-bottom:0;gap:8px}.grens-kop strong{flex:1 1 auto;font-size:12px;min-width:90px}.grens-uitslagen{display:flex;flex-direction:column;gap:6px;margin-top:8px}.grens-uitslag{display:grid;grid-template-columns:16px 1fr;gap:2px 6px;background:var(--surface-2);border-radius:8px;padding:6px 8px}.grens-uitslag--domein{background:#eff6ff}.grens-uitslag--nvt{background:var(--surface-2);color:var(--text-muted);font-size:11px}.grens-pijl{grid-row:1 / span 2;color:var(--text-muted);font-size:10px;padding-top:2px}.grens-waarde{font-size:11.5px}.grens-waarde strong{font-family:var(--mono);font-variant-numeric:tabular-nums}.grens-waarde small{color:var(--text-muted);font-family:var(--mono)}.grens-reden{grid-column:2;color:var(--text-muted);font-size:10.5px;line-height:1.4}.cur-stappen-tabel{font-size:11px}.cur-stappen-tabel td,.cur-stappen-tabel th{white-space:nowrap}.cur-stappen-tabel small{color:var(--text-muted);font-size:9.5px}.maatgevend-vlag{color:var(--accent-deep)!important;font-weight:700}.zijde-vlak{pointer-events:none}.zijde-vlak--links{fill:#1766b10b}.zijde-vlak--rechts{fill:#dc26260a}.zijde-balk rect{fill:none;stroke:none}.zijde-balk text{font:500 9.5px var(--body-font);letter-spacing:.12em}.zijde-balk--links rect{fill:none}.zijde-balk--links text{fill:var(--text-muted)}.zijde-balk--rechts rect{fill:none}.zijde-balk--rechts text{fill:var(--text-muted)}.water-vlak{fill:#1766b11a;pointer-events:none}.water-verhang-text{font:600 9.5px var(--mono);fill:#0369a1}.water-groep .water-label-text{font:700 10.5px var(--mono);fill:#0369a1}.q-balk{stroke:var(--udl, #d97706);stroke-width:1.5;opacity:.75}.stempel-lijn{stroke:#0d9488;stroke-width:1.8;stroke-linecap:butt}.stempel-lijn--dun{stroke-width:1;opacity:.55}.stempel-blok{fill:#0d9488}.stempel-kop{fill:#0d9488;stroke:#fff;stroke-width:1}.stempel-groep{cursor:ns-resize}.steun-label-card{fill:var(--surface-1);stroke:var(--axis);stroke-width:1}.steun-label-card--stempel{stroke:#0e7d8a80}.steun-label-card--anker{stroke:#dc262673}.steun-label-text{font:700 10.5px var(--mono);fill:var(--text-secondary)}.steun--uit{opacity:.38}.steun--uit .anker-lijn,.steun--uit .stempel-lijn{stroke-dasharray:5 4}.wandlast-groep,.koppel-groep{cursor:ns-resize}.wandlast-lijn{stroke:var(--load, #dc2626);stroke-width:1.4}.wandlast-punt{fill:var(--load, #dc2626)}.wandlast-label-card{fill:var(--surface-1);stroke:var(--load, #dc2626);stroke-width:1;opacity:.96}.wandlast-label-text{font:700 10.5px var(--mono);fill:var(--accent-deep)}.koppel-steel{stroke:var(--load, #dc2626);stroke-width:1.5;stroke-dasharray:3 3;opacity:.7}.koppel-boog{stroke:var(--load, #dc2626);stroke-width:1.4}.koppel-punt{fill:var(--load, #dc2626)}.afstand-schaal line{stroke:var(--axis);stroke-width:1}.afstand-schaal text{font:600 9.5px var(--mono);fill:var(--text-muted)}.afstand-schaal-eenheid{font-size:9px!important;font-style:italic}.zijde-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-bottom:8px}.zijde-kolom{border:1px solid var(--border);border-top-width:2px;border-radius:8px;padding:7px 8px 8px;background:var(--surface-1);display:flex;flex-direction:column;gap:5px;min-width:0;--num-w: 58px}.zijde-kolom .num-field-label{font-size:11px}.zijde-kolom--links{border-top-color:var(--v-color)}.zijde-kolom--rechts{border-top-color:var(--axis-sterk)}.zijde-kop{margin:0;font:550 11px var(--body-font);letter-spacing:.04em;display:flex;align-items:baseline;gap:5px;flex-wrap:wrap}.zijde-kolom--links .zijde-kop{color:#0369a1}.zijde-kolom--rechts .zijde-kop{color:var(--accent-deep)}.zijde-kop small{font-weight:600;font-size:9.5px;color:var(--text-muted);letter-spacing:.02em}.zijde-kolom .num-field{flex:0 0 auto}.zijde-afgeleid{margin:2px 0 0;font:600 10px var(--mono);color:var(--text-muted);line-height:1.45}.zijde-afgeleid strong{color:var(--text-secondary)}.teen-sluit{border-left:3px solid var(--axis);padding-left:8px}.teen-sluit--ok{border-left-color:#059669}.teen-sluit--nok{border-left-color:#b45309}.depthchart{cursor:crosshair}.depth-card--over{box-shadow:inset 0 0 0 2px var(--accent-deep)}.depth-over-note{margin:4px 8px 8px;font:700 10.5px var(--body-font);color:var(--accent-deep)}.grenslijn{stroke:var(--accent-deep);stroke-width:1.2;stroke-dasharray:5 4;opacity:.85}.t-grens{font:700 9px var(--mono);fill:var(--accent-deep)}.overschrijding-lijn{stroke:var(--accent-deep);stroke-width:4.5;stroke-linecap:round;opacity:.9}.drukchart-card{grid-column:auto}.druk-zijde{font:500 9.5px var(--body-font);letter-spacing:.1em}.druk-zijde--links,.druk-zijde--rechts{fill:var(--text-muted)}.wand-as{stroke:var(--text-primary);stroke-width:2.5;opacity:.8}.grens-actief{stroke:#b45309;stroke-width:1.3;stroke-dasharray:5 3;opacity:.9}.grens-passief{stroke:#059669;stroke-width:1.3;stroke-dasharray:5 3;opacity:.9}.druk-water{stroke:#1766b1;stroke-width:1;stroke-dasharray:2 3;opacity:.95}.druk-netto{stroke:#7c3aed;stroke-width:1.6}.druk-afkap line{stroke:var(--blokkade);stroke-width:1.5;stroke-dasharray:2 3}.druk-afkap text{font:700 9.5px var(--mono);fill:var(--blokkade)}.vol-benut line{stroke:var(--accent-deep);stroke-width:3}.druk-legenda{display:flex;flex-wrap:wrap;gap:4px 14px;padding:0 10px 8px;font:600 10px var(--body-font);color:var(--text-secondary)}.druk-legenda span{display:inline-flex;align-items:center;gap:5px}.druk-legenda i{width:14px;height:3px;border-radius:2px;display:inline-block}.druk-legenda .lijn-actief{background:repeating-linear-gradient(90deg,#b45309 0 5px,transparent 5px 8px)}.druk-legenda .lijn-passief{background:repeating-linear-gradient(90deg,#059669 0 5px,transparent 5px 8px)}.druk-legenda .lijn-water{background:repeating-linear-gradient(90deg,#1766b1 0 2px,transparent 2px 5px)}.druk-legenda .lijn-netto{background:#7c3aed}.druk-legenda .vol-benut-legenda{color:var(--accent-deep);font-weight:700}.depth-charts--breed{grid-template-columns:1fr;margin-top:12px}.maaiveld-einde line{stroke:var(--text-muted);stroke-width:1.5;stroke-dasharray:4 3}.maaiveld-einde text{font:600 9.5px var(--mono);fill:var(--text-muted)}.voertuig-as circle{fill:#475569}.voertuig-as line{stroke:var(--accent-deep);stroke-width:2}.voertuig-as path{fill:var(--accent-deep)}.voertuig-as text{font:700 9.5px var(--mono);fill:var(--accent-deep)}.voertuig-chassis{stroke:#475569;stroke-width:4;stroke-linecap:round}.voertuig-label{font:600 9.5px var(--body-font);fill:var(--text-muted)}.betonview{display:block;width:100%;height:auto;overflow:visible}.betondoorsnede{max-width:320px;margin:0 auto}.betonview text{font-family:var(--body-font);fill:var(--text-secondary)}.betonview text.mono{font-family:var(--mono)}.betonview .grijpbaar{cursor:grab;touch-action:none}.betonview .grijpbaar:active{cursor:grabbing}.beton-legenda{display:flex;gap:15px;flex-wrap:wrap;font-size:12px;color:var(--text-secondary);margin-top:9px}.beton-legenda i{display:inline-block;width:15px;height:3px;border-radius:2px;margin-right:5px;vertical-align:middle}.beton-groep{border:1px solid var(--border);border-radius:9px;padding:7px 9px 3px;margin-bottom:8px;background:var(--surface-1)}.beton-groep--actief{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent-soft)}.beton-groep .hint{margin:2px 0 6px}.kleur-veld{width:24px;height:24px;padding:0;flex:0 0 auto;border:1px solid var(--border);border-radius:6px;background:none;cursor:pointer}.kleur-veld::-webkit-color-swatch-wrapper{padding:2px}.kleur-veld::-webkit-color-swatch{border:none;border-radius:4px}.rij-weg{margin-left:auto;border:none;background:none;cursor:pointer;color:var(--text-muted);font-size:16px;line-height:1;padding:2px 7px;border-radius:6px}.rij-weg:hover{color:var(--fout-tekst);background:var(--fout-zacht)}.panel-actie{font:600 12px var(--body-font);padding:4px 10px;border-radius:999px;border:1px solid var(--border);background:var(--surface-1);color:var(--accent);cursor:pointer}.panel-actie:hover{background:var(--accent-soft);border-color:color-mix(in srgb,var(--accent) 35%,var(--border))}.mode-groep{display:flex;flex-direction:column;align-items:center;gap:1px;padding:0 5px}.mode-groep+.mode-groep{border-left:1px solid var(--border)}.mode-groep-knoppen{display:inline-flex;gap:2px}.mode-btn{display:inline-flex;align-items:center;gap:5px}.mode-btn svg{width:13px;height:13px;flex:0 0 auto}.mode-btn svg *{stroke:currentColor;stroke-width:1.4;fill:none;stroke-linecap:round;stroke-linejoin:round}.mode-btn svg circle{fill:currentColor;stroke:none}.maat-lijn{stroke:var(--axis-sterk);stroke-width:1}.maat-tick{stroke:var(--text-secondary);stroke-width:1.1}.maat-tekst{font-size:10px;fill:var(--text-secondary)}.last-q line,.last-q path{stroke:var(--udl);stroke-width:1.1;fill:none}.last-q .last-tekst{fill:var(--udl)}.last-punt path{stroke:var(--load);stroke-width:1.6;fill:none}.last-punt .last-tekst{fill:var(--load)}.last-koppel path{stroke:var(--load);stroke-width:1.4}.last-koppel .last-tekst{fill:var(--load)}.last-voertuig path{stroke:var(--load);stroke-width:1.5;fill:none}.last-voertuig .last-tekst{fill:var(--load)}.voertuig-chassislijn{stroke:var(--text-secondary);stroke-width:3;stroke-linecap:round;opacity:.55}.last-tekst{font:600 9.5px var(--mono);paint-order:stroke;stroke:var(--surface-1);stroke-width:3px}.pos-badge{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;flex:0 0 auto;border:none;border-radius:50%;font:700 10px var(--mono);color:var(--surface-1);background:var(--wapening, #334155)}.beton-legenda i.legenda-streep{background:none;height:0;border-top:2.2px dashed currentColor}.beff-dood{fill:var(--axis);opacity:.35}.toelichting{position:relative;display:inline-flex}.toelichting-knop{width:20px;height:20px;padding:0;display:inline-flex;align-items:center;justify-content:center;border:1px solid var(--border);border-radius:999px;background:var(--surface-1);color:var(--text-muted);font:600 12px var(--body-font);font-style:italic;cursor:help}.toelichting-knop:hover,.toelichting-knop:focus-visible,.toelichting-knop.open{color:var(--accent);border-color:color-mix(in srgb,var(--accent) 45%,var(--border));background:var(--accent-soft)}.toelichting-kaart{position:fixed;z-index:60;overflow:auto;padding:10px 13px 11px;border:1px solid var(--border);border-radius:10px;background:var(--surface-1);box-shadow:var(--shadow-lg, 0 10px 30px rgba(21, 18, 14, .18))}.toelichting-kaart .hint,.toelichting-kaart .env-note{margin:0;font-size:12.5px;line-height:1.55;color:var(--text)}.toelichting-kaart>*+*{margin-top:9px;padding-top:9px;border-top:1px solid var(--gridline)}.control-tab-content select,.control-tab-content input[type=text]{min-width:0;max-width:100%}.control-tab-content .row{min-width:0;flex-wrap:wrap}.control-tab-content .unit{white-space:normal;overflow-wrap:anywhere}.control-tab-content .mono{min-width:0}
