:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.sidebar{width:220px;background:linear-gradient(to bottom,#0077c2,#003e6b);color:#fff;display:flex;flex-direction:column;padding:20px}.sidebar-header{text-align:center;margin-bottom:30px}.sidebar-avatar{width:70px;height:70px;border-radius:50%;border:2px solid white;object-fit:cover}.sidebar-username{margin-top:10px;font-weight:700;font-size:16px}.sidebar-menu{display:flex;flex-direction:column;gap:15px}.sidebar-menu a{display:flex;align-items:center;gap:12px;color:#fff;text-decoration:none;font-size:15px;padding:10px 12px;border-radius:8px;transition:background .2s ease}.sidebar-menu a:hover,.sidebar-menu a.active{background:#fff3}.icon{font-size:18px}.header{height:60px;background:#fff;padding:0 20px;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #eee;position:relative}.dropdown{position:absolute;top:50px;right:10px;background:#fff;border:1px solid #ccc;padding:8px;border-radius:4px}*{box-sizing:border-box;margin:0;padding:0}body,html{height:100%;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.login-fullscreen{height:100vh;width:100vw;display:flex;align-items:center;justify-content:center}.login-box{display:flex;width:100%;height:100%}.login-left{flex:1;max-width:500px;padding:60px 40px;display:flex;flex-direction:column;justify-content:center;background-color:#fff;box-shadow:0 4px 30px #0000000d}.login-left h2{font-size:28px;margin-bottom:8px;color:#1f2937}.signup-text{font-size:14px;color:#6b7280;margin-bottom:24px}.signup-link{color:#7c3aed;font-weight:500;text-decoration:none}.form-group{display:flex;flex-direction:column;gap:16px}label{font-size:14px;font-weight:500;color:#374151}input[type=email],input[type=password]{width:100%;padding:12px;border:1px solid #cbd5e1;border-radius:8px;font-size:14px}.forgot-link{float:right;font-size:12px;color:#7c3aed;text-decoration:none}.remember-me{display:flex;align-items:center;font-size:14px;gap:8px}.login-btn{width:100%;padding:12px;background-color:#7c3aed;color:#fff;font-size:16px;border:none;border-radius:8px;cursor:pointer}.separator{display:flex;align-items:center;margin:24px 0;gap:12px;font-size:14px;color:#9ca3af}.separator hr{flex-grow:1;border:none;border-top:1px solid #e5e7eb}.social-buttons{display:flex;gap:12px}.social-btn{flex:1;padding:10px;font-size:14px;border-radius:8px;border:1px solid #cbd5e1;cursor:pointer;background-color:#fff}.google{color:#ea4335}.facebook{color:#1877f2}.login-right{flex:1;background-color:#fff;display:flex;align-items:center;justify-content:center;padding:40px}.login-right img{width:100%;height:auto;object-fit:contain}@media (max-width: 768px){.login-box{flex-direction:column}.login-right{display:none}.login-left{max-width:100%;padding:40px 20px}}.react-calendar{width:350px;max-width:100%;background:#fff;border:1px solid #a0a096;font-family:Arial,Helvetica,sans-serif;line-height:1.125em}.react-calendar--doubleView{width:700px}.react-calendar--doubleView .react-calendar__viewContainer{display:flex;margin:-.5em}.react-calendar--doubleView .react-calendar__viewContainer>*{width:50%;margin:.5em}.react-calendar,.react-calendar *,.react-calendar *:before,.react-calendar *:after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.react-calendar button{margin:0;border:0;outline:none}.react-calendar button:enabled:hover{cursor:pointer}.react-calendar__navigation{display:flex;height:44px;margin-bottom:1em}.react-calendar__navigation button{min-width:44px;background:none}.react-calendar__navigation button:disabled{background-color:#f0f0f0}.react-calendar__navigation button:enabled:hover,.react-calendar__navigation button:enabled:focus{background-color:#e6e6e6}.react-calendar__month-view__weekdays{text-align:center;text-transform:uppercase;font:inherit;font-size:.75em;font-weight:700}.react-calendar__month-view__weekdays__weekday{padding:.5em}.react-calendar__month-view__weekNumbers .react-calendar__tile{display:flex;align-items:center;justify-content:center;font:inherit;font-size:.75em;font-weight:700}.react-calendar__month-view__days__day--weekend{color:#d10000}.react-calendar__month-view__days__day--neighboringMonth,.react-calendar__decade-view__years__year--neighboringDecade,.react-calendar__century-view__decades__decade--neighboringCentury{color:#757575}.react-calendar__year-view .react-calendar__tile,.react-calendar__decade-view .react-calendar__tile,.react-calendar__century-view .react-calendar__tile{padding:2em .5em}.react-calendar__tile{max-width:100%;padding:10px 6.6667px;background:none;text-align:center;font:inherit;font-size:.833em}.react-calendar__tile:disabled{background-color:#f0f0f0;color:#ababab}.react-calendar__month-view__days__day--neighboringMonth:disabled,.react-calendar__decade-view__years__year--neighboringDecade:disabled,.react-calendar__century-view__decades__decade--neighboringCentury:disabled{color:#cdcdcd}.react-calendar__tile:enabled:hover,.react-calendar__tile:enabled:focus{background-color:#e6e6e6}.react-calendar__tile--now{background:#ffff76}.react-calendar__tile--now:enabled:hover,.react-calendar__tile--now:enabled:focus{background:#ffffa9}.react-calendar__tile--hasActive{background:#76baff}.react-calendar__tile--hasActive:enabled:hover,.react-calendar__tile--hasActive:enabled:focus{background:#a9d4ff}.react-calendar__tile--active{background:#006edc;color:#fff}.react-calendar__tile--active:enabled:hover,.react-calendar__tile--active:enabled:focus{background:#1087ff}.react-calendar--selectRange .react-calendar__tile--hover{background-color:#e6e6e6}.page.profile-page{padding:20px;background:#f4f7fb;font-family:Segoe UI,sans-serif}.profile-header{display:flex;flex-wrap:wrap;gap:20px;margin-bottom:30px}.profile-card{flex:1;min-width:280px;background:#fff;border-radius:16px;padding:20px;display:flex;gap:20px;align-items:center;box-shadow:0 4px 10px #0000000d}.profile-avatar{width:100px;height:100px;border-radius:50%;object-fit:cover}.profile-info h3{margin:0 0 10px;font-size:20px;display:flex;align-items:center;gap:10px}.badge{background-color:#10b981;color:#fff;padding:4px 8px;font-size:12px;border-radius:6px}.profile-info p{margin:4px 0;color:#444}.profile-info input{display:block;width:100%;padding:8px 12px;margin:6px 0;border:1px solid #ccc;border-radius:8px;font-size:14px;background-color:#f9fafb}.profile-info input:focus{outline:none;border-color:#3b82f6;background-color:#fff}.profile-info .edit-btn{display:inline-block;margin-top:12px;margin-right:10px;background-color:#3b82f6;color:#fff;border:none;padding:8px 14px;border-radius:8px;font-size:14px;cursor:pointer;transition:background-color .2s ease}.profile-info .edit-btn:hover{background-color:#2563eb}.profile-calendar{flex:1;min-width:280px;background:#fff;border-radius:16px;padding:20px;box-shadow:0 4px 10px #0000000d}.profile-calendar h4{margin-bottom:10px}.profile-events{flex:1;min-width:280px;background:#fff;border-radius:16px;padding:20px;box-shadow:0 4px 10px #0000000d}.profile-events h4{margin-bottom:10px}.event-box{padding:10px;background-color:#f0f4f8;border-left:4px solid #2563eb;border-radius:8px}.profile-body{display:flex;flex-wrap:wrap;gap:20px}.profile-basic,.profile-onboarding{flex:1;min-width:320px;background:#fff;border-radius:16px;padding:20px;box-shadow:0 4px 10px #0000000d}.profile-basic h4,.profile-onboarding h4{margin-bottom:12px}.profile-onboarding table{width:100%;border-collapse:collapse}.profile-onboarding th,.profile-onboarding td{padding:10px;text-align:left;border-bottom:1px solid #e2e8f0;font-size:14px}.status{padding:4px 8px;border-radius:6px;font-weight:600;font-size:12px;color:#fff}.status.pending{background-color:#f59e0b}.status.approved{background-color:#10b981}@media screen and (min-width: 1900px){.page.profile-page{padding:40px 80px}.profile-header{gap:30px}.profile-card,.profile-calendar,.profile-events,.profile-basic,.profile-onboarding{padding:28px;font-size:17px}.profile-avatar{width:120px;height:120px}.profile-info h3{font-size:24px}.profile-info p{font-size:16px}.edit-btn{padding:10px 18px;font-size:15px}.profile-onboarding table th,.profile-onboarding table td{font-size:16px;padding:12px}.profile-info input{font-size:16px;padding:10px 14px}.profile-info .edit-btn{font-size:15px}}.page{background:#fff;padding:24px;border-radius:8px;box-shadow:0 4px 12px #0000000d}.page h2{margin-bottom:12px;font-size:22px;color:#111827}.page p{font-size:16px;color:#374151}.timesheet{width:100%;padding:1rem;box-sizing:border-box}.timesheet-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap}.nav-controls{display:flex;flex-wrap:wrap;gap:1rem;align-items:center;margin:.75rem 0}.table{width:100%;overflow-x:auto;margin-top:1rem}.thead,.trow{display:grid;grid-template-columns:1.5fr 1.5fr 1.5fr repeat(7,1fr) 1fr;gap:.5rem;align-items:center;padding:.5rem 0;border-bottom:1px solid #ddd}.thead{font-weight:700;background:#f0f0f0}.trow input{width:100%;padding:.3rem;box-sizing:border-box;font-size:.9rem}.trow select{width:100%;padding:.3rem;box-sizing:border-box;font-size:.9rem;border:1px solid #ccc;border-radius:4px;background-color:#fff}.trow input:disabled{background-color:#f0f0f0;color:#999;cursor:not-allowed}.timesheet-actions{display:flex;gap:12px;margin-top:1.5rem}.add-row{background:transparent;color:#333;text-decoration:underline;padding:.4rem 0;font-size:1rem;border:none;cursor:pointer}.submit-btn,.download-btn{background-color:#2563eb;color:#fff;font-weight:600;font-size:.9rem;padding:10px 18px;border:none;border-radius:6px;cursor:pointer;transition:background-color .2s ease}.submit-btn:hover,.download-btn:hover{background-color:#1e40af}.alert-box{background-color:#d4edda;color:#155724;padding:.75rem 1rem;margin-top:1rem;border:1px solid #c3e6cb;border-radius:4px;font-size:.9rem}.alert-box.success{background-color:#d4edda;color:#155724;border:1px solid #c3e6cb}.dropdown-label{margin-right:8px;font-weight:600;color:#1e3a8a;font-size:16px}.approver-dropdown{margin-right:16px;padding:8px 12px;font-size:14px;font-weight:500;border-radius:6px;border:2px solid #3b82f6;background-color:#eff6ff;color:#1e3a8a;outline:none;transition:all .2s ease;cursor:pointer}.approver-dropdown:hover{background-color:#dbeafe;border-color:#2563eb}.approver-dropdown:focus{box-shadow:0 0 0 2px #3b82f64d}.timeline{display:flex;flex-wrap:wrap;gap:8px;margin-top:1rem}.timeline-btn{background-color:#f3f4f6;border:1px solid #cbd5e1;border-radius:4px;padding:6px 12px;cursor:pointer;font-weight:500;color:#1e3a8a;transition:all .2s ease}.timeline-btn.active,.timeline-btn:hover{background-color:#3b82f6;color:#fff;border-color:#2563eb}@media (max-width: 768px){.thead,.trow{grid-template-columns:1fr 1fr 1fr repeat(7,1fr) 1fr;font-size:.75rem}.nav-controls{flex-wrap:wrap;gap:.25rem}}@media (min-width: 1900px){.page.timesheet{max-width:100%;width:100%}.table{width:100%;max-width:100%}.thead,.trow{grid-template-columns:1.7fr 1.7fr 1.7fr repeat(7,1fr) 1fr;font-size:1rem}.trow input,.trow select{font-size:1rem}.submit-btn,.download-btn{font-size:1rem;padding:12px 22px}}.leave-container{max-width:1600px;margin:0 auto;padding:1.5rem;display:flex;flex-direction:column;gap:2rem;background:#f9f9fb;font-family:Inter,sans-serif}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}.section-grid,.notification-grid{display:grid;grid-template-columns:2fr 1fr;gap:1.5rem}.card{background-color:#fff;border-radius:1.25rem;padding:1.5rem;box-shadow:0 2px 12px #0000000f}.stat-title{font-size:.85rem;color:#666}.stat-value{font-size:1.75rem;font-weight:600;margin-top:.25rem}.stat-sub{font-size:.75rem;color:#aaa;margin-top:.25rem}.chart-bar{background-color:#2563eb;width:2rem;border-radius:.5rem .5rem 0 0}.chart-label{font-size:.85rem;margin-top:.5rem}.pending-tag{background-color:#e5e7eb;color:#444;padding:.25rem .6rem;border-radius:1rem;font-size:.7rem;display:inline-block;margin-bottom:.5rem}.pending-box{background-color:#fef3c7;border:1px solid #fcd34d;color:#92400e;padding:.75rem 1rem;border-radius:.5rem;font-size:.85rem}.notifications ul{list-style:none;padding-left:0;margin-top:.75rem}.notifications li{font-size:.9rem;margin-bottom:.5rem}.notifications li:first-child{color:#15803d}.notifications li:nth-child(2){color:#333}.notifications li:last-child{color:#92400e}.team-member{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1.25rem}.avatar{width:40px;height:40px;background:#ccc;border-radius:9999px}.member-info p{margin:.15rem 0;font-size:.8rem}.card form{display:flex;flex-direction:column;gap:1.25rem}.card form .form-group{display:flex;flex-direction:column;width:100%}.card label{font-size:.85rem;font-weight:500;margin-bottom:.5rem;color:#444}.card input[type=date],.card textarea{width:100%;padding:.75rem 1rem;border-radius:.5rem;border:1px solid #ccc;background-color:#fafafa;font-size:.9rem;color:#333;outline:none;transition:border-color .2s ease;box-sizing:border-box}.card input[type=date]:focus,.card textarea:focus{border-color:#2563eb;background-color:#fff}.card textarea{resize:vertical;min-height:100px}.card button[type=submit]{background-color:#2563eb;color:#fff;padding:.75rem 1.25rem;font-size:.9rem;font-weight:500;border:none;border-radius:.5rem;cursor:pointer;width:fit-content;transition:background-color .2s ease}.card button[type=submit]:hover{background-color:#1d4ed8}.approve-leave-container{max-width:1600px;margin:0 auto;padding:1.5rem;font-family:Inter,sans-serif;background:#f9f9fb;min-height:100vh}.approve-leave-header{font-size:1.75rem;font-weight:700;margin-bottom:1.25rem;color:#1f2937}.filters label{display:flex;align-items:center;gap:.5rem;font-weight:500;color:#374151}.filters select,.filters input[type=date]{padding:.4rem .6rem;border:1px solid #d1d5db;border-radius:.5rem;font-size:1rem;background:#fff;min-width:130px}.table-wrapper{border-radius:1rem;box-shadow:0 2px 8px #0000000a;overflow-x:hidden;width:100%}.table{width:100%;border-collapse:separate;border-spacing:0 .2rem;table-layout:auto}.table th,.table td{padding:.65rem .6rem;text-align:left;font-size:.9rem;background:#fff;border-bottom:1px solid #e5e7eb}.table th{background-color:#f3f4f6;font-weight:600;color:#111827;border-bottom:2px solid #e5e7eb}.table td:first-child,.table th:first-child{border-top-left-radius:.75rem;border-bottom-left-radius:.75rem}.table td:last-child,.table th:last-child{border-top-right-radius:.75rem;border-bottom-right-radius:.75rem}.table tbody{min-height:200px;display:block}.table thead,.table tbody tr{display:table;width:100%;table-layout:fixed}.empty-row td{text-align:center;padding:2rem 1rem;color:#9ca3af;font-style:italic;background:#fff;border-radius:.75rem;box-shadow:inset 0 0 0 1px #e5e7eb}.status-pill{display:inline-block;padding:.3rem .7rem;border-radius:999px;font-size:.8rem;font-weight:500;color:#fff;text-transform:capitalize}.status-pill.Pending{background-color:#fde68a;color:#92400e}.status-pill.Approved{background-color:#10b981;color:#fff}.status-pill.Rejected{background-color:#ef4444;color:#fff}button.approve-btn,button.reject-btn{padding:.3rem .6rem;font-size:.8rem;border-radius:.375rem;border:none;cursor:pointer;transition:background .2s ease}button.approve-btn{background-color:#3b82f6;color:#fff}button.reject-btn{background-color:#ef4444;color:#fff}button:hover{opacity:.9}@media (max-width: 768px){.filters{flex-direction:column;align-items:flex-start}.approve-leave-header{font-size:1.4rem}.table{font-size:.85rem}.filters label{flex-direction:column;align-items:flex-start}}.owner-dashboard{max-width:1200px;margin:0 auto;padding:1rem;font-family:Inter,sans-serif;background:#f9fafb}.dashboard-header{font-size:1.4rem;font-weight:700;margin-bottom:1rem}.filters{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1.2rem}.filters label{display:flex;flex-direction:column;font-weight:500;font-size:.8rem}.filters select,.filters input[type=month]{margin-top:.3rem;padding:.35rem .5rem;border:1px solid #d1d5db;border-radius:.3rem;font-size:.85rem;background:#fff;min-width:140px}.dashboard-grid{display:grid;grid-template-columns:2fr 1fr;grid-gap:1rem}.card{background:#fff;border-radius:.6rem;padding:.8rem 1rem;margin-bottom:1rem;box-shadow:0 1px 4px #0000000d}.table{width:100%;border-collapse:collapse;font-size:.8rem;table-layout:auto}.table th,.table td{padding:.5rem;border-bottom:1px solid #e5e7eb;text-align:left;font-size:.78rem;color:#111827;white-space:nowrap}.table th{background:#f3f4f6;font-weight:600;font-size:.8rem;color:#374151}.empty{text-align:center;padding:1rem;font-style:italic;color:#9ca3af}.status-pill{padding:.2rem .5rem;border-radius:999px;font-size:.7rem;font-weight:600;display:inline-block}.status-pill.Approved{background:#d1fae5;color:#065f46}.status-pill.Rejected{background:#fee2e2;color:#991b1b}.status-pill.Pending{background:#fef3c7;color:#92400e}.card ul{margin-top:.5rem;padding-left:1.2rem}.card ul li{font-size:.78rem;margin-bottom:.3rem;color:#374151}.chart-card{display:flex;flex-direction:column;align-items:center;justify-content:center}@media (max-width: 1024px){.dashboard-grid{grid-template-columns:1fr}}@media (max-width: 768px){.dashboard-header{font-size:1.2rem}.filters{flex-direction:column}.table{display:block;overflow-x:auto;font-size:.75rem}}@media (max-width: 480px){.owner-dashboard{padding:.8rem}.dashboard-header{font-size:1rem}.card{padding:.6rem .8rem}.table{font-size:.7rem}}.owner-dashboard{max-width:1600px;margin:0 auto;padding:1rem;font-family:Inter,sans-serif;background:#f9fafb}.dashboard-header{font-size:1.5rem;font-weight:700;margin-bottom:1.25rem}.filters{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem}.filters select,.filters input[type=month]{padding:.4rem .8rem;border:1px solid #ccc;border-radius:6px;font-size:.9rem}.table-wrapper{background:#fff;border-radius:.75rem;box-shadow:0 1px 6px #0000000d;overflow-x:auto}.table{width:100%;border-collapse:collapse;font-size:.85rem}.table th,.table td{padding:.6rem .5rem;border-bottom:1px solid #e5e7eb;text-align:center}.table th{background:#f3f4f6;font-weight:600}.empty{text-align:center;padding:2rem;color:#9ca3af}.status-pill{display:inline-block;padding:.25rem .6rem;border-radius:9999px;font-size:.75rem;font-weight:500}.status-pill.Pending{background:#fde68a;color:#92400e}.status-pill.Approved{background:#10b981;color:#fff}.status-pill.Rejected{background:#ef4444;color:#fff}.download-buttons{margin-top:1rem;display:flex;gap:1rem;justify-content:flex-end}.download-buttons button{padding:.5rem 1rem;font-size:.9rem;border:none;border-radius:6px;cursor:pointer;background:#3b82f6;color:#fff;transition:.2s ease}.download-buttons button:hover{background:#2563eb}@media (max-width: 1024px){.table{font-size:.75rem}.filters{flex-direction:column}}.reset-password{height:100vh;display:flex;justify-content:center;align-items:center;background:#f2f6fc;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.reset-box{background:#fff;padding:40px 30px;border-radius:12px;box-shadow:0 4px 16px #0000001a;width:350px;max-width:90%;text-align:center}.reset-box h2{margin-bottom:24px;color:#1e3a8a}.reset-box input{width:100%;padding:12px 10px;margin:10px 0;border:1px solid #ccc;border-radius:6px;font-size:14px}.reset-box button{width:100%;padding:12px;margin-top:15px;border:none;border-radius:6px;background-color:#2563eb;color:#fff;font-weight:700;cursor:pointer;transition:background-color .3s ease}.reset-box button:hover{background-color:#1e40af}.reset-box .error{color:red;font-size:13px;margin-top:10px}.app{display:flex;height:100vh}.main{flex:1;display:flex;flex-direction:column}.content{flex:1;padding:20px;background:#eef3fb;overflow-y:auto}
