@font-face{font-family:DM Sans;font-style:normal;font-weight:300 700;font-display:swap;src:url(../../../fonts/dmsans-v17-latin-ext.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:DM Sans;font-style:normal;font-weight:300 700;font-display:swap;src:url(../../../fonts/dmsans-v17-latin.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:Fraunces;font-style:normal;font-weight:300 600;font-display:swap;src:url(../../../fonts/fraunces-v38-vietnamese.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:Fraunces;font-style:normal;font-weight:300 600;font-display:swap;src:url(../../../fonts/fraunces-v38-latin-ext.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:Fraunces;font-style:normal;font-weight:300 600;font-display:swap;src:url(../../../fonts/fraunces-v38-latin.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:Jost;font-style:normal;font-weight:300 700;font-display:swap;src:url(../../../fonts/jost-v20-cyrillic.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Jost;font-style:normal;font-weight:300 700;font-display:swap;src:url(../../../fonts/jost-v20-latin-ext.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:Jost;font-style:normal;font-weight:300 700;font-display:swap;src:url(../../../fonts/jost-v20-latin.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}:root,[data-theme=lila]{--color-brand:#80377b;--color-brand-dark:#5a1f6e;--color-brand-light:#a85ca3;--color-brand-tint:#fdf5fd;--color-brand-tint-hover:#f0e6ef;--color-surface:#fff;--color-surface-raised:#fff;--color-bg:#faf9f7;--color-bg-subtle:#f5f3ef;--color-bg-muted:#e8e0ea;--color-text:#44403c;--color-text-muted:#6b6760;--color-text-heading:#1c1917;--color-border:#e8e0ea;--color-border-subtle:#f0e6ef;--gray-50:#faf9f7;--gray-100:#f5f3ef;--gray-200:#e8e0ea;--gray-300:#d5ced8;--gray-400:#a8a49c;--gray-500:#78746c;--gray-600:#5c5650;--gray-700:#44403c;--gray-800:#2a2624;--gray-900:#1c1917;--color-green:#16a34a;--color-green-bg:#f0fdf4;--color-green-border:#bbf7d0;--color-yellow:#ca8a04;--color-yellow-bg:#fefce8;--color-yellow-border:#fef08a;--color-red:#dc2626;--color-red-bg:#fef2f2;--color-red-border:#fecaca;--color-blue:#2563eb;--color-blue-bg:#eff6ff;--color-blue-border:#bfdbfe;--color-purple:#80377b;--color-purple-bg:#fdf5fd;--color-purple-border:#e8c8e5;--color-orange:#c2410c;--color-orange-bg:#fff7ed;--color-orange-border:#fed7aa;--color-danger:#ef4444;--font-sans:"DM Sans", system-ui, sans-serif;--font-mono:ui-monospace, "SFMono-Regular", monospace;--ease-in:cubic-bezier(.55, 0, 1, .45);--ease-out:cubic-bezier(.16, 1, .3, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--spring:cubic-bezier(.34, 1.56, .64, 1);--radius-sm:8px;--radius-md:14px;--radius-lg:22px;--shadow-xs:0 1px 3px 0 #80377b0f, 0 1px 2px 0 #80377b0a;--shadow-sm:0 2px 8px -1px #80377b1a, 0 1px 3px -1px #80377b0f;--shadow-md:0 8px 20px -4px #80377b1f, 0 4px 8px -2px #80377b0f;--shadow-lg:0 16px 40px -8px #80377b29, 0 8px 16px -4px #80377b14;--sidebar-bg:#1e1b2e;--sidebar-border:#ffffff0f;--sidebar-brand-gradient:linear-gradient(180deg, #1e1b2e 0%, #2a1f3d 50%, #1e1b2e 100%);--nav-active-bg:#80377b2e;--nav-active-color:#d8b4d8;--nav-active-border:#a85ca3;--glass-bg:#ffffffc2;--glass-bg-subtle:#ffffff8c;--glass-bg-overlay:#faf9f7e6;--glass-saturate:160%;--glass-highlight:#fff9;--glass-border:#80377b1a;--glass-border-light:#ffffff80;--glass-shadow:0 8px 32px #80377b1a, 0 2px 8px #80377b0d;--glass-shadow-inset:inset 0 1px 0 #fff9;--glass-blur:16px;--body-gradient:radial-gradient(ellipse at 80% 10%, #a85ca31a 0%, transparent 60%);--leave-type-vacation:#4caf50;--leave-type-overtime:#9c27b0;--leave-type-special:#2196f3;--leave-type-education:#00bcd4;--leave-type-sick:#f44336;--leave-type-sick-child:#ff9800;--leave-type-unpaid:#795548;--leave-type-holiday:#f59e0b;--leave-type-maternity:#e91e63;--leave-type-parental:#ff5722;--leave-type-default:#607d8b;--leave-type-absent:#9e9e9e;--leave-type-absent-muted:#bdbdbd;transition:color .2s,background-color .2s}body:before{content:"";pointer-events:none;z-index:-1;background:var(--body-gradient);position:fixed;inset:0}[data-theme=hell]{--color-brand:#475569;--color-brand-dark:#334155;--color-brand-light:#94a3b8;--color-brand-tint:#f1f5f9;--color-brand-tint-hover:#e2e8f0;--color-surface:#fff;--color-surface-raised:#fff;--color-bg:#f8fafc;--color-bg-subtle:#f1f5f9;--color-bg-muted:#e2e8f0;--color-text:#334155;--color-text-muted:#64748b;--color-text-heading:#0f172a;--color-border:#cbd5e1;--color-border-subtle:#e2e8f0;--gray-50:#f8fafc;--gray-100:#f1f5f9;--gray-200:#e2e8f0;--gray-300:#cbd5e1;--gray-400:#94a3b8;--gray-500:#64748b;--gray-600:#475569;--gray-700:#334155;--gray-800:#1e293b;--gray-900:#0f172a;--color-green:#16a34a;--color-green-bg:#f0fdf4;--color-green-border:#bbf7d0;--color-yellow:#ca8a04;--color-yellow-bg:#fefce8;--color-yellow-border:#fef08a;--color-red:#dc2626;--color-red-bg:#fef2f2;--color-red-border:#fecaca;--color-blue:#2563eb;--color-blue-bg:#eff6ff;--color-blue-border:#bfdbfe;--color-purple:#475569;--color-purple-bg:#f1f5f9;--color-purple-border:#cbd5e1;--color-orange:#c2410c;--color-orange-bg:#fff7ed;--color-orange-border:#fed7aa;--color-danger:#ef4444;--shadow-xs:0 1px 3px 0 #0f172a0a, 0 1px 2px 0 #0f172a08;--shadow-sm:0 2px 8px -1px #0f172a0f, 0 1px 3px -1px #0f172a0a;--shadow-md:0 8px 20px -4px #0f172a14, 0 4px 8px -2px #0f172a0a;--shadow-lg:0 16px 40px -8px #0f172a1a, 0 8px 16px -4px #0f172a0f;--sidebar-bg:#1e293b;--sidebar-border:#ffffff0d;--sidebar-brand-gradient:linear-gradient(180deg, #1e293b 0%, #273548 50%, #1e293b 100%);--nav-active-bg:#47556933;--nav-active-color:#cbd5e1;--nav-active-border:#94a3b8;--glass-bg:#ffffffc7;--glass-bg-subtle:#ffffff8c;--glass-bg-overlay:#f8fafceb;--glass-saturate:140%;--glass-highlight:#ffffff8c;--glass-border:#47556914;--glass-border-light:#ffffff73;--glass-shadow:0 8px 32px #0f172a0f, 0 2px 8px #0f172a0a;--glass-shadow-inset:inset 0 1px 0 #ffffff8c;--glass-blur:16px;--body-gradient:radial-gradient(ellipse at 90% 5%, #94a3b814 0%, transparent 55%)}[data-theme=dunkel],[data-theme=dunkel] *{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=dunkel]{--color-brand:#64748b;--color-brand-dark:#475569;--color-brand-light:#94a3b8;--color-brand-tint:#64748b1f;--color-brand-tint-hover:#64748b33;--color-surface:#1e293b;--color-surface-raised:#273548;--color-bg:#1e293b;--color-bg-subtle:#273548;--color-bg-muted:#334155;--color-text:#cbd5e1;--color-text-muted:#94a3b8;--color-text-heading:#f1f5f9;--color-border:#ffffff12;--color-border-subtle:#ffffff0d;--gray-50:#0f172a;--gray-100:#1e293b;--gray-200:#273548;--gray-300:#334155;--gray-400:#475569;--gray-500:#64748b;--gray-600:#94a3b8;--gray-700:#cbd5e1;--gray-800:#e2e8f0;--gray-900:#f1f5f9;--color-green:#4ade80;--color-green-bg:#4ade801a;--color-green-border:#4ade8033;--color-yellow:#fbbf24;--color-yellow-bg:#fbbf241a;--color-yellow-border:#fbbf2433;--color-red:#f87171;--color-red-bg:#f871711a;--color-red-border:#f8717133;--color-blue:#60a5fa;--color-blue-bg:#60a5fa1a;--color-blue-border:#60a5fa33;--color-purple:#94a3b8;--color-purple-bg:#94a3b81a;--color-purple-border:#94a3b833;--color-orange:#fb923c;--color-orange-bg:#fb923c1a;--color-orange-border:#fb923c33;--color-danger:#f87171;--shadow-xs:0 1px 3px 0 #0003, 0 1px 2px 0 #00000026;--shadow-sm:0 2px 8px -1px #0000004d, 0 1px 3px -1px #0003;--shadow-md:0 8px 20px -4px #00000059, 0 4px 8px -2px #00000040;--shadow-lg:0 16px 40px -8px #00000073, 0 8px 16px -4px #0000004d;--sidebar-bg:#0f172a;--sidebar-border:#ffffff0d;--sidebar-brand-gradient:linear-gradient(180deg, #0f172a 0%, #1e293b 50%, #0f172a 100%);--nav-active-bg:#64748b2e;--nav-active-color:#cbd5e1;--nav-active-border:#64748b;--glass-bg:#1e293bc7;--glass-bg-subtle:#1e293b8c;--glass-bg-overlay:#1e293beb;--glass-saturate:120%;--glass-highlight:#ffffff0f;--glass-border:#ffffff12;--glass-border-light:#ffffff1a;--glass-shadow:0 8px 32px #0006, 0 2px 8px #00000040;--glass-shadow-inset:inset 0 1px 0 #ffffff0f;--glass-blur:16px;--body-gradient:radial-gradient(ellipse at 75% 15%, #64748b14 0%, transparent 50%)}[data-theme=dunkel] select.form-input{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2394A3B8' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E")}[data-theme=dunkel] .form-input{background-color:var(--color-surface-raised);border-color:var(--gray-300);color:var(--color-text)}[data-theme=dunkel] .form-input:focus{border-color:var(--color-brand-light);box-shadow:0 0 0 3px #94a3b826}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;font-size:16px}body{font-family:var(--font-sans);color:var(--color-text);background-color:var(--color-bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:1rem;line-height:1.65;transition:background-color .25s,color .25s}h1,h2,h3,h4,h5,h6{font-family:var(--font-sans);color:var(--color-text-heading);text-wrap:balance;font-weight:600;line-height:1.3}a:not(.btn):not(.nav-item):not(.admin-tab):not(.mobile-nav-item):not(.sidebar-user){text-decoration-line:underline;-webkit-text-decoration-color:var(--color-brand-light);text-decoration-color:var(--color-brand-light);text-underline-offset:2px;text-decoration-thickness:1px}a:not(.btn):not(.nav-item):not(.admin-tab):not(.mobile-nav-item):not(.sidebar-user):hover{-webkit-text-decoration-color:var(--color-brand);text-decoration-color:var(--color-brand)}h1{font-size:1.75rem;font-weight:700}h2{font-size:1.25rem;font-weight:600}h3{font-size:1rem;font-weight:600}h4{font-size:1.0625rem}p{line-height:1.65}a{color:var(--color-brand);text-decoration:none}a:hover{color:var(--color-brand-dark)}input,select,textarea,button{font-family:var(--font-sans)}.btn{border-radius:var(--radius-sm);min-height:44px;font-family:var(--font-sans);cursor:pointer;white-space:nowrap;touch-action:manipulation;-webkit-tap-highlight-color:transparent;border:1px solid #0000;justify-content:center;align-items:center;gap:.4rem;padding:.625rem 1.35rem;font-size:1rem;font-weight:500;line-height:1.4;text-decoration:none;transition:background-color .15s,border-color .15s,color .15s,box-shadow .15s,transform .1s;display:inline-flex}.btn:focus-visible{outline:2px solid var(--color-brand);outline-offset:2px}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background-color:var(--color-brand);color:#fff;border-color:var(--color-brand);border-radius:9999px;box-shadow:0 2px 8px #00000026}.btn-primary:hover:not(:disabled){background-color:var(--color-brand-dark);border-color:var(--color-brand-dark);color:#fff;transform:translateY(-1px);box-shadow:0 6px 20px #0003}.btn-secondary{background-color:var(--color-brand-tint);color:var(--color-brand);border-color:var(--color-border);border-radius:9999px}.btn-secondary:hover:not(:disabled){background-color:var(--color-brand-tint-hover);color:var(--color-brand-dark);box-shadow:var(--shadow-xs);transform:translateY(-1px)}.btn-outline{color:var(--color-brand);border-color:var(--color-brand);background-color:#0000}.btn-outline:hover:not(:disabled){background-color:var(--color-brand-tint);box-shadow:var(--shadow-xs);transform:translateY(-1px)}.btn-ghost{color:var(--color-text-muted);background-color:#0000;border-color:#0000}.btn-ghost:hover:not(:disabled){background-color:var(--color-bg-subtle);color:var(--color-text);transform:translateY(-1px)}.btn-sm{min-height:44px;padding:.4rem .85rem;font-size:.875rem}.page-title{color:var(--color-text-heading);margin-bottom:1rem;font-size:1.375rem;font-weight:700;line-height:1.3}.btn-danger{background-color:var(--color-red);color:#fff;border-color:var(--color-red)}.btn-danger:hover:not(:disabled){color:#fff;background-color:#b91c1c;border-color:#b91c1c;transform:translateY(-1px);box-shadow:0 4px 12px #dc26264d}.btn-icon{aspect-ratio:1;justify-content:center;align-items:center;min-width:44px;min-height:44px;padding:.5rem;display:inline-flex}.theme-picker{align-items:center;gap:.75rem;margin-top:.5rem;display:flex}.theme-dot{cursor:pointer;background:0 0;border:2px solid #0000;border-radius:50%;justify-content:center;align-items:center;width:2.75rem;min-width:44px;height:2.75rem;min-height:44px;padding:3px;transition:border-color .15s,transform .15s;display:flex}.theme-dot[aria-checked=true]{border-color:var(--color-brand)}.theme-dot:hover{transform:scale(1.1)}.theme-dot:focus-visible{outline:2px solid var(--color-brand);outline-offset:2px}.theme-dot-inner{border-radius:50%;width:100%;height:100%;display:block}.card{background:var(--glass-bg);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow), var(--glass-shadow-inset);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturate));border-radius:18px;transition:background-color .25s,border-color .25s,box-shadow .25s;overflow:clip}.card-body{padding:1.75rem}.card:hover{box-shadow:var(--shadow-sm)}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.card,.stat-card,.table-wrapper,.dialog-content{background:var(--color-surface);-webkit-backdrop-filter:none}body:before{display:none}}@media (prefers-reduced-transparency:reduce){.card,.stat-card,.table-wrapper,.dialog-content{-webkit-backdrop-filter:none;background:var(--color-surface)}body:before{display:none}}.card-header{border-bottom:1px solid var(--color-border-subtle);padding:1.25rem 1.75rem}.badge{white-space:nowrap;letter-spacing:.02em;border-radius:999px;align-items:center;gap:.3rem;padding:4px 8px;font-size:.8125rem;font-weight:400;line-height:1.4;transition:all .15s;display:inline-flex}.badge-green{background-color:var(--color-green-bg);color:var(--color-green);border:1px solid var(--color-green-border)}.badge-yellow{background-color:var(--color-yellow-bg);color:var(--color-yellow);border:1px solid var(--color-yellow-border)}.badge-red{background-color:var(--color-red-bg);color:var(--color-red);border:1px solid var(--color-red-border)}.badge-blue{background-color:var(--color-blue-bg);color:var(--color-blue);border:1px solid var(--color-blue-border)}.badge-purple{background-color:var(--color-purple-bg);color:var(--color-purple);border:1px solid var(--color-purple-border)}.badge-gray{background-color:var(--gray-100);color:var(--gray-600);border:1px solid var(--gray-200)}.badge-orange{background-color:var(--color-orange-bg);color:var(--color-orange);border:1px solid var(--color-orange-border)}.form-group{flex-direction:column;gap:.5rem;display:flex}.form-label{color:var(--color-text);font-size:.9375rem;font-weight:500}.form-input{border:1px solid var(--gray-300);border-radius:var(--radius-sm);width:100%;font-family:var(--font-sans);color:var(--color-text);background-color:var(--color-surface);appearance:none;touch-action:manipulation;outline:none;padding:.65rem 1rem;font-size:1rem;transition:border-color .15s,box-shadow .15s,background-color .25s}.form-input::placeholder{color:var(--gray-400)}.form-input:focus-visible,.form-input:focus{border-color:var(--color-brand);box-shadow:0 0 0 3px var(--color-brand-tint), 0 2px 8px #0000000f}.form-input:disabled{background-color:var(--gray-100);color:var(--gray-500);cursor:not-allowed}select.form-input{cursor:pointer;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%236b6760' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right .75rem center;background-repeat:no-repeat;padding-right:2.5rem}.form-hint{color:var(--color-text-muted);font-size:.8125rem}.form-error{color:var(--color-red);font-size:.8125rem}.page-header h1{color:var(--color-text-heading);margin-bottom:.25rem;font-size:1.875rem;font-weight:600}.page-header p{color:var(--color-text-muted);font-size:1rem}.page-header-compact{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-bottom:.75rem;display:flex}.page-header-compact h1{color:var(--color-text-heading);margin:0;font-size:1.375rem;font-weight:600}.page-header-row{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:1rem;display:flex}.stat-card{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-md);box-shadow:var(--glass-shadow);-webkit-backdrop-filter:blur(var(--glass-blur));padding:1.5rem 1.75rem;transition:background-color .25s,box-shadow .25s}.stat-card .stat-label{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.5rem;font-size:.875rem;font-weight:500}.stat-card .stat-value{color:var(--color-text-heading);font-size:2.125rem;font-weight:700;line-height:1.1}.stat-card .stat-sub{color:var(--color-text-muted);margin-top:.25rem;font-size:.8125rem}.stat-card .stat-trend-up{color:var(--color-green)}.stat-card .stat-trend-down{color:var(--color-red)}.table-wrap,.table-wrapper{-webkit-overflow-scrolling:touch;border-radius:var(--radius-md);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);-webkit-backdrop-filter:blur(var(--glass-blur));overflow-x:auto}.data-table{border-collapse:collapse;background-color:#0000;width:100%;font-size:.9375rem;transition:background-color .25s}.data-table thead tr{background-color:var(--gray-50);border-bottom:1px solid var(--color-border)}.data-table th{text-align:left;text-transform:uppercase;letter-spacing:.05em;color:var(--color-text-muted);white-space:nowrap;padding:.875rem 1.125rem;font-size:.8125rem;font-weight:600}.data-table td{color:var(--color-text);border-bottom:1px solid var(--color-border-subtle);vertical-align:middle;font-variant-numeric:tabular-nums;padding:1rem 1.125rem}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr:nth-child(2n){background-color:var(--gray-50)}.data-table tbody tr:hover{background-color:var(--color-brand-tint)}.data-table tbody tr{transition:background-color .15s}.alert{border-radius:var(--radius-sm);border:1px solid #0000;align-items:flex-start;gap:.75rem;padding:1rem 1.25rem;font-size:.9375rem;display:flex}.alert-info{background-color:var(--color-blue-bg);color:var(--color-blue);border-color:var(--color-blue-border)}.alert-warning{background-color:var(--color-yellow-bg);color:#92400e;border-color:var(--color-yellow-border)}.alert-error{background-color:var(--color-red-bg);color:var(--color-red);border-color:var(--color-red-border)}.alert-success{background-color:var(--color-green-bg);color:var(--color-green);border-color:var(--color-green-border)}.divider{background-color:var(--color-border-subtle);border:none;height:1px;margin:1.5rem 0}.skeleton{background:linear-gradient(90deg, var(--gray-100) 25%, var(--gray-200) 50%, var(--gray-100) 75%);border-radius:var(--radius-sm);background-size:200% 100%;animation:1.5s infinite skeleton-shimmer}@keyframes skeleton-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.text-muted{color:var(--color-text-muted)}.text-brand{color:var(--color-brand)}.text-green{color:var(--color-green)}.text-yellow{color:var(--color-yellow)}.text-red{color:var(--color-red)}.font-mono{font-family:var(--font-mono)}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.view-tabs{border-bottom:2px solid var(--gray-200);gap:.25rem;margin-bottom:1rem;display:flex}.view-tab{cursor:pointer;min-height:44px;font-family:var(--font-sans);color:var(--color-text-muted);background:0 0;border:none;border-bottom:2px solid #0000;border-radius:4px 4px 0 0;margin-bottom:-2px;padding:.6875rem 1.125rem;font-size:.875rem;font-weight:500;transition:color .15s,border-color .15s}.view-tab:hover{color:var(--color-text)}.view-tab--active{color:var(--color-brand);border-bottom-color:var(--color-brand);font-weight:600}.tab-badge{background:var(--color-red);color:#fff;border-radius:9999px;justify-content:center;align-items:center;min-width:1.125rem;height:1.125rem;margin-left:.375rem;padding:0 .3rem;font-size:.6875rem;font-weight:700;line-height:1;display:inline-flex}.filter-bar{flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:1rem;display:flex}.filter-bar .form-input{width:auto;min-width:0}.filter-search{flex:1;min-width:180px;max-width:320px}.filter-select{width:auto;min-width:130px}.filter-count{color:var(--color-text-muted);white-space:nowrap;margin-left:auto;font-size:.8125rem}@keyframes page-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.page-enter{animation:page-enter .3s var(--ease-out) both}@keyframes card-enter{0%{opacity:0;transform:translateY(12px)scale(.98)}to{opacity:1;transform:translateY(0)scale(1)}}.card-animate{animation:card-enter .4s var(--ease-out) both}.card-animate:first-child{animation-delay:0s}.card-animate:nth-child(2){animation-delay:60ms}.card-animate:nth-child(3){animation-delay:.12s}.card-animate:nth-child(4){animation-delay:.18s}.card-animate:nth-child(5){animation-delay:.24s}.card-animate:nth-child(6){animation-delay:.3s}.stat-card{transition:background-color .25s ease, box-shadow .25s ease, transform .2s var(--ease-out)}.stat-card:hover{box-shadow:var(--shadow-md);transform:translateY(-3px)}.card-interactive{transition:background-color .25s ease, box-shadow .25s ease, transform .2s var(--ease-out);cursor:default}.card-interactive:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}@keyframes count-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.stat-value-animate{animation:count-up .5s var(--ease-out) both;animation-delay:.2s}@keyframes pulse-ring{0%{box-shadow:0 0 #16a34a66}70%{box-shadow:0 0 0 10px #16a34a00}to{box-shadow:0 0 #16a34a00}}.pulse-active{animation:2s infinite pulse-ring}.btn-press:active:not(:disabled){transform:scale(.97)}.skeleton-text{border-radius:4px;height:1em}.skeleton-heading{border-radius:var(--radius-sm);width:60%;height:2rem}.skeleton-stat{border-radius:var(--radius-sm);width:80%;height:2.5rem}.skeleton-card{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-md);min-height:120px;padding:1.5rem 1.75rem}.section-gap{margin-bottom:2.5rem}.section-gap-sm{margin-bottom:1.75rem}.page-header{margin-bottom:2.25rem}.input-wrapper{align-items:center;display:flex;position:relative}.input-icon{color:var(--gray-400);pointer-events:none;z-index:1;transition:color .15s;position:absolute;left:.875rem}.input-wrapper:focus-within .input-icon{color:var(--color-brand)}.form-input--icon{padding-left:2.5rem}.form-input--password{padding-right:2.75rem}.password-toggle{cursor:pointer;border-radius:var(--radius-sm);color:var(--gray-400);background:0 0;border:none;justify-content:center;align-items:center;padding:.375rem;transition:color .15s,background-color .15s;display:flex;position:absolute;right:.5rem}.password-toggle:hover{color:var(--color-text);background-color:var(--color-bg-subtle)}.form-input{transition:border-color .2s var(--ease-out), box-shadow .2s var(--ease-out), background-color .25s}input[type=date].form-input,input[type=time].form-input,input[type=datetime-local].form-input{cursor:pointer}input[type=date].form-input::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.5;transition:opacity .15s}input[type=time].form-input::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.5;transition:opacity .15s}input[type=date].form-input::-webkit-calendar-picker-indicator:hover{opacity:1}input[type=time].form-input::-webkit-calendar-picker-indicator:hover{opacity:1}textarea.form-input{resize:vertical;min-height:80px}.data-table thead tr{z-index:10;background-color:var(--color-surface);position:sticky;top:0}.data-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:color .15s}.data-table th.sortable:hover{color:var(--color-brand)}.data-table th .sort-indicator{opacity:.4;margin-left:.25rem;transition:opacity .15s;display:inline-flex}.data-table th.sortable:hover .sort-indicator{opacity:.7}.data-table th.sorted .sort-indicator{opacity:1;color:var(--color-brand)}.data-table .row-actions{opacity:0;align-items:center;gap:.25rem;transition:opacity .15s;display:flex}.data-table tbody tr:hover .row-actions{opacity:1}.data-table--compact td,.data-table--compact th{padding:.625rem 1rem}.skip-to-content{background:var(--color-brand);color:#fff;border-radius:0 0 var(--radius-sm) var(--radius-sm);z-index:10000;padding:.5rem 1.25rem;font-size:.875rem;font-weight:500;text-decoration:none;transition:top .2s;position:absolute;top:-100%;left:50%;transform:translate(-50%)}.skip-to-content:focus{top:0}:focus-visible{outline:2px solid var(--color-brand);outline-offset:2px}:focus:not(:focus-visible){outline:none}@media (forced-colors:active){.badge,.btn,.alert{border:1px solid buttontext}}.dialog-backdrop{z-index:500;background:#0006;animation:.15s backdrop-in;position:fixed;inset:0}@keyframes backdrop-in{0%{opacity:0}to{opacity:1}}.dialog-content{background:var(--glass-bg-strong,var(--color-surface));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);z-index:501;max-width:90vw;max-height:90vh;animation:dialog-in .2s var(--ease-out);position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%)}@keyframes dialog-in{0%{opacity:0;transform:translate(-50%,-48%)}to{opacity:1;transform:translate(-50%,-50%)}}.dialog-header{border-bottom:1px solid var(--color-border-subtle);justify-content:space-between;align-items:center;padding:1.25rem 1.5rem;display:flex}.dialog-header h2{font-size:1.125rem;font-weight:600}.dialog-body{padding:1.5rem}.dialog-footer{border-top:1px solid var(--color-border-subtle);justify-content:flex-end;align-items:center;gap:.75rem;padding:1rem 1.5rem;display:flex}.cal-cell.cal-holiday:not(.cal-other):not(.cal-selected){border-left:3px solid var(--color-brand);background:var(--color-brand-tint)!important}.cal-cell.cal-weekend:not(.cal-other):not(.cal-selected){background:var(--color-bg-subtle)!important}.cal-cell.cal-abs-vacation:not(.cal-selected){opacity:1;background:color-mix(in srgb, var(--leave-type-vacation) 15%, var(--color-surface))!important}.cal-cell.cal-abs-sick:not(.cal-selected){opacity:1;background:color-mix(in srgb, var(--leave-type-sick) 15%, var(--color-surface))!important}.cal-cell.cal-abs-special:not(.cal-selected){opacity:1;background:color-mix(in srgb, var(--leave-type-special) 15%, var(--color-surface))!important}.cal-cell.cal-abs-overtime_comp:not(.cal-selected){opacity:1;background:color-mix(in srgb, var(--leave-type-overtime) 15%, var(--color-surface))!important}.cal-cell.cal-abs-education:not(.cal-selected){opacity:1;background:color-mix(in srgb, var(--leave-type-education) 15%, var(--color-surface))!important}.cal-cell.cal-abs-unpaid:not(.cal-selected){opacity:1;background:color-mix(in srgb, var(--leave-type-unpaid) 15%, var(--color-surface))!important}.cal-section{margin-bottom:1rem;padding:0;overflow:hidden}.cal-header-row{border-bottom:1.5px solid var(--gray-200,#e5e7eb);background:var(--gray-50,#f9fafb)}.cal-dow{text-align:center;text-transform:uppercase;letter-spacing:.06em;color:var(--color-text-muted);padding:.5rem;font-size:.75rem;font-weight:700}.cal-cell{background:var(--color-surface)}.cal-cell.skeleton{background:linear-gradient(90deg, var(--gray-100) 25%, var(--gray-200) 50%, var(--gray-100) 75%);background-size:200% 100%;animation:1.5s infinite skeleton-shimmer}.cal-cell.cal-other:not(.cal-selected){opacity:.35;cursor:default;background:var(--gray-50,#f9fafb)}.cal-today{box-shadow:inset 0 0 0 2px var(--color-brand)}.cal-cell.cal-selected:not(.cal-other){z-index:1;background-color:var(--color-brand)!important;box-shadow:0 0 0 2px var(--color-brand), 0 4px 12px #00000026!important}.cal-cell.cal-selected:not(.cal-other) .cal-day-num,.cal-cell.cal-selected:not(.cal-other) .day-worked,.cal-cell.cal-selected:not(.cal-other) .day-bal,.cal-cell.cal-selected:not(.cal-other) .day-missing,.cal-cell.cal-selected:not(.cal-other) .cal-abs-type,.cal-cell.cal-selected:not(.cal-other) .cal-holiday-label{color:#fff!important}.cal-cell.cal-selected.cal-today:not(.cal-other){background-color:var(--color-bg-subtle)!important;box-shadow:inset 0 0 0 2px var(--color-brand)!important}.cal-cell.cal-selected.cal-today:not(.cal-other) .day-worked,.cal-cell.cal-selected.cal-today:not(.cal-other) .day-bal,.cal-cell.cal-selected.cal-today:not(.cal-other) .day-missing,.cal-cell.cal-selected.cal-today:not(.cal-other) .cal-abs-type,.cal-cell.cal-selected.cal-today:not(.cal-other) .cal-holiday-label{color:var(--color-text-muted)!important}.cal-day-num{color:var(--color-text-muted);flex-shrink:0;font-size:.8rem;font-weight:600;line-height:1}.cal-today .cal-day-num{background:var(--color-brand);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:20px;height:20px;font-size:.7rem;display:flex}.cal-holiday-label{color:var(--color-brand);text-overflow:ellipsis;white-space:nowrap;font-size:.6875rem;font-weight:600;line-height:1.2;display:block;overflow:hidden}.cal-nav{border-bottom:1px solid var(--gray-200,#e5e7eb);background:var(--gray-50,#f9fafb);grid-template-columns:auto 1fr auto;align-items:center;padding:1rem 1.25rem;display:grid}.cal-nav-center{justify-self:center;position:relative}.nav-btn{background:var(--color-surface);border:1.5px solid var(--gray-200,#e5e7eb);cursor:pointer;min-height:44px;color:var(--color-text);box-shadow:var(--shadow-xs);border-radius:8px;align-items:center;padding:.6875rem;transition:all .15s;display:flex}.nav-btn:hover{background:var(--color-brand-tint);border-color:var(--color-brand-light);color:var(--color-brand)}.cal-nav-title{text-transform:capitalize;color:var(--color-text-heading);letter-spacing:-.01em;cursor:pointer;border-radius:var(--radius-sm);background:0 0;border:none;align-items:center;gap:.375rem;min-height:44px;padding:.6875rem .5rem;font-size:1.125rem;font-weight:700;transition:background .15s;display:flex}.cal-nav-title:hover{background:var(--color-bg-subtle)}.month-picker-backdrop{z-index:19;position:fixed;inset:0}.month-picker{z-index:20;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);min-width:240px;margin-top:.25rem;padding:.75rem;position:absolute;top:100%;left:50%;transform:translate(-50%)}.month-picker-year{justify-content:space-between;align-items:center;margin-bottom:.5rem;font-size:.9375rem;font-weight:700;display:flex}.month-picker-year button{cursor:pointer;border-radius:var(--radius-sm);color:var(--color-text-muted);background:0 0;border:none;padding:.25rem .5rem;font-size:1.25rem}.month-picker-year button:hover{background:var(--color-bg-subtle);color:var(--color-text)}.month-picker-grid{grid-template-columns:repeat(3,1fr);gap:.25rem;display:grid}.month-picker-btn{border-radius:var(--radius-sm);cursor:pointer;color:var(--color-text);background:0 0;border:none;padding:.375rem;font-size:.8125rem;font-weight:500;transition:all .15s}.month-picker-btn:hover{background:var(--color-brand-tint);color:var(--color-brand)}.month-picker-btn.active{background:var(--color-brand);color:#fff}.month-picker-today{border:1px solid var(--color-border);border-radius:var(--radius-sm);cursor:pointer;width:100%;color:var(--color-brand);background:0 0;margin-top:.5rem;padding:.375rem;font-size:.8125rem;font-weight:500}.month-picker-today:hover{background:var(--color-brand-tint)}.widget-action{color:var(--color-brand);white-space:nowrap;font-size:.8125rem;font-weight:400;text-decoration:none;transition:opacity .15s ease-out}.widget-action:hover{opacity:.75}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.toast-container.svelte-zemmny{z-index:9999;pointer-events:none;flex-direction:column;gap:.625rem;width:calc(100vw - 3rem);max-width:420px;display:flex;position:fixed;bottom:1.5rem;right:1.5rem}.toast.svelte-zemmny{border-radius:var(--radius-sm);background:var(--glass-bg-overlay,var(--color-surface));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--toast-border);box-shadow:var(--shadow-md);color:var(--color-text);pointer-events:auto;will-change:transform, opacity;align-items:flex-start;gap:.625rem;padding:.875rem 1rem .875rem calc(1rem + 6px);font-size:.9375rem;line-height:1.45;display:flex;position:relative}.toast-icon.svelte-zemmny{color:var(--toast-color);flex-shrink:0;justify-content:center;align-items:center;margin-top:1px;display:flex}.toast-message.svelte-zemmny{word-break:break-word;flex:1;min-width:0}.toast-close.svelte-zemmny{width:24px;height:24px;color:var(--color-text-muted);cursor:pointer;background:0 0;border:none;border-radius:4px;flex-shrink:0;justify-content:center;align-items:center;margin:-10px -10px -10px 0;padding:10px;transition:background-color .15s,color .15s;display:flex}.toast-close.svelte-zemmny:hover{background-color:var(--color-bg-muted);color:var(--color-text)}.toast.svelte-zemmny:before{content:"";background:var(--toast-color);border-radius:var(--radius-sm) 0 0 var(--radius-sm);width:3px;position:absolute;top:0;bottom:0;left:0}@media (width<=480px){.toast-container.svelte-zemmny{width:auto;max-width:none;bottom:1rem;left:1rem;right:1rem}}
