
*{box-sizing:border-box;margin:0;padding:0;}
body{background:var(--app);display:block;padding:0;min-height:100vh;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI','Inter',sans-serif;color:var(--t1);font-size:13px;line-height:1.5;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background .2s,color .2s;}
/* ═══ Standalone-ontwerp: licht ═══ */
:root{
  --app:#E7EBF3;--pg:#E7EBF3;--s:#FFFFFF;--s2:#F5F7FB;--b:#E0E4EE;--b2:#CBD2E0;
  --t1:#12151C;--t2:#374151;--t3:#6B7280;--lk:#2563EB;--rdm:12px;
  --r-card:14px;--r-inner:10px;--r-pill:999px;--pad-card:16px 18px;--gap-sec:14px;
  --side:#FFFFFF;--chip:#EEF1F7;--modal:#FFFFFF;--input:#F5F7FB;
  --card:radial-gradient(circle at top,rgba(37,99,235,.05) 0,#FFFFFF 56%,#FFFFFF 100%);
  --accent:#2563EB;--accent2:#7C3AED;--accentGrad:linear-gradient(135deg,#2563eb,#7c3aed);
  --sh1:0 1px 2px rgba(15,23,42,.05);
  --sh2:0 6px 20px rgba(15,23,42,.07),0 1px 3px rgba(15,23,42,.05);
  --sh3:0 18px 44px rgba(15,23,42,.18);
  --stripe:#FAFBFE;
  --ok:#22C55E;--ok-bg:#EAFAF0;--ok-bd:#BBE9CC;--ok-tx:#15803D;
  --warn:#EAB308;--warn-bg:#FFF8E6;--warn-bd:#F5E4A8;--warn-tx:#92700A;
  --bad:#EF4444;--bad-bg:#FDEEEE;--bad-bd:#F6C9C9;--bad-tx:#B91C1C;
  --neutral:#94A3B8;
}
/* ═══ Standalone-ontwerp: donker (diepe navy) ═══ */
body[data-theme="dark"]{
  --app:#04060F;--pg:#04060F;--s:#0F172A;--s2:#0B1020;--b:#1F2937;--b2:#2B3648;
  --t1:#F9FAFB;--t2:#CBD5E1;--t3:#9CA3AF;--lk:#3B82F6;
  --side:#0B1020;--chip:#141D33;--modal:#0B1020;--input:#0F172A;
  --card:radial-gradient(circle at top,rgba(148,163,184,.08) 0,#0F172A 56%,#0F172A 100%);
  --accent:#3B82F6;--accent2:#8B5CF6;--accentGrad:linear-gradient(135deg,#2563eb,#7c3aed);
  --sh1:0 1px 2px rgba(0,0,0,.5);
  --sh2:0 8px 26px rgba(0,0,0,.5);
  --sh3:0 18px 46px rgba(0,0,0,.62);
  --stripe:rgba(148,163,184,.03);
  --ok:#22C55E;--ok-bg:rgba(34,197,94,.12);--ok-bd:rgba(34,197,94,.3);--ok-tx:#4ADE80;
  --warn:#EAB308;--warn-bg:rgba(234,179,8,.12);--warn-bd:rgba(234,179,8,.3);--warn-tx:#FACC15;
  --bad:#EF4444;--bad-bg:rgba(239,68,68,.12);--bad-bd:rgba(239,68,68,.3);--bad-tx:#F87171;
  --neutral:#64748B;
}
#app{display:flex;flex-direction:row;overflow:hidden;width:100%;height:100vh;background:var(--app);position:relative;}
/* Zijbalk */
#sidebar{width:236px;min-width:236px;background:var(--side);border-right:1px solid var(--b);padding:16px 14px;display:flex;flex-direction:column;gap:14px;height:100vh;position:sticky;top:0;overflow-y:auto;box-sizing:border-box;}
#main{flex:1;min-width:0;display:flex;flex-direction:column;height:100vh;overflow:hidden;}
.nav-item{border-radius:999px;padding:9px 12px;display:flex;align-items:center;gap:10px;font-size:13px;cursor:pointer;border:1px solid transparent;color:var(--t3);transition:background .15s;}
.nav-item:hover{background:var(--chip);}
.nav-item.on{color:var(--t1);background:rgba(37,99,235,.08);border-color:rgba(37,99,235,.25);}
body[data-theme="dark"] .nav-item.on{background:rgba(37,99,235,.14);border-color:rgba(148,163,184,.3);}
.nav-ic{width:24px;height:24px;border-radius:999px;display:flex;align-items:center;justify-content:center;font-size:13px;background:var(--input);flex-shrink:0;}
.nav-item.on .nav-ic{background:rgba(37,99,235,.2);}
.sec-label{font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:var(--t3);margin:2px 4px 6px;}
.side-btn{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-radius:999px;border:1px solid var(--b);font-size:12px;cursor:pointer;color:var(--t3);background:transparent;width:100%;box-sizing:border-box;}
.emp-item{display:flex;align-items:center;gap:8px;padding:6px 10px;border-radius:999px;border:1px solid var(--b);font-size:12px;cursor:pointer;background:transparent;}
.emp-av{width:20px;height:20px;border-radius:999px;display:flex;align-items:center;justify-content:center;font-size:9px;color:#fff;font-weight:700;flex-shrink:0;}
.addbtn{border-radius:999px;border:none;background:var(--accentGrad);padding:9px 16px;font-size:13px;font-weight:600;color:#fff;cursor:pointer;box-shadow:0 10px 24px rgba(37,99,235,.35);}
.pill{border-radius:999px;}
.oztab{font-size:12.5px;font-weight:600;padding:6px 14px;border-radius:999px;border:1px solid var(--b);background:transparent;color:var(--t3);cursor:pointer;}
.oztab.on{color:var(--t1);border-color:rgba(37,99,235,.3);background:#e8edfb;}
body[data-theme="dark"] .oztab.on{background:rgba(31,41,55,.9);border-color:rgba(148,163,184,.4);}
.card{background:var(--card);border:1px solid var(--b);border-radius:var(--r-card);padding:var(--pad-card);box-shadow:var(--sh1);}
.card-t{font-size:13px;font-weight:700;color:var(--t1);margin-bottom:12px;}
.si{cursor:grab;transition:opacity .15s,transform .1s;}.si:hover{opacity:.7;transform:translateX(-2px);}
.dz.over{background:rgba(249,115,22,.06)!important;outline:2px dashed var(--lk)!important;outline-offset:-2px;}
.bcard:hover .cdel{opacity:1!important;}
.bcard{transition:box-shadow .12s,border-color .12s;border-radius:10px!important;}
.bcard:hover{box-shadow:var(--sh1);}
.gbar{transition:transform .1s,box-shadow .1s;cursor:default;}
.gbar:hover{transform:translateY(-1px);box-shadow:0 4px 12px rgba(20,30,60,.2);z-index:5;}
.bcard .ctools{opacity:0;transition:opacity .12s;}
.bcard:hover .ctools{opacity:1;}
.er{cursor:pointer;}.er:hover{background:var(--s2)!important;}
.wc:nth-child(even)>.dz{background:var(--stripe);}
input[type=text],input[type=password],input[type=date]{border:1px solid var(--b2);border-radius:10px;padding:7px 10px;font-size:13px;background:var(--input);color:var(--t1);font-family:inherit;outline:none;}
input:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(37,99,235,.12);}
input[type=color]{border:1px solid var(--b2);border-radius:6px;padding:2px 3px;width:34px;height:30px;cursor:pointer;background:var(--input);}
select{border:1px solid var(--b2);border-radius:10px;padding:6px 10px;font-size:13px;background:var(--input);color:var(--t1);cursor:pointer;font-family:inherit;}
button{font-family:inherit;cursor:pointer;}
.sbs{padding:13px 15px 11px;border-bottom:1px solid var(--b);break-inside:avoid;-webkit-column-break-inside:avoid;}
.sbt{font-size:11px;font-weight:700;color:var(--t3);letter-spacing:.02em;display:flex;align-items:center;justify-content:space-between;margin-bottom:11px;}
.smb{font-size:11px;padding:3px 9px;border-radius:var(--rdm);border:1px solid var(--b2);background:transparent;cursor:pointer;color:var(--t3);white-space:nowrap;}.smb:hover{background:var(--b);}
.obtn{background:none;border:1px solid var(--b);border-radius:3px;cursor:pointer;color:var(--t3);font-size:10px;padding:1px 4px;}.obtn:hover{background:var(--s2);}
.fbar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:12px 16px;background:var(--card);border:1px solid var(--b);border-radius:var(--r-card);margin-bottom:12px;position:sticky;top:0;z-index:20;box-shadow:var(--sh1);}
.fchip{display:flex;align-items:center;gap:6px;}
.fchip>span{font-size:11px;font-weight:700;color:var(--t3);letter-spacing:.02em;}
.fclr{font-size:12px;padding:5px 11px;border-radius:var(--rdm);border:1px solid var(--b2);background:transparent;color:var(--t2);}
.fclr:hover{background:var(--s2);}
@keyframes spin{to{transform:rotate(360deg);}}
.spin{display:inline-block;animation:spin .8s linear infinite;}
