/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer utilities{.grid{display:grid}.grow{flex-grow:1}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.\!filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)!important}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}:root{--petrol:#00545e;--petrol-d:#00363d;--petrol-l:#e3eeef;--petrol-hover:#016974;--copper:#c4622d;--copper-d:#a04d1d;--copper-l:#f7e9de;--ok:#1a7f4e;--ok-l:#e5f3ec;--warn:#b45309;--warn-l:#fdf0e3;--err:#b3261e;--err-l:#fbeae9;--err-d:#8f1e17;--bg:#f4f6f7;--card:#fff;--border:#dde4e6;--border-soft:#ecf1f2;--text:#1c2b2e;--muted:#5b6f73;--r:12px;--shadow:0 1px 2px #0a282d0d, 0 4px 14px #0a282d0f;--font:-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--serif:Georgia,"Times New Roman",serif}@layer components{*{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%}body{font-family:var(--font);color:var(--text);background:var(--bg);font-size:14px;line-height:1.5}button{font-family:inherit}.hidden{display:none!important}.muted{color:var(--muted);font-size:12.5px}a{color:var(--petrol)}::selection{background:var(--petrol-l)}:focus-visible{outline:2px solid var(--petrol);outline-offset:1px;border-radius:4px}.login-overlay{z-index:200;background:linear-gradient(150deg,#00272c 0%,#00363d 40%,#00545e 100%);justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.login-card{text-align:center;background:#fff;border-radius:18px;width:410px;max-width:94vw;padding:46px 48px 38px;box-shadow:0 30px 80px #000f1280}.login-card .wordmark{font-family:var(--serif);letter-spacing:.14em;color:var(--petrol);font-size:44px;font-weight:600}.login-card .wordmark-sub{color:var(--muted);margin-top:4px;font-size:11px;line-height:1.5}.login-card .login-app{color:var(--petrol-d);margin:26px 0 6px;font-size:15px;font-weight:700}.login-card p{color:var(--muted);margin-bottom:24px;font-size:13px}.login-spin{color:var(--muted);justify-content:center;align-items:center;gap:9px;margin-top:18px;font-size:13px;display:flex}.login-foot{color:#9fb3b6;border-top:1px solid var(--border-soft);margin-top:28px;padding-top:16px;font-size:11px}.spinner{border:2px solid #00545e33;border-top-color:var(--petrol);border-radius:50%;flex:none;width:16px;height:16px;animation:.7s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.app{min-height:100vh}.sidebar{background:var(--petrol-d);color:#dcebec;z-index:40;flex-direction:column;width:240px;display:flex;position:fixed;top:0;bottom:0;left:0}.brand{border-bottom:1px solid #ffffff17;padding:22px 20px 18px}.brand .wordmark{font-family:var(--serif);letter-spacing:.13em;color:#fff;font-size:27px}.brand .brand-sub{color:#9fc0c3;letter-spacing:.02em;margin-top:6px;font-size:9.5px;line-height:1.5}.nav{flex:1;padding:14px 10px;overflow-y:auto}.nav a{color:#cfe2e4;border-left:3px solid #0000;border-radius:9px;align-items:center;gap:11px;margin-bottom:2px;padding:9px 12px;font-size:13.5px;font-weight:500;text-decoration:none;transition:background .12s;display:flex}.nav a:hover{color:#fff;background:#ffffff12}.nav a.active{background:var(--petrol);color:#fff;border-left-color:var(--copper);font-weight:600}.nav a svg{opacity:.85;flex:none}.nav a.active svg{opacity:1}.side-foot{color:#8fb4b8;border-top:1px solid #ffffff17;padding:14px 20px;font-size:11px;line-height:1.6}.main{flex-direction:column;min-height:100vh;margin-left:240px;display:flex}@media (width<=920px){.sidebar{width:64px}.brand{text-align:center;padding:16px 6px}.brand .wordmark{letter-spacing:.06em;font-size:14px}.brand .brand-sub,.nav a .lbl{display:none}.nav a{border-left-width:0;border-radius:10px;justify-content:center;padding:10px 8px}.side-foot{display:none}.main{margin-left:64px}}.topbar{-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-bottom:1px solid var(--border);z-index:30;background:#fffffff0;align-items:center;gap:18px;height:64px;padding:0 26px;display:flex;position:sticky;top:0}.topbar h1{color:var(--petrol-d);white-space:nowrap;font-size:18px;font-weight:700}.topbar .grow{flex:1}.search{background:#f0f4f5;border:1px solid #0000;border-radius:10px;align-items:center;gap:8px;width:270px;max-width:34vw;padding:7px 12px;transition:border-color .12s,background .12s;display:flex}.search:focus-within{border-color:var(--petrol);background:#fff}.search svg{color:var(--muted);flex:none}.search input{font:inherit;width:100%;color:var(--text);background:0 0;border:none;outline:none;font-size:13.5px}.usermenu{position:relative}.user-btn{cursor:pointer;text-align:left;background:0 0;border:1px solid #0000;border-radius:10px;align-items:center;gap:10px;padding:6px 10px;display:flex}.user-btn:hover{background:#f0f4f5}.avatar{background:var(--petrol);color:#fff;border-radius:50%;flex:none;justify-content:center;align-items:center;width:32px;height:32px;font-size:13px;font-weight:700;display:flex}.user-name{color:var(--text);font-size:13px;font-weight:650;line-height:1.2}.user-role{color:var(--muted);font-size:11px}.user-dd{border:1px solid var(--border);z-index:50;background:#fff;border-radius:12px;min-width:200px;padding:6px;display:none;position:absolute;top:calc(100% + 6px);right:0;box-shadow:0 12px 32px #00191e24}.user-dd.open{display:block}.user-dd button{text-align:left;cursor:pointer;width:100%;color:var(--text);background:0 0;border:none;border-radius:8px;padding:9px 12px;font-size:13.5px;display:block}.user-dd button:hover{background:var(--petrol-l)}.user-dd .dd-sep{background:var(--border-soft);height:1px;margin:5px 4px}.content{flex:1;width:100%;max-width:1380px;margin:0 auto;padding:26px}.card{background:var(--card);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:14px;padding:20px 22px}.card h2{color:var(--petrol-d);letter-spacing:.01em;margin-bottom:14px;font-size:14px;font-weight:700}.card.pad0{padding:0;overflow:hidden}.card.pad0 h2{padding:18px 22px 0}.mt{margin-top:16px}.view-head{flex-wrap:wrap;align-items:center;gap:14px;margin-bottom:18px;display:flex}.view-head .grow{flex:1}.view-sub{color:var(--muted);font-size:13px}.btn{cursor:pointer;color:var(--text);white-space:nowrap;background:#fff;border:1px solid #0000;border-radius:10px;align-items:center;gap:8px;padding:9px 16px;font-size:13.5px;font-weight:600;transition:background .12s,border-color .12s;display:inline-flex}.btn-primary{background:var(--petrol);color:#fff}.btn-primary:hover{background:var(--petrol-hover)}.btn-copper{background:var(--copper);color:#fff}.btn-copper:hover{background:var(--copper-d)}.btn-danger{background:var(--err);color:#fff}.btn-danger:hover{background:var(--err-d)}.btn-ghost{border-color:var(--border);color:var(--petrol);background:#fff}.btn-ghost:hover{background:var(--petrol-l);border-color:#c8d8da}.btn-sm{border-radius:8px;padding:5px 11px;font-size:12.5px}.btn-lg{justify-content:center;width:100%;padding:12px 20px;font-size:14.5px}.btn:disabled{opacity:.55;cursor:default}.btn .kbd{border:1px solid var(--border);color:var(--muted);background:#00545e14;border-radius:5px;padding:1px 5px;font-size:10.5px;font-weight:600}.badge{white-space:nowrap;border-radius:999px;align-items:center;gap:5px;padding:3px 9px;font-size:11.5px;font-weight:700;line-height:1.5;display:inline-flex}.b-ok{background:var(--ok-l);color:var(--ok)}.b-warn{background:var(--warn-l);color:var(--warn)}.b-err{background:var(--err-l);color:var(--err)}.b-info{background:var(--petrol-l);color:var(--petrol)}.b-neutral{color:var(--muted);background:#eef1f2}.b-copper{background:var(--copper-l);color:var(--copper-d)}.chip{letter-spacing:.03em;border-radius:6px;align-items:center;padding:2px 8px;font-size:10.5px;font-weight:700;display:inline-flex}.c-zzp{background:var(--petrol-l);color:var(--petrol)}.c-coop{background:var(--copper-l);color:var(--copper-d)}.c-loon{color:var(--muted);background:#eef1f2}.sync-chip{color:var(--muted);white-space:nowrap;background:#f0f4f5;border-radius:999px;align-items:center;gap:4px;padding:2px 8px;font-size:11px;display:inline-flex}.tbl-wrap{overflow-x:auto}.tbl{border-collapse:collapse;width:100%;font-size:13.5px}.tbl th{text-align:left;letter-spacing:.07em;text-transform:uppercase;color:var(--muted);border-bottom:1px solid var(--border);white-space:nowrap;background:#fbfcfc;padding:11px 14px;font-size:10.5px;font-weight:700}.tbl td{border-bottom:1px solid var(--border-soft);vertical-align:middle;padding:10px 14px}.tbl tbody tr:last-child td{border-bottom:none}.tbl tbody tr.rowlink{cursor:pointer}.tbl tbody tr.rowlink:hover{background:#f2f7f7}.tbl .num{text-align:right;font-variant-numeric:tabular-nums}.tbl .b{font-weight:650}.tbl tr.err-detail td{background:var(--err-l);color:#7a1d17;padding-top:8px;padding-bottom:8px;font-size:12.5px}.tbl tr.sync-detail td{color:#38565a;background:#f7fafa;padding-top:8px;padding-bottom:8px;font-size:12.5px}.empty-row td{text-align:center;color:var(--muted);padding:26px}.kpis{grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px;margin-bottom:18px;display:grid}.kpi{border:1px solid var(--border);box-shadow:var(--shadow);background:#fff;border-radius:14px;padding:17px 20px;position:relative}.kpi .k-label{color:var(--muted);font-size:13px;font-weight:600}.kpi .k-sub.fout{color:var(--err)}.k-stip{background:var(--ok);border-radius:50%;flex:none;width:7px;height:7px}.k-sub.fout .k-stip{background:var(--err)}.kpi .k-value{color:var(--petrol-d);font-variant-numeric:tabular-nums;margin-top:7px;font-size:25px;font-weight:750;line-height:1.2}.kpi .k-sub{color:var(--muted);align-items:center;gap:6px;margin-top:4px;font-size:12.5px;display:flex}.kpi.click{cursor:pointer;transition:border-color .12s}.kpi.click:hover{border-color:var(--petrol)}.k-accent{background:var(--petrol-l);width:34px;height:34px;color:var(--petrol);border-radius:9px;justify-content:center;align-items:center;display:flex;position:absolute;top:17px;right:18px}.k-accent.copper{background:var(--copper-l);color:var(--copper)}.dash-grid{grid-template-columns:3fr 2fr;align-items:start;gap:16px;display:grid}@media (width<=1080px){.dash-grid{grid-template-columns:1fr}}.job{border-bottom:1px solid var(--border-soft);padding:12px 0}.job:last-child{border-bottom:none}.job-head{justify-content:space-between;gap:12px;margin-bottom:8px;font-size:13.5px;display:flex}.job-head .job-name{font-weight:600}.job-head .job-cnt{color:var(--muted);font-variant-numeric:tabular-nums;white-space:nowrap}.progress{background:#e8eeef;border-radius:999px;height:8px;overflow:hidden}.progress-fill{background:var(--petrol);border-radius:999px;height:100%;transition:width .5s}.progress-fill.done{background:var(--ok)}.log-row{border-bottom:1px solid var(--border-soft);align-items:center;gap:10px;padding:8px 0;font-size:13px;display:flex}.log-row:last-child{border-bottom:none}.log-time{font-variant-numeric:tabular-nums;color:var(--muted);flex:none;width:42px;font-size:12px}.log-row .grow{flex:1}.fout-item{border-left:4px solid var(--err);background:var(--err-l);border-radius:8px;padding:12px 14px;font-size:13px}.fout-item .f-title{color:var(--err);font-weight:700}.fout-item .f-msg{color:#7a1d17;margin:4px 0 10px}.toolbar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:16px;display:flex}.toolbar .grow{flex:1}.tl-groep{white-space:nowrap;align-items:center;gap:8px;display:inline-flex}.toolbar .tl-label{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:12px;font-weight:700}.seg{background:#eaf0f1;border-radius:10px;gap:2px;padding:3px;display:inline-flex}.seg label{cursor:pointer;color:var(--muted);-webkit-user-select:none;user-select:none;border-radius:8px;padding:6px 13px;font-size:12.5px;font-weight:600;position:relative}.seg label:has(input:checked){color:var(--petrol);background:#fff;box-shadow:0 1px 2px #00000017}.seg input{opacity:0;pointer-events:none;position:absolute}.fchip{border:1px solid var(--border);color:var(--muted);cursor:pointer;background:#fff;border-radius:999px;padding:6px 14px;font-size:12.5px;font-weight:600}.fchip:hover{border-color:var(--petrol)}.fchip.active{background:var(--petrol);border-color:var(--petrol);color:#fff}.tabs{border-bottom:1px solid var(--border);flex-wrap:wrap;gap:4px;margin-bottom:18px;display:flex}.tab{color:var(--muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:9px 16px;font-size:13.5px;font-weight:600}.tab:hover{color:var(--petrol)}.tab.active{color:var(--petrol);border-bottom-color:var(--petrol)}.banner{background:var(--petrol-l);color:#08454d;border:1px solid #c9dcde;border-radius:12px;align-items:flex-start;gap:12px;margin-bottom:16px;padding:12px 16px;font-size:13.5px;line-height:1.55;display:flex}.banner svg{flex:none;margin-top:2px}.banner.warn{background:var(--copper-l);color:#7c3f18;border-color:#ecd2bd}.banner b{font-weight:700}.field{margin-bottom:14px}.field label{color:#3c5054;margin-bottom:5px;font-size:12.5px;font-weight:650;display:block}input[type=text],input[type=email],input[type=tel],input[type=number],input[type=date],select,textarea{border:1px solid var(--border);width:100%;font:inherit;color:var(--text);background:#fff;border-radius:9px;padding:9px 12px;font-size:13.5px}input:focus,select:focus,textarea:focus{border-color:var(--petrol);box-shadow:0 0 0 3px var(--petrol-l);outline:none}input[readonly]{color:var(--muted);background:#f7fafa}textarea{resize:vertical;min-height:120px;line-height:1.6}.form-grid{grid-template-columns:1fr 1fr;gap:0 16px;display:grid}.form-grid .span2{grid-column:span 2}.radio-row{gap:18px;padding:4px 0;display:flex}.radio-row label{cursor:pointer;align-items:center;gap:7px;font-size:13.5px;display:flex}.radio-row input{width:auto;accent-color:var(--petrol)}.check{cursor:pointer;align-items:center;gap:8px;font-size:13.5px;display:flex}.check input{width:auto;accent-color:var(--petrol)}.switch{vertical-align:middle;width:38px;height:22px;display:inline-block;position:relative}.switch input{opacity:0;width:0;height:0;position:absolute}.switch span{cursor:pointer;background:#c5d1d3;border-radius:999px;transition:all .18s;position:absolute;inset:0}.switch span:before{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:all .18s;position:absolute;top:3px;left:3px;box-shadow:0 1px 2px #00000040}.switch input:checked+span{background:var(--ok)}.switch input:checked+span:before{transform:translate(16px)}.switch input:focus-visible+span{outline:2px solid var(--petrol);outline-offset:2px}#drawerOverlay{opacity:0;pointer-events:none;z-index:55;background:#06282d52;transition:opacity .2s;position:fixed;inset:0}#drawerOverlay.open{opacity:1;pointer-events:auto}.drawer{z-index:60;background:#fff;flex-direction:column;width:600px;max-width:94vw;transition:transform .22s;display:flex;position:fixed;top:0;bottom:0;right:0;transform:translate(105%);box-shadow:-12px 0 40px #001e2333}.drawer.open{transform:none}.drawer-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:12px;padding:18px 22px;display:flex}.drawer-head h3{color:var(--petrol-d);font-size:16px}.drawer-body{flex:1;padding:20px 22px;overflow-y:auto}.drawer-body h4{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:20px 0 10px;font-size:12px}.drawer-body h4:first-child{margin-top:0}.drawer-foot{border-top:1px solid var(--border);background:#fbfcfc;flex-wrap:wrap;flex:none;justify-content:flex-end;align-items:center;gap:10px;padding:14px 22px;display:flex}.drawer-foot .grow{flex:1}.x-btn{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:8px;padding:4px 8px;font-size:20px;line-height:1}.x-btn:hover{color:var(--text);background:#f0f4f5}.dl{grid-template-columns:150px 1fr;gap:8px 12px;font-size:13.5px;display:grid}.dl dt{color:var(--muted)}.dl dd{overflow-wrap:anywhere;font-weight:550}.modal-overlay{z-index:70;background:#06282d6b;justify-content:center;align-items:flex-start;padding:4vh 16px;display:none;position:fixed;inset:0;overflow-y:auto}.modal-overlay.open{display:flex}.modal{background:#fff;border-radius:14px;width:100%;max-width:560px;animation:.16s pop;box-shadow:0 24px 60px #00191e52}.modal.lg{max-width:780px}.modal.xl{max-width:920px}@keyframes pop{0%{opacity:0;transform:translateY(8px)scale(.985)}to{opacity:1;transform:none}}.modal-head{border-bottom:1px solid var(--border);justify-content:space-between;align-items:flex-start;gap:12px;padding:18px 22px;display:flex}.modal-head h3{color:var(--petrol-d);font-size:16px}.modal-body{max-height:calc(92vh - 150px);padding:20px 22px;overflow-y:auto}.modal-foot{border-top:1px solid var(--border);background:#fbfcfc;border-radius:0 0 14px 14px;justify-content:flex-end;align-items:center;gap:10px;padding:14px 22px;display:flex}.modal-foot .grow{flex:1}.tot-row{justify-content:space-between;padding:6px 0;font-size:13.5px;display:flex}.tot-row.total{border-top:1px solid var(--border);color:var(--petrol-d);margin-top:6px;padding-top:10px;font-size:14.5px;font-weight:750}.info-block{border-radius:10px;margin-top:12px;padding:12px 14px;font-size:13px;line-height:1.6}.info-block .ib-title{text-transform:uppercase;letter-spacing:.05em;margin-bottom:4px;font-size:12px;font-weight:700}.ib-copper{background:var(--copper-l);color:#6e3a17}.ib-copper .ib-title{color:var(--copper-d)}.ib-petrol{background:var(--petrol-l);color:#08454d}.ib-petrol .ib-title{color:var(--petrol)}.file-list{font-size:12.5px;list-style:none}.file-list li{border-bottom:1px dashed var(--border-soft);font-variant-numeric:tabular-nums;align-items:center;gap:8px;padding:5px 0;display:flex}.file-list li:last-child{border-bottom:none}.file-list svg{color:var(--muted);flex:none}.pdf-stage{background:#dee6e7;max-height:66vh;padding:26px;overflow:auto}.pdf-page{color:#20292b;background:#fff;width:660px;max-width:100%;margin:0 auto;padding:44px 48px;font-size:12.5px;box-shadow:0 6px 24px #0003}.pdf-top{justify-content:space-between;align-items:flex-start;margin-bottom:34px;display:flex}.pdf-wordmark{font-family:var(--serif);letter-spacing:.13em;color:var(--petrol);font-size:30px}.pdf-wordmark-sub{color:var(--muted);max-width:200px;margin-top:2px;font-size:9px;line-height:1.5}.pdf-meta{text-align:right;color:var(--muted);font-size:11.5px;line-height:1.7}.pdf-meta b{color:var(--text)}.pdf-addr{margin-bottom:30px;line-height:1.6}.pdf-h1{color:var(--petrol-d);margin-bottom:14px;font-size:19px;font-weight:750}.pdf-table{border-collapse:collapse;width:100%;margin-bottom:16px;font-size:12px}.pdf-table th{text-align:left;border-bottom:2px solid var(--petrol);text-transform:uppercase;letter-spacing:.05em;color:var(--petrol);padding:6px 8px;font-size:10.5px}.pdf-table td{border-bottom:1px solid var(--border-soft);padding:7px 8px}.pdf-tots{width:270px;margin-left:auto;font-size:12.5px}.pdf-tots .tot-row.total{color:var(--petrol-d)}.pdf-foot{border-top:1px solid var(--border);color:var(--muted);margin-top:36px;padding-top:14px;font-size:10px;line-height:1.7}.wg-wrap{border-radius:10px;overflow-x:auto}table.wg{border-collapse:separate;border-spacing:0;width:100%;min-width:1180px;font-size:12.5px}.wg thead th{border-bottom:1px solid var(--border);text-transform:uppercase;letter-spacing:.05em;color:var(--muted);text-align:left;z-index:2;background:#fbfcfc;padding:9px 8px;font-size:10.5px;position:sticky;top:0}.wg thead th:first-child{z-index:4;left:0}.wg thead th:last-child{z-index:4;box-shadow:-1px 0 0 var(--border);right:0}.wg thead th .d-date{color:var(--petrol-d);text-transform:none;letter-spacing:0;font-size:11.5px;font-weight:650;display:block}.wg tbody th{border-bottom:1px solid var(--border-soft);border-right:1px solid var(--border);text-align:left;white-space:nowrap;z-index:3;background:#fbfcfc;min-width:170px;padding:8px 12px;font-size:12.5px;position:sticky;left:0}.wg tbody th .wnm{font-weight:650;display:block}.wg td.cell{border-bottom:1px solid var(--border-soft);border-right:1px solid var(--border-soft);vertical-align:top;background:#fff;min-width:118px;padding:5px;position:relative}.cell .ci{flex-direction:column;gap:3px;display:flex}.wg .cell select,.wg .cell input{width:100%;color:var(--text);box-shadow:none;background:#f4f8f8;border:1px solid #0000;border-radius:6px;padding:3px 7px;font-size:12px}.wg .cell select:focus,.wg .cell input:focus{border-color:var(--petrol);box-shadow:none;background:#fff;outline:none}.wg .cell input::placeholder{color:#a4b6b9}.cell input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.cell input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.cell input[type=number]{appearance:textfield}.wg td.cell:focus-within{box-shadow:inset 0 0 0 2px var(--petrol);z-index:1;border-radius:6px}.wg td.cell.saved{animation:1.25s cellFlash}.wg td.cell.saved:after{content:"opgeslagen";color:var(--ok);background:var(--ok-l);z-index:2;border:1px solid #cbe6d6;border-radius:999px;padding:0 6px;font-size:9.5px;font-weight:700;animation:1.25s forwards fadeOut;position:absolute;top:-9px;right:6px}@keyframes cellFlash{0%{background:var(--ok-l)}to{background:#fff}}@keyframes fadeOut{0%,70%{opacity:1}to{opacity:0}}.wg td.rowtot,.wg tfoot td{border-bottom:1px solid var(--border-soft);text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap;background:#fbfcfc;padding:8px 12px}.wg td.rowtot{z-index:3;box-shadow:-1px 0 0 var(--border);position:sticky;right:0}.wg td.rowtot b,.wg tfoot td b{color:var(--petrol-d)}.wg td.rowtot span,.wg tfoot td span{color:var(--muted);font-size:11.5px;display:block}.wg tfoot td{border-top:2px solid var(--border);background:#f6f9f9}.wg tfoot td:last-child{z-index:3;box-shadow:-1px 0 0 var(--border);position:sticky;right:0}.wg tfoot th{border-top:2px solid var(--border);text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);z-index:3;background:#f6f9f9;padding:8px 12px;font-size:11px;position:sticky;left:0}.wg.locked .cell select,.wg.locked .cell input{color:#93a7aa;cursor:not-allowed;background:#f1f4f4}.week-nav{border:1px solid var(--border);background:#fff;border-radius:10px;align-items:center;gap:4px;padding:3px;display:inline-flex}.week-nav button{cursor:pointer;color:var(--petrol);background:0 0;border:none;border-radius:7px;padding:5px 11px;font-size:14px}.week-nav button:hover{background:var(--petrol-l)}.week-nav .wk-label{color:var(--petrol-d);white-space:nowrap;padding:0 8px;font-size:13.5px;font-weight:700}.week-nav .wk-label small{color:var(--muted);text-align:center;font-size:11px;font-weight:500;display:block}.two-col{grid-template-columns:5fr 7fr;align-items:start;gap:16px;display:grid}@media (width<=1080px){.two-col{grid-template-columns:1fr}}.user-row{border-bottom:1px solid var(--border-soft);align-items:center;gap:12px;padding:11px 0;display:flex}.user-row:last-child{border-bottom:none}.user-row .u-info{flex:1;min-width:0}.user-row .u-naam{font-size:13.5px;font-weight:650}.user-row .u-mail{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:12px;overflow:hidden}.user-row select{flex:none;width:150px;padding:6px 10px;font-size:12.5px}.rol-chip{border:1px solid var(--border);color:var(--muted);cursor:pointer;background:#fff;border-radius:999px;margin:0 6px 8px 0;padding:6px 14px;font-size:12.5px;font-weight:600}.rol-chip.active{background:var(--petrol);border-color:var(--petrol);color:#fff}.scope-tbl{border-collapse:collapse;width:100%;font-size:13px}.scope-tbl th{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);border-bottom:1px solid var(--border);text-align:center;padding:8px 10px;font-size:10.5px}.scope-tbl th:first-child{text-align:left}.scope-tbl td{border-bottom:1px solid var(--border-soft);text-align:center;padding:7px 10px}.scope-tbl td:first-child{text-align:left;font-weight:600}.scope-tbl input{width:16px;height:16px;accent-color:var(--petrol);cursor:pointer}.save-flash{color:var(--ok);opacity:0;font-size:12px;font-weight:700;transition:opacity .25s}.save-flash.show{opacity:1}.set-grid{grid-template-columns:1fr 1fr;align-items:start;gap:16px;display:grid}@media (width<=1080px){.set-grid{grid-template-columns:1fr}}.logo-preview{border:1px dashed var(--border);text-align:center;background:#fbfcfc;border-radius:12px;padding:26px}.logo-preview .wordmark{font-family:var(--serif);letter-spacing:.14em;color:var(--petrol);font-size:34px}.logo-preview .wordmark-sub{color:var(--muted);margin-top:4px;font-size:9.5px}.mail-preview{border:1px solid var(--border);background:#fbfcfc;border-radius:12px;overflow:hidden}.mail-preview .mp-head{border-bottom:1px solid var(--border);background:#fff;padding:12px 16px;font-size:12.5px;line-height:1.7}.mail-preview .mp-head b{color:var(--petrol-d)}.mail-preview .mp-body{white-space:pre-wrap;padding:16px;font-size:13px;line-height:1.7}.mail-preview .mp-att{background:var(--petrol-l);color:var(--petrol);border-radius:8px;align-items:center;gap:7px;margin:0 16px 14px;padding:6px 12px;font-size:12px;font-weight:600;display:inline-flex}.conn-ok{background:var(--ok-l);color:var(--ok);border:1px solid #cbe6d6;border-radius:10px;align-items:center;gap:10px;margin-bottom:16px;padding:12px 16px;font-size:13.5px;font-weight:700;display:flex}.rd-top{border:1px solid var(--border);box-shadow:var(--shadow);background:#fff;border-radius:12px;flex-wrap:wrap;align-items:center;gap:10px;margin-bottom:14px;padding:10px 14px;display:flex}.rd-title{color:var(--petrol-d);align-items:center;gap:8px;font-size:14.5px;font-weight:700;display:inline-flex}.rd-wrap{grid-template-columns:238px minmax(0,1fr) 286px;align-items:stretch;gap:14px;display:grid}@media (width<=1180px){.rd-wrap{grid-template-columns:1fr}.rd-pane,.rd-stage{max-height:none}}.rd-pane{border:1px solid var(--border);box-shadow:var(--shadow);background:#fff;border-radius:12px;flex-direction:column;min-height:440px;max-height:calc(100vh - 235px);display:flex;overflow:hidden}.rd-pane-h{border-bottom:1px solid var(--border);letter-spacing:.07em;text-transform:uppercase;color:var(--muted);background:#f3f6f7;flex:none;padding:8px 12px;font-size:10.5px;font-weight:700}.rd-pane-h+.rd-pane-h,.rd-toolbox+.rd-pane-h{border-top:1px solid var(--border)}.rd-tool{cursor:pointer;border-bottom:1px solid var(--border-soft);-webkit-user-select:none;user-select:none;align-items:center;gap:9px;padding:7px 12px;font-size:12.5px;font-weight:500;display:flex}.rd-tool:hover{background:var(--petrol-l)}.rd-tool svg{color:var(--muted);flex:none}.rd-tree{flex:1;min-height:120px;padding:6px 0 10px;font-size:12.5px;overflow-y:auto}.rt-group{color:var(--petrol-d);align-items:center;gap:7px;padding:7px 12px 3px;font-size:11.5px;font-weight:700;display:flex}.rt-group svg{color:var(--petrol);flex:none}.rt-leaf{cursor:pointer;-webkit-user-select:none;user-select:none;color:var(--text);align-items:center;gap:7px;padding:3px 12px 3px 31px;display:flex}.rt-leaf:hover{background:var(--petrol-l)}.rt-leaf svg{color:var(--copper);flex:none}.rd-stage{border:1px solid var(--border);background:#dee6e7;border-radius:12px;min-height:440px;max-height:calc(100vh - 235px);padding:22px;overflow:auto}.rd-zoom{transform-origin:0 0}.rd-page{color:#20292b;background:#fff;width:700px;margin:0 auto;font-size:12.5px;box-shadow:0 6px 24px #0000002e}.rd-band-label{border-top:1px solid var(--border);border-bottom:1px solid var(--border);color:var(--muted);letter-spacing:.06em;cursor:pointer;-webkit-user-select:none;user-select:none;background:#eef3f4;align-items:center;gap:6px;padding:3px 10px;font-size:9.5px;font-weight:700;display:flex}.rd-band:first-child .rd-band-label{border-top:none}.rd-band.selband .rd-band-label{background:var(--petrol);border-color:var(--petrol);color:#fff}.rd-band-inner{background-image:radial-gradient(circle,#dbe4e6 1px,#0000 1px);background-size:14px 14px;min-height:40px;padding:12px 26px}.rd-band-leeg{color:#a4b6b9;padding:4px 0;font-size:11px;font-style:italic}.rd-el{cursor:pointer;border:1px dashed #0000;margin:1px 0;padding:2px 4px;position:relative}.rd-band-inner,.rp-band{display:flow-root}.rd-el:hover{border-color:#9fc0c3}.rd-el.sel{background:#2b79d70f;border:1px solid #2b79d7}.rd-h{z-index:2;background:#fff;border:1px solid #2b79d7;width:6px;height:6px;position:absolute}.rd-h-nw{top:-4px;left:-4px}.rd-h-ne{top:-4px;right:-4px}.rd-h-sw{bottom:-4px;left:-4px}.rd-h-se{bottom:-4px;right:-4px}.rd-tbl{border-collapse:collapse;width:100%;font-size:inherit}.rd-tbl th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--petrol);background:#f3f7f8;border:1px solid #c6d3d6;padding:4px 8px;font-size:.85em}.rd-tbl td{border:1px solid #c6d3d6;padding:5px 8px}.rd-lijn{border:none;border-top:1.5px solid;margin:6px 0}.rd-props{flex:1;padding:14px;overflow-y:auto}.rd-props .field{margin-bottom:11px}.rd-props input,.rd-props select{padding:7px 10px;font-size:12.5px}.rp-band{margin-bottom:14px}.rp-band:last-child{margin-bottom:0}#toasts{z-index:120;flex-direction:column;gap:10px;max-width:370px;display:flex;position:fixed;bottom:18px;right:18px}.toast{color:#fff;border-left:4px solid var(--ok);background:#0d3237;border-radius:11px;align-items:flex-start;gap:10px;padding:12px 16px;font-size:13.5px;line-height:1.5;animation:.22s slideIn;display:flex;box-shadow:0 10px 30px #00141859}.toast.warn{border-left-color:#e08a3c}.toast.err{border-left-color:#e5484d}.toast.out{opacity:0;transition:opacity .3s,transform .3s;transform:translate(14px)}@keyframes slideIn{0%{opacity:0;transform:translate(14px)}to{opacity:1;transform:none}}.pagina-balk{border-top:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:10px;padding:10px 14px;font-size:12.5px;display:flex}.pagina-balk .grow{flex:1}.pagina-balk label{align-items:center;gap:6px;display:inline-flex}.pagina-balk select{border-radius:8px;width:auto;padding:5px 8px;font-size:12.5px}.tbl tbody.laden{opacity:.55;transition:opacity .15s}.tbl .empty-row .spinner{vertical-align:middle;margin-right:8px}.combo{position:relative}.combo input[type=text]{padding-right:30px}.combo-wis{color:var(--muted);cursor:pointer;background:0 0;border:none;border-radius:6px;padding:2px 6px;font-size:17px;line-height:1;position:absolute;top:50%;right:6px;transform:translateY(-50%)}.combo-wis:hover{color:var(--petrol);background:var(--petrol-l)}.combo-lijst{z-index:200;border:1px solid var(--border);background:#fff;border-radius:10px;max-height:220px;margin:0;padding:4px;list-style:none;position:fixed;overflow-y:auto;box-shadow:0 12px 30px #00191e2e}.combo-optie{cursor:pointer;border-radius:7px;justify-content:space-between;align-items:baseline;gap:12px;padding:8px 10px;font-size:13.5px;display:flex}.combo-optie.actief{background:var(--petrol-l);color:var(--petrol-d)}.combo-sub{color:var(--muted);white-space:nowrap;font-size:12px}.combo-melding{color:var(--muted);padding:8px 10px;font-size:12.5px}.wg-popup{z-index:95;max-height:260px;position:fixed}.wg .cell input[type=text]{text-overflow:ellipsis}.wg tbody tr.inactief th .wnm{color:var(--muted)}.wg tbody tr.inactief th .muted{font-size:11px}.note{margin-top:12px}.mt-sm{margin-top:8px}.cel-sub{color:var(--muted);white-space:nowrap;font-size:11.5px;font-weight:400;display:block}.zoekveld{align-items:center;width:300px;max-width:100%;display:inline-flex;position:relative}.zoekveld.laden input{padding-right:36px}.zoekveld .spinner{pointer-events:none;position:absolute;right:11px}.filter-select{width:130px}.filter-select.middel{width:190px}.filter-select.breed{width:220px}.k-value-sub{color:var(--muted);font-size:15px;font-weight:600}.k-value-sub.klein{font-size:12px}.kpis.drie{grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.job-head .job-cnt.ok{color:var(--ok);font-weight:700}.job-head .job-cnt.err{color:var(--err);font-weight:700}.fout-lijst{flex-direction:column;gap:10px;display:flex}.card-acties{margin-top:12px}.modal-tekst{margin-bottom:14px;font-size:13.5px}.laad-melding{margin-top:20px}.drawer-acties{flex-wrap:wrap;gap:10px;margin-top:22px;display:flex}.badge-lijst .badge{margin:0 6px 6px 0}.field-switch{padding-top:8px}.tbl.compact{font-size:12.5px}.tbl.mb-sm{margin-bottom:8px}.tbl input.compact{padding:6px 10px;font-size:13px}.tbl th.num{text-align:right}.totalen-blok{max-width:340px;margin-left:auto}.verlegd-noot{margin-top:6px;font-style:italic}.sectie-kop{text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:18px 0 8px;font-size:12px}.pdf-melding{text-align:center;padding:40px}.tbl td.knop-cel{white-space:nowrap;text-align:right;width:1%;padding-left:4px;padding-right:8px}.rij-knoppen{vertical-align:middle;gap:6px;display:inline-flex}.rij-knop{border:1px solid var(--border);width:30px;height:30px;color:var(--petrol);cursor:pointer;background:#fff;border-radius:8px;justify-content:center;align-items:center;display:inline-flex}.rij-knop:hover{background:var(--petrol-l);border-color:#c8d8da}.rij-knop:disabled{cursor:default;opacity:.7}.link-knop{font:inherit;color:var(--petrol);cursor:pointer;background:0 0;border:none;padding:0;font-weight:700;text-decoration:underline}.card-titel-rij{align-items:center;gap:10px;display:flex}.card-titel-rij .grow{flex:1}.avatar.klein{width:34px;height:34px;font-size:12px}.rol-chips{margin-bottom:14px}.form-grid.uitlijn-onder{align-items:end}.field.rechts{text-align:right;padding-bottom:10px}.muted.normaal{font-weight:400}.zoom-select{width:84px}.detail-lijst{margin:2px 0 2px 16px}.detail-lijst li{padding:2px 0}.fout-regel{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.deel-nr{padding-left:18px;display:inline-block;position:relative}.deel-nr:before{content:"";border-left:1px solid var(--muted);border-bottom:1px solid var(--muted);border-radius:0 0 0 3px;width:7px;height:9px;position:absolute;top:1px;left:4px}.chev{vertical-align:middle;transition:transform .12s}.chev.open{transform:rotate(90deg)}.toggle-cel{width:26px;color:var(--muted)}.spinner.licht{border-color:#fff #ffffff59 #ffffff59}.btn[aria-busy=true]:disabled{opacity:.85}.btn-sm .spinner{width:13px;height:13px}.x-btn:disabled{opacity:.35;cursor:default;background:0 0}.login-spin.licht{color:#cfe2e4;font-size:14px}.info-block.ib-mt{margin-top:16px}.info-block.ib-mt-sm,.info-block .file-list{margin-top:6px}.btn svg{flex:none}.week-nav button svg{display:block}.log-row .richting{color:var(--muted);font-size:12px}.tbl td.nowrap{white-space:nowrap}.tbl td.tabulair{font-variant-numeric:tabular-nums}.tbl td.acties-cel{text-align:right;white-space:nowrap}.tbl th.smal{width:130px}.kpi .k-value.middel{font-size:20px}.kpi .k-value.klein{font-size:18px}.wg thead th.totaal-kop{text-align:right}.wg thead th .wg-kop{font:inherit;color:inherit;text-transform:inherit;letter-spacing:inherit;text-align:left;cursor:pointer;background:0 0;border:none;margin:0;padding:0}.wg thead th .wg-kop:hover,.wg thead th .wg-kop.actief{color:var(--petrol)}.wg thead th .wg-kop.actief{text-underline-offset:3px;text-decoration:underline}.tbl th.gb-kolom{width:48%}.wt-toevoegen{grid-template-columns:minmax(0,1fr) 120px auto;align-items:center;gap:8px;display:grid}.keuze-lijst{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px 18px;max-height:240px;margin-top:8px;font-size:13.5px;display:grid;overflow-y:auto}.keuze-lijst label{cursor:pointer;align-items:center;gap:8px;display:flex}.file-list li.accent{color:var(--petrol);font-weight:700}.pdf-table th.rechts,.pdf-table td.rechts{text-align:right}.pdf-betaal{margin-top:14px;font-size:11.5px;line-height:1.7}.conn-ok.niet{background:var(--warn-l);color:var(--warn);border-color:#f0d9bd}.wg tbody tr.extra th .wnm{color:var(--muted);padding-left:14px;font-size:12px;font-weight:400}.wg tbody tr.extra td.cell{background:#fbfcfc}.wg-rij-knop{border:1px solid var(--border);color:var(--petrol);cursor:pointer;vertical-align:middle;background:#fff;border-radius:6px;width:20px;height:20px;margin-left:6px;padding:0;font-size:14px;line-height:1}.wg-rij-knop:hover{background:var(--petrol-l)}.wg.locked .wg-rij-knop{display:none}.logo-afbeelding{max-width:100%;max-height:120px;margin:0 auto;display:block}.logo-acties{flex-wrap:wrap;gap:8px;margin-top:10px;display:flex}.verborgen-invoer{display:none}.grek-rij{align-items:center;gap:8px;display:flex}.grek-rij input{flex:1}.audit-details{white-space:pre-line;color:var(--muted);font-size:12.5px}.tbl input.bedrag-invoer{text-align:right;width:120px}.filter-select.klein{width:150px}.card-toolbar{flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:12px;padding:0 18px;display:flex}.card-toolbar .grow{flex:1}.topbar .badge{flex:none}.x-btn.verwijder{color:var(--err)}.x-btn.verwijder:hover{background:var(--err-l);color:var(--err-d)}.wg-rij-knop.verwijder{color:var(--err);border-color:#efc4c1}.wg-rij-knop.verwijder:hover{background:var(--err-l)}.modal-overlay.bovenop{z-index:80}}.pdf-stage-frame{max-height:none;padding:0}.pdf-frame{background:#525659;border:0;width:100%;height:min(72vh,1000px);display:block}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}
