@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.0bjc5tiuqdqro.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.0m6w47a4e5dy9.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.11u06r12fd6v_.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.0wxq9webf.ew4.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.067x_6k0k23tk.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.16ipb6fqu393i.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.0q-301v4kxxnr.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_2fe1ab3d-module__-T-KAq__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_2fe1ab3d-module__-T-KAq__variable{--font-inter:"Inter", "Inter Fallback"}
:root{--color-bg:#f5f6f8;--color-bg-secondary:#eef0f4;--color-sidebar:#fff;--color-header:#c52829;--color-surface:#fff;--color-surface-hover:#f9fafb;--color-border:#e2e5ea;--color-border-light:#f0f1f3;--color-text:#1a1d26;--color-text-muted:#5f6577;--color-text-dim:#9098a9;--color-primary:#c52829;--color-primary-hover:#a82123;--color-primary-light:#c5282914;--status-beschikbaar:#16a34a;--status-werkt:#2563eb;--status-pauze:#d97706;--status-afwezig:#6b7280;--status-einde-dag:#7c3aed;--status-wacht:#ea580c;--prio-1:#d97706;--prio-2:#2563eb;--prio-3:#6b7280;--prio-4:#dc2626;--sla-ok:#16a34a;--sla-warning:#d97706;--sla-danger:#dc2626;--sla-overdue:#fef2f2;--sidebar-width:250px;--header-height:56px;--shadow-xs:0 1px 2px #0f172a0a;--shadow-sm:0 1px 3px #0f172a0f, 0 1px 2px #0f172a0a;--shadow-md:0 4px 6px -1px #0f172a12, 0 2px 4px -2px #0f172a0a;--shadow-lg:0 10px 15px -3px #0f172a14, 0 4px 6px -4px #0f172a0a;--shadow-focus:0 0 0 3px #c5282926;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:12px;--transition-fast:.12s cubic-bezier(.4, 0, .2, 1);--transition-base:.18s cubic-bezier(.4, 0, .2, 1);--text-xs:12px;--text-sm:13px;--text-base:14px;--text-md:15px;--text-lg:16px;--text-xl:18px;--text-2xl:22px;--text-3xl:28px;--font-regular:400;--font-medium:500;--font-semibold:600;--font-bold:700;--gradient-header:linear-gradient(180deg, #c52829 0%, #a82123 100%);--gradient-primary-btn:linear-gradient(180deg, #c82a2b 0%, #b0232a 100%);--gradient-glow-accent:radial-gradient(circle at top right, #c528290f, transparent 60%);--gradient-sidebar-active:linear-gradient(90deg, #c5282924 0%, #c528290f 100%);--glass-bg:#ffffffb8;--glass-border:#fff3;--backdrop-blur:blur(12px) saturate(180%)}[data-theme=dark]{--color-bg:#0f172a;--color-bg-secondary:#1e293b;--color-sidebar:#0f172a;--color-surface:#1e293b;--color-surface-hover:#334155;--color-border:#334155;--color-border-light:#1e293b;--color-text:#f1f5f9;--color-text-muted:#94a3b8;--color-text-dim:#64748b;--color-header:#1e293b;--color-primary:#c52829;--color-primary-hover:#d4474a;--color-primary-light:#c528292e;--status-beschikbaar:#22c55e;--status-werkt:#3b82f6;--status-pauze:#f59e0b;--shadow-xs:0 1px 2px #0000004d;--shadow-sm:0 1px 3px #00000059, 0 1px 2px #0000004d;--shadow-md:0 4px 6px -1px #0006, 0 2px 4px -2px #0000004d;--shadow-lg:0 10px 15px -3px #00000073, 0 4px 6px -4px #0000004d;--shadow-focus:0 0 0 3px #c5282940;--gradient-header:linear-gradient(180deg, #1e293b 0%, #0f172a 100%);--gradient-primary-btn:linear-gradient(180deg, #d02c2d 0%, #b8252b 100%);--gradient-glow-accent:radial-gradient(circle at top right, #c528291f, transparent 60%);--gradient-sidebar-active:linear-gradient(90deg, #c5282938 0%, #c5282914 100%);--glass-bg:#1e293bb8;--glass-border:#ffffff14}@keyframes fadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}@keyframes pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.55;transform:scale(.95)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes success-fade{0%{opacity:0;transform:scale(.8)}30%{opacity:1;transform:scale(1)}70%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.1)}}.anim-fade-in{animation:.2s ease-out fadeIn}.anim-pulse-dot{animation:2s ease-in-out infinite pulse-dot}.skeleton{background:linear-gradient(90deg, var(--color-bg-secondary) 0%, var(--color-surface-hover) 50%, var(--color-bg-secondary) 100%);border-radius:var(--radius-md);background-size:200% 100%;animation:1.5s ease-in-out infinite shimmer}.btn:active:not(:disabled){transform:scale(.98)}.glass-menu{background:var(--glass-bg);-webkit-backdrop-filter:var(--backdrop-blur);border:1px solid var(--glass-border);border-radius:var(--radius-md);box-shadow:var(--shadow-md)}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.glass-menu{background:var(--color-surface)}}.card--glow{position:relative;overflow:hidden}.card--glow:before{content:"";background:var(--gradient-glow-accent);pointer-events:none;z-index:0;position:absolute;inset:0}.card--glow>*{z-index:1;position:relative}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{max-width:100vw;height:100%;overflow-x:hidden}body{font-family:var(--font-inter), -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;color:var(--color-text);background:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:14px;line-height:1.5}a{color:var(--color-primary);transition:color var(--transition-fast);text-decoration:none}a:hover{color:var(--color-primary-hover);text-decoration:none}.app-shell{height:100vh;display:flex;overflow:hidden}.header{height:var(--header-height);background:var(--gradient-header);z-index:100;box-shadow:var(--shadow-sm);border-bottom:none;justify-content:space-between;align-items:center;padding:0 1rem;display:flex;position:fixed;top:0;left:0;right:0}.header__brand{align-items:center;gap:.75rem;display:flex}.header__logo{align-items:center;gap:.5rem;display:flex}.header__logo-img{width:auto;height:28px}.header__logo-text{color:#ffffffe6;letter-spacing:-.01em;font-size:1rem;font-weight:600}.header__center{color:#ffffffb3;font-size:.85rem;display:none;position:absolute;left:50%;transform:translate(-50%)}.header__right{align-items:center;gap:1rem;display:flex}.header__user{color:#fffc;font-size:.8rem}.header__logout{color:#fff;cursor:pointer;background:#ffffff26;border:1px solid #ffffff4d;border-radius:4px;padding:.35rem .75rem;font-size:.8rem;transition:all .15s}.header__logout:hover{background:#ffffff40;border-color:#ffffff80}.status-badge{border-radius:12px;align-items:center;gap:.4rem;padding:.25rem .65rem;font-size:.75rem;font-weight:600;line-height:1;display:inline-flex}.status-badge--beschikbaar{color:var(--status-beschikbaar);background:#16a34a1f}.status-badge--werkt{color:var(--status-werkt);background:#2563eb1f}.status-badge--pauze{color:var(--status-pauze);background:#d977061f}.status-badge--afwezig{color:var(--status-afwezig);background:#6b72801f}.status-badge--einde_dag{color:var(--status-einde-dag);background:#7c3aed1f}.status-badge--wacht_op_actie{color:var(--status-wacht);background:#ea580c1f}.header .status-badge{color:#fff;background:#fff3}.status-dot{background:currentColor;border-radius:50%;width:8px;height:8px}.header .status-dot{background:#fff}.sidebar{top:var(--header-height);width:var(--sidebar-width);background:var(--color-sidebar);border-right:1px solid var(--color-border);z-index:90;padding:.75rem 0;transition:transform .2s;position:fixed;bottom:0;left:0;overflow-y:auto}.sidebar__section{text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-dim);padding:.75rem 1rem .35rem;font-size:.65rem;font-weight:700}.sidebar__link{font-size:var(--text-sm);color:var(--color-text-muted);transition:background-color var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast);border-left:3px solid #0000;align-items:center;gap:.6rem;padding:.5rem 1rem;text-decoration:none;display:flex}.sidebar__link:hover{background:var(--color-surface-hover);color:var(--color-text);text-decoration:none}.sidebar__link--active{background:var(--gradient-sidebar-active);color:var(--color-primary);border-left-color:var(--color-primary);font-weight:var(--font-medium)}.sidebar__link:focus-visible{box-shadow:var(--shadow-focus);outline:none}.sidebar__icon{color:currentColor;flex-shrink:0;justify-content:center;align-items:center;width:20px;height:20px;display:inline-flex}.main-content{margin-left:var(--sidebar-width);margin-top:var(--header-height);min-height:calc(100vh - var(--header-height));background:var(--color-bg);flex:1;padding:1.5rem;overflow-y:auto}.hamburger{color:#fff;cursor:pointer;background:0 0;border:none;padding:.25rem;font-size:1.4rem;display:none}@media (max-width:768px){.sidebar{transform:translate(-100%)}.sidebar--open{transform:translate(0)}.main-content{margin-left:0}.hamburger{display:block}.header__center,.header__user{display:none}}@media (min-width:769px){.header__center{display:block}}.sidebar-overlay{inset:0;top:var(--header-height);z-index:89;background:#0000004d;display:none;position:fixed}.sidebar-overlay--visible{display:block}.card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:1.25rem}.card--interactive,.card--hover{cursor:pointer;transition:box-shadow var(--transition-base), transform var(--transition-base), border-color var(--transition-base)}.card--interactive:hover,.card--hover:hover{box-shadow:var(--shadow-md);border-color:var(--color-border);transform:translateY(-1px)}.page-title{font-size:var(--text-3xl);font-weight:var(--font-semibold);color:var(--color-text);letter-spacing:-.01em;margin-bottom:1.25rem}.page-subtitle{color:var(--color-text-muted);margin-bottom:1rem;font-size:.9rem}.btn{font-size:var(--text-sm);font-weight:var(--font-medium);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text);cursor:pointer;transition:background-color var(--transition-fast), box-shadow var(--transition-fast), transform var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast);-webkit-user-select:none;user-select:none;border:1px solid #0000;justify-content:center;align-items:center;gap:.4rem;padding:.5rem .9rem;line-height:1.2;display:inline-flex}.btn:focus-visible{box-shadow:var(--shadow-focus);outline:none}.btn:disabled{opacity:.55;cursor:not-allowed}.btn--primary{background:var(--gradient-primary-btn);color:#fff;border-color:var(--color-primary);box-shadow:var(--shadow-xs)}.btn--primary:hover:not(:disabled){background:var(--color-primary-hover);border-color:var(--color-primary-hover);box-shadow:var(--shadow-sm)}.btn--primary:active:not(:disabled){box-shadow:none;transform:translateY(1px)}.btn--success{background:var(--status-beschikbaar);color:#fff;border-color:var(--status-beschikbaar);box-shadow:var(--shadow-xs)}.btn--success:hover:not(:disabled){box-shadow:var(--shadow-sm);background:#15803d;border-color:#15803d}.btn--warning{background:var(--status-pauze);color:#fff;border-color:var(--status-pauze);box-shadow:var(--shadow-xs)}.btn--warning:hover:not(:disabled){box-shadow:var(--shadow-sm);background:#b45309;border-color:#b45309}.btn--danger{background:var(--prio-1);color:#fff;border-color:var(--prio-1);box-shadow:var(--shadow-xs)}.btn--danger:hover:not(:disabled){box-shadow:var(--shadow-sm);background:#b91c1c;border-color:#b91c1c}.btn--ghost{color:var(--color-text-muted);border-color:var(--color-border);background:0 0}.btn--ghost:hover:not(:disabled){background:var(--color-surface-hover);color:var(--color-text);border-color:var(--color-text-dim)}.prio-badge{border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.04em;align-items:center;padding:.15rem .5rem;line-height:1.4;display:inline-flex}.prio-badge--1{color:var(--prio-1);background:#d977061a}.prio-badge--2{color:var(--prio-2);background:#2563eb1a}.prio-badge--3{color:var(--prio-3);background:#6b72801f}.prio-badge--4{color:var(--prio-4);background:#dc26261a}.vip-badge{color:var(--prio-2);background:#fffbeb;border-radius:4px;align-items:center;gap:.25rem;padding:.15rem .4rem;font-size:.65rem;font-weight:700;display:inline-flex}.confidence-bar{background:var(--color-border);border-radius:3px;height:6px;overflow:hidden}.confidence-bar__fill{border-radius:3px;height:100%;transition:width .3s}.data-table{border-collapse:separate;border-spacing:0;width:100%;font-size:var(--text-sm)}.data-table th{text-align:left;font-size:var(--text-xs);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted);background:var(--color-bg-secondary);border-bottom:1px solid var(--color-border);padding:.55rem .75rem}.data-table td{border-bottom:1px solid var(--color-border-light);color:var(--color-text);transition:background-color var(--transition-fast);padding:.6rem .75rem}.data-table tr:hover td{background:var(--color-surface-hover)}.data-table tr:last-child td{border-bottom:none}.stats-row{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:.75rem;margin-bottom:1.5rem;display:grid}.worker-dashboard-grid{grid-template-columns:1fr;align-items:start;gap:1rem;margin-bottom:1rem;display:grid}@media (min-width:900px){.worker-dashboard-grid{grid-template-columns:minmax(0,1fr) 320px}}.stat-card{background:var(--color-surface);border:1px solid var(--color-border);text-align:center;border-radius:8px;padding:1rem;box-shadow:0 1px 3px #0000000a}.stat-card__value{color:var(--color-text);font-size:1.75rem;font-weight:700}.stat-card__label{color:var(--color-text-muted);margin-top:.25rem;font-size:.75rem}.form-group{margin-bottom:1rem}.form-label{color:var(--color-text-muted);margin-bottom:.35rem;font-size:.8rem;font-weight:600;display:block}.form-input,.form-select,.form-textarea{width:100%;font-size:var(--text-sm);background:var(--color-surface);color:var(--color-text);border:1px solid var(--color-border);border-radius:var(--radius-md);transition:border-color var(--transition-fast), box-shadow var(--transition-fast);outline:none;padding:.5rem .75rem;line-height:1.5}.form-input:hover:not(:disabled):not(:focus),.form-select:hover:not(:disabled):not(:focus),.form-textarea:hover:not(:disabled):not(:focus){border-color:var(--color-text-dim)}.form-input:focus,.form-select:focus,.form-textarea:focus{border-color:var(--color-primary);box-shadow:var(--shadow-focus)}.form-input:disabled,.form-select:disabled,.form-textarea:disabled{background:var(--color-bg-secondary);color:var(--color-text-dim);cursor:not-allowed}.form-input::placeholder,.form-textarea::placeholder{color:var(--color-text-dim)}.form-textarea{resize:vertical;min-height:80px}.spinner{border:2px solid var(--color-border);border-top-color:var(--color-primary);border-radius:50%;width:20px;height:20px;animation:.6s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.auth-layout{background:var(--color-bg);justify-content:center;align-items:center;min-height:100vh;display:flex}.auth-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:12px;width:100%;max-width:420px;padding:2rem;box-shadow:0 4px 12px #0000000f}
