:root{--navy:#0c2038;--navy2:#143557;--ink:#18283b;--muted:#6a788a;--line:#d9e1e8;--paper:#f3f6f8;--blue:#146c9e;--blue-soft:#e8f3f8;--orange:#e76b2d;--orange-soft:#fff2e9;--green:#17745b;--green-soft:#e5f5ee;--red:#a33c36;--shadow:0 16px 44px rgba(13,32,56,.10);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper)}*{box-sizing:border-box}body{margin:0;min-height:100vh;background:linear-gradient(180deg,#e9f1f6 0,#f7f9fa 360px);font-size:14px}button,input,select{font:inherit}button{cursor:pointer}.topbar{height:70px;background:var(--navy);color:white;display:flex;align-items:center;gap:34px;padding:0 clamp(18px,4vw,58px);position:sticky;top:0;z-index:30;box-shadow:0 6px 24px rgba(8,23,40,.24)}.brand{display:flex;align-items:center;gap:11px;color:white;text-decoration:none;font-weight:850;white-space:nowrap}.brand>span:last-child{display:grid}.brand small{color:#9fb4c8;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.09em}.mark{display:grid!important;place-items:center;width:36px;height:36px;border:2px solid white;border-radius:10px;color:var(--orange);font-size:18px}.topbar nav{display:flex;gap:4px;height:100%;align-items:center}.nav{border:0;background:transparent;color:#aebfd0;padding:11px 14px;border-radius:9px;font-weight:780}.nav:hover,.nav.active{color:white;background:rgba(255,255,255,.1)}.status{margin-left:auto;display:flex;align-items:center;gap:8px;color:#b8c9d9;font-size:12px}.status i{width:8px;height:8px;border-radius:50%;background:#52d3a5;box-shadow:0 0 0 4px rgba(82,211,165,.13)}main{max-width:1580px;margin:auto;padding:30px clamp(15px,3.4vw,54px) 60px}.view{display:none}.view.active{display:block}.headline{display:flex;align-items:flex-start;justify-content:space-between;gap:28px;margin-bottom:22px}.headline small,#dialogContent>small{text-transform:uppercase;letter-spacing:.14em;color:var(--blue);font-weight:850;font-size:11px}.headline h1{font-size:clamp(28px,3.1vw,43px);letter-spacing:-.05em;line-height:1.02;margin:7px 0 8px}.headline p{margin:0;color:var(--muted);max-width:760px;line-height:1.55}.dataset-pill{background:white;border:1px solid var(--line);border-radius:14px;padding:13px 17px;display:grid;min-width:210px;box-shadow:0 8px 24px rgba(13,32,56,.07)}.dataset-pill strong{font-size:24px;letter-spacing:-.04em}.dataset-pill span{font-size:12px;font-weight:750}.dataset-pill small{color:var(--muted);margin-top:5px}.workflow{display:grid;grid-template-columns:minmax(300px,.86fr) minmax(390px,1.13fr) minmax(345px,.92fr);gap:17px;align-items:start}.card{background:white;border:1px solid #dae3ea;border-radius:17px;box-shadow:var(--shadow);overflow:hidden}.card>header{min-height:64px;border-bottom:1px solid var(--line);display:flex;align-items:center;gap:11px;padding:14px 18px}.card>header>b{display:grid;place-items:center;width:28px;height:28px;border-radius:9px;background:var(--blue-soft);color:var(--blue);font-size:13px}.card h2{font-size:16px;margin:0}.card header p{margin:3px 0 0;color:var(--muted);font-size:11px}.card>header>span{margin-left:auto;color:var(--muted);font-size:11px}.body{padding:17px 18px}label{display:grid;gap:6px;color:#526175;font-weight:740;font-size:12px;margin-bottom:13px;position:relative}input,select{width:100%;border:1px solid #cad6e0;border-radius:9px;background:white;color:var(--ink);padding:10px 11px;outline:none;min-height:40px}input:focus,select:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(20,108,158,.12)}.cols{display:grid;grid-template-columns:1fr 1fr;gap:10px}.section-label{font-size:11px;color:var(--blue);font-weight:850;letter-spacing:.08em;text-transform:uppercase;padding:7px 0 10px;border-top:1px solid var(--line);margin-top:2px}.suffix{position:absolute;right:12px;bottom:12px;color:var(--muted);font-size:11px}.module-filter{display:flex;gap:6px;padding:12px 16px;border-bottom:1px solid var(--line);background:#fbfcfd}.chip,.secondary{border:1px solid var(--line);background:white;color:#5d6b7d;border-radius:99px;padding:7px 10px;font-weight:750;font-size:11px}.chip.active,.chip:hover{border-color:#8dbbd2;background:var(--blue-soft);color:var(--blue)}.module-list{padding:8px;max-height:680px;overflow:auto}.module{display:grid;grid-template-columns:20px minmax(0,1fr) 48px 76px;align-items:center;gap:9px;padding:11px 10px;margin:5px 0;border:1px solid var(--line);border-radius:11px;background:white;cursor:pointer}.module:hover{border-color:#94b9ce}.module.on{background:#f0f8fb;border-color:#83b8d3}.module input{width:17px;height:17px;min-height:0;accent-color:var(--blue)}.module-main{min-width:0}.module-main strong{display:block;font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.module-main small{display:block;color:var(--muted);font-size:10px;margin-top:3px}.coverage{justify-self:end;background:#eef2f5;color:#5f7082;border-radius:99px;padding:4px 6px;font-size:10px;font-weight:800}.module-price{text-align:right;font-size:12px;font-weight:800}.result-card{position:sticky;top:87px}.price-hero{background:linear-gradient(135deg,var(--navy),var(--navy2));padding:20px;color:white;display:flex;justify-content:space-between;align-items:flex-start;gap:10px}.price-hero small{color:#b9c9d8;text-transform:uppercase;font-size:10px;letter-spacing:.09em;font-weight:800}.price-hero strong{display:block;font-size:39px;letter-spacing:-.055em;margin:4px 0}.price-hero span:not(.confidence){color:#c1cfda;font-size:12px}.confidence{border-radius:99px;padding:6px 8px;text-transform:uppercase;font-size:9px;font-weight:900;white-space:nowrap}.confidence.hoog{background:#dff6ec;color:#12634e}.confidence.redelijk{background:#fff0d7;color:#805600}.confidence.beperkt{background:#ffe4df;color:#8e352f}.history-compare{display:flex;justify-content:space-between;align-items:center;gap:12px;background:#f7f9fb;border-bottom:1px solid var(--line);padding:11px 17px}.history-compare small{display:block;color:var(--muted);font-size:10px}.history-compare strong{font-size:12px}.history-compare>span{border-radius:99px;padding:5px 7px;background:#eef2f5;color:#647386;font-size:9px;font-weight:800;text-align:right}.history-compare>span.binnen{background:var(--green-soft);color:var(--green)}.history-compare>span.boven,.history-compare>span.onder{background:#fff0d7;color:#805600}.lines{max-height:360px;overflow:auto}.line{border:0;border-bottom:1px solid #e7ecf0;background:white;width:100%;display:grid;grid-template-columns:1fr auto;text-align:left;gap:10px;padding:11px 17px;color:var(--ink)}.line:hover{background:#f6fafc}.line strong{font-size:13px}.line small{display:block;color:var(--muted);font-size:10px;margin-top:3px}.line b{font-size:13px}.totals{margin:9px 17px 0;padding:9px 0;border-top:2px solid var(--navy)}.totals p{display:flex;justify-content:space-between;margin:6px 0;color:#59697c;font-size:12px}.totals .grand{font-size:15px;color:var(--ink);font-weight:850;padding-top:6px;border-top:1px solid var(--line)}.actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:6px 17px 17px}.actions button,.primary{border:1px solid var(--line);background:white;border-radius:9px;padding:10px 12px;font-weight:800;color:var(--ink)}.actions .primary,.primary{background:var(--orange);border-color:var(--orange);color:white}.empty{padding:24px;text-align:center;color:var(--muted);font-size:12px}.empty.compact{padding:18px}.empty.error{color:var(--red)}.metric-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px;margin-bottom:17px}.metric{background:white;border:1px solid var(--line);border-radius:14px;padding:18px;box-shadow:0 8px 28px rgba(13,32,56,.07)}.metric strong{display:block;font-size:28px;letter-spacing:-.04em}.metric span{color:var(--muted);font-size:12px}.insight-card>header{justify-content:space-between}.product-insights details{border-bottom:1px solid var(--line)}.product-insights details:last-child{border:0}.product-insights summary{list-style:none;padding:14px 18px;display:grid;grid-template-columns:minmax(220px,1fr) minmax(180px,2fr);gap:20px;align-items:center;cursor:pointer}.product-insights summary::-webkit-details-marker{display:none}.product-insights summary span{display:grid}.product-insights summary small{color:var(--muted);margin-top:3px;font-size:11px}.product-insights summary i{height:8px;background:linear-gradient(90deg,var(--blue) var(--share),#edf1f4 var(--share));border-radius:99px}.insight-modules{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:0 18px 16px}.insight-modules div{border:1px solid var(--line);border-radius:10px;padding:10px;background:#f9fbfc;display:grid;grid-template-columns:1fr auto}.insight-modules span{font-weight:750;font-size:12px}.insight-modules b{color:var(--blue);font-size:12px}.insight-modules small{grid-column:1/-1;color:var(--muted);font-size:10px;margin-top:3px}.warning-box{margin-top:16px;border-left:4px solid var(--orange);background:var(--orange-soft);border-radius:10px;padding:15px 17px;color:#75442e}.warning-box p{margin:5px 0 0;line-height:1.5}.admin-layout{display:grid;gap:17px}.settings-grid{grid-template-columns:repeat(4,1fr);display:grid;gap:12px}.table-card>header{justify-content:space-between}.search{max-width:270px}.table-wrap{overflow:auto;max-height:650px}table{width:100%;border-collapse:collapse;font-size:12px}th,td{padding:10px 13px;text-align:left;border-bottom:1px solid #e6ebef}th{position:sticky;top:0;background:#f6f8fa;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.06em;z-index:2}td strong,td small{display:block}td small{color:var(--muted);font-size:10px;margin-top:3px}td input{width:88px;padding:7px;min-height:34px}.inline{display:flex;align-items:center;gap:4px;margin:0}.inline span{color:var(--muted)}dialog{border:0;border-radius:17px;padding:0;max-width:720px;width:calc(100% - 28px);box-shadow:0 28px 80px rgba(3,15,27,.34)}dialog::backdrop{background:rgba(6,20,34,.58);backdrop-filter:blur(3px)}dialog form{padding:27px;position:relative}.dialog-close{position:absolute;right:14px;top:11px;border:0;background:transparent;font-size:26px;color:var(--muted)}#dialogContent h2{font-size:27px;margin:7px 0}#dialogContent>p{color:var(--muted);line-height:1.55}.explain-list{border:1px solid var(--line);border-radius:11px;overflow:hidden}.explain-list div{display:grid;grid-template-columns:1fr 1.4fr auto;gap:10px;padding:10px 12px;border-bottom:1px solid var(--line);align-items:center}.explain-list div:last-child{border:0}.explain-list span{color:var(--muted);font-size:11px}.formula-note{background:var(--blue-soft);padding:11px;border-radius:9px;font-size:11px}.detail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:18px 0}.detail-grid div{border:1px solid var(--line);border-radius:10px;padding:11px}.detail-grid span{display:block;color:var(--muted);font-size:10px}.detail-grid b{display:block;margin-top:4px}.quote-total{background:var(--navy);color:white;border-radius:12px;padding:17px;display:flex;justify-content:space-between;align-items:center;margin:18px 0}.quote-total strong{font-size:25px}.download{padding:10px 14px;border-radius:9px}#toast{position:fixed;right:22px;bottom:22px;background:var(--navy);color:white;padding:13px 16px;border-radius:10px;box-shadow:0 14px 35px rgba(0,0,0,.25);opacity:0;transform:translateY(16px);transition:.2s;pointer-events:none;z-index:60}#toast.show{opacity:1;transform:none}@media(max-width:1180px){.workflow{grid-template-columns:1fr 1fr}.result-card{grid-column:1/-1;position:static}.lines{max-height:none}.settings-grid,.insight-modules{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.topbar{height:auto;min-height:66px;padding:11px 15px;gap:10px;flex-wrap:wrap}.topbar nav{order:3;width:100%;height:auto;overflow:auto}.status{font-size:10px}.headline{display:block}.dataset-pill{margin-top:15px}.workflow,.metric-grid,.settings-grid{grid-template-columns:1fr}.cols{grid-template-columns:1fr}.module{grid-template-columns:20px minmax(0,1fr) 44px}.module-price{display:none}.insight-modules{grid-template-columns:1fr}.product-insights summary{grid-template-columns:1fr}.actions{grid-template-columns:1fr}.explain-list div{grid-template-columns:1fr auto}.explain-list span{grid-column:1/-1;grid-row:2}.detail-grid{grid-template-columns:1fr 1fr}}
