:root{--bg:#f5f7f7;--panel:#fff;--border:#e5e9e8;--text:#16181d;--muted:#647572;--accent:#2e6660;--green:#1c7a54;--green-bg:#e6f4ee;--orange:#b45309;--orange-bg:#fdf3e3;--red:#b42318;--red-bg:#fceceb;--blue-bg:#e6f0ee;--purple:#6941c6;--purple-bg:#f1ecfb;--radius:12px;--shadow:0 1px 2px #1018280d, 0 1px 4px #1018280d}body.dark{--bg:#0e1514;--panel:#16211f;--border:#263533;--text:#d7dfdc;--muted:#8ba09b;--accent:#5cb3a8;--green:#34c08b;--green-bg:#123227;--orange:#e9a23b;--orange-bg:#372a12;--red:#ee6c62;--red-bg:#3a1e1b;--blue-bg:#1a2e2b;--purple:#ab8ffc;--purple-bg:#28203f;--shadow:0 1px 3px #0006}body{letter-spacing:-.01em;background:var(--bg);color:var(--text);margin:0;font-family:Inter,-apple-system,Segoe UI,sans-serif;font-size:13.5px}.btn{background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:8px;padding:8px 16px;font-family:inherit;font-size:13px;font-weight:600;transition:filter .12s,transform 50ms}.btn:hover:not(:disabled){filter:brightness(1.08)}.btn:active:not(:disabled){transform:translateY(1px)}.btn.secondary{background:var(--panel);color:var(--text);border:1px solid var(--border)}.btn.secondary:hover:not(:disabled){filter:none;background:var(--bg)}.btn.green{background:var(--green)}.btn.warn{background:var(--panel);color:var(--orange);border:1px solid var(--orange)}.btn.warn:hover:not(:disabled){filter:none;background:var(--orange-bg)}.btn:disabled{opacity:.45;cursor:not-allowed}.panel{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:18px;padding:18px 20px}.panel h2{text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:0 0 14px;font-size:13px;font-weight:700}table{border-collapse:collapse;background:var(--panel);border:1px solid var(--border);border-radius:10px;width:100%;overflow:hidden}th{text-align:left;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);border-bottom:1px solid var(--border);padding:9px 14px;font-size:10.5px}td{border-bottom:1px solid var(--border);vertical-align:middle;padding:12px 14px;font-size:13px}tr:last-child td{border-bottom:none}tr.clickable{cursor:pointer;transition:background .12s}tr.clickable:hover{background:color-mix(in srgb, var(--accent) 5%, var(--panel))}.amount{text-align:right;font-variant-numeric:tabular-nums}td.amount{font-weight:600}.skeleton{background:color-mix(in srgb, var(--muted) 22%, transparent);border-radius:6px;height:14px;animation:1.2s ease-in-out infinite skeleton-puls;display:block}@keyframes skeleton-puls{0%,to{opacity:.55}50%{opacity:1}}.chip{white-space:nowrap;border-radius:999px;align-items:center;padding:3px 10px 3px 8px;font-size:11px;font-weight:600;display:inline-flex}.chip:before{content:"";background:currentColor;border-radius:50%;width:6px;height:6px;margin-right:5px;display:inline-block}.chip.ai{background:var(--orange-bg);color:var(--orange)}.chip.klaar{background:var(--blue-bg);color:var(--accent)}.chip.geboekt{color:var(--muted);background:#eef0f3}body.dark .chip.geboekt{color:var(--muted);background:#242c3d}.chip.vraag{background:var(--red-bg);color:var(--red)}.chip.geheugen{background:var(--purple-bg);color:var(--purple)}.chip.ok{background:var(--green-bg);color:var(--green)}.chip.blokkerend{background:var(--red-bg);color:var(--red)}.chip.afwijking{background:var(--orange-bg);color:var(--orange)}.upload{border-radius:var(--radius);text-align:center;color:var(--muted);cursor:pointer;background:#fbfcfd;border:2px dashed #cdd3de;margin-bottom:20px;padding:26px;transition:border-color .15s,background .15s}.upload:hover,.upload.dragover{border-color:var(--accent);background:var(--blue-bg)}.upload b{color:var(--accent)}body.dark .upload{background:#161c28;border-color:#33504b}label{color:var(--muted);margin-bottom:3px;font-size:11.5px;font-weight:500;display:block}input,select,textarea{border:1px solid var(--border);background:var(--panel);width:100%;color:var(--text);border-radius:8px;padding:8px 10px;font-family:inherit;font-size:13px}input[type=checkbox]{width:auto;padding:0}.vink-label{color:var(--text);white-space:nowrap;cursor:pointer;flex-shrink:0;align-items:center;gap:6px;margin:0;font-size:13px;font-weight:500;display:inline-flex}input:focus,select:focus,textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 18%, transparent);outline:none}.lines th,.lines td{padding:8px 10px;font-size:12.5px}.lines td{overflow-wrap:anywhere}.actions{justify-content:flex-end;gap:10px;margin-top:6px;display:flex}.hint{color:var(--muted);margin-top:14px;font-size:12px;line-height:1.55}.fout{background:var(--red-bg);color:var(--red);border-radius:8px;margin-bottom:14px;padding:9px 12px;font-size:12.5px}.review{flex-wrap:wrap;align-items:flex-start;gap:12px;max-width:100%;display:flex}.docpane{flex:0 1 var(--docpane-breedte,50%);min-width:300px;height:calc(100vh - 52px);display:flex;position:sticky;top:26px}.review-splitter{cursor:col-resize;touch-action:none;flex:0 0 12px;justify-content:center;align-items:stretch;height:calc(100vh - 52px);display:flex;position:sticky;top:26px}.review-splitter:after{content:"";background:var(--border);border-radius:2px;width:3px}.review-splitter:hover:after,.review-splitter.actief:after{background:var(--accent)}.formpane{flex:480px;min-width:320px;max-width:100%}@media (width<=1120px){.docpane{flex:100%}.review-splitter{display:none}}.formpane .panel{max-width:100%}.grid2{grid-template-columns:1fr 1fr;gap:10px 14px;display:grid}.grid2>*{min-width:0}.docpane .panel{flex-direction:column;width:100%;min-height:0;margin-bottom:0;display:flex}.bijlage-inhoud{flex:auto;min-height:0;display:flex}.bijlage-inhoud object{border:none;flex:auto;width:100%}.xml-bron{background:var(--bg);border:1px solid var(--border);white-space:pre;border-radius:8px;flex:auto;min-height:0;padding:12px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:11.5px;line-height:1.5;overflow:auto}.tabel-scroll{overflow-x:auto}.boekingsregels-tabel{table-layout:fixed;width:100%;min-width:560px}.boekingsregels-tabel input,.boekingsregels-tabel td>div{min-width:0}.boekingsregels-tabel .chip{white-space:normal;text-align:left}.combobox-listbox{background:var(--panel);border:1px solid var(--border);overflow-anchor:none;border-radius:10px;padding:4px;overflow-y:auto;box-shadow:0 4px 16px #1018281f,0 12px 32px #1018281a}body.dark .combobox-listbox{box-shadow:0 4px 16px #00000073,0 12px 32px #00000059}.combobox-optie{cursor:pointer;white-space:nowrap;border-radius:6px;align-items:center;gap:6px;padding:0 10px;font-size:13px;display:flex}.combobox-optie>span:last-child{text-overflow:ellipsis;min-width:0;overflow:hidden}.combobox-optie.actief{background:var(--blue-bg);color:var(--accent)}.combobox-optie-code{flex-shrink:0;font-weight:700}.combobox-leeg{color:var(--muted);padding:8px 10px;font-size:12.5px}.modal-bg{z-index:60;background:#0f172a73;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal{background:var(--panel);color:var(--text);border:1px solid var(--border);border-radius:14px;width:min(480px,94vw);max-height:88vh;padding:22px;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.modal h2{margin:0 0 12px;font-size:15px}.modal .row{margin-bottom:12px}.icon-btn{border:1px solid var(--border);cursor:pointer;color:var(--muted);background:0 0;border-radius:8px;padding:5px 9px;font-size:13px;line-height:1.4;transition:background .12s,color .12s}.icon-btn:hover:not(:disabled){background:var(--red-bg);color:var(--red);border-color:var(--red-bg)}.icon-btn:disabled{opacity:.35;cursor:not-allowed}.auth-shell{background:var(--bg);justify-content:center;align-items:center;min-height:100vh;display:flex}.auth-card{width:min(380px,92vw)}.auth-card h1{margin-bottom:4px}.auth-card .sub{color:var(--muted);text-align:left;margin-bottom:18px;padding:0;font-size:12.5px}.auth-card .row{margin-bottom:14px}.secret-blok{letter-spacing:.08em;background:var(--bg);border:1px solid var(--border);word-break:break-all;border-radius:8px;margin-bottom:4px;padding:10px 12px;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:15px}.q-item{background:var(--panel);border:1px solid var(--border);border-radius:8px;margin-bottom:12px;padding:14px 18px}.q-item .meta{color:var(--muted);margin-bottom:6px;font-size:12px}.q-item .vraagtekst{background:var(--red-bg);border-radius:6px;margin:8px 0;padding:9px 12px;font-size:13px}.q-answer{gap:8px;margin-top:8px;display:flex}.q-answer input{flex:1}.cards{gap:16px;margin-bottom:20px;display:flex}.card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);flex:1;padding:14px 18px}.card .num{letter-spacing:-.03em;font-size:26px;font-weight:700}.card .lbl{color:var(--muted);margin-top:2px;font-size:12px}.bankpicker{background:var(--panel);border:1px solid var(--border);box-shadow:var(--shadow);border-radius:10px;align-items:center;gap:12px;padding:8px 14px;display:flex}.bankpicker .bp-icon{font-size:18px}.bankpicker label{text-transform:uppercase;letter-spacing:.06em;margin-bottom:1px;font-size:10px;display:block}.bankpicker select{box-shadow:none;background-color:#0000;border:none;min-width:320px;padding:0 28px 0 0;font-size:13px;font-weight:600}.bankpicker select:focus{box-shadow:none}.bankpicker .bp-saldo{color:var(--muted);border-left:1px solid var(--border);padding-left:12px;font-size:12px}.datepicker input{min-width:0}.datepicker-knop{border:1px solid var(--border);background:var(--panel);color:var(--muted);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;padding:6px 8px;display:inline-flex}.datepicker-knop:hover:not([disabled]){color:var(--accent);border-color:var(--accent)}.datepicker-popover{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);z-index:50;padding:10px}.rdp-root{--rdp-accent-color:var(--accent);--rdp-accent-background-color:color-mix(in srgb, var(--accent) 18%, transparent);--rdp-today-color:var(--accent);--rdp-day-width:34px;--rdp-day-height:34px;--rdp-day_button-width:34px;--rdp-day_button-height:34px;color:var(--text);font-size:13px}.rdp-root .rdp-selected .rdp-day_button{background:var(--accent);color:var(--panel);border:none}.rdp-root .rdp-day_button:hover:not([disabled]){background:var(--blue-bg);border-radius:8px}.rdp-root .rdp-caption_label,.rdp-root .rdp-weekday{color:var(--muted);text-transform:capitalize}.rdp-root .rdp-chevron{fill:var(--muted)}.regel-omschrijving-veld{resize:none;width:100%;min-height:0;line-height:1.35;display:block;overflow:hidden}.review.review-gestapeld{flex-direction:column}.review.review-gestapeld .formpane{flex:100%;order:1;width:100%}.review.review-gestapeld .docpane{flex:100%;order:2;width:100%;height:70vh;position:static}.review.review-gestapeld .review-splitter{display:none}.app{min-height:100vh;display:flex}.sidebar{background:linear-gradient(#14242b 0%,#0d1a19 100%);flex-shrink:0;width:232px;padding-top:22px}.logo{color:#fff;padding:0 20px 4px;font-size:16px;font-weight:700}.sub{color:#6e8683;text-align:center;padding:0 20px 22px;font-size:11px}.nav a{color:#a9bfba;cursor:pointer;border-radius:8px;justify-content:space-between;margin:2px 10px;padding:9px 12px;font-size:13px;font-weight:500;text-decoration:none;transition:background .15s,color .15s;display:flex}.nav a:hover{color:#e6efec;background:#ffffff0f}.nav a.active{color:#fff;background:#5cb3a829;box-shadow:inset 3px 0 #5cb3a8}.badge{color:#fff;background:#e2544a;border-radius:10px;padding:2px 7px;font-size:10.5px;font-weight:600}.userbox{color:#8ea0c0;border-top:1px solid #ffffff14;margin-top:26px;padding:14px 20px;font-size:12px}.userbox b{color:#fff;display:block}.userbox button.linkbtn{cursor:pointer;color:#9db2d6;background:0 0;border:none;margin-top:6px;padding:0;font-size:12px}.main{flex:1;min-width:0;padding:26px 34px}.topbar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-bottom:22px;display:flex}h1{letter-spacing:-.02em;margin:0;font-size:21px;font-weight:700}h1 a{cursor:pointer;color:var(--accent);text-decoration:none}.adm-select{align-items:center;gap:8px;display:flex}.adm-select select{width:auto;min-width:220px}*{box-sizing:border-box}#root{min-height:100vh}
