:root{--color-primary:#1a73e8;--color-primary-dark:#1454b0;--color-primary-darker:#0f3d80;--color-primary-bg:#eaf2fe;--color-primary-200:#a9c8f5;--color-primary-contrast:#fff;--color-text:#1f2328;--color-text-secondary:#5b6472;--color-text-muted:#8a94a3;--color-border:#e2e5ea;--color-border-strong:#cbd1db;--color-bg:#f4f6f9;--color-surface:#fff;--color-surface-alt:#f7f8fa;--color-success:#1e8e3e;--color-success-dark:#166b2e;--color-success-bg:#e6f4ea;--color-success-border:#b7e1c3;--color-danger:#c0392b;--color-danger-dark:#922a1f;--color-danger-bg:#fdecea;--color-danger-border:#f3bdb6;--color-warning:#b06000;--color-warning-dark:#7a4300;--color-warning-bg:#fff3e0;--color-warning-border:#ffd8a8;--color-info:#1565c0;--color-info-dark:#0d4590;--color-info-bg:#e3f2fd;--color-info-border:#a9d0f5;--sidebar-width:256px;--sidebar-width-collapsed:76px;--header-height:64px;--content-max-width:1180px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--radius-sm:6px;--radius-md:10px;--radius-lg:14px;--radius-pill:999px;--shadow-sm:0 1px 2px #1018280f;--shadow-md:0 4px 14px #10182814;--shadow-lg:0 12px 32px #10182824;--font-sans:-apple-system,BlinkMacSystemFont,"Segoe UI","Roboto","Oxygen","Ubuntu","Cantarell","Helvetica Neue",sans-serif}*{box-sizing:border-box}body,html{background-color:#f4f6f9;background-color:var(--color-bg);margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Helvetica Neue,sans-serif;font-family:var(--font-sans)}body,h1,h2,h3,h4,h5,h6{color:#1f2328;color:var(--color-text)}h1,h2,h3,h4,h5,h6{font-weight:600;margin-top:0}a{color:#1a73e8;color:var(--color-primary)}button{font-family:inherit}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.page{max-width:1180px;max-width:var(--content-max-width)}.page-header{flex-wrap:wrap;gap:12px;gap:var(--space-3);margin-bottom:var(--space-5)}.page-title{color:#1f2328;font-size:22px}.login-container{align-items:center;background-color:var(--color-bg);display:flex;justify-content:center;min-height:100vh}.login-card{background-color:#fff;border-radius:12px;box-shadow:0 4px 24px #0000001a;max-width:400px;padding:40px;width:100%}.login-title{color:var(--color-text);font-size:28px;margin-bottom:8px;text-align:center}.login-subtitle{color:var(--color-text-secondary);font-size:14px;margin-bottom:24px;text-align:center}.error-message{background-color:var(--color-danger-bg);border-radius:8px;color:var(--color-danger);font-size:14px;margin-bottom:16px;padding:12px}.input-label{color:var(--color-text);display:block;font-size:14px;font-weight:500;margin-bottom:6px}.input-field{border:1px solid var(--color-border);border-radius:8px;box-sizing:border-box;font-size:14px;outline:none;padding:12px;transition:border .2s;width:100%}.input-field:focus{border-color:var(--color-primary)}.login-button{border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;margin-top:8px;padding:12px;transition:background-color .2s;width:100%}.login-button,.login-button:hover{background-color:var(--color-text)}.login-button:disabled{background-color:var(--color-primary-200);cursor:not-allowed}.forgot-link{color:var(--color-text);display:block;font-size:14px;margin-top:16px;text-align:center;text-decoration:none}.forgot-link:hover{text-decoration:underline}.retry-link{background:none;border:none;cursor:pointer;display:block;font:inherit;margin-top:8px;padding:0;text-align:center;width:100%}.card{max-width:400px}.title{color:var(--color-primary)}.success{padding:16px;text-align:center}.button{background-color:var(--color-primary)}.link{color:var(--color-primary);display:block;font-size:14px;margin-top:16px;text-align:center;text-decoration:none}.container{align-items:center;background-color:var(--color-bg);display:flex;justify-content:center;min-height:100vh}.card{background-color:#fff;border-radius:12px;box-shadow:0 4px 24px #0000001a;max-width:450px;padding:40px;width:100%}.title{color:var(--color-text);font-size:24px;margin-bottom:8px}.subtitle,.title{text-align:center}.subtitle{color:var(--color-text-secondary);font-size:14px;margin-bottom:24px}.progress-bar{background-color:var(--color-border);border-radius:4px;height:8px;margin-bottom:24px;overflow:hidden}.progress-fill{background-color:var(--color-primary);height:100%;transition:width .3s}.input-group{margin-bottom:16px}.label{color:var(--color-text);display:block;font-weight:500;margin-bottom:6px}.input,.label{font-size:14px}.input{border:1px solid var(--color-border);border-radius:8px;box-sizing:border-box;outline:none;padding:12px;width:100%}.input:focus{border-color:var(--color-primary)}.button{background-color:var(--color-text);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;margin-top:8px;padding:12px;width:100%}.button:disabled{background-color:var(--color-primary-200);cursor:not-allowed}.profile-container{background-color:var(--color-bg);min-height:100vh;padding:24px}.profile-header{align-items:center;background-color:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;justify-content:space-between;margin-bottom:24px;padding:16px 24px}.profile-header-title{color:var(--color-text);margin:0}.edit-btn{border-radius:8px;font-size:14px;padding:8px 16px}.back-btn:hover,.edit-btn:hover{background-color:var(--color-text-secondary)}.profile-top-card{align-items:center;background-color:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;gap:24px;margin-bottom:24px;padding:32px}.profile-avatar{align-items:center;background-color:var(--color-primary);color:#fff;display:flex;flex-shrink:0;font-size:32px;font-weight:700;justify-content:center}.profile-avatar,.profile-avatar img{border-radius:50%;height:80px;width:80px}.profile-avatar img{object-fit:cover}.profile-name{color:var(--color-text);font-size:24px;font-weight:700;margin:0 0 4px}.profile-role{color:var(--color-primary);font-size:14px;margin:0 0 4px;text-transform:capitalize}.profile-email{color:var(--color-text-secondary);font-size:14px;margin:0}.profile-section{background-color:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:24px;padding:24px}.section-title{border-bottom:1px solid var(--color-border);font-size:16px;margin:0 0 16px;padding-bottom:12px}.profile-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.profile-field{display:flex;flex-direction:column;gap:4px}.field-label{color:var(--color-text-secondary);font-size:12px;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.field-value{color:var(--color-text);font-size:14px}.field-value.empty{color:var(--color-text-muted);font-style:italic}.loading{padding:48px;text-align:center}.loading,.readonly-badge{color:var(--color-text-secondary)}.readonly-badge{border-radius:4px;display:inline-block;font-size:10px;margin-left:6px;padding:2px 6px}.edit-container,.readonly-badge{background-color:var(--color-bg)}.edit-container{min-height:100vh;padding:24px}.edit-header{align-items:center;background-color:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;justify-content:space-between;margin-bottom:24px;padding:16px 24px}.edit-header-title{color:var(--color-primary);margin:0}.edit-card{background-color:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:24px;padding:32px}.edit-section-title{border-bottom:1px solid var(--color-border);color:var(--color-text);font-size:16px;font-weight:600;margin:0 0 16px;padding-bottom:12px}.edit-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.edit-field{display:flex;flex-direction:column;gap:6px}.edit-label{color:var(--color-text);font-size:13px;font-weight:500}.edit-input{border:1px solid var(--color-border);border-radius:8px;box-sizing:border-box;font-size:14px;outline:none;padding:10px 12px;width:100%}.edit-input:focus{border-color:var(--color-primary)}.edit-textarea{box-sizing:border-box;min-height:80px;outline:none;resize:vertical;width:100%}.edit-textarea,.readonly-field{border:1px solid var(--color-border);border-radius:8px;font-size:14px;padding:10px 12px}.readonly-field{background-color:var(--color-bg);color:var(--color-text-secondary)}.readonly-label{color:var(--color-text-muted);font-size:13px;font-weight:500}.save-btn{background-color:var(--color-primary);margin-top:8px}.cancel-btn{margin-left:12px;margin-top:8px}.audit-container{background-color:var(--color-bg);min-height:100vh;padding:24px}.audit-header{align-items:center;background-color:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;justify-content:space-between;margin-bottom:24px;padding:16px 24px}.audit-header-title{color:var(--color-text);margin:0}.audit-card{background-color:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:24px}.audit-table{border-collapse:collapse;width:100%}.audit-table th{background-color:var(--color-bg);font-weight:600;text-align:left}.audit-table td,.audit-table th{border-bottom:1px solid var(--color-border);color:var(--color-text);font-size:13px;padding:12px 16px}.audit-table tr:hover{background-color:var(--color-surface-alt)}.old-value{color:var(--color-danger);text-decoration:line-through}.new-value{color:var(--color-success)}.back-btn :hover{background-color:var(--color-text-secondary)}.directory-container{background-color:var(--color-bg);min-height:100vh;padding:24px}.directory-header{align-items:center;background-color:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;justify-content:space-between;margin-bottom:24px;padding:16px 24px}.directory-header-title{color:var(--color-text);margin:0}.directory-card{background-color:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:24px}.search-input{outline:none;padding:12px}.search-input:focus{border-color:var(--color-primary)}.employee-table{border-collapse:collapse;width:100%}.employee-table th{background-color:var(--color-bg);font-size:13px;font-weight:600;text-align:left}.employee-table td,.employee-table th{border-bottom:1px solid var(--color-border);color:var(--color-text);padding:12px 16px}.employee-table td{font-size:14px}.employee-table tr:hover{background-color:var(--color-surface-alt)}.role-badge{border-radius:20px;display:inline-block;font-size:12px;font-weight:500;padding:4px 10px;text-transform:capitalize}.role-employee{background-color:var(--color-info-bg);color:var(--color-primary-dark)}.role-manager{background-color:var(--color-warning-bg);color:var(--color-warning-dark)}.role-hr_admin{background-color:var(--color-success-bg);color:var(--color-success)}.view-btn{background-color:var(--color-text);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;padding:6px 14px}.view-btn:hover{background-color:var(--color-text-secondary)}.avatar{background-color:var(--color-text);border-radius:50%;color:#fff;font-size:14px;font-weight:700;height:36px;justify-content:center;width:36px}.avatar,.employee-info{align-items:center;display:flex}.employee-info{gap:12px}.status-badge{border-radius:12px;font-weight:600}.status-active{background-color:var(--color-success-bg);color:var(--color-success-dark)}.status-inactive{background-color:var(--color-danger-bg);color:var(--color-danger-dark)}.admin-edit-container{background-color:var(--color-bg);min-height:100vh;padding:24px}.admin-edit-header{align-items:center;background-color:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;justify-content:space-between;margin-bottom:24px;padding:16px 24px}.admin-edit-header-title{color:var(--color-primary);margin:0}.admin-edit-card{background-color:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:24px;padding:32px}.admin-edit-section-title{border-bottom:1px solid var(--color-border);color:var(--color-text);font-size:16px;font-weight:600;margin:0 0 16px;padding-bottom:12px}.admin-edit-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr}.admin-edit-field{display:flex;flex-direction:column;gap:6px}.admin-edit-label{color:var(--color-text);font-size:13px;font-weight:500}.admin-edit-input{border:1px solid var(--color-border);border-radius:8px;box-sizing:border-box;font-size:14px;outline:none;padding:10px 12px;width:100%}.admin-edit-input:focus{border-color:var(--color-primary)}.admin-edit-select{background-color:#fff;border:1px solid var(--color-border);border-radius:8px;box-sizing:border-box;font-size:14px;outline:none;padding:10px 12px;width:100%}.form-actions{margin-top:16px}.save-btn{font-size:16px;padding:12px 32px}.save-btn:hover{background-color:var(--color-text-secondary)}.save-btn:disabled{background-color:var(--color-primary-200);cursor:not-allowed}.cancel-btn{font-size:16px;padding:12px 32px}.cancel-btn:hover{background-color:var(--color-text-secondary)}.admin-badge{background-color:var(--color-success-bg);border-radius:20px;color:var(--color-success);display:inline-block;font-size:12px;margin-left:8px;padding:4px 10px}.bell-wrapper{display:inline-block;position:relative}.bell-btn{background:none;border:none;border-radius:8px;cursor:pointer;font-size:22px;padding:4px 8px;position:relative}.bell-btn:hover{background-color:#0000000d}.bell-badge{align-items:center;background-color:var(--color-danger);border-radius:50%;color:#fff;display:flex;font-size:10px;font-weight:600;height:18px;justify-content:center;position:absolute;right:-4px;top:-4px;width:18px}.notification-dropdown{background-color:#fff;border-radius:12px;box-shadow:0 4px 24px #00000026;overflow:hidden;position:absolute;right:0;top:40px;width:320px;z-index:1000}.dropdown-header{align-items:center;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;padding:12px 16px}.dropdown-title{color:var(--color-text);font-size:14px;font-weight:600}.mark-all-btn{background:none;color:var(--color-primary);font-size:12px}.notification-list{max-height:300px;overflow-y:auto}.notification-item{align-items:flex-start;border-bottom:1px solid var(--color-border);cursor:pointer;display:flex;gap:10px;padding:12px 16px}.notification-item:hover{background-color:var(--color-surface-alt)}.notification-item.unread{background-color:var(--color-info-bg)}.notification-dot{background-color:var(--color-primary);border-radius:50%;flex-shrink:0;height:8px;margin-top:5px;width:8px}.notification-dot.read{background-color:initial}.notification-content{flex:1 1}.notification-title{color:var(--color-text);font-size:13px;font-weight:600;margin-bottom:2px}.notification-message{color:var(--color-text-secondary);font-size:12px;margin-bottom:2px}.notification-time{color:var(--color-text-muted);font-size:11px}.empty-notifications{color:var(--color-text-secondary);font-size:13px;padding:24px;text-align:center}.view-all-btn{background:none;border:none;border-top:1px solid var(--color-border);color:var(--color-primary);cursor:pointer;display:block;font-size:13px;padding:10px;text-align:center;width:100%}.app-shell{background-color:var(--color-bg);display:flex;min-height:100vh;width:100%}.sidebar{background-color:var(--color-surface);border-right:1px solid var(--color-border);display:flex;flex-direction:column;flex-shrink:0;height:100vh;position:-webkit-sticky;position:sticky;top:0;width:var(--sidebar-width);z-index:100}.sidebar-brand{align-items:center;border-bottom:1px solid var(--color-border);display:flex;gap:var(--space-3);padding:var(--space-5) var(--space-4)}.sidebar-brand-mark{align-items:center;background-color:var(--color-primary);border-radius:var(--radius-sm);color:var(--color-primary-contrast);display:flex;flex-shrink:0;font-size:13px;font-weight:700;height:34px;justify-content:center;width:34px}.sidebar-brand-name{color:var(--color-text);font-size:16px;font-weight:700;white-space:nowrap}.sidebar-close-btn{background:none;border:none;color:var(--color-text-secondary);cursor:pointer;display:none;margin-left:auto;padding:4px}.sidebar-nav{flex:1 1;overflow-y:auto;padding:var(--space-4) var(--space-3)}.nav-group+.nav-group{margin-top:var(--space-5)}.nav-group-label{color:var(--color-text-muted);font-size:11px;font-weight:700;letter-spacing:.06em;margin-bottom:var(--space-2);padding:0 var(--space-3);text-transform:uppercase}.nav-item{align-items:center;background:none;border:none;border-radius:var(--radius-sm);color:var(--color-text-secondary);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:var(--space-3);margin-bottom:2px;padding:10px var(--space-3);text-align:left;white-space:nowrap;width:100%}.nav-item svg{flex-shrink:0}.nav-item:hover{background-color:var(--color-surface-alt);color:var(--color-text)}.nav-item.active{background-color:var(--color-primary-bg);color:var(--color-primary-dark);font-weight:600}.sidebar-footer{border-top:1px solid var(--color-border);padding:var(--space-3)}.sidebar-user{align-items:center;background:none;border:none;border-radius:var(--radius-sm);cursor:pointer;display:flex;gap:var(--space-3);padding:var(--space-2) var(--space-2);text-align:left;width:100%}.sidebar-user:hover{background-color:var(--color-surface-alt)}.sidebar-user-avatar{align-items:center;background-color:var(--color-primary-bg);border-radius:50%;color:var(--color-primary-dark);display:flex;flex-shrink:0;font-size:12px;font-weight:700;height:34px;justify-content:center;width:34px}.sidebar-user-meta{display:flex;flex-direction:column;min-width:0}.sidebar-user-name{color:var(--color-text);font-size:13px;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-user-role{color:var(--color-text-muted);font-size:12px}.sidebar-logout{align-items:center;background:none;border:none;border-radius:var(--radius-sm);color:var(--color-danger);cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:var(--space-3);margin-top:var(--space-2);padding:10px var(--space-2);text-align:left;width:100%}.sidebar-logout:hover{background-color:var(--color-danger-bg)}.sidebar-backdrop{display:none}.main-column{display:flex;flex:1 1;flex-direction:column;min-width:0}.topheader{align-items:center;background-color:var(--color-surface);border-bottom:1px solid var(--color-border);display:flex;height:var(--header-height);padding:0 var(--space-5);position:-webkit-sticky;position:sticky;top:0;z-index:40}.topheader-spacer{flex:1 1}.mobile-menu-btn{background:none;border:none;color:var(--color-text-secondary);cursor:pointer;display:none;margin-right:var(--space-3);padding:4px}.topheader-actions{align-items:center;display:flex;gap:var(--space-3)}.topheader-profile-btn{background:none;border:none;border-radius:50%;cursor:pointer;padding:0}.topheader-avatar{align-items:center;background-color:var(--color-primary);border-radius:50%;color:var(--color-primary-contrast);display:flex;font-size:12px;font-weight:700;height:34px;justify-content:center;width:34px}.topheader-profile-btn.active .topheader-avatar{box-shadow:0 0 0 2px var(--color-primary-bg),0 0 0 4px var(--color-primary)}.page-content{flex:1 1;padding:var(--space-5)}@media (max-width:900px){.sidebar{box-shadow:var(--shadow-lg);left:0;position:fixed;top:0;transform:translateX(-100%);transition:transform .2s ease}.sidebar.sidebar-open{transform:translateX(0)}.sidebar-close-btn{display:inline-flex}.sidebar-backdrop{background-color:#10182866;display:block;inset:0;position:fixed;z-index:90}.mobile-menu-btn{display:inline-flex}.page-content{padding:var(--space-4)}}.leave-types-container{background-color:var(--color-bg);min-height:100vh;padding:24px}.leave-types-header{align-items:center;background-color:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;justify-content:space-between;margin-bottom:24px;padding:16px 24px}.leave-types-title{color:var(--color-text);margin:0}.leave-types-card{background-color:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:24px;padding:24px}.leave-type-table{border-collapse:collapse;width:100%}.leave-type-table th{background-color:var(--color-bg);font-size:13px;font-weight:600;text-align:left}.leave-type-table td,.leave-type-table th{border-bottom:1px solid var(--color-border);color:var(--color-text);padding:12px 16px}.leave-type-table td{font-size:14px}.paid-badge{border-radius:20px;font-size:12px;font-weight:500;padding:4px 10px}.edit-btn{margin-right:6px}.delete-btn,.edit-btn{font-size:13px;padding:6px 14px}.form-checkbox-group{align-items:center;display:flex;gap:8px}.cancel-btn{background-color:var(--color-text)}.request-container{background-color:var(--color-bg);min-height:100vh;padding:24px}.request-header{align-items:center;background-color:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;justify-content:space-between;margin-bottom:24px;padding:16px 24px}.request-title{color:var(--color-text);margin:0}.request-card{background-color:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;max-width:600px;padding:32px}.form-field{margin-bottom:20px}.form-input{outline:none}.form-input:focus{border-color:var(--color-primary)}.form-select{outline:none}.form-textarea{border:1px solid var(--color-border);border-radius:8px;box-sizing:border-box;font-size:14px;min-height:80px;outline:none;padding:10px 12px;resize:vertical;width:100%}.working-days-info{background-color:var(--color-info-bg);color:var(--color-primary-dark);font-weight:500}.balance-warning,.working-days-info{border-radius:8px;font-size:14px;margin-bottom:16px;padding:12px}.balance-warning{background-color:var(--color-danger-bg);color:var(--color-danger)}.balance-info{background-color:var(--color-success-bg)}.balance-info,.error{border-radius:8px;font-size:14px;margin-bottom:16px;padding:12px}.error{background-color:var(--color-danger-bg);color:var(--color-danger)}.success{background-color:var(--color-success-bg);border-radius:8px;color:var(--color-success-dark);font-size:14px;margin-bottom:16px;padding:12px}.submit-btn{background-color:var(--color-primary);border-radius:8px;font-size:16px;padding:12px 32px}.form-actions{margin-top:8px}.my-leaves-container{background-color:var(--color-bg);min-height:100vh;padding:24px}.my-leaves-header{align-items:center;background-color:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;justify-content:space-between;margin-bottom:24px;padding:16px 24px}.my-leaves-title{color:var(--color-text);margin:0}.my-leaves-card{background-color:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:24px}.leaves-table{border-collapse:collapse;width:100%}.leaves-table th{background-color:var(--color-bg);font-size:13px;font-weight:600;text-align:left}.leaves-table td,.leaves-table th{border-bottom:1px solid var(--color-border);color:var(--color-text);padding:12px 16px}.leaves-table td{font-size:14px}.status-badge{text-transform:capitalize}.status-pending{color:var(--color-warning-dark)}.request-btn{border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px}.back-btn,.request-btn{background-color:var(--color-text)}.back-btn{margin-left:8px}.approvals-container{background-color:var(--color-bg);min-height:100vh;padding:24px}.approvals-header{align-items:center;background-color:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;justify-content:space-between;margin-bottom:24px;padding:16px 24px}.approvals-title{color:var(--color-text);margin:0}.approvals-card{background-color:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:24px}.approvals-table{border-collapse:collapse;width:100%}.approvals-table th{background-color:var(--color-bg);font-size:13px;font-weight:600;text-align:left}.approvals-table td,.approvals-table th{border-bottom:1px solid var(--color-border);color:var(--color-text);padding:12px 16px}.approvals-table td{font-size:14px}.approve-btn{background-color:var(--color-success);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;margin-right:6px;padding:6px 14px}.approve-btn:hover{background-color:var(--color-success-dark)}.reject-btn{background-color:var(--color-danger);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;padding:6px 14px}.reject-btn:hover{background-color:var(--color-danger-dark)}.status-badge{border-radius:20px;font-size:12px;font-weight:500;padding:4px 10px}.status-pending{background-color:var(--color-warning-bg);color:var(--color-text)}.status-approved{background-color:var(--color-success-bg);color:var(--color-success)}.status-rejected{background-color:var(--color-danger-bg);color:var(--color-danger)}.modal{max-width:400px}.modal-title{margin:0 0 16px}.modal-input{border:1px solid var(--color-border);border-radius:8px;box-sizing:border-box;font-size:14px;margin-bottom:16px;min-height:80px;padding:10px 12px;resize:vertical;width:100%}.confirm-btn{background-color:var(--color-danger);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;padding:10px 24px}.confirm-btn :hover{background-color:var(--color-danger-dark)}.balance-container{background-color:var(--color-bg);min-height:100vh;padding:24px}.balance-header{align-items:center;background-color:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;justify-content:space-between;margin-bottom:24px;padding:16px 24px}.balance-title{color:var(--color-text);margin:0}.balance-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.balance-card{background-color:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:24px}.balance-card-title{color:var(--color-text);font-size:16px;font-weight:600;margin:0 0 16px}.balance-row{align-items:center;border-bottom:1px solid var(--color-border);display:flex;font-size:14px;justify-content:space-between;padding:8px 0}.balance-row:last-child{border-bottom:none}.balance-label{color:var(--color-text-secondary)}.balance-value{color:var(--color-text);font-weight:600}.balance-bar{background-color:var(--color-border);border-radius:4px;height:8px;margin-top:12px;overflow:hidden}.balance-bar-fill{background-color:var(--color-primary);border-radius:4px;height:100%;transition:width .3s}.balance-bar-fill.low{background-color:var(--color-danger)}.balance-bar-fill.medium{background-color:var(--color-warning)}.balance-bar-fill.high{background-color:var(--color-success)}.paid-tag{border-radius:20px;display:inline-block;font-size:11px;margin-left:8px;padding:2px 8px}.paid-yes{background-color:var(--color-success-bg);color:var(--color-success)}.paid-no{background-color:var(--color-danger-bg);color:var(--color-danger)}.empty-state{background-color:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a}.calendar-container{background-color:var(--color-bg);min-height:100vh;padding:24px}.calendar-header{align-items:center;background-color:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;justify-content:space-between;margin-bottom:24px;padding:16px 24px}.calendar-title{color:var(--color-text);margin:0}.header-buttons{display:flex;gap:12px}.add-btn{background-color:var(--color-text);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px}.calendar-nav{align-items:center;background-color:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;justify-content:space-between;margin-bottom:24px;padding:16px 24px}.nav-btn{background-color:var(--color-bg);border:none;border-radius:8px;cursor:pointer;font-size:14px;padding:8px 16px}.month-title,.nav-btn{color:var(--color-text)}.month-title{font-size:18px;font-weight:600}.calendar-grid{background-color:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;margin-bottom:24px;overflow:hidden}.day-headers{background-color:var(--color-bg);display:grid;grid-template-columns:repeat(7,1fr)}.day-header{color:var(--color-text-secondary);font-size:13px;font-weight:600;padding:12px;text-align:center}.days-grid{display:grid;grid-template-columns:repeat(7,1fr)}.day-cell{border:1px solid var(--color-border);min-height:110px;padding:8px;position:relative}.day-cell.empty{background-color:var(--color-surface-alt)}.day-cell.today{background-color:var(--color-info-bg)}.day-cell.weekend{background-color:var(--color-surface-alt)}.day-number{color:var(--color-text);font-size:14px;font-weight:500;margin-bottom:4px}.day-number.weekend{color:var(--color-text-muted)}.event-tag{border-radius:4px;display:block;font-size:17px;margin-bottom:2px;overflow:hidden;padding:2px 6px;text-overflow:ellipsis;white-space:nowrap}.event-public{background-color:var(--color-danger-bg);color:var(--color-danger)}.event-company{background-color:var(--color-info-bg);color:var(--color-primary-dark);height:20px;width:auto}.events-list{background-color:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;padding:24px}.events-list-title{color:var(--color-text);font-size:16px;font-weight:600;margin:0 0 16px}.event-item{align-items:center;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;padding:12px 0}.event-item:last-child{border-bottom:none}.event-info{align-items:center;display:flex;gap:12px}.event-dot{border-radius:50%;flex-shrink:0;height:10px;width:10px}.dot-public{background-color:var(--color-danger)}.dot-company{background-color:var(--color-primary)}.event-name{color:var(--color-text);font-size:14px;font-weight:500}.event-date{color:var(--color-text-secondary);font-size:12px}.event-actions{display:flex;gap:8px}.edit-btn{background-color:var(--color-text)}.delete-btn,.edit-btn{border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:12px;padding:4px 10px}.delete-btn{background-color:var(--color-danger)}.legend{display:flex;gap:16px;margin-bottom:16px}.legend-item{color:var(--color-text-secondary);font-size:13px;gap:6px}.legend-item,.modal-overlay{align-items:center;display:flex}.modal-overlay{background-color:#00000080;bottom:0;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.modal{background-color:#fff;border-radius:12px;max-width:450px;padding:32px;width:100%}.modal-title{color:var(--color-text);margin:0 0 20px}.form-label{font-size:14px;font-weight:500}.form-input,.form-select{border:1px solid var(--color-border);border-radius:8px;box-sizing:border-box;font-size:14px;padding:10px 12px;width:100%}.form-select{background-color:#fff}.modal-actions{display:flex;gap:12px;margin-top:24px}.save-btn{background-color:var(--color-text);border:none;cursor:pointer;font-size:14px}.cancel-btn,.save-btn{border-radius:8px;color:#fff;padding:10px 24px}.cancel-btn{background-color:var(--color-text-secondary)}.notifications-container{background-color:var(--color-bg);min-height:100vh;padding:24px}.notifications-header{align-items:center;background-color:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;display:flex;justify-content:space-between;margin-bottom:24px;padding:16px 24px}.notifications-title{color:var(--color-text);margin:0}.notifications-card{background-color:#fff;border-radius:12px;box-shadow:0 2px 8px #0000001a;overflow:hidden}.notification-row{align-items:flex-start;border-bottom:1px solid var(--color-border);cursor:pointer;display:flex;gap:16px;padding:16px 24px}.notification-row:hover{background-color:var(--color-surface-alt)}.notification-row.unread{background-color:var(--color-info-bg)}.dot{background-color:var(--color-text);border-radius:50%;flex-shrink:0;height:10px;margin-top:5px;width:10px}.dot.read{background-color:var(--color-border)}.notif-title{color:var(--color-text);font-size:14px;font-weight:600;margin-bottom:4px}.notif-message{color:var(--color-text-secondary);font-size:13px;margin-bottom:4px}.notif-time{color:var(--color-text-muted);font-size:12px}.header-actions{display:flex;gap:12px}.mark-all-btn{background-color:var(--color-text)}.back-btn,.mark-all-btn{border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:14px;padding:8px 16px}.back-btn{background-color:var(--color-text-secondary)}.empty-state{color:var(--color-text-secondary);padding:48px;text-align:center}.page{margin:0 auto;max-width:1100px;padding:24px}.page-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.page-title{color:var(--color-text);font-size:28px;font-weight:700}.back-button{background-color:var(--color-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);color:var(--color-text-secondary);cursor:pointer;font-size:14px;padding:8px 16px}.back-button:hover{background-color:var(--color-surface-alt)}.stats-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:32px}.stat-box{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);padding:20px;text-align:center}.stat-number{color:var(--color-primary);font-size:28px;font-weight:700;margin-bottom:6px}.stat-name{color:var(--color-text-secondary);font-size:13px}.section-title{color:var(--color-text);font-size:18px;font-weight:600;margin-bottom:12px}.button-grid{display:flex;flex-wrap:wrap;gap:12px}.manage-button{background-color:var(--color-primary);border:none;border-radius:var(--radius-sm);color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:10px 18px}.manage-button:hover{background-color:var(--color-primary-dark)}.manage-hint{color:var(--color-text-muted);font-size:13px;margin-top:12px}.loading-text{color:var(--color-text-secondary);font-size:16px;padding:60px 20px;text-align:center}.create-account-container{margin:40px auto;max-width:500px;padding:0 20px}.create-account-card{background:#fff;border:1px solid var(--color-border);border-radius:10px;box-shadow:0 1px 3px #0000000d;padding:32px}.create-account-title{color:var(--color-text);font-size:22px;font-weight:700;margin-bottom:24px}.error-banner{background-color:var(--color-danger-bg);border-radius:6px;color:var(--color-danger-dark);font-size:14px;padding:10px 14px}.error-banner,.form-field{margin-bottom:16px}.form-label{color:var(--color-text);display:block;font-size:13px;font-weight:600;margin-bottom:6px}.form-input,.form-select{border:1px solid var(--color-border-strong);border-radius:6px;box-sizing:border-box;font-size:14px;padding:10px 12px;width:100%}.form-actions{display:flex;gap:12px;margin-top:24px}.submit-btn{background-color:var(--color-text);border:none;border-radius:6px;color:#fff;cursor:pointer;flex:1 1;font-size:14px;font-weight:600;padding:12px}.submit-btn:disabled{background-color:var(--color-primary-200);cursor:not-allowed}.cancel-btn{background-color:var(--color-surface-alt);border:none;border-radius:6px;color:var(--color-text);cursor:pointer;flex:1 1;font-size:14px;padding:12px}.import-employees-container{margin:0 auto;max-width:800px;padding:24px}.import-employees-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.import-employees-title{font-size:24px;margin:0}.import-employees-card{background:#fff;border-radius:8px;box-shadow:0 2px 8px #00000014;padding:24px}.import-instructions{color:var(--color-text);line-height:1.5;margin-bottom:20px}.import-instructions code{background:var(--color-bg);border-radius:4px;font-size:13px;padding:2px 6px}.import-actions{display:flex;gap:12px;margin-bottom:20px}.add-btn.secondary{background-color:var(--color-text)}.import-result{border-top:1px solid var(--color-border);margin-top:24px;padding-top:20px}.import-errors{background:var(--color-danger-bg);border:1px solid var(--color-danger-border);border-radius:6px;margin-top:12px;max-height:240px;overflow-y:auto;padding:12px 16px}.import-errors ul{margin:8px 0 0;padding-left:20px}.import-errors li{color:var(--color-danger);font-size:14px;margin-bottom:4px}.all-balances-container{margin:0 auto;max-width:900px;padding:24px}.all-balances-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.all-balances-title{font-size:24px;margin:0}.search-input{border:1px solid var(--color-border);border-radius:8px;box-sizing:border-box;font-size:14px;margin-bottom:16px;padding:10px 14px;width:100%}.all-balances-card{background:#fff;border-radius:8px;box-shadow:0 2px 8px #00000014;overflow-x:auto}.balances-table{border-collapse:collapse;width:100%}.balances-table th{background:var(--color-surface-alt);border-bottom:1px solid var(--color-border);color:var(--color-text-secondary);font-size:13px;padding:12px 16px;text-align:left}.balances-table td{border-bottom:1px solid var(--color-surface-alt);font-size:14px;padding:12px 16px}.balance-zero{color:var(--color-danger);font-weight:600}
/*# sourceMappingURL=main.82ee1713.css.map*/