@charset "UTF-8";:root{color-scheme:light;--color-primary: #0d8074;--color-primary-dark: #0d4d44;--color-primary-hover: #0a6b61;--color-primary-light: #e6f7f5;--color-primary-border: #b8e8e2;--color-bg: #f8f9fb;--color-surface: #ffffff;--color-surface-muted: #fafbfc;--color-surface-subtle: #f3f4f6;--color-border: #e5e7eb;--color-border-light: #e8ecf1;--color-text: #1f2937;--color-text-heading: #111827;--color-text-muted: #9ca3af;--color-text-secondary: #6b7280;--color-topbar-icon: #6b7280;--color-input-bg: #f3f4f6;--color-overlay: rgba(15, 23, 42, .45);--color-table-header-bg: #fafbfc;--color-table-border: #eef0f3;--color-table-row-border: #f0f2f5;--color-table-cell-text: #374151;--color-success-bg: #dcfce7;--color-success-text: #15803d;--color-warning-bg: #ffedd5;--color-warning-text: #c2410c;--color-neutral-bg: #f3f4f6;--color-neutral-text: #6b7280;--color-danger: #ef4444;--color-danger-bg: #fef2f2;--color-danger-text: #dc2626;--color-info-bg: #e0f2fe;--color-info-text: #0369a1;--color-present-bg: #ecfdf5;--color-present-accent: #15803d;--color-absent-bg: #fef2f2;--color-absent-accent: #ef4444;--color-holiday-bg: #f5f3ff;--color-holiday-accent: #7c3aed;--color-half-day-bg: #fff7ed;--color-half-day-accent: #c2410c;--color-weekly-off-bg: #f0fdf4;--color-weekly-off-accent: #166534;--color-missed-punch-bg: #fefce8;--color-missed-punch-accent: #a16207;--color-leave-bg: #eff6ff;--color-leave-accent: #3b82f6;--color-corrected-bg: #fef9c3;--color-corrected-accent: #854d0e;--color-outside-bg: #f3f4f6;--stat-teal-bg: #e6f7f5;--stat-teal-text: #0d8074;--stat-green-bg: #ecfdf5;--stat-green-text: #10b981;--stat-red-bg: #fef2f2;--stat-red-text: #ef4444;--stat-blue-bg: #eff6ff;--stat-blue-text: #3b82f6;--stat-orange-bg: #fff7ed;--stat-orange-text: #f97316;--stat-purple-bg: #f5f3ff;--stat-purple-text: #8b5cf6;--sidebar-width: 80px;--topbar-height: 56px;--content-padding: 28px 32px 32px;--radius-sm: 6px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 10px;--shadow-card: 0 1px 3px rgba(15, 23, 42, .04), 0 1px 2px rgba(15, 23, 42, .02);--shadow-sm: 0 1px 2px rgba(15, 23, 42, .05);--shadow-modal: 0 20px 40px rgba(15, 23, 42, .15);--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif}[data-theme=teal]{color-scheme:light}[data-theme=blue]{color-scheme:light;--color-primary: #2563eb;--color-primary-dark: #1e3a8a;--color-primary-hover: #1d4ed8;--color-primary-light: #eff6ff;--color-primary-border: #bfdbfe;--stat-teal-bg: #eff6ff;--stat-teal-text: #2563eb}[data-theme=indigo]{color-scheme:light;--color-primary: #4f46e5;--color-primary-dark: #312e81;--color-primary-hover: #4338ca;--color-primary-light: #eef2ff;--color-primary-border: #c7d2fe;--stat-teal-bg: #eef2ff;--stat-teal-text: #4f46e5}[data-theme=emerald]{color-scheme:light;--color-primary: #059669;--color-primary-dark: #064e3b;--color-primary-hover: #047857;--color-primary-light: #ecfdf5;--color-primary-border: #a7f3d0;--stat-teal-bg: #ecfdf5;--stat-teal-text: #059669}[data-theme=violet]{color-scheme:light;--color-primary: #7c3aed;--color-primary-dark: #4c1d95;--color-primary-hover: #6d28d9;--color-primary-light: #f5f3ff;--color-primary-border: #ddd6fe;--stat-teal-bg: #f5f3ff;--stat-teal-text: #7c3aed}[data-theme=rose]{color-scheme:light;--color-primary: #e11d48;--color-primary-dark: #881337;--color-primary-hover: #be123c;--color-primary-light: #fff1f2;--color-primary-border: #fecdd3;--stat-teal-bg: #fff1f2;--stat-teal-text: #e11d48}[data-theme=slate]{color-scheme:light;--color-primary: #475569;--color-primary-dark: #1e293b;--color-primary-hover: #334155;--color-primary-light: #f1f5f9;--color-primary-border: #cbd5e1;--stat-teal-bg: #f1f5f9;--stat-teal-text: #475569}[data-theme=dark]{color-scheme:dark;--color-primary: #2dd4bf;--color-primary-dark: #0f766e;--color-primary-hover: #14b8a6;--color-primary-light: #134e4a;--color-primary-border: #115e59;--color-bg: #0f172a;--color-surface: #1e293b;--color-surface-muted: #1a2332;--color-surface-subtle: #243044;--color-border: #334155;--color-border-light: #293548;--color-text: #e2e8f0;--color-text-heading: #f8fafc;--color-text-muted: #94a3b8;--color-text-secondary: #cbd5e1;--color-topbar-icon: #94a3b8;--color-input-bg: #243044;--color-overlay: rgba(2, 6, 23, .72);--color-table-header-bg: #1a2332;--color-table-border: #334155;--color-table-row-border: #293548;--color-table-cell-text: #e2e8f0;--color-success-bg: #14532d;--color-success-text: #86efac;--color-warning-bg: #7c2d12;--color-warning-text: #fdba74;--color-neutral-bg: #334155;--color-neutral-text: #cbd5e1;--color-danger: #f87171;--color-danger-bg: #450a0a;--color-danger-text: #fca5a5;--color-info-bg: #1e3a8a;--color-info-text: #93c5fd;--color-present-bg: #14532d;--color-present-accent: #86efac;--color-absent-bg: #450a0a;--color-absent-accent: #fca5a5;--color-holiday-bg: #3b0764;--color-holiday-accent: #d8b4fe;--color-half-day-bg: #7c2d12;--color-half-day-accent: #fdba74;--color-weekly-off-bg: #14532d;--color-weekly-off-accent: #86efac;--color-missed-punch-bg: #713f12;--color-missed-punch-accent: #fde047;--color-leave-bg: #1e3a8a;--color-leave-accent: #93c5fd;--color-corrected-bg: #713f12;--color-corrected-accent: #fde68a;--color-outside-bg: #243044;--stat-teal-bg: #134e4a;--stat-teal-text: #5eead4;--stat-green-bg: #14532d;--stat-green-text: #86efac;--stat-red-bg: #450a0a;--stat-red-text: #fca5a5;--stat-blue-bg: #1e3a8a;--stat-blue-text: #93c5fd;--stat-orange-bg: #7c2d12;--stat-orange-text: #fdba74;--stat-purple-bg: #3b0764;--stat-purple-text: #d8b4fe;--shadow-card: 0 1px 3px rgba(0, 0, 0, .35);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-modal: 0 20px 40px rgba(0, 0, 0, .5)}[data-theme=midnight]{color-scheme:dark;--color-primary: #60a5fa;--color-primary-dark: #1e3a8a;--color-primary-hover: #3b82f6;--color-primary-light: #1e3a8a;--color-primary-border: #1d4ed8;--color-bg: #0b1120;--color-surface: #111827;--color-surface-muted: #0f172a;--color-surface-subtle: #1f2937;--color-border: #374151;--color-border-light: #1f2937;--color-text: #e5e7eb;--color-text-heading: #f9fafb;--color-text-muted: #9ca3af;--color-text-secondary: #d1d5db;--color-topbar-icon: #9ca3af;--color-input-bg: #1f2937;--color-overlay: rgba(0, 0, 0, .75);--color-table-header-bg: #0f172a;--color-table-border: #374151;--color-table-row-border: #1f2937;--color-table-cell-text: #e5e7eb;--color-success-bg: #064e3b;--color-success-text: #6ee7b7;--color-warning-bg: #78350f;--color-warning-text: #fcd34d;--color-neutral-bg: #374151;--color-neutral-text: #d1d5db;--color-danger: #fb7185;--color-danger-bg: #4c0519;--color-danger-text: #fda4af;--color-info-bg: #1e3a8a;--color-info-text: #93c5fd;--color-present-bg: #064e3b;--color-present-accent: #6ee7b7;--color-absent-bg: #4c0519;--color-absent-accent: #fda4af;--color-holiday-bg: #312e81;--color-holiday-accent: #c4b5fd;--color-half-day-bg: #78350f;--color-half-day-accent: #fcd34d;--color-weekly-off-bg: #064e3b;--color-weekly-off-accent: #6ee7b7;--color-missed-punch-bg: #713f12;--color-missed-punch-accent: #fde047;--color-leave-bg: #1e3a8a;--color-leave-accent: #93c5fd;--color-corrected-bg: #713f12;--color-corrected-accent: #fde68a;--color-outside-bg: #1f2937;--stat-teal-bg: #1e3a8a;--stat-teal-text: #93c5fd;--stat-green-bg: #064e3b;--stat-green-text: #6ee7b7;--stat-red-bg: #4c0519;--stat-red-text: #fda4af;--stat-blue-bg: #1e3a8a;--stat-blue-text: #93c5fd;--stat-orange-bg: #78350f;--stat-orange-text: #fcd34d;--stat-purple-bg: #312e81;--stat-purple-text: #c4b5fd;--shadow-card: 0 1px 3px rgba(0, 0, 0, .4);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .35);--shadow-modal: 0 20px 40px rgba(0, 0, 0, .55)}.app-shell{display:flex;height:100vh;height:100dvh;max-height:100vh;max-height:100dvh;min-width:0;width:100%;overflow:hidden;background:var(--color-bg);color:var(--color-text);font-family:var(--font-family)}.app-shell .sidebar{width:var(--sidebar-width);background:var(--color-primary-dark);display:flex;flex-direction:column;align-items:center;padding:16px 0;flex-shrink:0;align-self:stretch;height:100%;z-index:400}.app-shell .sidebar-logo{width:40px;height:40px;background:var(--color-primary);border-radius:var(--radius-xl);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:18px;margin-bottom:28px}.app-shell .sidebar-nav{display:flex;flex-direction:column;gap:8px;flex:1;width:100%;align-items:center}.app-shell .nav-item{box-sizing:border-box;display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 8px;border-radius:var(--radius-xl);color:#94a3b8;font-size:12px;font-weight:500;width:64px;text-align:center;line-height:1.2;text-decoration:none;cursor:pointer;border:none;background:transparent;font-family:inherit;appearance:none}.app-shell .nav-item.active,.app-shell .nav-item.router-link-active{background:var(--color-primary);color:#fff}.app-shell .nav-item svg,.app-shell .nav-item app-proto-icon{width:20px;height:20px;font-size:20px;flex-shrink:0;display:block}.app-shell .main{flex:1;display:flex;flex-direction:column;min-width:0;min-height:0;width:100%;height:100%;overflow:hidden}.app-shell .topbar{background:var(--color-surface);border-bottom:1px solid var(--color-border);display:flex;align-items:center;justify-content:space-between;padding:0 28px;height:var(--topbar-height);flex-shrink:0;gap:16px}.app-shell .topbar-left{display:flex;align-items:center;gap:8px;min-width:0;flex:1;height:100%;overflow:hidden}.app-shell .topbar-tabs{display:flex;align-items:stretch;gap:20px;height:100%;flex:1;min-width:0;overflow-x:auto;overflow-y:hidden;scrollbar-width:none;-ms-overflow-style:none}.app-shell .topbar-tabs::-webkit-scrollbar{display:none}.app-shell .tab{display:flex;align-items:center;white-space:nowrap;flex-shrink:0;font-size:14px;font-weight:500;color:var(--color-text-secondary);border-bottom:2px solid transparent;padding:2px 2px 0;cursor:pointer;text-decoration:none;line-height:1.2}.app-shell .tab.active,.app-shell .tab.router-link-active{color:var(--color-primary);border-bottom-color:var(--color-primary)}.app-shell .topbar-right{display:flex;align-items:center;gap:20px;flex-shrink:0}.app-shell .brand{font-size:15px;font-weight:700;color:var(--color-text-heading);letter-spacing:-.01em}.app-shell .topbar-icons{display:flex;align-items:center;gap:14px}.app-shell .icon-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;color:var(--color-topbar-icon);cursor:pointer;border:none;background:transparent;padding:0;text-decoration:none;font-family:inherit}.app-shell .icon-btn mat-icon{width:20px;height:20px;font-size:20px;color:var(--color-topbar-icon)}.app-shell .icon-btn app-proto-icon,.app-shell .icon-btn svg{width:20px;height:20px;font-size:20px;color:var(--color-topbar-icon);display:block}.app-shell .notif-dot{position:absolute;top:-2px;right:-2px;width:8px;height:8px;background:var(--color-danger);border-radius:50%;border:1.5px solid #fff}.app-shell .user-menu{display:flex;align-items:center;gap:10px}.app-shell .user-avatar,.app-shell .user-avatar-fallback{width:36px;height:36px;border-radius:50%;flex-shrink:0;box-sizing:border-box;overflow:hidden;border:1.5px solid var(--color-primary-border, #b8e8e2);background:var(--color-primary-light, #e0f2f1)}.app-shell .user-avatar{object-fit:cover;display:block}.app-shell app-authenticated-profile-photo.user-avatar{display:block}.app-shell .user-avatar-fallback{color:var(--color-primary);display:inline-flex;align-items:center;justify-content:center;vertical-align:middle}.app-shell .user-avatar-fallback app-proto-icon{width:18px;height:18px;font-size:18px;display:flex;align-items:center;justify-content:center;flex-shrink:0;line-height:0}.app-shell .user-info{display:flex;flex-direction:column;align-items:flex-start;text-align:left}.app-shell .user-name{font-size:14px;font-weight:600;color:var(--color-text-heading);line-height:1.2}.app-shell .user-role{font-size:12px;color:var(--color-text-muted);text-align:left}.app-shell .content{padding:var(--content-padding);flex:1;min-width:0;min-height:0;overflow-x:hidden;overflow-y:auto;scrollbar-width:none;-ms-overflow-style:none}.app-shell .shell-footer{position:relative;display:flex;align-items:center;flex-shrink:0;padding:12px 28px;border-top:1px solid var(--color-border);background:var(--color-surface)}.app-shell .shell-footer-logo{display:block;height:32px;width:auto;object-fit:contain}.app-shell .shell-footer-copy{position:absolute;left:50%;transform:translate(-50%);font-size:13px;font-weight:500;line-height:1.2;color:var(--color-text-muted);white-space:nowrap;pointer-events:none}.app-shell .module-dropdown-wrap{position:relative}.app-shell .module-dropdown-wrap .icon-btn-module{border:none;background:transparent;padding:4px;border-radius:var(--radius-md);cursor:pointer;color:var(--color-topbar-icon)}.app-shell .module-dropdown-wrap .icon-btn-module:hover{background:var(--color-neutral-bg)}.app-shell .module-dropdown-wrap .icon-btn-module[aria-expanded=true]{background:var(--color-primary-light);color:var(--color-primary)}.app-shell .module-dropdown-wrap .icon-btn-module app-proto-icon{width:20px;height:20px;font-size:20px;display:block}.app-shell .module-dropdown{position:absolute;top:calc(100% + 10px);right:0;width:320px;background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-card),0 12px 32px #0f172a1f;z-index:200;overflow:hidden}.app-shell .module-dropdown[hidden]{display:none}.app-shell .module-dropdown-header{padding:14px 18px 10px;border-bottom:1px solid var(--color-border-light)}.app-shell .module-dropdown-title{font-size:12px;font-weight:700;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em}.app-shell .module-dropdown-list{padding:8px}.app-shell .module-dropdown-item{display:flex;align-items:flex-start;gap:12px;width:100%;padding:12px;border:none;border-radius:var(--radius-md);background:transparent;text-align:left;cursor:pointer;font-family:inherit;transition:background .12s ease}.app-shell .module-dropdown-item:hover{background:var(--color-neutral-bg)}.app-shell .module-dropdown-item.active{background:var(--color-primary-light)}.app-shell .module-dropdown-icon{width:36px;height:36px;border-radius:var(--radius-md);background:var(--color-primary-light);color:var(--color-primary);display:flex;align-items:center;justify-content:center;flex-shrink:0}.app-shell .module-dropdown-item.active .module-dropdown-icon{background:var(--color-primary);color:#fff}.app-shell .module-dropdown-icon app-proto-icon,.app-shell .module-dropdown-icon svg{width:18px;height:18px;font-size:18px}.app-shell .module-dropdown-body{flex:1;min-width:0;display:block;line-height:1.35}.app-shell .module-dropdown-name{display:inline;font-size:14px;font-weight:600;color:var(--color-text-heading);line-height:1.3}.app-shell .module-dropdown-desc{display:inline;margin-top:0;margin-left:.4em;font-size:13px;color:var(--color-text-muted);line-height:1.35}.app-shell .module-dropdown-check{flex-shrink:0;width:20px;height:20px;color:var(--color-primary);margin-top:2px}.app-shell .module-dropdown-check app-proto-icon,.app-shell .module-dropdown-check svg{width:18px;height:18px;font-size:18px}.app-shell .module-dropdown-item:not(.active) .module-dropdown-check{visibility:hidden}.app-shell .content::-webkit-scrollbar{display:none}.app-shell .sidebar-toggle{display:none;flex-shrink:0;align-items:center;justify-content:center;min-width:40px;min-height:40px;border:none;background:transparent;border-radius:var(--radius-md);color:var(--color-topbar-icon);cursor:pointer;padding:0}.app-shell .sidebar-backdrop{display:none;position:fixed;inset:0;background:var(--color-overlay);z-index:350}.app-shell.sidebar-open .sidebar-backdrop{display:block}@media(min-width:1025px){.app-shell .sidebar{position:relative;transform:none;box-shadow:none}.app-shell .sidebar-backdrop{display:none!important}}@media(max-width:1024px){.app-shell .sidebar-toggle{display:flex}.app-shell.sidebar-open .sidebar-toggle{display:none}.app-shell .sidebar{position:fixed;left:0;top:0;bottom:0;height:100vh;height:100dvh;transform:translate(-100%);transition:transform .25s ease;box-shadow:4px 0 24px #0f172a2e}.app-shell.sidebar-open .sidebar{transform:translate(0)}.app-shell .topbar{padding:0 16px;gap:12px}.app-shell .shell-footer{padding:10px 16px}.app-shell .content{padding:20px 20px 24px;overflow-x:hidden}}@media(max-width:640px){.app-shell .topbar{height:48px;padding:0 12px}.app-shell .brand,.app-shell .user-info{display:none}.app-shell .user-avatar,.app-shell .user-avatar-fallback{width:32px;height:32px}.app-shell .content{padding:14px 14px 20px}.app-shell .shell-footer{padding:8px 12px}.app-shell .shell-footer-logo{height:28px}.app-shell .shell-footer-copy{font-size:12px}.app-shell .module-dropdown{width:min(320px,100vw - 24px);max-width:calc(100vw - 24px);right:0;left:auto}}.app-shell .user-menu-wrap{position:relative}.app-shell .user-menu-trigger{display:flex;align-items:center;gap:10px;border:none;background:transparent;padding:4px 6px;margin:-4px -6px;border-radius:var(--radius-md);cursor:pointer;font-family:inherit}.app-shell .user-menu-trigger:hover{background:var(--color-neutral-bg)}.app-shell .user-menu-trigger .chevron{color:var(--color-text-muted);width:14px;height:14px;flex-shrink:0;transition:transform .15s ease}.app-shell .user-menu-trigger[aria-expanded=true] .chevron{transform:rotate(180deg)}.app-shell .profile-menu{position:absolute;top:calc(100% + 10px);right:0;width:320px;background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-card),0 12px 32px #0f172a1f;z-index:200;overflow:hidden}.app-shell .profile-menu[hidden]{display:none}.app-shell .profile-menu-header{position:relative;display:flex;align-items:center;gap:14px;padding:18px 18px 16px;border-bottom:1px solid var(--color-border-light)}.app-shell .profile-menu-close{position:absolute;top:12px;right:12px;width:28px;height:28px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.app-shell .profile-menu-close:hover{background:var(--color-neutral-bg);color:var(--color-text-heading)}.app-shell .profile-menu-close app-proto-icon{width:14px;height:14px;display:block}.app-shell .profile-menu-photo,.app-shell .profile-menu-photo-fallback{width:56px;height:56px;border-radius:50%;flex-shrink:0;border:1.5px solid var(--color-primary-border, #b8e8e2);box-sizing:border-box;overflow:hidden}.app-shell .profile-menu-photo{object-fit:cover;display:block}.app-shell app-authenticated-profile-photo.profile-menu-photo{display:block}.app-shell .profile-menu-photo-fallback{background:var(--color-primary-light);color:var(--color-primary);display:flex;align-items:center;justify-content:center}.app-shell .profile-menu-photo-fallback app-proto-icon{width:28px;height:28px;font-size:28px;display:flex;align-items:center;justify-content:center;flex-shrink:0;line-height:0}.app-shell .profile-menu-identity{min-width:0;padding-right:24px}.app-shell .profile-menu-name{font-size:15px;font-weight:700;color:var(--color-text-heading);line-height:1.3}.app-shell .profile-menu-designation{margin-top:3px;font-size:13px;color:var(--color-text-muted)}.app-shell .profile-menu-section{padding:12px 18px;border-bottom:1px solid var(--color-border-light)}.app-shell .profile-menu-section-title{font-size:12px;font-weight:700;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}.app-shell .theme-picker{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;max-height:none;overflow:visible;padding-right:0}.app-shell .theme-option{display:flex;align-items:center;gap:6px;padding:6px 8px;min-height:0;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);font-size:12px;font-weight:500;line-height:1.2;color:var(--color-text-secondary);cursor:pointer;font-family:inherit}.app-shell .theme-option:hover{border-color:var(--color-primary-border);background:var(--color-primary-light)}.app-shell .theme-option.active{border-color:var(--color-primary);background:var(--color-primary-light);color:var(--color-primary);font-weight:600}.app-shell .theme-swatch{width:12px;height:12px;border-radius:50%;flex-shrink:0;border:1px solid rgba(0,0,0,.08)}.app-shell .theme-swatch-teal{background:#0d8074}.app-shell .theme-swatch-blue{background:#2563eb}.app-shell .theme-swatch-indigo{background:#4f46e5}.app-shell .theme-swatch-emerald{background:#059669}.app-shell .theme-swatch-violet{background:#7c3aed}.app-shell .theme-swatch-rose{background:#e11d48}.app-shell .theme-swatch-slate{background:#475569}.app-shell .theme-swatch-dark{background:linear-gradient(135deg,#0f172a 50%,#2dd4bf 50%)}.app-shell .theme-swatch-midnight{background:linear-gradient(135deg,#0b1120 50%,#60a5fa 50%)}.app-shell .profile-menu-footer{padding:12px 18px 14px;display:grid;grid-template-columns:1fr auto 1fr;gap:14px;align-items:center}.app-shell .profile-menu-footer-divider{width:1px;height:18px;background:var(--color-border-light);flex-shrink:0;pointer-events:none}.app-shell .profile-menu-action{box-sizing:border-box;display:flex;align-items:center;justify-content:center;gap:6px;width:100%;min-height:36px;padding:8px 10px;margin:0;border:none;border-radius:var(--radius-md);font-size:14px;font-weight:600;line-height:1.2;font-family:inherit;cursor:pointer;text-decoration:none;white-space:nowrap;transition:background .15s ease,color .15s ease}.app-shell .profile-menu-action app-proto-icon{width:16px;height:16px;font-size:16px;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;line-height:0}.app-shell .profile-menu-action app-proto-icon svg{width:16px;height:16px;display:block}.app-shell .profile-menu-action--password{background:transparent;color:var(--color-text-heading)}.app-shell .profile-menu-action--password:hover{background:var(--color-neutral-bg);color:var(--color-primary-dark)}.app-shell .profile-menu-action--logout{background:transparent;color:var(--color-danger)}.app-shell .profile-menu-action--logout:hover{background:color-mix(in srgb,var(--color-danger) 8%,transparent)}@media(max-width:640px){.app-shell .profile-menu{width:min(320px,100vw - 24px);max-width:calc(100vw - 24px);right:0;left:auto}}.app-shell .profile-menu-row-icon{display:flex;align-items:center;color:var(--color-text-muted);flex-shrink:0}.app-shell .profile-menu-row-icon svg,.app-shell .profile-menu-row-icon app-proto-icon{width:15px;height:15px;display:inline-flex}.app-shell .profile-menu-row-text{font-size:13px;font-weight:600;color:var(--color-text-secondary);white-space:nowrap}.app-shell .profile-menu-settings-btn{display:flex;align-items:center;gap:7px;width:100%;background:transparent;border:none;cursor:pointer;font-family:inherit;padding:0;text-align:left;color:var(--color-text-secondary);transition:color .15s ease}.app-shell .profile-menu-settings-btn:hover,.app-shell .profile-menu-settings-btn:hover .profile-menu-row-text{color:var(--color-primary)}.app-shell .profile-menu-settings-chevron{width:14px;height:14px;margin-left:auto;color:var(--color-text-muted);flex-shrink:0;display:inline-flex}.page-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:18px;gap:16px}.page-header.page-header--centered{align-items:center}.page-title{margin:0;font-size:24px;font-weight:700;color:var(--color-text-heading);letter-spacing:-.02em;line-height:1.2}.app-shell .content .page-title{font-size:26px}.page-subtitle{margin:4px 0 0;font-size:14px;color:var(--color-text-muted);line-height:1.4}.app-shell .content .page-subtitle{margin-top:6px}.page-header-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}.page-header-actions .btn-outline,.page-header-actions .btn-primary{width:auto}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-md);padding:10px 20px;font-size:14px;font-weight:600;cursor:pointer;white-space:nowrap;font-family:inherit;box-shadow:0 1px 2px #0d807433}.btn-primary:hover{background:var(--color-primary-hover)}.btn-primary mat-icon,.btn-primary app-proto-icon{font-size:16px;width:16px;height:16px;flex-shrink:0}.btn-primary app-proto-icon{display:inline-flex;line-height:0}.btn-primary svg{width:16px;height:16px}.btn-outline{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:var(--color-surface);color:var(--color-text-heading);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:10px 18px;font-size:14px;font-weight:600;cursor:pointer;white-space:nowrap;font-family:inherit}.master-code{font-weight:600;color:var(--color-text-heading);font-size:14px;font-variant-numeric:tabular-nums}.master-name{font-weight:600;color:var(--color-text-heading);font-size:14px}.flag-pill{display:inline-block;padding:2px 10px;border-radius:12px;font-size:.875rem;font-weight:500;line-height:1.4}.flag-pill--yes{background:var(--color-badge-active-bg, #dcfce7);color:var(--color-badge-active-text, #166534)}.flag-pill--no{background:var(--color-badge-inactive-bg, #f3f4f6);color:var(--color-text-muted, #6b7280)}.flag-pill--corrected{background:var(--color-corrected-bg);color:var(--color-corrected-accent)}.col-flag{min-width:80px;text-align:center}.badge{display:inline-block;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600;line-height:1.3;max-width:100%;overflow-wrap:anywhere}.badge.active{background:var(--color-success-bg);color:var(--color-success-text)}.badge.inactive{background:var(--color-neutral-bg);color:var(--color-neutral-text)}.badge.locked{background:var(--color-neutral-bg);color:var(--color-danger-text)}.badge.unlinked{background:var(--color-warning-bg);color:var(--color-warning-text)}.badge.leave{background:var(--color-leave-bg, #eff6ff);color:var(--color-leave-accent, #3b82f6)}.badge.holiday{background:var(--color-holiday-bg, #f5f3ff);color:var(--color-holiday-accent, #7c3aed)}.badge.available{background:var(--color-success-bg);color:var(--color-success-text)}.badge.on-leave{background:var(--color-leave-bg, #dbeafe);color:var(--color-leave-accent, #1d4ed8)}.badge.draft{background:var(--color-neutral-bg);color:var(--color-text-muted)}.badge.pending{background:var(--color-warning-bg);color:var(--color-warning-text)}.badge.approved{background:var(--color-success-bg);color:var(--color-success-text)}.badge.rejected{background:var(--color-danger-bg);color:var(--color-danger-text)}.badge.cancelled{background:var(--color-neutral-bg);color:var(--color-text-heading)}.badge.login-audit-event-successful-login{background:#ccfbf1;color:#0f766e}.badge.login-audit-event-failed-login{background:var(--color-danger-bg);color:var(--color-danger-text)}.badge.login-audit-event-logout{background:var(--color-neutral-bg);color:var(--color-neutral-text)}.badge.login-audit-event-account-locked{background:var(--color-warning-bg);color:var(--color-warning-text)}.badge.login-audit-event-unlock{background:#dbeafe;color:#1d4ed8}.badge.login-audit-event-password-changed,.badge.login-audit-event-password-reset{background:#ede9fe;color:#6d28d9}.badge.login-audit-event-default{background:var(--color-neutral-bg);color:var(--color-text-muted)}.role-chips{display:flex;flex-wrap:wrap;gap:6px;max-width:220px}.role-chip{display:inline-block;padding:3px 10px;border-radius:20px;font-size:12px;font-weight:500;line-height:1.3;background:var(--color-info-bg);color:var(--color-info-text);white-space:nowrap}.role-chip-more{background:var(--color-neutral-bg);color:var(--color-text-muted)}.master-empty-cell{color:var(--color-text-muted);font-size:14px}.list-error{margin-bottom:16px;padding:12px 16px;border-radius:var(--radius-md);background:var(--color-danger-bg);color:var(--color-danger-text);font-size:14px;font-weight:500}.view-toggle{display:flex;border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden;flex-shrink:0}.view-toggle-btn{border:none;padding:8px 14px;font-size:13px;font-weight:600;cursor:pointer;font-family:inherit;background:var(--color-surface);color:var(--color-text-secondary);transition:background .15s ease,color .15s ease}.view-toggle-btn+.view-toggle-btn{border-left:1px solid var(--color-border)}.view-toggle-btn.active{background:var(--color-primary-light);color:var(--color-primary)}.export-dropdown{position:relative;display:inline-flex}.export-menu{position:absolute;top:calc(100% + 6px);right:0;z-index:50;min-width:140px;max-width:min(280px,80vw);padding:6px;border:1px solid var(--color-border-light);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-card),0 12px 32px #0f172a1f;overflow:hidden}.export-menu button{display:block;width:100%;border:none;border-radius:var(--radius-md);background:transparent;text-align:left;padding:10px 12px;font:inherit;font-size:14px;font-weight:500;color:var(--color-text-heading);cursor:pointer;line-height:1.3}.export-menu button:hover{background:var(--color-neutral-bg);color:var(--color-text-heading)}@media(max-width:1024px){.page-header{flex-wrap:wrap}.page-subtitle{overflow-wrap:anywhere;word-break:break-word}}@media(max-width:640px){.page-header{flex-direction:column;align-items:stretch;gap:12px;margin-bottom:14px}.page-title,.app-shell .content .page-title{font-size:20px}.page-subtitle,.app-shell .content .page-subtitle{font-size:13px}.page-header-actions{width:100%}.page-header-actions .btn-primary,.page-header-actions .btn-outline{width:100%;min-height:44px;padding:12px 20px}.actions .action-approve{min-height:40px}}input[type=date].date-input-empty,input[type=date].date-input-empty::-webkit-datetime-edit,input[type=date].date-input-empty::-webkit-datetime-edit-fields-wrapper,input[type=date].date-input-empty::-webkit-datetime-edit-text,input[type=date].date-input-empty::-webkit-datetime-edit-month-field,input[type=date].date-input-empty::-webkit-datetime-edit-day-field,input[type=date].date-input-empty::-webkit-datetime-edit-year-field{color:var(--color-text-muted, #9ca3af)!important;-webkit-text-fill-color:var(--color-text-muted, #9ca3af)}input[type=date]:not(.date-input-empty){color:var(--color-text-heading, #111827);-webkit-text-fill-color:var(--color-text-heading, #111827)}.field-empty-dash{font-size:12px;font-weight:400;line-height:1;color:var(--color-text-muted, #9ca3af);opacity:.75}:root,[data-theme]{--exact-datepicker-bg: #f8fafc;--exact-datepicker-border: #e2e8f0;--exact-datepicker-shadow: 0 0 0 1px var(--exact-datepicker-border), 0 10px 15px -3px rgba(15, 23, 42, .1), 0 4px 6px -4px rgba(15, 23, 42, .06);--mat-datepicker-calendar-container-background-color: var(--exact-datepicker-bg);--mat-datepicker-calendar-container-text-color: var(--color-text-heading, #111827);--mat-datepicker-calendar-container-elevation-shadow: var(--exact-datepicker-shadow);--mat-datepicker-calendar-body-label-text-color: var(--color-text-muted, #9ca3af);--mat-datepicker-calendar-header-text-color: var(--color-text-heading, #111827);--mat-datepicker-calendar-header-divider-color: var(--color-border-light, #e8ecf1);--mat-datepicker-calendar-period-button-text-color: var(--color-text-heading, #111827);--mat-datepicker-calendar-period-button-icon-color: var(--color-text-secondary, #6b7280);--mat-datepicker-calendar-navigation-button-icon-color: var(--color-text-secondary, #6b7280);--mat-datepicker-calendar-date-text-color: var(--color-text-heading, #111827);--mat-datepicker-calendar-date-outline-color: transparent;--mat-datepicker-calendar-date-hover-state-background-color: var(--color-primary-light, #e6f7f5);--mat-datepicker-calendar-date-focus-state-background-color: var(--color-primary-light, #e6f7f5);--mat-datepicker-calendar-date-selected-state-background-color: var(--color-primary, #0d8074);--mat-datepicker-calendar-date-selected-state-text-color: #ffffff;--mat-datepicker-calendar-date-selected-disabled-state-background-color: color-mix( in srgb, var(--color-primary, #0d8074) 40%, transparent );--mat-datepicker-calendar-date-today-outline-color: var(--color-primary, #0d8074);--mat-datepicker-calendar-date-today-selected-state-outline-color: #ffffff;--mat-datepicker-calendar-date-today-disabled-state-outline-color: var(--color-text-muted, #9ca3af);--mat-datepicker-calendar-date-disabled-state-text-color: var(--color-text-muted, #9ca3af);--mat-datepicker-calendar-date-preview-state-outline-color: var(--color-primary, #0d8074);--mat-datepicker-calendar-date-in-range-state-background-color: var(--color-primary-light, #e6f7f5)}[data-theme=dark],[data-theme=midnight]{--exact-datepicker-bg: var(--color-surface, #1e293b);--exact-datepicker-border: #475569;--exact-datepicker-shadow: 0 0 0 1px var(--exact-datepicker-border), 0 16px 40px rgba(0, 0, 0, .5);--mat-datepicker-calendar-date-selected-state-text-color: #0f172a;--mat-datepicker-calendar-date-today-selected-state-outline-color: #0f172a}.mat-datepicker-content:has(.exact-datepicker-panel),.mat-datepicker-content:has(mat-calendar.exact-datepicker-panel){border:1px solid var(--exact-datepicker-border)!important;border-radius:12px!important;background:var(--exact-datepicker-bg)!important;box-shadow:var(--exact-datepicker-shadow)!important;color:var(--color-text-heading, #111827);overflow:hidden}.mat-datepicker-content:has(.exact-datepicker-panel) .mat-datepicker-content-container{min-height:0!important}.mat-datepicker-content:has(.exact-datepicker-panel) .mat-calendar,.mat-datepicker-content .mat-calendar.exact-datepicker-panel,mat-calendar.exact-datepicker-panel.mat-calendar,.mat-calendar.exact-datepicker-panel{font-family:inherit;width:304px;height:auto!important;min-height:0!important;background:var(--exact-datepicker-bg)!important;color:var(--color-text-heading, #111827);box-sizing:border-box}.exact-datepicker-panel .mat-calendar-header{padding:12px 12px 0;background:var(--exact-datepicker-bg)!important}.exact-datepicker-panel .mat-calendar-content{background:var(--exact-datepicker-bg)!important;padding:0 12px 16px}.exact-datepicker-panel .mat-calendar-controls{margin:0 0 4px}.exact-datepicker-panel .mat-calendar-period-button{font-weight:600;font-size:14px;letter-spacing:.01em;color:var(--color-text-heading, #111827);border-radius:8px}.exact-datepicker-panel .mat-calendar-previous-button,.exact-datepicker-panel .mat-calendar-next-button{color:var(--color-text-secondary, #6b7280);border-radius:8px}.exact-datepicker-panel .mat-calendar-previous-button:hover,.exact-datepicker-panel .mat-calendar-next-button:hover,.exact-datepicker-panel .mat-calendar-period-button:hover{background:color-mix(in srgb,var(--color-primary-light, #e6f7f5) 85%,transparent);color:var(--color-primary, #0d8074)}.exact-datepicker-panel .mat-calendar-table-header th{color:var(--color-text-muted, #9ca3af);font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.exact-datepicker-panel .mat-calendar-body-label{color:var(--color-text-muted, #9ca3af);font-weight:600;font-size:12px}.exact-datepicker-panel .mat-calendar-body-cell-content{display:flex!important;align-items:center;justify-content:center;top:5%;left:5%;width:90%!important;height:90%!important;line-height:1!important;padding:0;border-radius:999px;box-sizing:border-box;font-size:14px;font-weight:500;color:var(--color-text-heading, #111827)}.exact-datepicker-panel .mat-calendar-body-cell:not(.mat-calendar-body-disabled):hover>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected):not(.mat-calendar-body-comparison-identical){background:var(--color-primary-light, #e6f7f5)!important;color:var(--color-primary-dark, #0d4d44)}.exact-datepicker-panel .mat-calendar-body-today:not(.mat-calendar-body-selected){border:1.5px solid var(--color-primary, #0d8074)!important;color:var(--color-primary, #0d8074)!important;font-weight:600;background:transparent}.exact-datepicker-panel .mat-calendar-body-selected{background-color:var(--color-primary, #0d8074)!important;color:#fff!important;font-weight:600;border-color:transparent!important}[data-theme=dark] .exact-datepicker-panel .mat-calendar-body-selected,[data-theme=midnight] .exact-datepicker-panel .mat-calendar-body-selected{color:#0f172a!important}.exact-datepicker-panel .mat-calendar-body-cell:not(.mat-calendar-body-disabled)>.mat-calendar-body-selected:hover{background-color:var(--color-primary-hover, #0a6b61)!important}.exact-datepicker-panel .mat-calendar-body-disabled>.mat-calendar-body-cell-content:not(.mat-calendar-body-selected){color:var(--color-text-muted, #9ca3af);opacity:.4}.stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:20px}.stats-row-3{grid-template-columns:repeat(3,1fr)}.stats-row-2{grid-template-columns:repeat(2,1fr)}.stats-row-5,.stats-row-6{grid-template-columns:repeat(4,1fr)}.stat-card{background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border-light);box-shadow:var(--shadow-card);padding:18px 20px 14px;position:relative;overflow:hidden;min-height:110px}.stat-top{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:12px}.stat-icon{width:40px;height:40px;border-radius:var(--radius-md);display:flex;align-items:center;justify-content:center}.stat-icon svg{width:20px;height:20px}.stat-icon.teal{background:var(--stat-teal-bg);color:var(--stat-teal-text)}.stat-icon.green{background:var(--stat-green-bg);color:var(--stat-green-text)}.stat-icon.red{background:var(--stat-red-bg);color:var(--stat-red-text)}.stat-icon.blue{background:var(--stat-blue-bg);color:var(--stat-blue-text)}.stat-icon.orange{background:var(--stat-orange-bg);color:var(--stat-orange-text)}.stat-icon.purple{background:var(--stat-purple-bg);color:var(--stat-purple-text)}.stat-label{font-size:14px;color:var(--color-text-muted);font-weight:500;text-align:right;line-height:1.3;padding-top:2px}.stat-value{font-size:28px;font-weight:700;color:var(--color-text-heading);letter-spacing:-.02em;line-height:1;margin-bottom:8px}.stat-trend{font-size:12px;font-weight:500;display:flex;align-items:center;gap:2px}.stat-trend.up{color:#10b981}.stat-trend.down{color:var(--color-danger)}.stat-trend.neutral{color:var(--color-text-muted)}.stat-trend span{color:var(--color-text-muted);font-weight:400}.filter-card{background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border-light);box-shadow:var(--shadow-card);padding:16px 20px;margin-bottom:20px}.filter-bar{display:flex;align-items:center;gap:12px}.user-filters .filter-bar,.team-leave-filters .filter-bar,.history-filters .filter-bar{flex-wrap:wrap;row-gap:10px}.search-box{flex:1;min-width:0;display:flex;align-items:center;gap:10px;background:color-mix(in srgb,var(--color-input-bg, #f3f4f6) 40%,var(--color-surface, #fff));border:1px solid var(--color-border);border-radius:var(--radius-md);padding:11px 14px;color:var(--color-text-muted);min-height:42px;box-sizing:border-box;transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease}.search-box:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light);background:var(--color-surface)}.search-box svg,.search-box app-proto-icon{width:16px;height:16px;font-size:16px;flex-shrink:0;display:block;color:inherit}.search-box input{border:none;outline:none;font-size:14px;color:var(--color-text-secondary);width:100%;background:transparent;font-family:inherit}.search-box input::placeholder{color:var(--color-text-muted)}.filter-select{display:flex;align-items:center;gap:8px;border:1px solid var(--color-border);border-radius:var(--radius-md);padding:11px 14px;font-size:14px;font-weight:500;color:var(--color-text-secondary);background:var(--color-surface);white-space:nowrap;flex-shrink:0;cursor:default;min-height:42px;box-sizing:border-box;transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease}.filter-select svg{width:14px;height:14px;color:var(--color-text-muted);flex-shrink:0}.filter-select-control:has(>select){position:relative;padding:0;cursor:pointer;background:var(--color-surface);overflow:hidden}.filter-select-control:has(>select):hover{border-color:var(--color-primary-border)}.filter-select-control:has(>select):focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light);background:var(--color-surface)}.filter-select-control:has(>select)>select{appearance:none;-webkit-appearance:none;display:block;border:none;background:transparent;font:inherit;font-size:14px;font-weight:500;color:var(--color-text-secondary);margin:0;outline:none;cursor:pointer;min-width:132px;max-width:180px;width:100%;height:100%;min-height:42px;line-height:1.2;padding:11px 32px 11px 14px;box-sizing:border-box}.filter-select-control.filter-select-wide:has(>select)>select{min-width:168px;max-width:220px}.filter-select-control:has(>select)>svg,.filter-select-control:has(>select)>app-proto-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);pointer-events:none;z-index:1;transition:transform .15s ease}.filter-select-control:has(>select).is-select-open>svg,.filter-select-control:has(>select).is-select-open>app-proto-icon{transform:translateY(-50%) rotate(180deg)}.filter-select-control:has(>select)>app-proto-icon{width:14px;height:14px;font-size:14px;color:var(--color-text-muted)}.filter-select-control:has(>select)>app-proto-icon svg{width:14px;height:14px;display:block;pointer-events:none}.user-filters,.role-filters,.login-audit-filters,.user-filters .filter-bar,.role-filters .filter-bar,.login-audit-filters .filter-bar,.user-filters .filter-bar-extra,.role-filters .filter-bar-extra,.login-audit-filters .filter-bar-extra{overflow:visible}.filter-dropdown{display:flex;overflow:visible;z-index:5;min-width:132px;padding:0;cursor:pointer;background:var(--color-surface)}.filter-dropdown.filter-select-wide{min-width:168px}.filter-dropdown.is-open{z-index:40;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light);background:var(--color-surface)}.filter-dropdown-trigger{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:42px;padding:11px 14px;border:none;border-radius:inherit;background:transparent;font:inherit;font-size:14px;font-weight:500;color:var(--color-text-secondary);cursor:pointer;text-align:left;font-family:inherit;box-sizing:border-box}.filter-dropdown-value{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.filter-dropdown-trigger app-proto-icon{position:static;transform:none;width:14px;height:14px;font-size:14px;color:var(--color-text-muted);flex-shrink:0;transition:transform .15s ease;pointer-events:none;display:block}.filter-dropdown-trigger app-proto-icon svg{width:14px;height:14px;display:block;pointer-events:none;transform:none}.filter-dropdown:not(.select-dropdown).is-open .filter-dropdown-trigger>app-proto-icon{transform:rotate(180deg)}.select-dropdown.is-open .select-dropdown__chevron{transform:rotate(180deg)}.select-dropdown__clear{flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;margin:0;padding:0;border:none;border-radius:var(--radius-sm, 6px);background:transparent;color:var(--color-text-muted);cursor:pointer;font:inherit;line-height:0}.select-dropdown__clear:hover{color:var(--color-primary, #0d8074);background:var(--color-primary-light, #e6f7f5)}.select-dropdown__clear app-proto-icon{display:flex;width:14px;height:14px;font-size:14px;line-height:0;pointer-events:none;transform:none!important}.select-dropdown__clear app-proto-icon svg{width:14px;height:14px;display:block}.filter-dropdown-menu{position:absolute;top:calc(100% + 6px);left:0;min-width:100%;width:max-content;max-width:min(280px,80vw);max-height:260px;overflow-x:hidden;overflow-y:auto;padding:6px;border:1px solid var(--color-border-light);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-card),0 12px 32px #0f172a1f;z-index:50;scrollbar-width:none;-ms-overflow-style:none}.filter-dropdown-menu::-webkit-scrollbar{display:none}.filter-dropdown-menu[hidden]{display:none}.filter-dropdown-option{display:block;width:100%;padding:10px 12px;border:none;border-radius:var(--radius-md);background:transparent;text-align:left;font:inherit;font-size:14px;font-weight:500;color:var(--color-text-heading);cursor:pointer;font-family:inherit;line-height:1.3;white-space:nowrap}.filter-dropdown-option:hover,.filter-dropdown-option:focus{background:var(--color-neutral-bg);outline:none}.filter-dropdown-option.is-selected{background:var(--color-primary-light);color:var(--color-primary);font-weight:600}.select-dropdown{width:100%;min-width:0;z-index:5}.select-dropdown.is-open{z-index:40}.select-dropdown .select-dropdown-menu,.select-dropdown .filter-dropdown-menu{width:100%;max-width:none;min-width:100%}.select-dropdown.has-placeholder .filter-dropdown-value{color:var(--color-text-muted);font-weight:500}.select-dropdown.is-disabled{opacity:.65;pointer-events:none;cursor:not-allowed}.select-dropdown .filter-dropdown-trigger:disabled{cursor:not-allowed}.modal-field-input.modal-field-select,.field-input:has(>select){background:var(--color-surface);transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease}.modal-field-input.modal-field-select:hover,.field-input:has(>select):hover{border-color:var(--color-primary-border)}.modal-field-input.modal-field-select:focus-within,.field-input:has(>select):focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light);background:var(--color-surface)}.modal-field-input.modal-field-select select,.field-input:has(>select)>select{font-weight:500;color:var(--color-text-secondary)}.modal-field-input:has(>app-select-dropdown),.field-input:has(>app-select-dropdown){padding:0;border:none;background:transparent;box-shadow:none;overflow:visible;min-height:0}.modal-body:has(.select-dropdown.is-open),.modal-dialog:has(.select-dropdown.is-open){overflow:visible}.filter-date-range{gap:6px;min-width:0;padding:6px 12px;background:var(--color-surface);cursor:default}.filter-date-range:hover{border-color:var(--color-primary-border)}.filter-date-range:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light);background:var(--color-surface)}.filter-date-range>svg:first-child,.filter-date-range>app-proto-icon:first-child{width:15px;height:15px;color:var(--color-text-muted);flex-shrink:0;pointer-events:none}.filter-date-range>app-proto-icon:first-child{font-size:15px}.filter-date-sep{color:var(--color-text-muted);font-weight:500;font-size:14px;line-height:1;flex-shrink:0;pointer-events:none}.filter-date-range app-exact-date-input{flex:1 1 auto;min-width:0;width:auto}.reset-link{display:inline-flex;align-items:center;gap:4px;font-size:14px;font-weight:600;color:var(--color-primary);white-space:nowrap;flex-shrink:0;margin-left:4px;cursor:pointer;border:none;background:none;padding:0;font-family:inherit;line-height:1.2}button.reset-link:hover{color:var(--color-primary-hover)}.filter-date{min-width:200px}.filter-date svg:first-child{width:15px;height:15px;color:var(--color-text-muted)}.reset-link svg,.reset-link app-proto-icon{width:14px;height:14px;font-size:14px;display:block;flex-shrink:0;color:inherit}.filter-toggle{display:none;align-items:center;justify-content:center;gap:8px;flex:1 1 auto;min-height:40px;padding:10px 14px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text-secondary);font-size:14px;font-weight:600;font-family:inherit;cursor:pointer;white-space:nowrap}.filter-toggle svg,.filter-toggle app-proto-icon{width:14px;height:14px;font-size:14px;flex-shrink:0;display:block}.filter-toggle svg:first-child,.filter-toggle app-proto-icon:first-child{color:var(--color-text-muted)}.filter-bar-extra{display:contents}@media(max-width:1024px){.stats-row,.stats-row-2,.stats-row-3,.stats-row-5,.stats-row-6{grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:16px}.stat-card{min-height:100px;padding:14px 16px 10px}.stat-value{font-size:22px}.filter-bar{flex-wrap:wrap}.search-box{flex:1 1 100%}.filter-bar-extra .reset-link{flex:1 1 100%;margin-left:0;margin-top:4px}}@media(max-width:640px){.stats-row,.stats-row-2,.stats-row-3,.stats-row-5,.stats-row-6{gap:10px;margin-bottom:14px}.stat-card{min-height:88px;padding:12px 14px 8px}.stat-icon{width:34px;height:34px}.stat-icon svg{width:16px;height:16px}.stat-label{font-size:13px}.stat-value{font-size:20px;margin-bottom:4px}.stat-trend{font-size:11px}.filter-card{padding:12px 14px;margin-bottom:14px}.filter-bar{gap:8px}.filter-bar-collapsible .filter-toggle{display:inline-flex;flex:1 1 calc(50% - 4px)}.filter-bar-collapsible .filter-bar-extra{display:none;flex:1 1 100%;flex-wrap:wrap;gap:8px;align-items:center}.filter-bar-collapsible.is-expanded .filter-toggle>app-proto-icon:last-child{transform:rotate(180deg)}.filter-bar-collapsible.is-expanded .filter-bar-extra{display:flex}.search-box{flex:1 1 100%;padding:10px 12px}.filter-bar-extra .filter-select{flex:1 1 calc(50% - 4px);min-width:0;white-space:normal;padding:10px 12px;font-size:13px;min-height:40px}.filter-bar-extra .filter-select.filter-dropdown{padding:0}.filter-bar-extra .filter-select-control:has(>select){padding:0}.filter-bar-extra .filter-select-control:has(>select)>select,.filter-bar-extra .filter-select-control.filter-select-wide:has(>select)>select{min-width:0;max-width:none;padding:10px 28px 10px 12px;min-height:40px}.filter-bar-extra .filter-dropdown{flex:1 1 calc(50% - 4px);min-width:0}.filter-bar-extra .filter-dropdown-trigger{min-height:40px;padding:10px 12px;font-size:13px}.filter-bar-extra .filter-dropdown-menu{max-width:min(100vw - 40px,280px)}.filter-bar-extra .filter-date-range{flex:1 1 100%;min-width:0}.filter-bar-extra .filter-date-range input[type=date]{flex:1 1 0;width:auto;min-width:0}.filter-bar-extra .reset-link{text-align:center;padding:8px 0;min-height:40px;display:flex;align-items:center;justify-content:center;flex:1 1 100%;margin-left:0;margin-top:0}}.stat-icon mat-icon,.stat-icon app-proto-icon{font-size:20px;width:20px;height:20px}.stat-icon app-proto-icon{display:inline-flex;line-height:0}.search-box mat-icon,.search-box app-proto-icon,.filter-dropdown-trigger mat-icon,.filter-dropdown-trigger app-proto-icon,.reset-link mat-icon,.reset-link app-proto-icon,.filter-toggle mat-icon,.filter-toggle app-proto-icon{flex-shrink:0}.table-card{background:var(--color-surface);border-radius:var(--radius-lg);border:1px solid var(--color-border-light);box-shadow:var(--shadow-card);overflow:hidden}.table-card.is-responsive-list{overflow:visible}.table-card.is-responsive-list .table-scroll{overflow-x:auto;overflow-y:hidden;border-radius:var(--radius-lg) var(--radius-lg) 0 0}.table-card table{width:100%;border-collapse:collapse}.table-card thead th{text-align:left;font-size:12px;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.05em;padding:13px 20px;border-bottom:1px solid var(--color-table-border);background:var(--color-table-header-bg)}.table-card thead th:first-child{padding-left:24px}.table-card thead th:last-child{padding-right:24px}.table-card .th-sortable{cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.table-card .th-sortable .th-sortable-label{vertical-align:middle}.table-card .th-sortable .sort-affordance{display:inline-flex;align-items:center;margin-left:4px;vertical-align:middle;opacity:.35;color:var(--color-text-muted);transition:opacity .15s ease,color .15s ease,transform .15s ease}.table-card .th-sortable .sort-affordance svg{width:12px;height:12px;flex-shrink:0}.table-card .th-sortable:hover .sort-affordance{opacity:.7}.table-card .th-sortable.is-sorted-asc .sort-affordance,.table-card .th-sortable.is-sorted-desc .sort-affordance{opacity:1;color:var(--color-primary)}.table-card .th-sortable.is-sorted-asc .sort-affordance{transform:rotate(180deg)}.table-card tbody td{padding:16px 20px;font-size:14px;color:var(--color-table-cell-text);border-bottom:1px solid var(--color-table-row-border);vertical-align:middle}.table-card tbody td:first-child{padding-left:24px;color:var(--color-text-secondary);font-weight:500}.table-card tbody td:last-child{padding-right:24px}.table-card tbody tr:last-child td{border-bottom:none}.emp-cell{display:flex;align-items:center;gap:12px}.emp-avatar{width:36px;height:36px;border-radius:50%;object-fit:cover;flex-shrink:0}.emp-name{font-weight:600;color:var(--color-text-heading);font-size:14px;line-height:1.35}.emp-email{font-size:12px;color:var(--color-text-muted);line-height:1.35;margin-top:1px}.attendance-name{font-weight:600;color:var(--color-text-heading);font-size:14px}.actions{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.action-btn{width:32px;height:32px;border:1px solid var(--color-primary-border);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;color:var(--color-primary);background:var(--color-primary-light);cursor:default;flex-shrink:0;padding:0;font:inherit}button.action-btn{cursor:pointer}.action-btn svg,.action-btn app-proto-icon{width:14px;height:14px;font-size:14px;flex-shrink:0;display:block;color:inherit}.action-btn.action-btn-remove{border-color:transparent;background:var(--color-danger-bg);color:var(--color-danger-text)}.action-approve{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:30px;padding:0 13px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text-heading);font-size:13px;font-weight:600;font-family:inherit;cursor:default;white-space:nowrap;letter-spacing:-.01em;box-shadow:0 1px 2px #0f172a0d;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}button.action-approve{cursor:pointer}.action-approve-icon{display:inline-flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:var(--radius-sm);background:var(--color-primary-light);color:var(--color-primary);flex-shrink:0}.action-approve-icon svg,.action-approve-icon app-proto-icon{width:12px;height:12px;font-size:13px;display:block;color:inherit}.table-footer{display:flex;align-items:center;justify-content:space-between;padding:14px 24px;border-top:1px solid var(--color-table-border);font-size:13px;color:var(--color-text-muted);position:relative;z-index:20;overflow:visible;border-radius:0 0 var(--radius-lg) var(--radius-lg);background:var(--color-surface)}.pagination-right{display:flex;align-items:center;gap:16px;overflow:visible;position:relative;z-index:25}.rows-per-page{display:flex;align-items:center;gap:8px;overflow:visible;position:relative;z-index:30}.rows-select{position:relative;display:inline-flex;align-items:center;z-index:5}.rows-select.is-open{z-index:60}.rows-select-trigger{display:inline-flex;align-items:center;gap:4px;border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:5px 8px;font-size:13px;font-family:inherit;font-weight:500;line-height:1.2;color:var(--color-text);background:var(--color-surface);cursor:pointer;white-space:nowrap}.rows-select.is-open .rows-select-trigger{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.rows-select-trigger svg,.rows-select-trigger app-proto-icon{width:12px;height:12px;font-size:13px;color:var(--color-text-muted);flex-shrink:0;display:block;transition:transform .15s ease;pointer-events:none}.rows-select.is-open .rows-select-trigger app-proto-icon{transform:rotate(180deg)}.rows-select-menu.filter-dropdown-menu,.rows-select-menu{top:calc(100% + 6px);bottom:auto;left:auto;right:0;min-width:72px;width:max-content;z-index:70}.rows-select-menu.filter-dropdown-menu.rows-select-menu--up,.rows-select-menu.rows-select-menu--up{top:auto;bottom:calc(100% + 6px)}.pager{display:flex;align-items:center;gap:4px;flex-wrap:wrap;justify-content:center}.pager-btn{width:30px;height:30px;border:1px solid var(--color-border);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;color:var(--color-text-secondary);background:var(--color-surface);font-size:13px;font-family:inherit;cursor:pointer;flex-shrink:0;padding:0}.pager-btn:disabled{opacity:.4;cursor:default}.pager-btn.active{background:var(--color-primary);color:#fff;border-color:var(--color-primary);font-weight:600}.pager-btn svg,.pager-btn app-proto-icon{width:12px;height:12px;font-size:13px;display:block;color:inherit}.pager-ellipsis{padding:0 4px;color:var(--color-text-muted)}.leave-upcoming{display:flex;flex-direction:column;gap:4px;font-size:14px;color:var(--color-table-cell-text);line-height:1.4}.leave-upcoming-empty{color:var(--color-text-muted)}.leave-balance{font-weight:500;color:var(--color-text-heading)}.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.table-scroll::-webkit-scrollbar{display:none}.table-scroll table{min-width:var(--table-min-width, 720px)}.table-card.is-responsive-list .col-mobile-only{display:none}@media(min-width:641px)and (max-width:1024px){.table-card.is-responsive-list .table-scroll table th:first-child,.table-card.is-responsive-list .table-scroll table td:first-child{position:sticky;left:0;z-index:1}.table-card.is-responsive-list .table-scroll table thead th:first-child{background:var(--color-table-header-bg)}.table-card.is-responsive-list .table-scroll table tbody td:first-child{background:var(--color-surface)}}@media(max-width:1024px){.action-btn{width:40px;height:40px}.action-btn svg{width:16px;height:16px}.action-approve{min-height:40px}}@media(max-width:640px){.table-card.is-responsive-list{overflow:visible;background:transparent;border:none;box-shadow:none}.table-card.is-responsive-list .table-scroll{overflow:visible}.table-card.is-responsive-list table,.table-card.is-responsive-list thead,.table-card.is-responsive-list tbody,.table-card.is-responsive-list tr,.table-card.is-responsive-list td{display:block;width:100%;min-width:0!important}.table-card.is-responsive-list thead{display:none}.table-card.is-responsive-list tbody{display:flex;flex-direction:column;gap:10px}.table-card.is-responsive-list tbody tr{display:flex;flex-direction:column;background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:14px 16px}.table-card.is-responsive-list tbody td{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding:6px 0;border:none;font-size:14px;text-align:right}.table-card.is-responsive-list tbody td:first-child,.table-card.is-responsive-list tbody td:last-child{padding-left:0;padding-right:0}.table-card.is-responsive-list tbody td:before{content:attr(data-label);font-size:13px;font-weight:500;color:var(--color-text-muted);flex-shrink:0;min-width:88px;text-align:left;text-transform:none;letter-spacing:normal}.table-card.is-responsive-list tbody td.col-hide-mobile{display:none!important}.table-card.is-responsive-list tbody td.col-mobile-only{display:flex}.table-card.is-responsive-list tbody td.col-mobile-header{flex-direction:column;align-items:stretch;order:-2;padding-bottom:10px;margin-bottom:4px;border-bottom:1px solid var(--color-table-row-border);text-align:left}.table-card.is-responsive-list tbody td.col-mobile-header:before{display:none}.table-card.is-responsive-list tbody td.col-mobile-header .emp-cell{width:100%}.table-card.is-responsive-list tbody td.col-mobile-actions{order:99;padding-top:10px;margin-top:4px;border-top:1px solid var(--color-table-row-border);justify-content:flex-end}.table-card.is-responsive-list tbody td.col-mobile-actions:before{display:none}.table-card.is-responsive-list tbody td.col-mobile-actions .actions{justify-content:flex-end;width:100%;gap:10px}.table-card.is-responsive-list .action-btn{width:44px;height:44px}.table-card.is-responsive-list .action-approve{min-height:44px;padding:0 14px}.table-card.is-responsive-list .badge{max-width:100%;overflow-wrap:anywhere}.table-footer{flex-direction:column;gap:12px;align-items:stretch;padding:12px 16px;background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);margin-top:10px}.table-card:not(.is-responsive-list) .table-footer{margin-top:0}.pagination-right{flex-direction:column;gap:10px;align-items:center;width:100%}.pager-btn{width:40px;height:40px}.rows-select-trigger{min-height:40px;padding:8px 10px}.table-card.is-responsive-list .role-chips{max-width:none;justify-content:flex-end}.table-card.is-responsive-list .user-actions,.table-card.is-responsive-list .actions.user-actions{flex-wrap:wrap}}.app-exact-dialog .mat-mdc-dialog-container{--mdc-dialog-container-color: transparent;--mdc-dialog-container-shape: var(--radius-lg);padding:0;background:transparent;box-shadow:none;max-height:calc(100vh - 48px)}.app-exact-dialog .mat-mdc-dialog-surface{padding:0;background:transparent;box-shadow:none;overflow:visible}.modal-dialog{width:100%;max-width:760px;max-height:calc(100vh - 48px);overflow:auto;background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-modal)}.modal-dialog:where(dialog){position:static;inset:auto;margin:0;padding:0;color:inherit}.modal-dialog-wide{max-width:1100px}.modal-dialog.modal-dialog-wide.apply-leave-modal-dialog{max-width:min(1280px,96vw)}.cdk-overlay-pane.app-exact-dialog--apply-leave{width:min(1280px,96vw)!important;max-width:min(1280px,96vw)!important;height:min(860px,100vh - 40px);max-height:calc(100vh - 40px)}.cdk-overlay-pane.app-exact-dialog--apply-leave .mat-mdc-dialog-container,.cdk-overlay-pane.app-exact-dialog--apply-leave .mat-mdc-dialog-surface{width:100%;height:100%;max-height:100%}.cdk-overlay-pane.app-exact-dialog--apply-leave .apply-leave-modal-dialog{width:100%;max-width:min(1280px,96vw);height:100%;max-height:min(860px,100vh - 40px);display:flex;flex-direction:column;overflow:hidden}.cdk-overlay-pane.app-exact-dialog--comp-off-earn{width:min(680px,96vw)!important;max-width:min(680px,96vw)!important;height:auto;max-height:calc(100vh - 40px)}.cdk-overlay-pane.app-exact-dialog--comp-off-earn .mat-mdc-dialog-container,.cdk-overlay-pane.app-exact-dialog--comp-off-earn .mat-mdc-dialog-surface{width:100%;height:auto;max-height:calc(100vh - 40px)}.cdk-overlay-pane.app-exact-dialog--comp-off-earn .modal-dialog{width:100%;max-width:min(680px,96vw);height:auto;max-height:calc(100vh - 40px)}.cdk-overlay-pane.app-exact-dialog--comp-off-earn .modal-body{background:linear-gradient(180deg,var(--color-surface-subtle, #f8fafc) 0%,var(--color-surface, #fff) 120px)}.cdk-overlay-pane.app-exact-dialog--team-employee{--mat-dialog-container-max-width: calc(100vw - 32px) ;--mat-dialog-container-small-max-width: calc(100vw - 32px) ;width:calc(100vw - 32px)!important;max-width:calc(100vw - 32px)!important;height:min(92vh,100vh - 32px);max-height:min(92vh,100vh - 32px)}.cdk-overlay-pane.app-exact-dialog--team-employee .mat-mdc-dialog-container,.cdk-overlay-pane.app-exact-dialog--team-employee .mat-mdc-dialog-surface{width:100%;height:100%;max-height:100%}.cdk-overlay-pane.app-exact-dialog--team-employee .modal-dialog{display:flex;flex-direction:column;width:100%;max-width:100%;height:100%;max-height:100%;overflow:hidden}.cdk-overlay-pane.app-exact-dialog--team-employee .modal-header{flex-shrink:0;align-items:center;padding:18px 24px 14px;border-bottom:1px solid var(--color-border-light)}.cdk-overlay-pane.app-exact-dialog--team-employee .modal-body{flex:1;min-height:0;overflow-x:hidden;overflow-y:auto;padding:16px 20px 20px}.cdk-overlay-pane.app-exact-dialog--standard{width:min(760px,96vw)!important;max-width:96vw!important;height:min(820px,100vh - 40px);max-height:calc(100vh - 40px)}.cdk-overlay-pane.app-exact-dialog--standard .mat-mdc-dialog-container,.cdk-overlay-pane.app-exact-dialog--standard .mat-mdc-dialog-surface{height:100%;max-height:100%}.cdk-overlay-pane.app-exact-dialog--compact{width:min(480px,96vw)!important;max-width:96vw!important;max-height:calc(100vh - 40px)}.modal-dialog-compact{max-width:420px}.modal-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:22px 24px 0}.modal-title{margin:0;font-size:20px;font-weight:700;color:var(--color-text-heading);line-height:1.2}.modal-subtitle{margin:4px 0 0;font-size:14px;color:var(--color-text-muted)}.modal-header-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}.modal-header-actions .btn-primary,.modal-header-actions .btn-outline{width:auto;white-space:nowrap}.modal-header-actions .btn-primary:disabled,.modal-header-actions .btn-outline:disabled{opacity:.6;cursor:not-allowed}.modal-close{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;border-radius:var(--radius-md);background:var(--color-danger-bg);color:var(--color-danger-text);cursor:pointer;flex-shrink:0}.modal-close svg{width:16px;height:16px}.modal-body{padding:22px 24px 24px}.modal-form-grid{display:grid;grid-template-columns:repeat(2,1fr);column-gap:20px;row-gap:.375rem}.modal-field{position:relative;padding-bottom:.75rem}.modal-field-full{grid-column:1/-1}.modal-field label,.modal-field-label{display:block;font-size:13px;font-weight:600;color:var(--color-text-secondary);margin-bottom:6px}.field-required{color:var(--color-danger-text)}.modal-field-input{display:flex;align-items:center;min-height:42px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);overflow:hidden}.modal-field-input--password{position:relative;overflow:visible}.modal-field-input--password input{padding-right:44px}.modal-field-input--password input::-ms-reveal,.modal-field-input--password input::-ms-clear,.modal-field-input--password input::-webkit-credentials-auto-fill-button,.modal-field-input--password input::-webkit-strong-password-auto-fill-button{display:none!important}.modal-field-input:has(>textarea){align-items:stretch}.modal-field-input input,.modal-field-input select,.modal-field-input textarea{width:100%;border:none;outline:none;background:transparent;font-family:inherit;font-size:14px;color:var(--color-text-heading);padding:10px 12px}.modal-field-input textarea{vertical-align:top;resize:none;overflow-y:auto;min-height:0;line-height:1.5;field-sizing:content;max-height:12em}.modal-field-input input::placeholder,.modal-field-input textarea::placeholder{color:var(--color-text-muted);opacity:1}.modal-field-input select:has(option[value=""]:checked){color:var(--color-text-muted)}.modal-field-input select option{color:var(--color-text-heading)}.modal-field-input:has(>app-exact-date-input){padding:0;border:none;background:transparent;box-shadow:none}.modal-field-input.is-readonly{background:var(--color-input-bg)}.modal-field-input.is-readonly input,.modal-field-input.is-readonly textarea{color:var(--color-text-heading);cursor:default}.modal-searchable-select{position:relative}.modal-searchable-select-control{width:100%}.modal-searchable-select-list{position:absolute;z-index:50;top:calc(100% + 6px);left:0;right:0;margin:0;padding:6px;list-style:none;max-height:260px;overflow-x:hidden;overflow-y:auto;border:1px solid var(--color-border-light);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-card),0 12px 32px #0f172a1f;scrollbar-width:none;-ms-overflow-style:none}.modal-searchable-select-list::-webkit-scrollbar{display:none}.modal-searchable-select-option{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:var(--radius-md);cursor:pointer;font-size:14px;font-weight:500;color:var(--color-text-heading)}.modal-searchable-select-option:hover,.modal-searchable-select-option:focus,.modal-searchable-select-option[aria-selected=true]{background:var(--color-primary-light);color:var(--color-primary);outline:none}.modal-searchable-select-name{font-weight:500}.modal-searchable-select-id{flex-shrink:0;font-size:13px;color:var(--color-text-muted)}.modal-searchable-select-empty{padding:10px 12px;font-size:14px;color:var(--color-text-muted)}.modal-field-select{position:relative;padding-right:0;overflow:visible}.modal-field-select select{appearance:none;-webkit-appearance:none;-moz-appearance:none;cursor:pointer;align-self:stretch;width:100%;min-height:42px;box-sizing:border-box;padding-right:36px}.modal-field-select>svg,.modal-field-select>app-proto-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%);width:14px;height:14px;font-size:14px;color:var(--color-text-muted);pointer-events:none;z-index:1;transition:transform .15s ease}.modal-field-select.is-select-open>svg,.modal-field-select.is-select-open>app-proto-icon{transform:translateY(-50%) rotate(180deg)}.modal-field-select>app-proto-icon svg{width:14px;height:14px;display:block;pointer-events:none}.modal-field-input input[type=number]{appearance:textfield;-moz-appearance:textfield}.modal-field-input input[type=number]::-webkit-outer-spin-button,.modal-field-input input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.modal-field-number{padding-right:8px;gap:0}.modal-field-number input[type=number]{flex:1 1 auto;min-width:0;padding-right:4px}.modal-field-number>app-modal-number-spinners{display:inline-flex;align-items:center;align-self:center;flex-shrink:0;height:28px;line-height:0}.modal-number-spinners{display:flex;flex-direction:column;justify-content:center;align-items:center;gap:0;width:18px;height:28px;margin:0;padding:0;border:none;background:transparent;box-sizing:border-box}.modal-number-spin{display:inline-flex;flex:0 0 auto;align-items:center;justify-content:center;width:18px;height:13px;margin:0;padding:0;border:none;border-radius:3px;background:transparent;color:var(--color-text-muted, #9ca3af);cursor:pointer;font-family:inherit;line-height:0;transition:background .12s ease,color .12s ease}.modal-number-spin:hover{background:var(--color-primary-light, #e6f7f5);color:var(--color-primary, #0d8074)}.modal-number-spin:active{color:var(--color-primary-dark, #0d4d44)}.modal-number-spin app-proto-icon,.modal-number-spin svg{width:12px;height:12px;font-size:13px;display:block}.modal-number-spin-up{transform:rotate(180deg)}.modal-field-error{position:absolute;left:0;right:0;bottom:0;box-sizing:border-box;height:.75rem;margin:0;padding:0;display:block;font-size:11px;font-weight:500;line-height:.75rem;color:var(--color-danger-text);pointer-events:none;z-index:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modal-api-error{margin:0 0 16px;padding:10px 12px;border-radius:var(--radius-md);background:var(--color-danger-bg);border:1px solid var(--color-danger-text);color:var(--color-danger-text);font-size:13px;font-weight:500;line-height:1.45}.dialog-api-error-slot{position:relative;min-height:1.25rem;margin:0 0 8px;font-size:13px;line-height:1.25rem;color:var(--color-danger-text, #dc2626);overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.dialog-api-error-slot:empty{visibility:hidden}.modal-info-banner{padding:10px 12px;border-radius:var(--radius-md);background:var(--color-primary-light);border:1px solid var(--color-primary-border, var(--color-primary));color:var(--color-text-secondary);font-size:13px;line-height:1.45}.modal-info-note{margin:0;font-size:13px;color:var(--color-text-muted);line-height:1.45}.modal-footer{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:18px 24px 24px;border-top:1px solid var(--color-border-light)}.modal-footer .btn-outline,.modal-footer .btn-primary{width:auto}.modal-footer .btn-primary:disabled,.modal-footer .btn-outline:disabled{opacity:.6;cursor:not-allowed}.modal-field--flag{display:flex;flex-direction:column;gap:6px;padding-bottom:0}.modal-field-flag-legend{display:block;font-size:13px;font-weight:600;color:var(--color-text-secondary);margin:0}.modal-field--flags{display:flex;flex-direction:column;gap:0;padding-bottom:0}.flags-legend{margin:0 0 12px;font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted, #6b7280)}.flags-grid{display:grid;grid-template-columns:1fr 1fr;gap:4px 24px}@media(max-width:560px){.flags-grid{grid-template-columns:1fr}}.master-checkbox-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;min-height:42px}.modal-field .master-checkbox-label,.master-checkbox-label{display:inline-flex;align-items:center;gap:8px;margin:0;padding:0;min-height:42px;font-size:14px;font-weight:500;color:var(--color-text-heading);line-height:1.2;cursor:pointer}.modal-field .master-checkbox-label input[type=checkbox],.master-checkbox-label input[type=checkbox],input.master-checkbox{appearance:none;-webkit-appearance:none;display:block;box-sizing:border-box;width:16px;height:16px;margin:0;padding:0;flex-shrink:0;border:1.5px solid var(--color-border);border-radius:3px;background:var(--color-surface);accent-color:var(--color-primary);cursor:pointer}.modal-field .master-checkbox-label input[type=checkbox]:checked,.master-checkbox-label input[type=checkbox]:checked,input.master-checkbox:checked{border-color:var(--color-primary);background-color:var(--color-primary);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='none' stroke='%23fff' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3.5 8.5 6.5 11.5 12.5 4.5'/%3E%3C/svg%3E");background-size:12px 12px;background-position:center;background-repeat:no-repeat}.modal-field .master-checkbox-label input[type=checkbox]:focus-visible,.master-checkbox-label input[type=checkbox]:focus-visible,input.master-checkbox:focus-visible{outline:2px solid color-mix(in srgb,var(--color-primary) 45%,transparent);outline-offset:2px}.master-field-hint{display:block;margin-top:6px;font-size:13px;color:var(--color-text-muted);line-height:1.4}.field-hint{font-weight:400;opacity:.75}.view-user-status-wrap{display:flex;align-items:center;min-height:42px}.view-user-footer{justify-content:flex-end}.confirm-dialog-message{margin:0;font-size:14px;color:var(--color-text-secondary);line-height:1.5}.btn-destructive-outline{color:var(--color-danger-text);border-color:color-mix(in srgb,var(--color-danger-text) 40%,var(--color-border));background:var(--color-surface)}.btn-destructive-outline:hover{background:var(--color-danger-bg);border-color:color-mix(in srgb,var(--color-danger-text) 55%,var(--color-border))}.btn-success-outline{color:var(--color-primary);border-color:var(--color-primary);background:var(--color-surface)}.btn-success-outline:hover{background:var(--color-primary-light)}.btn-modal-reject{color:var(--color-danger-text);border-color:var(--color-danger-text);background:var(--color-danger-bg)}.btn-modal-reject:hover{background:color-mix(in srgb,var(--color-danger-bg) 70%,var(--color-danger-text) 12%)}.confirm-dialog--compact{max-width:440px;overflow:hidden}.confirm-dialog--compact .modal-header{align-items:flex-start;gap:12px;padding:16px 18px 12px}.confirm-dialog--caution .modal-header,.confirm-dialog--positive .modal-header{padding-bottom:14px}.confirm-dialog--compact .confirm-dialog-heading{display:flex;flex:1 1 auto;min-width:0}.confirm-dialog--compact .confirm-dialog-copy{display:flex;flex-direction:column;gap:4px;flex:1 1 auto;min-width:0}.confirm-dialog--compact .modal-title{display:flex;align-items:center;gap:8px;margin:0;font-size:15px;font-weight:700;color:var(--color-text-heading);line-height:1.35;padding:0}.confirm-dialog--compact .confirm-dialog-title-icon{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;line-height:0}.confirm-dialog--compact .confirm-dialog-title-icon--warn{color:var(--color-warning-text)}.confirm-dialog--compact .confirm-dialog-title-icon--success{color:var(--color-primary)}.confirm-dialog--compact .confirm-dialog-title-icon app-proto-icon,.confirm-dialog--compact .confirm-dialog-title-icon svg{width:16px;height:16px}.confirm-dialog--compact .modal-close{width:28px;height:28px;flex-shrink:0;border-radius:var(--radius-md);background:var(--color-danger-bg);color:var(--color-danger-text)}.confirm-dialog--compact .modal-close:hover{background:color-mix(in srgb,var(--color-danger-bg) 70%,var(--color-danger-text) 12%)}.confirm-dialog--compact .modal-footer{justify-content:stretch;gap:12px;margin-top:0;padding:14px 18px 16px;border-top:1px solid var(--color-border-light)}.confirm-dialog--compact .modal-footer .btn-outline{flex:1 1 0;width:auto;min-width:0;min-height:40px;padding:10px 14px;justify-content:center;text-align:center;line-height:1.2;cursor:pointer}.confirm-dialog--compact .modal-body{padding:2px 18px 10px}.confirm-dialog--compact .confirm-dialog-message{margin:0;font-size:14px;color:var(--color-text-secondary);line-height:1.45}.lifecycle-confirm-body{margin-top:12px}.lifecycle-cascade-check{display:flex;align-items:flex-start;gap:8px;margin:0;font-size:13px;font-weight:500;color:var(--color-text-heading);line-height:1.4;cursor:pointer}.lifecycle-cascade-check input{margin:2px 0 0;flex-shrink:0;accent-color:var(--color-primary);cursor:pointer}@media(max-width:768px){.modal-form-grid{grid-template-columns:1fr}.modal-header,.modal-body{padding-left:16px;padding-right:16px}.modal-footer{flex-direction:column;align-items:stretch;padding:14px 16px 16px;gap:8px}.confirm-dialog--compact .modal-footer{flex-direction:column}.confirm-dialog--compact .modal-footer .btn-outline{flex:none;width:100%}.modal-footer .btn-outline,.modal-footer .btn-primary{width:100%;min-height:44px;justify-content:center}}.leave-dropzone{display:grid;place-items:center;width:100%;box-sizing:border-box;min-height:120px;padding:20px 16px;border:1.5px dashed var(--color-primary-border, #b8e8e2);border-radius:var(--radius-md);background:color-mix(in srgb,var(--color-primary-light, #e6f7f5) 55%,white);cursor:pointer;text-align:center}.leave-dropzone:hover,.leave-dropzone:focus-visible,.leave-dropzone-active{border-color:var(--color-primary, #0d8074);background:color-mix(in srgb,var(--color-primary-light, #e6f7f5) 75%,white);outline:none}.leave-dropzone-icon{display:grid;place-items:center;width:40px;height:40px;margin:0 auto 6px;border-radius:50%;background:var(--color-surface, #fff);color:var(--color-primary, #0d8074);border:1px solid var(--color-primary-border, #b8e8e2)}.leave-dropzone-icon svg,.leave-dropzone-icon app-proto-icon{width:18px;height:18px;display:block}.leave-dropzone-title{display:block;font-size:14px;font-weight:500;color:var(--color-text-heading, #111827);line-height:1.4}.leave-dropzone-link{color:var(--color-primary, #0d8074);font-weight:700;text-decoration:underline;text-underline-offset:2px}.leave-dropzone-hint{display:block;margin-top:4px;font-size:12px;color:var(--color-text-muted, #9ca3af);line-height:1.4}.leave-file-pending{display:flex;align-items:center;gap:10px;width:100%;box-sizing:border-box;padding:10px 12px;border:1px solid var(--color-border-light);border-radius:var(--radius-md);background:var(--color-surface)}.leave-file-pending-icon{display:grid;place-items:center;flex-shrink:0;width:36px;height:36px;border-radius:var(--radius-md);background:color-mix(in srgb,var(--color-primary-light, #e6f7f5) 70%,white);color:var(--color-primary, #0d8074);border:1px solid var(--color-primary-border, #b8e8e2)}.leave-file-pending-icon svg,.leave-file-pending-icon app-proto-icon{width:16px;height:16px;display:block}.leave-file-pending-meta{display:flex;flex-direction:column;gap:2px;min-width:0;flex:1 1 auto}.leave-file-pending-name{font-size:13px;font-weight:600;color:var(--color-text-heading);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.leave-file-pending-size{font-size:12px;color:var(--color-text-muted)}.leave-file-pending .action-btn-remove{flex-shrink:0}.leave-type-comp-off-helper{margin:10px 0 0}.leave-type-comp-off-helper .modal-info-banner{margin:0}.leave-type-form{display:flex;flex-direction:column;gap:18px}.leave-type-section{padding:16px 18px 18px;border:1px solid var(--color-primary-border, #b8e8e2);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--color-primary-light, #e6f7f5) 45%,var(--color-surface))}.leave-type-balance-section{background:color-mix(in srgb,var(--color-primary-light, #e6f7f5) 55%,var(--color-surface))}.leave-type-section-header{margin-bottom:14px;padding-bottom:10px;border-bottom:1px solid var(--color-primary-border, #b8e8e2)}.leave-type-section-title{font-size:15px;font-weight:700;color:var(--color-primary-dark, var(--color-primary, #0d8074));margin:0 0 4px;padding-bottom:0;border-bottom:0}.leave-type-section-subtitle{margin:0;font-size:12.5px;line-height:1.4;color:var(--color-text-secondary)}.leave-type-section-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px;row-gap:.35rem}.leave-type-section-grid>.modal-field-full,.leave-type-section-grid>.modal-field--full{grid-column:1/-1}.leave-type-mini-card,.leave-type-carry-card{margin-top:0;padding:12px 14px;border:1px solid var(--color-border-light);border-radius:var(--radius-md);background:var(--color-surface)}.leave-type-section .leave-type-mini-card+.leave-type-mini-card,.leave-type-section .leave-type-carry-card,.leave-type-section .leave-type-mini-card{margin-top:10px}.leave-type-section>.leave-type-section-grid+.leave-type-mini-card,.leave-type-section>.leave-type-section-header+.leave-type-mini-card{margin-top:0}.leave-type-balance-section>.leave-type-section-grid+.leave-type-carry-card,.leave-type-balance-section>.modal-info-banner+.leave-type-section-grid{margin-top:12px}.leave-type-balance-section>.leave-type-carry-card+.leave-type-carry-card{margin-top:10px}.leave-type-balance-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:24px;row-gap:12px;align-items:start}.leave-type-balance-grid>[data-leave-type-accrual-days] .modal-field-input{max-width:140px}.leave-type-carry-card__header{margin-bottom:8px}.leave-type-carry-card__title{font-size:13px;font-weight:700;color:var(--color-text-heading);margin-bottom:0}.leave-type-carry-details{margin-top:4px;padding-top:4px}.leave-type-card-hint,.leave-type-inline-note{margin:6px 0 0;font-size:12px;color:var(--color-text-secondary);line-height:1.4}.leave-type-form .field-hint{margin:4px 0 0;font-size:12px;color:var(--color-text-secondary);line-height:1.4}.leave-type-derived-field input[readonly]{background:color-mix(in srgb,var(--color-surface-subtle) 70%,var(--color-surface));color:var(--color-text-secondary);cursor:default}.leave-type-unpaid-entitlement-banner{margin:0 0 12px}.leave-type-card--disabled{opacity:.55;pointer-events:none;filter:grayscale(.15)}.leave-type-field--disabled{opacity:.55;filter:grayscale(.1)}.leave-type-field--disabled .modal-field-input{background:color-mix(in srgb,var(--color-surface-subtle) 70%,var(--color-surface))}.leave-type-field--disabled input:disabled,.leave-type-field--disabled input[readonly]{cursor:not-allowed;color:var(--color-text-secondary)}.leave-type-section>.leave-type-section-grid+.leave-type-comp-off-helper,.leave-type-section>.leave-type-inline-note+.leave-type-comp-off-helper{margin-top:10px}.leave-type-section>[data-leave-type-comp-off-expiry]{margin-top:10px}.modal-dialog.leave-type-modal{width:100%;max-width:min(1120px,96vw);height:min(90vh,100vh - 32px);max-height:min(90vh,100vh - 32px);display:flex;flex-direction:column;overflow:hidden}.modal-dialog.leave-type-modal .modal-header{flex-shrink:0;padding:18px 28px 14px}.modal-dialog.leave-type-modal .modal-body{flex:1 1 auto;min-height:0;overflow:auto;padding:20px 28px 28px}.cdk-overlay-pane.app-exact-dialog--leave-type{width:min(1120px,96vw)!important;max-width:min(1120px,96vw)}.leave-policy-form{display:flex;flex-direction:column;gap:16px}.leave-policy-form .field-hint{margin:4px 0 0;font-size:12px;color:var(--color-text-secondary);line-height:1.4;opacity:1;font-weight:400}.leave-policy-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px;row-gap:.35rem}.leave-policy-form-grid>.modal-field{grid-column:span 1}.leave-policy-form-grid>.modal-field-full,.leave-policy-form-grid>.modal-field--full,.leave-policy-form-grid>.leave-policy-flags,.leave-policy-form-grid>.leave-policy-weekend-days{grid-column:1/-1}.leave-policy-form-grid>.leave-policy-flags{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:12px;row-gap:.25rem}.leave-policy-weekend-days{padding-top:4px}.leave-policy-weekend-checklist{display:flex;flex-wrap:wrap;gap:8px 14px;margin-top:6px;border:0;padding:0;min-inline-size:0}.leave-policy-weekend-checklist>.modal-field-flag-legend{flex:0 0 100%;float:none;width:auto;padding:0}.leave-policy-weekend-item{display:inline-flex;align-items:center;gap:6px;margin:0;min-height:32px;font-size:13px;font-weight:500;color:var(--color-text-heading);cursor:pointer}.leave-policy-approval-chain{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:10px}.leave-policy-chain-pill{display:inline-flex;align-items:center;padding:4px 10px;border-radius:999px;font-size:12px;font-weight:600;color:var(--color-primary-dark, var(--color-primary));background:var(--color-primary-light, #e6f7f5);border:1px solid var(--color-primary-border, #b8e8e2)}.leave-policy-chain-pill--approved{color:#047857;background:#ecfdf5;border-color:#a7f3d0}.leave-policy-chain-arrow{color:var(--color-text-secondary);font-size:12px}.leave-policy-section{padding:16px 18px 18px;border:1px solid var(--color-primary-border, #b8e8e2);border-radius:var(--radius-lg);background:color-mix(in srgb,var(--color-primary-light, #e6f7f5) 45%,var(--color-surface))}.leave-policy-section .leave-type-section-header{margin-bottom:14px}.leave-policy-section-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:18px;row-gap:.35rem}.leave-policy-threshold-field{grid-column:1/-1}.leave-policy-threshold-row{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px}.leave-policy-threshold-field .modal-field-input{flex:0 0 auto;width:140px;max-width:140px}.leave-policy-threshold-hint{flex:1 1 220px;margin:0!important;max-width:36rem}.leave-policy-prorata-body{margin-top:12px}.leave-policy-pro-rata-apply{margin-top:10px}.leave-policy-pro-rata-checklist{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px;margin-top:8px;border:0;padding:0;min-inline-size:0}.leave-policy-pro-rata-checklist>.modal-field-flag-legend{grid-column:1/-1;padding:0;float:none}.modal-field .leave-policy-pro-rata-item,.leave-policy-pro-rata-item{display:inline-flex;flex-direction:row;align-items:center;gap:10px;min-height:40px;margin:0;padding:8px 12px;border:1px solid var(--color-border-light);border-radius:var(--radius-md);background:var(--color-surface);font-size:13px;font-weight:500;color:var(--color-text-heading);line-height:1.2;cursor:pointer}.modal-field .leave-policy-pro-rata-item input.master-checkbox,.leave-policy-pro-rata-item input.master-checkbox{display:inline-block;flex-shrink:0;margin:0}.leave-policy-pro-rata-item>span{display:inline-flex;align-items:center;gap:6px;min-width:0}.leave-policy-pro-rata-item--disabled{opacity:.55;cursor:not-allowed;filter:grayscale(.1)}.modal-dialog.leave-policy-modal{width:100%;max-width:min(1040px,96vw);height:min(88vh,100vh - 32px);max-height:min(88vh,100vh - 32px);display:flex;flex-direction:column;overflow:hidden}.modal-dialog.leave-policy-modal .modal-header{flex-shrink:0;padding:18px 28px 14px}.modal-dialog.leave-policy-modal .modal-body{flex:1 1 auto;min-height:0;overflow:auto;padding:20px 28px 28px}.cdk-overlay-pane.app-exact-dialog--leave-policy{width:min(1040px,96vw)!important;max-width:min(1040px,96vw)}@media(max-width:768px){.leave-type-section-grid,.leave-type-balance-grid,.leave-policy-section-grid,.leave-policy-form-grid,.leave-policy-pro-rata-checklist{grid-template-columns:1fr}.leave-type-section-grid>.modal-field,.leave-type-section-grid>.modal-field-full,.leave-type-section-grid>.modal-field--full,.leave-policy-form-grid>.modal-field,.leave-policy-form-grid>.modal-field-full,.leave-policy-form-grid>.modal-field--full,.leave-policy-form-grid>.leave-policy-flags,.leave-policy-form-grid>.leave-policy-weekend-days{grid-column:1/-1}.leave-policy-form-grid>.leave-policy-flags{grid-template-columns:1fr}.modal-dialog.leave-type-modal,.modal-dialog.leave-policy-modal{width:100%;max-width:100%;height:auto;max-height:calc(100vh - 24px)}.modal-dialog.leave-type-modal .modal-header,.modal-dialog.leave-type-modal .modal-body,.modal-dialog.leave-policy-modal .modal-header,.modal-dialog.leave-policy-modal .modal-body{padding-left:16px;padding-right:16px}.cdk-overlay-pane.app-exact-dialog--leave-type,.cdk-overlay-pane.app-exact-dialog--leave-policy{width:min(100vw - 16px,96vw)!important;max-width:min(100vw - 16px,96vw)}}.manage-leave-balances-dialog{max-width:1120px;width:min(1120px,100vw - 32px)}.manage-leave-balances-dialog .btn-allocate{display:inline-flex;align-items:center;gap:6px}.manage-balances-header{align-items:center}.manage-balances-identity{display:flex;align-items:center;gap:12px;min-width:0}.manage-balances-avatar{flex-shrink:0;width:40px;height:40px;border-radius:50%;overflow:hidden;border:1px solid var(--color-border-light);background:var(--color-surface-subtle, var(--color-input-bg))}.manage-balances-avatar img{display:block;width:100%;height:100%;object-fit:cover}.manage-balances-identity-text{min-width:0}.manage-balances-identity-text .modal-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.manage-leave-balances-body{padding-bottom:20px}.manage-balances-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;margin-bottom:12px}.year-filter{display:flex;align-items:center;gap:10px}.year-filter-label{font-size:13px;font-weight:600;color:var(--color-text-secondary);white-space:nowrap}.balances-count{font-size:13px;color:var(--color-text-muted)}.mlb-table-wrap{overflow-x:auto;border:1px solid var(--color-border-light);border-radius:var(--radius-md);background:var(--color-surface)}.mlb-table{width:100%;min-width:860px;border-collapse:collapse;table-layout:fixed}.mlb-table thead th{padding:11px 10px;font-size:11px;font-weight:650;color:var(--color-text-muted);text-align:left;letter-spacing:.01em;background:var(--color-surface-subtle, var(--color-input-bg));border-bottom:1px solid var(--color-border-light);white-space:nowrap;position:sticky;top:0;z-index:1}.mlb-table thead th:first-child,.mlb-table tbody td:first-child{padding-left:16px}.mlb-table thead th:last-child,.mlb-table tbody td:last-child{padding-right:12px}.mlb-table .mlb-th-center,.mlb-table .mlb-th-num,.mlb-table .mlb-th-remaining{text-align:center}.mlb-table tbody td{padding:9px 8px;vertical-align:middle;border-bottom:1px solid var(--color-border-light)}.mlb-table tbody tr:last-child td{border-bottom:none}.mlb-table tbody tr:hover td{background:color-mix(in srgb,var(--color-primary-light, #e8f4f8) 35%,transparent)}.mlb-col-type{width:15.5rem;min-width:0;overflow:hidden}.mlb-col-year{width:4.25rem;overflow:hidden}.mlb-col-num{width:5.5rem}.mlb-col-remaining{width:5.75rem}.mlb-col-actions{width:7.5rem}.mlb-col-adjustment{width:7.25rem}.mlb-type-cell{display:flex;align-items:center;flex-wrap:wrap;gap:4px 8px;width:100%;min-width:0;max-width:100%;overflow:hidden}.mlb-type-cell select.mlb-cell-control{flex:1 1 auto;width:100%;min-width:13.5rem}.mlb-type-label{display:block;max-width:100%;min-width:0;font-size:13px;font-weight:600;color:var(--color-text-heading);line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mlb-year-label{display:block;font-size:13px;font-weight:550;font-variant-numeric:tabular-nums;color:var(--color-text-secondary);text-align:center}.mlb-cell-control{box-sizing:border-box;width:100%;min-height:34px;padding:6px 8px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);color:var(--color-text-heading);font-size:13px;font-family:inherit;line-height:1.2}.mlb-cell-control:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-light, #e8f4f8)}.mlb-num{font-variant-numeric:tabular-nums;text-align:center;padding-left:4px;padding-right:4px;-moz-appearance:textfield}.mlb-num::-webkit-outer-spin-button,.mlb-num::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}select.mlb-cell-control{cursor:pointer;padding-right:22px;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236b7280' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 6px center}.mlb-remaining{display:block;font-size:13px;font-weight:700;font-variant-numeric:tabular-nums;color:var(--color-primary);text-align:center}.mlb-col-readonly{text-align:center;vertical-align:middle}.mlb-readonly-value{display:block;font-size:13px;font-weight:600;font-variant-numeric:tabular-nums;color:var(--color-text-heading);text-align:center;line-height:34px}.mlb-placeholder-dash,.mlb-remaining.mlb-placeholder-dash{font-size:11px;font-weight:500;color:var(--color-text-muted);opacity:.75}.mlb-col-actions{text-align:center}.mlb-actions-spacer{display:inline-block;width:28px;height:28px}.mlb-row-remove{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-muted);cursor:pointer}.mlb-row-remove:hover{background:var(--color-surface-subtle, var(--color-input-bg));color:var(--color-text-heading)}.mlb-row-remove svg{width:14px;height:14px}.mlb-row.is-new td{background:color-mix(in srgb,var(--color-primary-light, #e8f4f8) 45%,transparent)}.mlb-hint{margin:10px 0 0;font-size:11px;line-height:1.4;color:var(--color-text-muted)}.mlb-current-hint{display:block;margin-top:4px;font-size:11px;line-height:1.3;color:var(--color-text-muted);text-align:center;white-space:nowrap}.mlb-unseeded-tag{display:inline-block;font-size:11px;font-weight:600;color:#92400e;background:#fffbeb;border:1px solid #fcd34d;border-radius:999px;padding:1px 8px;line-height:1.4}.mlb-row-unseeded td{background:color-mix(in srgb,#fffbeb 55%,transparent)}.mlb-seed-btn{display:inline-flex;align-items:center;justify-content:center;width:auto;height:30px;min-height:30px;padding:0 12px;border:1px solid var(--color-primary);border-radius:var(--radius-md);background:var(--color-primary-light);color:var(--color-primary-dark);font-size:12px;font-weight:600;font-family:inherit;line-height:1;white-space:nowrap;cursor:pointer;box-shadow:none}.mlb-seed-btn:hover:not(:disabled){background:var(--color-primary);border-color:var(--color-primary);color:#fff}.mlb-seed-btn:focus-visible{outline:none;box-shadow:0 0 0 2px var(--color-primary-light),0 0 0 4px var(--color-primary-border)}.mlb-seed-btn:disabled{opacity:.5;cursor:not-allowed}.mlb-remarks-block{margin-top:14px}.mlb-remarks-label{display:block;margin-bottom:6px;font-size:13px;font-weight:600;color:var(--color-text-heading)}.mlb-remarks-input{box-sizing:border-box;width:100%;min-height:64px;padding:10px 12px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text-heading);font-size:13px;font-family:inherit;line-height:1.4;resize:vertical}.mlb-remarks-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px var(--color-primary-light, #e8f4f8)}.mlb-remarks-error{margin:6px 0 0;font-size:12px;color:#b91c1c;line-height:1.35}.mlb-remarks-error[hidden]{display:none!important}.balance-empty-state{padding:40px 24px;text-align:center;border:1px dashed var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-subtle, var(--color-input-bg))}.balance-empty-title{margin:0;font-size:15px;font-weight:650;color:var(--color-text-heading)}.balance-empty-copy{margin:6px 0 0;font-size:13px;color:var(--color-text-muted);line-height:1.45}.modal-field-hint{display:block;margin-top:4px;font-size:12px;color:var(--color-text-muted);line-height:1.4}.cdk-overlay-pane.app-exact-dialog--manage-leave-balances{width:min(1120px,96vw)!important;max-width:min(1120px,96vw)}.cdk-overlay-pane.app-exact-dialog--manage-leave-balances .manage-leave-balances-dialog{width:100%;max-width:min(1120px,96vw);max-height:min(90vh,100vh - 32px);display:flex;flex-direction:column;overflow:hidden}.cdk-overlay-pane.app-exact-dialog--manage-leave-balances .manage-leave-balances-dialog .modal-header{flex-shrink:0}.cdk-overlay-pane.app-exact-dialog--manage-leave-balances .manage-leave-balances-dialog .modal-body{flex:1 1 auto;min-height:0;overflow:auto}.manage-leave-balances-dialog .modal-header-actions{display:inline-flex;align-items:center;gap:8px}.holiday-manage-layout{display:grid;grid-template-columns:280px minmax(0,1fr);gap:16px;align-items:start;min-width:0;width:100%;max-width:100%}.holiday-manage-main{min-width:0;max-width:100%;display:flex;flex-direction:column;overflow:visible}.holiday-manage-layout .profile-card{background:var(--color-surface, #fff);border:1px solid var(--color-border-light, #e5e7eb);border-radius:var(--radius-lg, .5rem);padding:24px 20px}.holiday-manage-layout .profile-name{text-align:center;font-size:18px;font-weight:700;color:var(--color-text-heading, #111827);margin-bottom:4px;word-break:break-word}.holiday-manage-layout .profile-id{text-align:center;font-size:13px;color:var(--color-text-muted, #6b7280);margin-bottom:10px}.holiday-manage-layout .profile-status{text-align:center;margin-bottom:20px}.holiday-manage-layout .quick-facts{margin-top:0}.holiday-manage-layout .quick-facts-list{min-width:0}.holiday-manage-layout .fact-row{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;padding:8px 0;border-bottom:1px solid var(--color-border-light, #e5e7eb);font-size:13px}.holiday-manage-layout .fact-row:last-child{border-bottom:none}.holiday-manage-layout .fact-label{color:var(--color-text-muted, #6b7280);flex-shrink:0}.holiday-manage-layout .fact-value{color:var(--color-text-heading, #111827);font-weight:500;text-align:right;word-break:break-word;min-width:0}.holiday-counts{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:16px;padding-top:16px;border-top:1px solid var(--color-border-light)}.holiday-count{background:var(--color-surface-subtle);border:1px solid var(--color-border-light);border-radius:var(--radius-md, .375rem);padding:8px 10px}.holiday-count-value{display:block;font-size:16px;font-weight:700;color:var(--color-text-heading);font-variant-numeric:tabular-nums;line-height:1.2}.holiday-count-label{display:block;margin-top:2px;font-size:11px;color:var(--color-text-muted);line-height:1.3}.holiday-manage-layout .profile-actions{display:flex;flex-direction:column;gap:10px;margin-top:20px}.holiday-manage-layout .profile-actions__save-row{display:flex;align-items:center;gap:10px;width:100%}.holiday-manage-layout .profile-actions__save-row .btn-add-holiday{flex:1 1 auto;width:auto;min-width:0;min-height:46px;justify-content:center;cursor:pointer}.holiday-manage-layout .profile-btn-back{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:46px;height:46px;padding:0;background:var(--color-primary-light);color:var(--color-primary);border:1px solid var(--color-primary-border);border-radius:var(--radius-md);cursor:pointer;appearance:none;transition:background .15s ease,border-color .15s ease,color .15s ease}.holiday-manage-layout .profile-btn-back svg{width:20px;height:20px}.holiday-manage-layout .profile-btn-back:hover{background:color-mix(in srgb,var(--color-primary) 16%,var(--color-primary-light));color:var(--color-primary-dark);border-color:var(--color-primary)}.holiday-manage-layout .profile-btn-back:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.holiday-main-tabs-wrap{display:flex;justify-content:flex-start;margin:0 0 14px;min-width:0;border-bottom:1px solid var(--color-border-light)}.holiday-main-tabs{display:flex;align-items:stretch;gap:18px;min-width:0;max-width:100%;overflow-x:auto;overflow-y:visible;-webkit-overflow-scrolling:touch;scrollbar-width:none;-ms-overflow-style:none}.holiday-main-tabs::-webkit-scrollbar{display:none}.holiday-main-tab{flex-shrink:0;margin:0;padding:2px 2px 10px;border:none;border-bottom:2px solid transparent;background:transparent;font-family:inherit;font-size:15px;font-weight:600;line-height:1.35;letter-spacing:.01em;color:var(--color-text-muted);cursor:pointer;white-space:nowrap}.holiday-main-tab:hover{color:var(--color-text-heading)}.holiday-main-tab.is-active{color:var(--color-primary);font-weight:700;border-bottom-color:var(--color-primary)}.holiday-year-panel{background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);padding:16px;min-width:0}.holiday-year-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.holiday-month-card{min-width:0;padding:10px 10px 12px;border:1px solid var(--color-border-light);border-radius:var(--radius-md, .375rem);background:var(--color-surface)}.holiday-month-title{margin:0 0 8px;font-size:12px;font-weight:700;color:var(--color-text-heading);letter-spacing:.02em}.holiday-year-weekdays,.holiday-year-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px}.holiday-year-wd{padding:0 0 4px;text-align:center;font-size:10px;font-weight:600;color:var(--color-text-muted)}.holiday-year-day{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:100%;min-height:26px;margin:0;padding:0;border:none;border-radius:4px;font-family:inherit;font-size:11px;font-weight:600;font-variant-numeric:tabular-nums;line-height:1;color:var(--color-text-heading);background:transparent;appearance:none;-webkit-appearance:none}.holiday-year-day.is-empty{visibility:hidden}.holiday-year-day.is-outside{opacity:.28}.holiday-year-day.is-working{background:var(--color-surface-muted, #fafbfc);color:var(--color-text-secondary)}.holiday-year-day.is-weekly-off{background:var(--color-surface-subtle);color:var(--color-text-muted)}.holiday-year-day.is-public,.holiday-year-day.is-holiday{background:var(--color-holiday-bg);color:var(--color-holiday-accent)}.holiday-year-day.is-optional{background:var(--color-half-day-bg);color:var(--color-half-day-accent)}.holiday-year-day.is-other{background:var(--color-info-bg);color:var(--color-info-text)}.holiday-year-day.is-clickable{cursor:pointer}.holiday-year-day.is-clickable:hover{box-shadow:inset 0 0 0 1.5px color-mix(in srgb,var(--color-primary) 55%,transparent)}.holiday-year-day.is-clickable:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px}.holiday-year-day.is-past{opacity:.55;filter:grayscale(.25);pointer-events:none;cursor:default}.holiday-year-legend{display:flex;flex-wrap:wrap;gap:12px 16px;margin-top:16px;padding-top:14px;border-top:1px solid var(--color-border-light)}.holiday-year-legend-item{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--color-text-secondary)}.holiday-year-legend-caveat{color:var(--color-text-muted);font-weight:500;font-style:italic}.holiday-year-swatch{width:12px;height:12px;border-radius:3px;flex-shrink:0}.holiday-year-swatch.is-holiday{background:var(--color-holiday-bg);border:1px solid var(--color-holiday-accent)}.holiday-year-swatch.is-working{background:var(--color-surface-muted, #fafbfc);border:1px solid var(--color-border)}.holiday-year-swatch.is-weekly-off{background:var(--color-surface-subtle);border:1px solid var(--color-border)}.holiday-year-swatch.is-public{background:var(--color-holiday-bg);border:1px solid var(--color-holiday-accent)}.holiday-year-swatch.is-optional{background:var(--color-half-day-bg);border:1px solid var(--color-half-day-accent)}.holiday-year-swatch.is-other{background:var(--color-info-bg);border:1px solid var(--color-info-text)}.holiday-manage-dialog .modal-body.leave-large-modal-body{overflow-x:hidden;overflow-y:auto;min-width:0}.holiday-manage-dialog .holiday-manage-layout,.holiday-manage-dialog .holiday-manage-main,.holiday-manage-dialog .table-card,.holiday-manage-dialog .table-scroll{min-width:0;max-width:100%;width:100%;box-sizing:border-box}.holiday-manage-dialog .table-card.is-responsive-list .table-scroll{overflow-x:hidden!important}.holiday-manage-dialog .holiday-entry-table .table-scroll table{min-width:0!important;width:100%!important;max-width:100%;table-layout:fixed;border-collapse:collapse}.holiday-manage-dialog .holiday-entry-table thead th,.holiday-manage-dialog .holiday-entry-table tbody td{padding:10px 6px!important;vertical-align:middle;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.holiday-manage-dialog .holiday-entry-table thead th:first-child,.holiday-manage-dialog .holiday-entry-table tbody td:first-child{padding-left:12px!important}.holiday-manage-dialog .holiday-entry-table thead th:last-child,.holiday-manage-dialog .holiday-entry-table tbody td:last-child{padding-right:12px!important;overflow:visible;text-overflow:clip}.holiday-manage-dialog .holiday-entry-row--past{color:var(--color-text-muted)}.holiday-manage-dialog .holiday-entry-actions-locked{display:inline-block;min-width:.75rem;text-align:center;color:var(--color-text-muted);font-size:11px;font-weight:500;line-height:1;opacity:.7}.holiday-manage-dialog .holiday-entry-table .actions{display:inline-flex;flex-wrap:nowrap;gap:6px;justify-content:flex-start}.holiday-manage-dialog .holiday-entry-table th:nth-child(1),.holiday-manage-dialog .holiday-entry-table td:nth-child(1){width:14%}.holiday-manage-dialog .holiday-entry-table th:nth-child(2),.holiday-manage-dialog .holiday-entry-table td:nth-child(2){width:24%}.holiday-manage-dialog .holiday-entry-table th:nth-child(3),.holiday-manage-dialog .holiday-entry-table td:nth-child(3){width:16%}.holiday-manage-dialog .holiday-entry-table th:nth-child(4),.holiday-manage-dialog .holiday-entry-table td:nth-child(4){width:14%}.holiday-manage-dialog .holiday-entry-table th:nth-child(5),.holiday-manage-dialog .holiday-entry-table td:nth-child(5){width:12%}.holiday-manage-dialog .holiday-entry-table th:nth-child(6),.holiday-manage-dialog .holiday-entry-table td:nth-child(6){width:20%}@media(max-width:1280px){.holiday-year-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:1024px){.holiday-manage-layout{grid-template-columns:1fr}.holiday-manage-layout .profile-card{max-width:420px}}@media(max-width:720px){.holiday-year-grid{grid-template-columns:1fr}.holiday-year-panel{padding:12px}}@media(max-width:640px){.holiday-manage-layout{gap:14px}.holiday-manage-layout .profile-card{padding:16px 14px}.holiday-manage-layout .profile-name{font-size:16px;margin-bottom:2px}.holiday-manage-layout .profile-id{margin-bottom:8px}.holiday-manage-layout .profile-status{margin-bottom:14px}.holiday-manage-layout .quick-facts-list{display:grid;grid-template-columns:1fr 1fr;column-gap:12px}.holiday-manage-layout .fact-row{flex-direction:column;align-items:flex-start;gap:2px;padding:8px 0;min-width:0;border-bottom:none}.holiday-manage-layout .fact-value{text-align:left;overflow-wrap:anywhere}.holiday-manage-layout .profile-actions{margin-top:14px;gap:8px}.holiday-manage-layout .profile-actions__save-row .btn-add-holiday{min-height:46px}}.cdk-overlay-pane.app-exact-dialog--holiday{width:min(1400px,96vw)!important;max-width:min(1400px,96vw)}.modal-dialog.holiday-manage-modal{display:flex;flex-direction:column;width:100%;max-width:100%;height:min(92vh,100vh - 32px);max-height:min(92vh,100vh - 32px);overflow:hidden}.modal-dialog.holiday-manage-modal .modal-header{flex-shrink:0}.modal-dialog.holiday-manage-modal .modal-body.holiday-manage-dialog{flex:1 1 auto;min-height:0;overflow:auto;padding:16px 20px 20px}.modal-dialog.settings-modal-dialog,.settings-modal-dialog{width:100%;max-width:1020px;margin:0 auto}.cdk-overlay-pane.app-exact-dialog--settings{width:min(1020px,95vw)!important;max-width:min(1020px,95vw)}.cdk-overlay-pane.app-exact-dialog--settings-save-confirm{width:fit-content!important;max-width:min(380px,92vw)}.cdk-overlay-pane.app-exact-dialog--settings-save-confirm .modal-dialog{width:fit-content;max-width:min(380px,92vw);min-width:280px}.cdk-overlay-pane.app-exact-dialog--settings-save-confirm .modal-header{padding:16px 18px 6px;border-bottom:none}.cdk-overlay-pane.app-exact-dialog--settings-save-confirm .modal-title{font-size:15px;line-height:1.35;margin:0}.cdk-overlay-pane.app-exact-dialog--settings-save-confirm .modal-body{padding:0 18px 4px}.cdk-overlay-pane.app-exact-dialog--settings-save-confirm .modal-footer{padding:12px 18px 16px;border-top:none;gap:8px;justify-content:flex-end}.settings-modal-sub{font-size:13px;color:var(--color-text-muted);margin-top:4px}.settings-modal-header .modal-header-actions{gap:8px;align-items:flex-start}.settings-modal-header .modal-close{margin-top:0}.settings-modal-header{padding-bottom:6px}.settings-modal-body{display:grid;grid-template-columns:180px 1fr;height:520px;overflow:hidden;padding-top:14px;box-sizing:border-box}.settings-nav{background:color-mix(in srgb,var(--color-neutral-bg) 28%,var(--color-surface));border-right:1px solid var(--color-border-light);padding:10px 0 12px;overflow-y:auto;margin-top:2px;align-self:stretch}.settings-nav-item{width:100%;border:none;outline:none;appearance:none;background:transparent;border-radius:var(--radius-md);border-left:0;padding:8px 14px;min-height:38px;margin:4px 10px;display:flex;gap:10px;align-items:center;font-size:13px;font-weight:500;color:var(--color-text-secondary);cursor:pointer;text-align:left;font-family:inherit}.settings-nav-item:hover{background:color-mix(in srgb,var(--color-primary) 7%,var(--color-surface))}.settings-nav-item:disabled,.settings-nav-item[aria-disabled=true]{opacity:.45;cursor:not-allowed;color:var(--color-text-muted)}.settings-nav-item:disabled:hover,.settings-nav-item[aria-disabled=true]:hover{background:transparent;color:var(--color-text-muted)}.settings-nav-item.active{background:color-mix(in srgb,var(--color-primary) 10%,var(--color-surface));color:var(--color-primary);font-weight:600}.settings-nav-item:focus{outline:none;box-shadow:none}.settings-nav-item:focus-visible{outline:none;box-shadow:none}.settings-nav-icon{width:16px;height:16px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center}.settings-nav-icon svg{width:16px;height:16px}.settings-panels{padding:4px 18px 14px;margin-top:0;overflow-y:auto;display:flex;flex-direction:column;align-items:flex-start}.settings-panel{display:none;width:100%}.settings-panel.active{display:block}.settings-panel-title{font-size:16px;font-weight:700;margin:0 0 3px;color:var(--color-text-heading)}.settings-panel-sub{font-size:13px;color:var(--color-text-muted);margin:0 0 14px}.settings-panel-card{width:100%;background:var(--color-surface);border:1px solid var(--color-border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);padding:18px 18px 10px}.settings-panel[data-settings-panel=organisation] .settings-panel-card,.settings-panel[data-settings-panel=leave] .settings-panel-card{border-color:var(--color-primary-border, var(--color-primary));background:var(--color-surface);box-shadow:var(--shadow-card)}.settings-row{display:grid;grid-template-columns:1fr auto;align-items:start;gap:16px;padding:15px 0;border-bottom:1px solid var(--color-border-light);transition:background .15s ease}.settings-row:hover{background:color-mix(in srgb,var(--color-primary-light) 10%,transparent)}.settings-row:last-of-type{border-bottom:none}.settings-row-info{min-width:0}.settings-row-label{font-size:14px;font-weight:600;color:var(--color-text-heading)}.settings-row-desc{font-size:12px;color:var(--color-text-muted);margin-top:3px;line-height:1.45}.settings-row-control{flex-shrink:0;padding-top:2px}.settings-number-input{width:90px;border:1px solid var(--color-border);border-radius:var(--radius-md);padding:6px 10px;font-size:14px;text-align:right;background:var(--color-surface);margin-top:1px}.settings-number-input input{width:100%;border:none;outline:none;background:transparent;padding:0;margin:0;font-size:14px;text-align:right;font-family:inherit;color:var(--color-text-heading)}.settings-text-input{width:110px;border:1px solid var(--color-border);border-radius:var(--radius-md);padding:6px 10px;font-size:14px;background:var(--color-surface);color:var(--color-text-heading);font-family:inherit;outline:none}.settings-text-input::placeholder{color:var(--color-text-muted)}.settings-toggle{display:inline-flex;align-items:center;cursor:pointer;position:relative}.settings-toggle input{position:absolute;opacity:0;width:1px;height:1px}.settings-toggle span{width:44px;height:24px;border-radius:999px;background:var(--color-border);position:relative;transition:background .15s ease}.settings-toggle span:after{content:"";position:absolute;width:18px;height:18px;border-radius:50%;background:#fff;top:3px;left:3px;transition:transform .15s ease}.settings-toggle input:checked+span{background:var(--color-primary)}.settings-toggle input:checked+span:after{transform:translate(20px)}.settings-toggle:has(input:disabled){cursor:default}.settings-toggle input:disabled+span{opacity:.55}.settings-badge{display:inline-flex;align-items:center;padding:6px 10px;border-radius:var(--radius-md);background:color-mix(in srgb,var(--color-neutral-bg) 60%,var(--color-surface));color:var(--color-text-secondary);font-size:12px;font-weight:600}.settings-badge--warning{background:color-mix(in srgb,#f59e0b 18%,var(--color-surface));color:#b45309}.settings-helper-text{font-size:12px;color:var(--color-text-muted);margin-top:8px;line-height:1.35}.settings-row-control>div .settings-number-input+.settings-badge{margin-top:8px}.settings-leave-demo-bar{display:flex;align-items:center;gap:8px;margin:0 0 12px;flex-wrap:wrap}.settings-leave-demo-bar__label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--color-text-muted)}.settings-leave-demo-btn{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text-secondary);border-radius:999px;padding:4px 10px;font-size:12px;font-weight:600;font-family:inherit;cursor:pointer}.settings-leave-demo-btn.is-active{border-color:color-mix(in srgb,var(--color-primary) 45%,var(--color-border));background:color-mix(in srgb,var(--color-primary) 10%,var(--color-surface));color:var(--color-primary)}.settings-panel-card--spaced{margin-top:14px}.settings-select-input{appearance:none;-webkit-appearance:none;-moz-appearance:none;min-width:200px;max-width:280px;height:40px;box-sizing:border-box;border:1.5px solid var(--color-primary-border, var(--color-primary));border-radius:var(--radius-md);padding:0 36px 0 14px;font-size:13px;font-weight:600;line-height:1.2;background-color:color-mix(in srgb,var(--color-primary-light, #e6f7f5) 35%,var(--color-surface));background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='%230d8074' stroke-width='2.25' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;background-size:14px;color:var(--color-primary-dark, var(--color-primary));font-family:inherit;cursor:pointer;outline:none;transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease}.settings-select-input:hover:not(:disabled){border-color:var(--color-primary);background-color:color-mix(in srgb,var(--color-primary-light, #e6f7f5) 55%,var(--color-surface))}.settings-select-input:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-primary) 18%,transparent)}.settings-select-input:disabled{opacity:.55;cursor:not-allowed}.settings-row--stacked{grid-template-columns:1fr}.settings-row-static{margin-top:6px;font-size:15px;font-weight:700;color:var(--color-text-heading)}.settings-row-window{margin-top:4px;font-size:13px;font-weight:600;color:var(--color-primary)}.settings-job-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:4px 0 12px}.settings-job-meta{min-width:0;flex:1 1 auto}.settings-job-last{font-size:13px;font-weight:600;color:var(--color-text-heading);margin-bottom:4px;line-height:1.4}.settings-job-run.btn-primary,.settings-job-run.btn-outline,.settings-job-run{flex:0 0 auto;width:auto;max-width:none;white-space:nowrap;align-self:center;cursor:pointer}@media(max-width:640px){.settings-job-row{flex-direction:column;align-items:stretch}.settings-job-run.btn-primary,.settings-job-run.btn-outline,.settings-job-run{width:100%}.profile-menu{width:min(320px,100vw - 24px);max-width:calc(100vw - 24px);right:0;left:auto}}.my-attendance-page{display:block;width:100%;min-width:0}.attendance-summary-layout{display:grid;grid-template-columns:280px 1fr;gap:20px;align-items:start;min-width:0;width:100%}.attendance-summary-main{min-width:0;display:flex;flex-direction:column;gap:0;overflow-x:hidden}.attendance-summary-layout .profile-card{background:var(--color-surface, #fff);border:1px solid var(--color-border-light, #e5e7eb);border-radius:var(--radius-lg, .5rem);padding:24px 20px}.attendance-summary-layout .profile-photo-wrap{position:relative;width:120px;height:120px;margin:0 auto 16px;overflow:hidden;border-radius:50%}.attendance-summary-layout .profile-photo,.attendance-summary-layout .profile-photo-placeholder{width:120px;height:120px;border-radius:50%;object-fit:cover;display:flex;align-items:center;justify-content:center;background:var(--color-primary-light, #e0f2f1);color:var(--color-primary, #0d8074);box-sizing:border-box;overflow:hidden;border:1.5px solid var(--color-primary-border, #b8e8e2)}.attendance-summary-layout .profile-photo-wrap>.profile-photo,.attendance-summary-layout .profile-photo-wrap>app-authenticated-profile-photo.profile-photo{display:block;overflow:hidden;border-radius:50%}.attendance-summary-layout img.profile-photo{display:block}.attendance-summary-layout .profile-photo-placeholder app-proto-icon{font-size:48px;width:48px;height:48px;display:flex;align-items:center;justify-content:center;flex-shrink:0;line-height:0}.attendance-summary-layout .profile-name{text-align:center;font-size:18px;font-weight:700;color:var(--color-text-heading, #111827);margin-bottom:4px}.attendance-summary-layout .profile-id{text-align:center;font-size:13px;color:var(--color-text-muted, #6b7280);margin-bottom:10px}.attendance-summary-layout .profile-status{text-align:center;margin-bottom:20px}.attendance-summary-layout .quick-facts-title{font-size:12px;font-weight:700;color:var(--color-text-muted, #6b7280);text-transform:uppercase;letter-spacing:.05em;margin-bottom:12px}.attendance-summary-layout .fact-row{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--color-border-light, #e5e7eb);font-size:13px}.attendance-summary-layout .fact-row:last-child{border-bottom:none}.attendance-summary-layout .fact-label{color:var(--color-text-muted, #6b7280);flex-shrink:0}.attendance-summary-layout .fact-value{color:var(--color-text-heading, #111827);font-weight:500;text-align:right;word-break:break-word}@media(max-width:1024px){.attendance-summary-layout{grid-template-columns:1fr;gap:16px}}@media(max-width:640px){.attendance-summary-layout{gap:14px}}.weekly-log-wrap{margin-bottom:20px;min-width:0}.weekly-log-filters{margin-bottom:12px;padding:10px 14px}.weekly-log-filters .filter-bar{gap:10px;flex-wrap:wrap;align-items:center}.weekly-log-filters .att-period-controls{flex:1 1 auto;min-width:0}.weekly-log-filters .att-period-nav-btn{width:28px;height:28px}.weekly-log-filters .att-period-nav-label{font-size:13px}.weekly-log-filters .reset-link{display:inline-flex;align-items:center;gap:4px;border:none;background:none;padding:0;margin-left:4px;font-size:14px;font-weight:600;font-family:inherit;line-height:1.2;color:var(--color-primary);cursor:pointer}.weekly-log-filters .reset-link app-proto-icon{width:14px;height:14px}.att-period-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap;min-width:0}.att-period-group{display:inline-flex;align-items:center;gap:8px}.att-period-group-label{font-size:12px;font-weight:600;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.04em;flex-shrink:0}.att-period-nav{display:inline-flex;align-items:center;gap:2px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);padding:2px}.att-period-nav-btn{display:inline-flex;align-items:center;justify-content:center;width:30px;height:30px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-secondary);cursor:pointer;font-family:inherit;flex-shrink:0;transition:background .15s ease,color .15s ease}.att-period-nav-btn:hover{background:var(--color-primary-light);color:var(--color-primary)}.att-period-nav-label{font-size:13px;font-weight:600;color:var(--color-text-heading);padding:0 8px;white-space:nowrap;text-align:center;min-width:108px}.att-period-group-week .att-period-nav-label{min-width:120px}.weekly-log-wrap[data-active-view=calendar] .att-period-group-week{display:none}.weekly-log-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:12px;flex-wrap:wrap}.weekly-log-title{font-size:15px;font-weight:700;color:var(--color-text-heading);flex-shrink:0}.my-att-scroll{overflow-x:auto;min-width:0}.my-att-table{width:100%;min-width:520px;border-collapse:collapse}.my-att-table th,.my-att-table td{text-align:left;padding:10px 14px;font-size:14px;border-bottom:1px solid var(--color-border-light);white-space:nowrap}.my-att-table th{font-weight:600;font-size:13px;color:var(--color-text-muted);background:var(--color-table-header-bg);text-transform:uppercase;letter-spacing:.03em}.my-att-table tbody tr:last-child td{border-bottom:none}.my-att-table tbody tr:hover td{background:var(--color-surface-muted)}.att-date-val{font-variant-numeric:tabular-nums;font-weight:500}.att-no-record{color:var(--color-text-muted)}.att-badge.att-badge--present{background:var(--color-present-bg);color:var(--color-present-accent)}.att-badge.att-badge--absent{background:var(--color-absent-bg);color:var(--color-absent-accent)}.att-badge.att-badge--half-day{background:var(--color-half-day-bg);color:var(--color-half-day-accent)}.att-badge.att-badge--holiday{background:var(--color-holiday-bg);color:var(--color-holiday-accent)}.att-badge.att-badge--weekly-off{background:var(--color-weekly-off-bg);color:var(--color-weekly-off-accent)}.att-badge.att-badge--missed-punch{background:var(--color-missed-punch-bg);color:var(--color-missed-punch-accent)}.att-badge.att-badge--leave{background:var(--color-leave-bg);color:var(--color-leave-accent)}.att-badge.att-badge--pending{background:var(--color-surface);color:var(--color-text-muted);border:1px solid var(--color-border-light)}.att-badge.att-badge--none{background:var(--color-surface);color:var(--color-text-muted)}@media(max-width:480px){.col-hide-xs{display:none}}.att-month-calendar{padding:0;overflow:hidden;min-width:0}.att-month-weekdays{display:grid;grid-template-columns:repeat(7,1fr);border-bottom:1px solid var(--color-border-light);background:var(--color-table-header-bg)}.att-month-weekday{padding:10px 8px;text-align:center;font-size:12px;font-weight:600;color:var(--color-text-muted);letter-spacing:.02em}.att-wd-short{display:none}.att-month-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:6px;padding:6px}.att-month-cell{display:flex;flex-direction:column;gap:8px;min-height:92px;padding:10px 12px;border:none;border-radius:var(--radius-md);background:var(--color-surface);border-left:3px solid transparent;text-align:left;font:inherit;color:inherit;width:100%;box-sizing:border-box;cursor:default;appearance:none;-webkit-appearance:none}.att-month-cell.is-outside{background:var(--color-outside-bg);border-left-color:transparent;pointer-events:none}.att-month-cell.is-outside .att-month-date{color:var(--color-text-muted);font-weight:500}.att-month-cell.is-selected{outline:2px solid var(--color-primary);outline-offset:-2px}.att-month-cell.status-present{border-left-color:var(--color-present-accent);background:var(--color-present-bg)}.att-month-cell.status-present .att-month-status,.att-month-cell.status-present .att-month-status-code{color:var(--color-present-accent)}.att-month-cell.status-absent{border-left-color:var(--color-absent-accent);background:var(--color-absent-bg)}.att-month-cell.status-absent .att-month-status,.att-month-cell.status-absent .att-month-status-code{color:var(--color-absent-accent)}.att-month-cell.status-half-day{border-left-color:var(--color-half-day-accent);background:var(--color-half-day-bg)}.att-month-cell.status-half-day .att-month-status,.att-month-cell.status-half-day .att-month-status-code{color:var(--color-half-day-accent)}.att-month-cell.status-holiday{border-left-color:var(--color-holiday-accent);background:var(--color-holiday-bg)}.att-month-cell.status-holiday .att-month-status,.att-month-cell.status-holiday .att-month-status-code{color:var(--color-holiday-accent)}.att-month-cell.status-weekly-off{border-left-color:var(--color-weekly-off-accent);background:var(--color-weekly-off-bg)}.att-month-cell.status-weekly-off .att-month-status,.att-month-cell.status-weekly-off .att-month-status-code{color:var(--color-weekly-off-accent)}.att-month-cell.status-missed-punch{border-left-color:var(--color-missed-punch-accent);background:var(--color-missed-punch-bg)}.att-month-cell.status-missed-punch .att-month-status,.att-month-cell.status-missed-punch .att-month-status-code{color:var(--color-missed-punch-accent)}.att-month-cell.status-leave{border-left-color:var(--color-leave-accent);background:var(--color-leave-bg)}.att-month-cell.status-leave .att-month-status,.att-month-cell.status-leave .att-month-status-code{color:var(--color-leave-accent)}.att-month-cell.status-pending{border-left-color:var(--color-border);background:var(--color-surface)}.att-month-cell.status-pending .att-month-status,.att-month-cell.status-pending .att-month-status-code{color:var(--color-text-muted)}.att-month-cell.status-today{border-left-color:var(--color-primary);background:var(--color-primary-light)}.att-month-cell.status-today .att-month-date,.att-month-cell.status-today .att-month-status-code{color:var(--color-primary)}.att-month-cell.status-none{background:var(--color-surface);border-left-color:var(--color-border-light)}button.att-month-cell{appearance:none;-webkit-appearance:none}.att-month-date{font-size:14px;font-weight:600;color:var(--color-text-heading);line-height:1}.att-month-status-code{display:none;font-size:11px;font-weight:700;letter-spacing:.02em;color:var(--color-text-muted);line-height:1}.att-month-status{margin-top:auto;font-size:12px;font-weight:600;color:var(--color-text-muted)}.att-month-day-detail{display:none;margin:0;padding:14px 16px 16px;border-top:1px solid var(--color-border-light);background:var(--color-surface)}.att-month-day-detail.is-open{display:block}.att-day-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}.att-day-detail-date{font-size:14px;font-weight:700;color:var(--color-text-heading);margin-bottom:6px}.att-day-detail-badge{display:inline-flex}.att-day-detail-close{border:none;background:transparent;color:var(--color-text-muted);font-size:22px;line-height:1;cursor:pointer;padding:0 2px;font-family:inherit}.att-day-detail-close:hover{color:var(--color-text-heading)}.att-day-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 16px}.att-day-detail-row{display:flex;flex-direction:column;gap:4px;min-width:0}.att-day-detail-row span{font-size:12px;font-weight:500;color:var(--color-text-muted)}.att-day-detail-row strong{font-size:14px;font-weight:600;color:var(--color-text-heading)}.att-day-detail-remarks-row{grid-column:1/-1}.att-month-legend{display:flex;align-items:center;flex-wrap:wrap;gap:16px 24px;padding:12px 20px;border-top:1px solid var(--color-border-light);background:var(--color-table-header-bg)}.att-month-legend-item{display:inline-flex;align-items:center;gap:8px;font-size:13px;color:var(--color-text-secondary)}.att-month-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.att-month-dot.present{background:var(--color-present-accent)}.att-month-dot.absent{background:var(--color-absent-accent)}.att-month-dot.holiday{background:var(--color-holiday-accent)}.att-month-dot.leave{background:var(--color-leave-accent)}.att-month-dot.today{background:var(--color-primary)}@media(max-width:1024px){.att-month-grid{gap:4px;padding:4px}.att-month-cell{min-height:72px;padding:8px;gap:4px}.att-month-cell:not(.is-outside){cursor:pointer}.att-month-date{font-size:13px}.att-month-status{font-size:11px}.att-month-weekday{padding:8px 4px;font-size:11px}.att-month-legend{gap:12px 16px;padding:10px 14px}}@media(max-width:640px){.weekly-log-toolbar{flex-direction:column;align-items:stretch;gap:10px}.weekly-log-title{font-size:14px}.att-period-controls{flex-direction:column;align-items:stretch;gap:8px}.att-period-group{width:100%;justify-content:space-between}.att-period-nav{flex:1 1 auto;justify-content:center}.att-period-group .att-period-nav-label,.att-period-group-week .att-period-nav-label{flex:1 1 auto;min-width:0}.view-toggle{width:100%;flex-shrink:1}.view-toggle-btn{flex:1 1 0;min-height:40px;padding:10px 12px}.att-wd-full{display:none}.att-wd-short{display:inline}.att-month-weekday{padding:8px 2px;font-size:12px}.att-month-grid{gap:3px;padding:4px}.att-month-cell{min-height:56px;padding:6px 4px 8px;gap:4px;align-items:center;border-left-width:0;border-bottom:3px solid transparent}.att-month-cell:not(.is-outside){cursor:pointer}.att-month-cell.status-present{border-bottom-color:var(--color-present-accent)}.att-month-cell.status-absent{border-bottom-color:var(--color-absent-accent)}.att-month-cell.status-holiday{border-bottom-color:var(--color-holiday-accent)}.att-month-cell.status-today{border-bottom-color:var(--color-primary)}.att-month-cell.status-half-day{border-bottom-color:var(--color-half-day-accent)}.att-month-cell.status-weekly-off{border-bottom-color:var(--color-weekly-off-accent)}.att-month-cell.status-missed-punch{border-bottom-color:var(--color-missed-punch-accent)}.att-month-cell.status-leave{border-bottom-color:var(--color-leave-accent)}.att-month-cell.status-pending{border-bottom-color:var(--color-border)}.att-month-date{font-size:13px}.att-month-status-code{display:block}.att-month-status{display:none}button.att-month-cell.is-selected{outline:2px solid var(--color-primary);outline-offset:-2px}.att-month-legend{display:grid;grid-template-columns:1fr 1fr;gap:10px 12px;padding:12px 14px}}.login-page{font-family:var(--font-family);min-height:100vh;position:relative;overflow:hidden;display:block;box-sizing:border-box}.login-page *,.login-page *:before,.login-page *:after{box-sizing:border-box}.login-page__bg{position:fixed;inset:0;background-image:url(https://images.unsplash.com/photo-1497366216548-37526070297c?auto=format&fit=crop&w=1920&q=80);background-size:cover;background-position:center;z-index:0}.login-page__overlay{position:fixed;inset:0;background:color-mix(in srgb,var(--color-primary-dark) 82%,transparent);z-index:1}.login-page__layout{position:relative;z-index:2;min-height:100vh;display:flex;align-items:center;justify-content:space-between;gap:48px;padding:48px clamp(24px,6vw,80px);max-width:1280px;margin:0 auto}.login-hero{flex:1;max-width:520px;color:#fff}.login-hero__title{font-size:clamp(36px,5vw,52px);font-weight:700;line-height:1.12;letter-spacing:-.03em;margin:0 0 20px}.login-hero__subtitle{font-size:clamp(15px,2vw,18px);font-weight:400;line-height:1.55;color:#ffffffe0;max-width:420px;margin:0}.login-card{flex-shrink:0;width:100%;max-width:420px;background:color-mix(in srgb,var(--color-surface) 94%,transparent);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-radius:16px;padding:36px 36px 28px;box-shadow:var(--shadow-modal);border:1px solid var(--color-border-light)}.login-card--change-password{padding:32px 36px 28px}.login-card__header{text-align:center;margin-bottom:28px}.login-card__brand{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;margin-bottom:8px}.login-card__logo{display:block;height:40px;width:auto;max-width:160px;object-fit:contain;flex-shrink:0}.login-card__title{font-size:18px;font-weight:700;color:var(--color-primary);letter-spacing:-.02em;margin:0}.login-card__subtitle{font-size:14px;color:var(--color-text-secondary);font-weight:400;margin:0}.login-card__form{display:flex;flex-direction:column;gap:18px}.login-error{background:var(--color-danger-bg);border:1px solid color-mix(in srgb,var(--color-danger-text) 35%,transparent);border-radius:var(--radius-md);padding:10px 12px;font-size:14px;font-weight:500;color:var(--color-danger-text);line-height:1.45}.change-password-banner{background:var(--color-primary-light);border:1px solid var(--color-primary-border);border-radius:var(--radius-md);padding:10px 12px;font-size:14px;font-weight:500;color:var(--color-primary);line-height:1.45}.login-card__submit{display:flex;align-items:center;justify-content:center;width:100%;height:46px;margin-top:6px;background:var(--color-primary);color:#fff;border:none;border-radius:var(--radius-md);font-family:inherit;font-size:14px;font-weight:600;text-decoration:none;cursor:pointer;box-shadow:0 1px 2px color-mix(in srgb,var(--color-primary) 20%,transparent);transition:background .15s ease}.login-card__submit:hover,.login-card__submit:active{background:var(--color-primary-hover)}.login-card__submit:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.login-card__submit:disabled{opacity:.7;cursor:not-allowed}.login-card__back-link{display:block;width:100%;margin-top:12px;padding:0;border:none;background:none;text-align:center;font-family:inherit;font-size:14px;font-weight:500;color:var(--color-primary);text-decoration:none;cursor:pointer}.login-card__back-link:hover{text-decoration:underline;text-underline-offset:2px}.login-card__back-link:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:2px}.login-card__footer{margin-top:24px;padding-top:20px;border-top:1px solid var(--color-border-light);text-align:center}.login-card__footer p{font-size:14px;color:var(--color-text-secondary);margin:0}.login-card__footer-link{color:var(--color-text-secondary);text-decoration:underline;text-underline-offset:2px}.auth-card-placeholder{margin:0;font-size:14px;color:var(--color-text-secondary);text-align:center;line-height:1.5}@media(max-width:900px){.login-page__layout{flex-direction:column;justify-content:center;padding:40px 24px}.login-hero{text-align:center;max-width:100%}.login-hero__subtitle{margin:0 auto}.login-card{max-width:440px}}@media(max-width:480px){.login-card,.login-card--change-password{padding:28px 22px 22px}.login-card__brand{flex-direction:column;gap:6px}}.login-field__hint{font-size:13px;color:var(--color-text-muted);margin:6px 0 0;line-height:1.4}.login-field__error{font-size:13px;color:var(--color-danger-text);margin:6px 0 0;line-height:1.35}.login-field__input-wrap{display:flex;align-items:center;gap:10px;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:0 14px;height:44px;transition:border-color .15s ease,box-shadow .15s ease}.login-field__input-wrap:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.login-field__select{flex:1;min-width:0;border:none;background:transparent;font-family:inherit;font-size:14px;color:var(--color-text-heading);height:100%;outline:none;cursor:pointer;appearance:none;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='%239ca3af' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 0 center;padding-right:20px}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.auth-field__icon-slot--hidden{display:none!important}.float-field{position:relative;min-width:0}.float-field__box{position:relative;display:block;height:48px;background:var(--color-surface);border:1.5px solid var(--color-border);border-radius:var(--radius-md);transition:border-color .15s ease,box-shadow .15s ease}.float-field__box:focus-within{border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-border)}.float-field__input{display:block;width:100%;height:100%;border:none;background:transparent;font-family:inherit;font-size:14px;color:var(--color-text-heading);padding:0 14px;outline:none;border-radius:inherit}.float-field__input:focus,.float-field__input:not(:placeholder-shown){padding-top:10px}.float-field__label{position:absolute;left:12px;top:50%;z-index:1;transform:translateY(-50%);display:inline-flex;align-items:center;gap:8px;max-width:calc(100% - 24px);margin:0;padding:0 4px;font-size:14px;font-weight:500;color:var(--color-text-muted);background:transparent;pointer-events:none;white-space:nowrap;transition:top .18s ease,transform .18s ease,font-size .18s ease,color .15s ease,background-color .15s ease}.float-field__icon{display:flex;align-items:center;flex-shrink:0;color:inherit}.float-field__icon svg{width:16px;height:16px}.float-field__text{overflow:hidden;text-overflow:ellipsis}.float-field__input:focus~.float-field__label,.float-field__input:not(:placeholder-shown)~.float-field__label{top:0;transform:translateY(-50%) scale(.86);transform-origin:left center;font-size:12px;font-weight:600;color:var(--color-text-heading);background:color-mix(in srgb,var(--color-surface) 94%,transparent);padding:0 6px;left:10px}.float-field__box:focus-within .float-field__label{color:var(--color-primary-dark)}.float-field__box:focus-within .float-field__icon{color:var(--color-primary)}.login-field--error .float-field__box{border-color:var(--color-danger-text);box-shadow:0 0 0 3px color-mix(in srgb,var(--color-danger) 25%,transparent)}.float-field__box--password .float-field__input{padding-right:44px}.float-field__box--password .float-field__input::-ms-reveal,.float-field__box--password .float-field__input::-ms-clear,.float-field__box--password .float-field__input::-webkit-credentials-auto-fill-button,.float-field__box--password .float-field__input::-webkit-strong-password-auto-fill-button{display:none!important}.float-field__toggle{position:absolute;right:6px;top:50%;z-index:2;transform:translateY(-50%);display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;margin:0;border:none;border-radius:var(--radius-md);background:transparent;color:var(--color-text-muted);cursor:pointer;appearance:none;transition:color .15s ease,background .15s ease}.float-field__toggle:hover{color:var(--color-text-heading);background:var(--color-border-light)}.float-field__toggle:focus-visible{outline:2px solid var(--color-primary);outline-offset:1px;color:var(--color-primary)}.float-field__toggle[aria-pressed=true]{color:var(--color-primary)}.float-field__toggle-icon{width:18px;height:18px;display:block}@media(prefers-reduced-motion:reduce){.float-field__label,.float-field__box,.float-field__toggle{transition:none}}.login-card--forgot{padding:32px 36px 28px}.forgot-lede{margin:0}.login-card__forgot-row{display:flex;justify-content:flex-end;margin:-6px 0 0}.login-card__forgot-link{font-size:13px;font-weight:500;color:var(--color-primary);text-decoration:none}.login-card__forgot-link:hover{text-decoration:underline;text-underline-offset:2px}.login-card__footer-link--active{color:var(--color-primary);font-weight:500;text-decoration:none}.forgot-status{display:flex;flex-direction:column;align-items:center;text-align:center;gap:12px;padding:8px 0 4px}.forgot-status__icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background:var(--color-primary-light);color:var(--color-primary)}.forgot-status__icon svg{width:24px;height:24px}.forgot-status__icon--success{background:color-mix(in srgb,var(--color-success, #16a34a) 14%,transparent);color:var(--color-success, #16a34a)}.forgot-status__icon--danger{background:var(--color-danger-bg);color:var(--color-danger-text)}.forgot-status__title{font-size:18px;font-weight:700;color:var(--color-primary-dark);letter-spacing:-.02em;line-height:1.3}.forgot-status__lede{font-size:14px;font-weight:400;color:var(--color-text-secondary);line-height:1.55;max-width:32ch}.forgot-status__actions{margin-top:4px;font-size:13px;color:var(--color-text-secondary)}.forgot-status__actions a,.forgot-status__actions button{color:var(--color-primary);font-weight:500;text-decoration:none;background:none;border:none;padding:0;font-family:inherit;font-size:inherit;cursor:pointer}.forgot-status__actions a:hover,.forgot-status__actions button:hover{text-decoration:underline;text-underline-offset:2px}.forgot-status__actions button:disabled{opacity:.7;cursor:not-allowed;text-decoration:none}@media(max-width:480px){.login-card--forgot{padding:28px 22px 22px}}.login-page__layout--signup{align-items:center;padding-top:40px;padding-bottom:40px}.login-page__layout--signup .login-hero{display:flex;flex-direction:column;justify-content:center;align-self:center}.login-card--signup{max-width:480px;padding:24px 28px 20px;display:flex;flex-direction:column;overflow:visible;align-self:center;height:auto;max-height:none}.login-card--signup .login-card__header{margin-bottom:12px;flex-shrink:0}.login-card--signup .login-card__subtitle{margin-top:4px}.signup-progress{flex-shrink:0;margin-bottom:14px}.signup-progress__label{font-size:12px;font-weight:600;color:var(--color-text-secondary);margin-bottom:8px}.signup-progress__track{display:flex;gap:6px;list-style:none;margin:0;padding:0}.signup-progress__seg{flex:1;height:4px;border-radius:2px;background:var(--color-border-light);transition:background .2s ease}.signup-progress__seg.is-done,.signup-progress__seg.is-current{background:var(--color-primary)}.signup-progress__seg.is-current{opacity:.55}.signup-progress__seg.is-done{opacity:1}.signup-step__heading{font-size:16px;font-weight:600;color:var(--color-text-heading);margin-bottom:4px}.signup-step__lede{font-size:13px;color:var(--color-text-secondary);line-height:1.45;margin-bottom:12px}.signup-step__lede--followup{margin-top:16px}.signup-form{display:flex;flex-direction:column;overflow:visible;gap:0}.signup-section__grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;overflow:visible}.signup-section__grid .signup-step__heading,.signup-section__grid .signup-step__lede,.signup-section__grid .login-field--full,.signup-section__grid .float-field.login-field--full,.signup-section__grid .signup-phone-wrap,.signup-section__grid .signup-slug-wrap,.signup-section__grid .signup-email-wrap{grid-column:1/-1}.signup-card-stage{position:relative;flex-shrink:0;width:100%;max-width:480px}.signup-card-stage .login-card--signup,.signup-card-stage .login-card--setup{max-width:none;width:100%}.signup-float-tip{position:absolute;right:calc(100% + 16px);left:auto;top:0;z-index:8;width:260px;padding:16px 18px 18px;background:var(--color-primary-light);color:var(--color-primary-dark);border:1px solid var(--color-primary-border);border-radius:10px;box-shadow:0 10px 28px color-mix(in srgb,#000 12%,transparent),0 2px 6px color-mix(in srgb,#000 6%,transparent);pointer-events:none}.signup-float-tip[hidden]{display:none!important}.signup-float-tip:before{content:"";position:absolute;right:-7px;left:auto;top:18px;width:0;height:0;border-style:solid;border-width:7px 0 7px 7px;border-color:transparent transparent transparent var(--color-primary-light);filter:drop-shadow(1px 0 0 var(--color-primary-border))}.signup-float-tip__title{margin:0 0 10px;font-size:14px;font-weight:700;line-height:1.3;color:var(--color-primary-dark)}.signup-float-tip__list{margin:0;padding:0 0 0 1.1em;list-style:disc;font-size:12px;font-weight:500;line-height:1.55;color:var(--color-primary-dark)}.signup-float-tip__list li+li{margin-top:6px}.signup-float-tip__list li::marker{color:var(--color-primary)}.signup-email-wrap,.signup-slug-wrap{position:relative;grid-column:1/-1;overflow:visible}.signup-email-wrap .signup-float-tip--field,.signup-slug-wrap .signup-float-tip--field{position:absolute;right:calc(100% + 16px);left:auto;top:0;width:240px;z-index:9}@media(max-width:1100px){.signup-email-wrap .signup-float-tip--field,.signup-slug-wrap .signup-float-tip--field{right:0;left:0;top:calc(100% + 10px);width:auto;max-width:none}.signup-email-wrap .signup-float-tip--field:before,.signup-slug-wrap .signup-float-tip--field:before{right:auto;left:28px;top:-7px;border-width:0 7px 7px 7px;border-color:transparent transparent var(--color-primary-light) transparent;filter:drop-shadow(0 -1px 0 var(--color-primary-border))}.signup-float-tip:not(.signup-float-tip--field){right:0;left:0;width:auto;max-width:none;padding:14px 16px 16px}.signup-float-tip:not(.signup-float-tip--field):before{right:auto;left:28px;top:-7px;border-width:0 7px 7px 7px;border-color:transparent transparent var(--color-primary-light) transparent;filter:drop-shadow(0 -1px 0 var(--color-primary-border))}}.signup-phone{display:flex;gap:8px;width:100%}.signup-phone__dial{flex:0 0 108px}.signup-phone__dial .login-field__input-wrap{padding-right:8px;height:44px}.signup-phone .float-field{flex:1;min-width:0}.signup-phone .float-field__box{height:44px}.signup-phone-wrap{grid-column:1/-1}.signup-verify{text-align:center;padding:8px 0 4px}.signup-verify__icon{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:12px;background:var(--color-primary-light);color:var(--color-primary);margin-bottom:14px}.signup-verify__icon svg{width:24px;height:24px}.signup-verify__email{font-weight:600;color:var(--color-text-heading);word-break:break-all}.signup-verify__actions{margin-top:12px;font-size:13px;color:var(--color-text-secondary)}.signup-verify__actions button{background:none;border:none;padding:0;font:inherit;font-weight:600;color:var(--color-primary);cursor:pointer;text-decoration:underline;text-underline-offset:2px}.signup-verify--status{padding-top:24px;padding-bottom:16px}.signup-verify__spinner{display:inline-block;width:40px;height:40px;margin-bottom:14px;border:3px solid var(--color-border-light);border-top-color:var(--color-primary);border-radius:50%;animation:signup-spin .8s linear infinite}.signup-verify__icon--success{background:color-mix(in srgb,var(--color-primary) 12%,transparent)}@keyframes signup-spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.signup-verify__spinner{animation:none;border-top-color:var(--color-primary);opacity:.85}}.signup-actions{flex-shrink:0;padding-top:12px;margin-top:4px;border-top:1px solid var(--color-border-light);display:flex;flex-direction:column;gap:10px}.signup-actions .login-card__submit{margin-top:0}.signup-actions__row{display:flex;gap:10px;align-items:stretch}.signup-actions__row .login-card__submit{flex:1}.signup-btn-back{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;width:46px;height:46px;padding:0;background:var(--color-primary-light);color:var(--color-primary);border:1px solid var(--color-primary-border);border-radius:var(--radius-md);cursor:pointer;appearance:none;transition:background .15s ease,border-color .15s ease,color .15s ease}.signup-btn-back svg{width:20px;height:20px}.signup-btn-back:hover{background:color-mix(in srgb,var(--color-primary) 16%,var(--color-primary-light));color:var(--color-primary-dark);border-color:var(--color-primary)}.signup-btn-back:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.login-card__footer--signup{margin-top:12px;padding-top:12px;flex-shrink:0}.login-card__footer-link--active{color:var(--color-primary);font-weight:600;text-decoration:none}.login-card__footer-link--active:hover{text-decoration:underline;text-underline-offset:2px}@media(prefers-reduced-motion:reduce){.signup-progress__seg,.signup-btn-back{transition:none}}@media(max-width:900px){.login-page__layout--signup .login-hero{align-self:stretch}.login-card--signup{max-width:480px}}@media(max-width:520px){.signup-section__grid{grid-template-columns:1fr}.signup-phone{flex-direction:column}.signup-phone__dial{flex-basis:auto}.login-card--signup{padding:20px 18px 16px}.signup-actions__row{flex-direction:column-reverse}}.login-card--setup{max-width:440px;padding:36px 36px 28px;text-align:center;height:auto;max-height:none}.login-card--setup .login-card__header{margin-bottom:20px}.setup-panel{display:block;text-align:center}.setup-status__icon{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:14px;margin-bottom:16px;background:var(--color-primary-light);color:var(--color-primary)}.setup-status__icon svg{width:28px;height:28px}.setup-status__icon--danger{background:var(--color-danger-bg);color:var(--color-danger-text)}.setup-status__title{font-size:20px;font-weight:600;color:var(--color-text-heading);margin-bottom:8px;letter-spacing:-.02em}.setup-status__lede{font-size:14px;line-height:1.55;color:var(--color-text-secondary);margin-bottom:20px;max-width:340px;margin-left:auto;margin-right:auto}.setup-status__meta{display:flex;flex-direction:column;gap:8px;text-align:left;background:var(--color-border-light);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:12px 14px;margin-bottom:20px}.setup-status__meta-row{display:flex;justify-content:space-between;gap:12px;font-size:13px}.setup-status__meta-label{color:var(--color-text-muted);flex-shrink:0}.setup-status__meta-value{color:var(--color-text-heading);font-weight:600;text-align:right;word-break:break-all}.setup-status__hint{font-size:12px;color:var(--color-text-muted);margin-top:14px;line-height:1.4}.setup-progress{height:4px;border-radius:2px;background:var(--color-border-light);overflow:hidden;margin-bottom:8px}.setup-progress__bar{height:100%;width:40%;border-radius:2px;background:var(--color-primary);animation:setup-indeterminate 1.4s ease-in-out infinite}.setup-spinner{display:inline-block;width:40px;height:40px;margin-bottom:16px;border:3px solid var(--color-border-light);border-top-color:var(--color-primary);border-radius:50%;animation:setup-spin .8s linear infinite}@keyframes setup-spin{to{transform:rotate(360deg)}}@keyframes setup-indeterminate{0%{transform:translate(-100%)}to{transform:translate(350%)}}.setup-error{display:block;text-align:left;margin-bottom:16px}.setup-actions{display:flex;flex-direction:column;gap:12px}.setup-actions .login-card__submit{margin-top:0}.setup-btn-secondary{display:flex;align-items:center;justify-content:center;height:46px;background:transparent;color:var(--color-text-heading);border:1px solid var(--color-border);border-radius:var(--radius-md);font-family:inherit;font-size:14px;font-weight:600;cursor:pointer;text-decoration:none;appearance:none;transition:background .15s ease}.setup-btn-secondary:hover{background:var(--color-border-light)}.setup-btn-secondary:focus-visible,.login-card__submit:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}@media(prefers-reduced-motion:reduce){.setup-spinner,.setup-progress__bar{animation:none}.setup-spinner{border-top-color:var(--color-primary);opacity:.85}}.app-toast.mat-mdc-snack-bar-container{--app-toast-fg: var(--color-text-heading);--app-toast-bg: var(--color-surface);--app-toast-border: var(--color-border-light);--app-toast-action: var(--color-primary);--mdc-snackbar-container-shape: var(--radius-md);--mdc-snackbar-container-color: var(--app-toast-bg);--mdc-snackbar-supporting-text-color: var(--app-toast-fg);--mat-snack-bar-button-color: var(--app-toast-action);margin:16px;max-width:min(420px,100vw - 32px);min-width:min(320px,100vw - 32px);border:1px solid var(--app-toast-border);border-radius:var(--radius-md);background:var(--app-toast-bg)!important;color:var(--app-toast-fg);box-shadow:var(--shadow-card),0 12px 32px #0f172a1f;overflow:hidden;font-family:var(--font-family)}.app-toast .mdc-snackbar__surface{padding:12px 14px;background:transparent!important;box-shadow:none!important;border-radius:inherit;color:var(--app-toast-fg)!important}.app-toast .mat-mdc-snack-bar-label,.app-toast .mdc-snackbar__label{padding:0;font-size:14px;font-weight:500;line-height:1.4;white-space:normal;font-family:var(--font-family);color:var(--app-toast-fg)!important;--mdc-snackbar-supporting-text-color: var(--app-toast-fg)}.app-toast .mat-mdc-snack-bar-actions{padding:0 0 0 12px;margin:0}.app-toast .mat-mdc-button,.app-toast .mat-mdc-snack-bar-action{min-width:auto;height:auto;padding:4px 8px;font-size:13px;font-weight:600;letter-spacing:0;text-transform:none;font-family:var(--font-family);color:var(--app-toast-action)!important;--mdc-text-button-label-text-color: var(--app-toast-action);--mat-button-text-label-text-color: var(--app-toast-action)}.app-toast .mat-mdc-button .mdc-button__label{color:var(--app-toast-action)!important}.app-toast .mat-mdc-button:hover{background:color-mix(in srgb,var(--app-toast-action) 10%,transparent)}.app-toast--error.mat-mdc-snack-bar-container{--app-toast-fg: var(--color-danger-text);--app-toast-bg: var(--color-danger-bg);--app-toast-border: color-mix(in srgb, var(--color-danger-text) 35%, var(--color-border));--app-toast-action: var(--color-danger-text)}.app-toast--success.mat-mdc-snack-bar-container{--app-toast-fg: var(--color-success-text);--app-toast-bg: var(--color-success-bg);--app-toast-border: color-mix(in srgb, var(--color-success-text) 35%, var(--color-border));--app-toast-action: var(--color-success-text)}.app-toast--info.mat-mdc-snack-bar-container{--app-toast-fg: var(--color-primary-dark);--app-toast-bg: var(--color-primary-light);--app-toast-border: var(--color-primary-border);--app-toast-action: var(--color-primary)}[data-theme=dark] .app-toast.mat-mdc-snack-bar-container,[data-theme=midnight] .app-toast.mat-mdc-snack-bar-container{box-shadow:var(--shadow-card),0 16px 40px #02061773}.profile-mode-toast{position:fixed;top:16px;left:50%;z-index:20000;transform:translate(-50%) translateY(-12px);display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:var(--color-surface, #fff);color:var(--color-text-heading, #111827);border:1px solid var(--color-primary-border, var(--color-border-light, #e5e7eb));font-size:12px;font-weight:600;font-family:var(--font-family);box-shadow:0 8px 24px #0f172a1f;opacity:0;pointer-events:none;transition:opacity .2s ease,transform .2s ease;-webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto}.profile-mode-toast.is-visible{opacity:1;transform:translate(-50%) translateY(0)}.profile-mode-toast.is-edit,.profile-mode-toast.is-success{background:var(--color-primary, #0d8074);border-color:var(--color-primary, #0d8074);color:#fff;-webkit-text-fill-color:#ffffff}.profile-mode-toast.is-danger{background:var(--color-danger);border-color:var(--color-danger);color:#fff;-webkit-text-fill-color:#ffffff}.profile-mode-toast.is-view{background:var(--color-primary-light, #e0f2f1);border-color:var(--color-primary-border, var(--color-primary, #0d8074));color:var(--color-primary-dark, var(--color-primary, #0d8074));-webkit-text-fill-color:var(--color-primary-dark, var(--color-primary, #0d8074))}.profile-mode-toast .profile-mode-toast-icon,.profile-mode-toast .profile-mode-toast-icon svg{width:14px;height:14px;flex-shrink:0;line-height:0;display:inline-flex;align-items:center;justify-content:center}.profile-mode-toast .profile-mode-toast-label{line-height:1.2}*,*:before,*:after{box-sizing:border-box}*{scrollbar-width:none;-ms-overflow-style:none}*::-webkit-scrollbar{display:none;width:0;height:0}html{height:100%;--mat-sys-background: light-dark(#f7faf9, #101414);--mat-sys-error: light-dark(#ba1a1a, #ffb4ab);--mat-sys-error-container: light-dark(#ffdad6, #93000a);--mat-sys-inverse-on-surface: light-dark(#eff1f0, #2d3131);--mat-sys-inverse-primary: light-dark(#00dddd, #006a6a);--mat-sys-inverse-surface: light-dark(#2d3131, #e0e3e2);--mat-sys-on-background: light-dark(#191c1c, #e0e3e2);--mat-sys-on-error: light-dark(#ffffff, #690005);--mat-sys-on-error-container: light-dark(#93000a, #ffdad6);--mat-sys-on-primary: light-dark(#ffffff, #003737);--mat-sys-on-primary-container: light-dark(#004f4f, #00fbfb);--mat-sys-on-primary-fixed: light-dark(#002020, #002020);--mat-sys-on-primary-fixed-variant: light-dark(#004f4f, #004f4f);--mat-sys-on-secondary: light-dark(#ffffff, #1b3534);--mat-sys-on-secondary-container: light-dark(#324b4b, #cce8e7);--mat-sys-on-secondary-fixed: light-dark(#051f1f, #051f1f);--mat-sys-on-secondary-fixed-variant: light-dark(#324b4b, #324b4b);--mat-sys-on-surface: light-dark(#191c1c, #e0e3e2);--mat-sys-on-surface-variant: light-dark(#3f4948, #dae5e4);--mat-sys-on-tertiary: light-dark(#ffffff, #0001ac);--mat-sys-on-tertiary-container: light-dark(#0000ef, #e0e0ff);--mat-sys-on-tertiary-fixed: light-dark(#00006e, #00006e);--mat-sys-on-tertiary-fixed-variant: light-dark(#0000ef, #0000ef);--mat-sys-outline: light-dark(#6f7979, #889392);--mat-sys-outline-variant: light-dark(#bec9c8, #3f4948);--mat-sys-primary: light-dark(#006a6a, #00dddd);--mat-sys-primary-container: light-dark(#00fbfb, #004f4f);--mat-sys-primary-fixed: light-dark(#00fbfb, #00fbfb);--mat-sys-primary-fixed-dim: light-dark(#00dddd, #00dddd);--mat-sys-scrim: light-dark(#000000, #000000);--mat-sys-secondary: light-dark(#4a6363, #b0cccb);--mat-sys-secondary-container: light-dark(#cce8e7, #324b4b);--mat-sys-secondary-fixed: light-dark(#cce8e7, #cce8e7);--mat-sys-secondary-fixed-dim: light-dark(#b0cccb, #b0cccb);--mat-sys-shadow: light-dark(#000000, #000000);--mat-sys-surface: light-dark(#f7faf9, #101414);--mat-sys-surface-bright: light-dark(#f7faf9, #363a39);--mat-sys-surface-container: light-dark(#ebefed, #1c2020);--mat-sys-surface-container-high: light-dark(#e6e9e7, #272b2a);--mat-sys-surface-container-highest: light-dark(#e0e3e2, #313635);--mat-sys-surface-container-low: light-dark(#f1f4f3, #191c1c);--mat-sys-surface-container-lowest: light-dark(#ffffff, #0b0f0e);--mat-sys-surface-dim: light-dark(#d7dbd9, #101414);--mat-sys-surface-tint: light-dark(#006a6a, #00dddd);--mat-sys-surface-variant: light-dark(#dae5e4, #3f4948);--mat-sys-tertiary: light-dark(#343dff, #bec2ff);--mat-sys-tertiary-container: light-dark(#e0e0ff, #0000ef);--mat-sys-tertiary-fixed: light-dark(#e0e0ff, #e0e0ff);--mat-sys-tertiary-fixed-dim: light-dark(#bec2ff, #bec2ff);--mat-sys-neutral-variant20: #293232;--mat-sys-neutral10: #191c1c;--mat-sys-level0: 0px 0px 0px 0px rgba(0, 0, 0, .2), 0px 0px 0px 0px rgba(0, 0, 0, .14), 0px 0px 0px 0px rgba(0, 0, 0, .12);--mat-sys-level1: 0px 2px 1px -1px rgba(0, 0, 0, .2), 0px 1px 1px 0px rgba(0, 0, 0, .14), 0px 1px 3px 0px rgba(0, 0, 0, .12);--mat-sys-level2: 0px 3px 3px -2px rgba(0, 0, 0, .2), 0px 3px 4px 0px rgba(0, 0, 0, .14), 0px 1px 8px 0px rgba(0, 0, 0, .12);--mat-sys-level3: 0px 3px 5px -1px rgba(0, 0, 0, .2), 0px 6px 10px 0px rgba(0, 0, 0, .14), 0px 1px 18px 0px rgba(0, 0, 0, .12);--mat-sys-level4: 0px 5px 5px -3px rgba(0, 0, 0, .2), 0px 8px 10px 1px rgba(0, 0, 0, .14), 0px 3px 14px 2px rgba(0, 0, 0, .12);--mat-sys-level5: 0px 7px 8px -4px rgba(0, 0, 0, .2), 0px 12px 17px 2px rgba(0, 0, 0, .14), 0px 5px 22px 4px rgba(0, 0, 0, .12);--mat-sys-body-large: 400 1rem / 1.5rem Inter;--mat-sys-body-large-font: Inter;--mat-sys-body-large-line-height: 1.5rem;--mat-sys-body-large-size: 1rem;--mat-sys-body-large-tracking: .031rem;--mat-sys-body-large-weight: 400;--mat-sys-body-medium: 400 .875rem / 1.25rem Inter;--mat-sys-body-medium-font: Inter;--mat-sys-body-medium-line-height: 1.25rem;--mat-sys-body-medium-size: .875rem;--mat-sys-body-medium-tracking: .016rem;--mat-sys-body-medium-weight: 400;--mat-sys-body-small: 400 .75rem / 1rem Inter;--mat-sys-body-small-font: Inter;--mat-sys-body-small-line-height: 1rem;--mat-sys-body-small-size: .75rem;--mat-sys-body-small-tracking: .025rem;--mat-sys-body-small-weight: 400;--mat-sys-display-large: 400 3.562rem / 4rem Inter;--mat-sys-display-large-font: Inter;--mat-sys-display-large-line-height: 4rem;--mat-sys-display-large-size: 3.562rem;--mat-sys-display-large-tracking: -.016rem;--mat-sys-display-large-weight: 400;--mat-sys-display-medium: 400 2.812rem / 3.25rem Inter;--mat-sys-display-medium-font: Inter;--mat-sys-display-medium-line-height: 3.25rem;--mat-sys-display-medium-size: 2.812rem;--mat-sys-display-medium-tracking: 0;--mat-sys-display-medium-weight: 400;--mat-sys-display-small: 400 2.25rem / 2.75rem Inter;--mat-sys-display-small-font: Inter;--mat-sys-display-small-line-height: 2.75rem;--mat-sys-display-small-size: 2.25rem;--mat-sys-display-small-tracking: 0;--mat-sys-display-small-weight: 400;--mat-sys-headline-large: 400 2rem / 2.5rem Inter;--mat-sys-headline-large-font: Inter;--mat-sys-headline-large-line-height: 2.5rem;--mat-sys-headline-large-size: 2rem;--mat-sys-headline-large-tracking: 0;--mat-sys-headline-large-weight: 400;--mat-sys-headline-medium: 400 1.75rem / 2.25rem Inter;--mat-sys-headline-medium-font: Inter;--mat-sys-headline-medium-line-height: 2.25rem;--mat-sys-headline-medium-size: 1.75rem;--mat-sys-headline-medium-tracking: 0;--mat-sys-headline-medium-weight: 400;--mat-sys-headline-small: 400 1.5rem / 2rem Inter;--mat-sys-headline-small-font: Inter;--mat-sys-headline-small-line-height: 2rem;--mat-sys-headline-small-size: 1.5rem;--mat-sys-headline-small-tracking: 0;--mat-sys-headline-small-weight: 400;--mat-sys-label-large: 500 .875rem / 1.25rem Inter;--mat-sys-label-large-font: Inter;--mat-sys-label-large-line-height: 1.25rem;--mat-sys-label-large-size: .875rem;--mat-sys-label-large-tracking: .006rem;--mat-sys-label-large-weight: 500;--mat-sys-label-large-weight-prominent: 700;--mat-sys-label-medium: 500 .75rem / 1rem Inter;--mat-sys-label-medium-font: Inter;--mat-sys-label-medium-line-height: 1rem;--mat-sys-label-medium-size: .75rem;--mat-sys-label-medium-tracking: .031rem;--mat-sys-label-medium-weight: 500;--mat-sys-label-medium-weight-prominent: 700;--mat-sys-label-small: 500 .688rem / 1rem Inter;--mat-sys-label-small-font: Inter;--mat-sys-label-small-line-height: 1rem;--mat-sys-label-small-size: .688rem;--mat-sys-label-small-tracking: .031rem;--mat-sys-label-small-weight: 500;--mat-sys-title-large: 400 1.375rem / 1.75rem Inter;--mat-sys-title-large-font: Inter;--mat-sys-title-large-line-height: 1.75rem;--mat-sys-title-large-size: 1.375rem;--mat-sys-title-large-tracking: 0;--mat-sys-title-large-weight: 400;--mat-sys-title-medium: 500 1rem / 1.5rem Inter;--mat-sys-title-medium-font: Inter;--mat-sys-title-medium-line-height: 1.5rem;--mat-sys-title-medium-size: 1rem;--mat-sys-title-medium-tracking: .009rem;--mat-sys-title-medium-weight: 500;--mat-sys-title-small: 500 .875rem / 1.25rem Inter;--mat-sys-title-small-font: Inter;--mat-sys-title-small-line-height: 1.25rem;--mat-sys-title-small-size: .875rem;--mat-sys-title-small-tracking: .006rem;--mat-sys-title-small-weight: 500;--mat-sys-corner-extra-large: 28px;--mat-sys-corner-extra-large-top: 28px 28px 0 0;--mat-sys-corner-extra-small: 4px;--mat-sys-corner-extra-small-top: 4px 4px 0 0;--mat-sys-corner-full: 9999px;--mat-sys-corner-large: 16px;--mat-sys-corner-large-end: 0 16px 16px 0;--mat-sys-corner-large-start: 16px 0 0 16px;--mat-sys-corner-large-top: 16px 16px 0 0;--mat-sys-corner-medium: 12px;--mat-sys-corner-none: 0;--mat-sys-corner-small: 8px;--mat-sys-dragged-state-layer-opacity: .16;--mat-sys-focus-state-layer-opacity: .12;--mat-sys-hover-state-layer-opacity: .08;--mat-sys-pressed-state-layer-opacity: .12;--mat-sys-primary: #0d8074;--mat-sys-on-primary: #ffffff;--mat-sys-primary-container: #e6f7f5;--mat-sys-on-primary-container: #0d4d44;--mat-sys-surface: #ffffff;--mat-sys-surface-container: #ffffff;--mat-sys-surface-container-low: #ffffff;--mat-sys-surface-container-high: #ffffff;--mat-sys-surface-container-highest: #f8f9fb;--mat-sys-on-surface: #111827;--mat-sys-on-surface-variant: #6b7280;--mat-sys-outline: #e5e7eb;--mat-sys-outline-variant: #e8ecf1}[data-theme=dark]{--mat-sys-primary: #2dd4bf;--mat-sys-on-primary: #0f172a;--mat-sys-primary-container: #134e4a;--mat-sys-on-primary-container: #99f6e4;--mat-sys-surface: #1e293b;--mat-sys-surface-container: #1e293b;--mat-sys-surface-container-low: #1a2332;--mat-sys-surface-container-high: #243044;--mat-sys-surface-container-highest: #334155;--mat-sys-on-surface: #f8fafc;--mat-sys-on-surface-variant: #cbd5e1;--mat-sys-outline: #334155;--mat-sys-outline-variant: #293548}[data-theme=midnight]{--mat-sys-primary: #60a5fa;--mat-sys-on-primary: #0f172a;--mat-sys-primary-container: #1e3a8a;--mat-sys-on-primary-container: #bfdbfe;--mat-sys-surface: #111827;--mat-sys-surface-container: #111827;--mat-sys-surface-container-low: #0f172a;--mat-sys-surface-container-high: #1f2937;--mat-sys-surface-container-highest: #374151;--mat-sys-on-surface: #f9fafb;--mat-sys-on-surface-variant: #d1d5db;--mat-sys-outline: #374151;--mat-sys-outline-variant: #1f2937}[data-theme=blue]{--mat-sys-primary: #2563eb;--mat-sys-on-primary: #ffffff;--mat-sys-primary-container: #dbeafe;--mat-sys-on-primary-container: #1e3a8a}[data-theme=indigo]{--mat-sys-primary: #4f46e5;--mat-sys-on-primary: #ffffff;--mat-sys-primary-container: #e0e7ff;--mat-sys-on-primary-container: #312e81}[data-theme=emerald]{--mat-sys-primary: #059669;--mat-sys-on-primary: #ffffff;--mat-sys-primary-container: #d1fae5;--mat-sys-on-primary-container: #064e3b}[data-theme=violet]{--mat-sys-primary: #7c3aed;--mat-sys-on-primary: #ffffff;--mat-sys-primary-container: #ede9fe;--mat-sys-on-primary-container: #4c1d95}[data-theme=rose]{--mat-sys-primary: #e11d48;--mat-sys-on-primary: #ffffff;--mat-sys-primary-container: #ffe4e6;--mat-sys-on-primary-container: #881337}[data-theme=slate]{--mat-sys-primary: #475569;--mat-sys-on-primary: #ffffff;--mat-sys-primary-container: #f1f5f9;--mat-sys-on-primary-container: #1e293b}body{color-scheme:light;background-color:var(--color-bg);color:var(--color-text);font-family:var(--font-family);margin:0;height:100%}app-root{display:block;height:100%}.mat-toolbar.mat-primary{--mat-toolbar-container-background-color: var(--color-primary);--mat-toolbar-container-text-color: #fff}
