@import"https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700;800&display=swap";.login-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#093635,#1f6a75,#093635);padding:20px;position:relative;overflow:hidden}.login-container:before{content:"";position:absolute;top:-50%;right:-20%;width:600px;height:600px;background:radial-gradient(circle,rgba(244,144,64,.15) 0%,transparent 70%);border-radius:50%}.login-container:after{content:"";position:absolute;bottom:-30%;left:-10%;width:500px;height:500px;background:radial-gradient(circle,rgba(206,212,211,.1) 0%,transparent 70%);border-radius:50%}.login-card{background:#fff;border-radius:24px;box-shadow:0 25px 80px #09363566;width:100%;max-width:900px;padding:48px;animation:fadeIn .6s ease-out;position:relative;z-index:1}@keyframes fadeIn{0%{opacity:0;transform:translateY(-30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.login-header{text-align:center;margin-bottom:36px}.login-header h1{font-size:32px;color:#0d0d0d;margin-bottom:10px;font-weight:700;background:linear-gradient(135deg,#1f6a75,#093635);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.login-header p{color:#a2abaa;font-size:15px}.login-form{display:flex;flex-direction:column;gap:24px}.error-message{background:#fee2e2;color:#dc2626;padding:14px 18px;border-radius:12px;font-size:14px;border-left:4px solid #ef4444}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:14px;font-weight:600;color:#0d0d0d}.form-group input{padding:14px 18px;border:2px solid #CED4D3;border-radius:12px;font-size:15px;transition:all .3s ease;outline:none;background:#f8fafa}.form-group input:focus{border-color:#1f6a75;box-shadow:0 0 0 4px #1f6a751f;background:#fff}.form-group input::placeholder{color:#a2abaa}.login-button{background:linear-gradient(135deg,#f49040,#e07a2a);color:#fff;border:none;padding:16px;border-radius:12px;font-size:16px;font-weight:700;cursor:pointer;transition:all .3s ease;margin-top:12px;box-shadow:0 6px 20px #f4904059}.login-button:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 10px 30px #f4904073}.login-button:active:not(:disabled){transform:translateY(-1px)}.login-button:disabled{opacity:.7;cursor:not-allowed;transform:none}.login-footer{margin-top:32px;text-align:center;padding-top:24px;border-top:1px solid #CED4D3}.login-footer p{color:#a2abaa;font-size:13px}.test-credentials{margin-top:36px;padding-top:32px;border-top:2px solid #f0f4f3}.credentials-header{text-align:center;margin-bottom:24px}.credentials-header h3{font-size:18px;color:#0d0d0d;margin-bottom:6px;font-weight:600}.credentials-header p{font-size:13px;color:#a2abaa}.credentials-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.credential-card{background:linear-gradient(135deg,#f0f4f3,#ced4d3);border-radius:16px;padding:18px;cursor:pointer;transition:all .3s ease;border:2px solid transparent;position:relative;overflow:hidden}.credential-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#1f6a75,#f49040);transform:scaleX(0);transition:transform .3s ease}.credential-card:hover:before{transform:scaleX(1)}.credential-card.admin{background:linear-gradient(135deg,#fff4e6,#ffe0c2)}.credential-card.attendance{background:linear-gradient(135deg,#e0f2f4,#c5e5e8)}.credential-card.asset{background:linear-gradient(135deg,#f0e6f4,#e0d0e8)}.credential-card:hover{transform:translateY(-5px);box-shadow:0 12px 30px #1f6a7533;border-color:#1f6a75}.credential-card:active{transform:translateY(-2px)}.credential-badge{background:#fffffff2;color:#1f6a75;font-size:11px;font-weight:700;text-transform:uppercase;padding:6px 14px;border-radius:20px;display:inline-block;margin-bottom:14px;letter-spacing:.5px;box-shadow:0 2px 8px #00000014}.credential-info{display:flex;flex-direction:column;gap:8px}.credential-email{font-size:13px;font-weight:600;color:#0d0d0d;word-break:break-all}.credential-password{font-size:12px;color:#1f6a75;font-family:Courier New,monospace;background:#fffc;padding:5px 10px;border-radius:6px;display:inline-block;width:fit-content}@media(max-width:768px){.credentials-grid{grid-template-columns:1fr}.login-card{max-width:500px;padding:36px}}@media(max-width:480px){.login-card{padding:28px 20px;border-radius:20px}.login-header h1{font-size:26px}}.change-password-overlay{position:fixed;inset:0;width:100vw;height:100vh;background:#093635b3;display:flex;justify-content:center;align-items:center;z-index:9999;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:20px;box-sizing:border-box}.change-password-modal{background:#fff;border-radius:20px;width:100%;max-width:450px!important;max-height:90vh;overflow-y:auto;box-shadow:0 25px 60px #09363559;animation:slideIn .3s ease-out;margin:auto}@keyframes slideIn{0%{opacity:0;transform:translateY(-25px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px 28px;border-bottom:1px solid #CED4D3;background:linear-gradient(135deg,#f0f4f3,#fff);border-radius:20px 20px 0 0}.modal-header h2{font-size:20px;color:#0d0d0d;margin:0;font-weight:700}.change-password-form{padding:24px}.change-password-form .form-group{margin-bottom:20px}.change-password-form .form-group label{display:block;margin-bottom:8px;font-weight:600;color:#0d0d0d;font-size:14px}.change-password-form .form-group input{width:100%;padding:12px 14px;border:2px solid #CED4D3;border-radius:10px;font-size:14px;transition:all .2s;box-sizing:border-box}.change-password-form .form-group input:focus{outline:none;border-color:#1f6a75;box-shadow:0 0 0 3px #1f6a751f}.form-group small{display:block;margin-top:8px;color:#a2abaa;font-size:12px}.alert-error{padding:14px 18px;background:#fee2e2;color:#dc2626;border-left:4px solid #ef4444;border-radius:10px;margin-bottom:22px;font-size:14px}.alert-success{padding:14px 18px;background:#d1fae5;color:#059669;border-left:4px solid #10b981;border-radius:10px;margin-bottom:22px;font-size:14px}.change-password-form .modal-actions{display:flex;gap:12px;justify-content:flex-end;margin-top:20px;padding-top:18px;border-top:1px solid #CED4D3}.btn-cancel{padding:12px 24px;background:#fff;color:#0d0d0d;border:none;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.btn-cancel:hover{background:#a2abaa}.btn-submit{padding:12px 28px;background:linear-gradient(135deg,#f49040,#e07a2a);color:#fff;border:none;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s;box-shadow:0 4px 15px #f490404d}.btn-submit:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #f4904066}.btn-submit:disabled{opacity:.6;cursor:not-allowed;transform:none}.password-requirements{margin-top:10px;font-size:12px;background:#f8fafa;border-radius:10px;padding:12px 14px;border:1px solid rgba(31,106,117,.1)}.password-requirements .requirements-title{margin:0 0 8px;font-weight:600;color:#1f6a75;font-size:12px}.password-requirements .requirements-list{list-style:none;padding:0;margin:0}.password-requirements .requirements-list li{margin-bottom:4px;display:flex;align-items:center;gap:6px;font-size:12px;color:#a2abaa;transition:color .2s}.password-requirements .requirements-list li:last-child{margin-bottom:0}.password-requirements .requirements-list li.valid{color:#10b981}.password-requirements .requirements-list li.invalid{color:#a2abaa}.text-error{color:#ef4444;font-size:12px;margin-top:8px;display:block}@media(max-width:768px){.change-password-overlay{padding:16px}.change-password-modal{max-width:100%;border-radius:16px}.modal-header{padding:18px 20px}.modal-header h2{font-size:18px}.change-password-form{padding:20px}.change-password-form .form-group input{padding:12px}.change-password-form .modal-actions{flex-direction:column}.change-password-form .modal-actions button{width:100%}}@media(max-width:480px){.change-password-overlay{padding:40px 10px 10px;align-items:flex-start}.modal-header h2{font-size:16px}.password-requirements{padding:10px 12px}.password-requirements .requirements-list li{font-size:11px}}.sidebar{width:260px;height:100vh;background:var(--gradient-sidebar, linear-gradient(180deg, #093635 0%, #1F6A75 100%));color:#fff;display:flex;flex-direction:column;position:fixed;left:0;top:0;transition:width .3s ease;z-index:1000;box-shadow:4px 0 20px #0936354d}.sidebar.collapsed{width:80px}.sidebar-header{padding:24px 20px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(255,255,255,.15);background:#0000001a}.sidebar-header h2{font-size:22px;font-weight:700;white-space:nowrap;background:linear-gradient(135deg,#fff,#ced4d3);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.toggle-btn{background:#f4904033;border:none;color:#f49040;width:32px;height:32px;border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .3s;font-weight:700}.toggle-btn:hover{background:#f49040;color:#fff;transform:scale(1.05)}.user-info{padding:20px;display:flex;align-items:center;gap:14px;border-bottom:1px solid rgba(255,255,255,.1);background:#0000000d}.user-avatar{width:48px;height:48px;border-radius:12px;background:linear-gradient(135deg,#f49040,#e07a2a);display:flex;align-items:center;justify-content:center;font-size:20px;font-weight:700;flex-shrink:0;box-shadow:0 4px 12px #f4904066}.user-details{overflow:hidden}.user-name{font-size:15px;font-weight:600;margin-bottom:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#fff}.user-role{font-size:12px;color:#ced4d3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;text-transform:capitalize}.sidebar-nav{flex:1;padding:16px 12px;overflow-y:auto}.nav-item{display:flex;align-items:center;gap:12px;padding:12px 16px;margin-bottom:6px;border-radius:10px;text-decoration:none;color:#ffffffbf;transition:all .25s ease;cursor:pointer;border:none;background:transparent;font-size:14px;font-weight:500}.nav-item:hover{background:#ffffff1a;color:#fff;transform:translate(4px)}.nav-item.active{background:linear-gradient(135deg,#f49040,#e07a2a);color:#fff;box-shadow:0 4px 15px #f4904059}.nav-icon{font-size:18px;flex-shrink:0;width:24px;text-align:center}.nav-text{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar.collapsed .nav-text,.sidebar.collapsed .user-details{display:none}.sidebar-footer{padding:12px;border-top:1px solid rgba(255,255,255,.1);display:flex;flex-direction:column;gap:6px;background:#0000001a}.profile-btn{color:#ced4d3!important}.profile-btn:hover{background:#ced4d326!important;color:#fff!important}.profile-btn.active{background:linear-gradient(135deg,#1f6a75,#093635)!important;color:#fff!important}.change-password-btn{color:#f49040!important}.change-password-btn:hover{background:#f4904026!important;color:#f7a55f!important}.logout-btn{color:#ef8b3b!important}.logout-btn:hover{background:#ef444426!important;color:#f87171!important}.sidebar-nav::-webkit-scrollbar{width:5px}.sidebar-nav::-webkit-scrollbar-track{background:transparent}.sidebar-nav::-webkit-scrollbar-thumb{background:#fff3;border-radius:10px}.sidebar-nav::-webkit-scrollbar-thumb:hover{background:#ffffff59}@media(max-width:1024px){.sidebar{width:80px}.sidebar .nav-text,.sidebar .user-details,.sidebar-header h2{display:none}.sidebar-header{justify-content:center;padding:16px}.toggle-btn{display:none}}@media(max-width:768px){.sidebar{width:70px}.sidebar .nav-text,.sidebar .user-details,.sidebar-header h2{display:none}.sidebar-header{justify-content:center;padding:12px}.user-info{padding:10px;justify-content:center}.user-avatar{width:36px;height:36px;font-size:14px}.nav-item{padding:10px;justify-content:center}.sidebar-footer .nav-item{padding:8px}}@media(max-width:600px){.sidebar{width:100%;height:auto;position:fixed;inset:auto 0 0;flex-direction:row;border-radius:0;box-shadow:0 -2px 15px #09363533;z-index:1000;background:linear-gradient(135deg,#093635,#1f6a75);padding:0}.sidebar.collapsed{width:100%}.sidebar-header,.user-info{display:none}.sidebar-nav{display:flex;flex-direction:row;flex-wrap:nowrap;overflow-x:auto;padding:8px 90px 8px 4px;gap:2px;scrollbar-width:none;-ms-overflow-style:none;flex:1}.sidebar-nav::-webkit-scrollbar{display:none}.nav-item{flex:0 0 auto;padding:6px 8px;margin:0;flex-direction:column;gap:2px;font-size:9px;min-width:52px;text-align:center;justify-content:center;align-items:center;border-radius:8px;background:transparent;transition:all .2s ease}.nav-item .nav-icon{font-size:18px}.nav-item .nav-text{display:block;font-size:8px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:48px;opacity:.85}.nav-item:hover{transform:none;background:#ffffff1a}.nav-item.active{background:#f49040e6;border-radius:8px}.nav-item.active .nav-text{opacity:1;font-weight:600}.sidebar-footer{display:flex;flex-direction:row;padding:8px 6px;border-top:none;background:#093635f2;position:absolute;right:0;top:0;bottom:0;gap:4px;align-items:center}.sidebar-footer .nav-item{min-width:auto;max-width:none;padding:8px;flex:0 0 auto;background:#ffffff1a;border-radius:8px}.sidebar-footer .nav-item:hover{background:#fff3}.sidebar-footer .nav-item .nav-icon{font-size:18px}.sidebar-footer .nav-text{display:none!important}.sidebar-footer .change-password-btn{display:none}.sidebar-footer .profile-btn{background:#1f6a7580}.sidebar-footer .logout-btn{background:#dc262666}.sidebar-footer .logout-btn:hover{background:#dc262699}}.dashboard-layout{display:flex;min-height:100vh;background:var(--bg-page, #f0f4f3)}.main-content{flex:1;margin-left:260px;transition:margin-left .3s ease}.sidebar.collapsed~.main-content{margin-left:80px}.dashboard-container{padding:32px;max-width:1400px;margin:0 auto}.page-header{margin-bottom:32px}.page-header h1{font-size:32px;color:var(--text-dark, #0D0D0D);margin-bottom:8px;font-weight:700}.page-header p{color:var(--text-light, #A2ABAA);font-size:15px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:24px;margin-bottom:40px}.stat-card{background:#fff;padding:28px;border-radius:16px;box-shadow:0 4px 20px #09363514;display:flex;align-items:center;gap:20px;transition:all .3s ease;border:1px solid rgba(206,212,211,.5)}.stat-card:hover{transform:translateY(-6px);box-shadow:0 12px 35px #09363526;border-color:var(--primary, #1F6A75)}.stat-icon{width:64px;height:64px;border-radius:14px;background:linear-gradient(135deg,#e8f4f3,#d4e8e6);display:flex;align-items:center;justify-content:center;font-size:28px;flex-shrink:0;color:var(--primary, #1F6A75)}.stat-icon i{color:var(--primary-dark, #093635)}.stat-icon.accent{background:linear-gradient(135deg,#fef3e8,#fde5cd)}.stat-icon.accent i{color:#f49040}.stat-icon.success{background:linear-gradient(135deg,#e8f8f3,#d1f0e4)}.stat-icon.success i{color:#10b981}.stat-icon.warning{background:linear-gradient(135deg,#fef3e8,#fde5cd)}.stat-icon.warning i{color:#e07a2a}.stat-info h3{font-size:13px;color:var(--text-light, #A2ABAA);margin-bottom:8px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.stat-value{font-size:32px;font-weight:700;color:var(--text-dark, #0D0D0D);margin:0}.welcome-section{background:#fff;padding:32px;border-radius:16px;box-shadow:0 4px 20px #09363514;border:1px solid rgba(206,212,211,.5)}.welcome-section h2{font-size:22px;color:var(--text-dark, #0D0D0D);margin-bottom:24px;font-weight:600}.actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px}.action-card{display:flex;align-items:center;gap:14px;padding:22px;background:linear-gradient(135deg,#f0f4f3,#ced4d3);border-radius:14px;text-decoration:none;color:var(--text-dark, #0D0D0D);font-weight:600;font-size:15px;transition:all .3s ease;border:2px solid transparent}.action-card:hover{background:linear-gradient(135deg,#1f6a75,#093635);color:#fff;transform:translateY(-4px);box-shadow:0 8px 25px #1f6a7559;border-color:transparent}.action-card:active{transform:translateY(-2px)}.action-icon{font-size:26px}.quick-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:32px}.quick-stat{background:#fff;padding:20px;border-radius:12px;text-align:center;box-shadow:0 2px 10px #0936350f}.quick-stat-value{font-size:28px;font-weight:700;color:var(--primary, #1F6A75)}.quick-stat-label{font-size:12px;color:var(--text-light, #A2ABAA);margin-top:4px;text-transform:uppercase;letter-spacing:.5px}@media(max-width:1024px){.main-content{margin-left:80px}.quick-stats{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.main-content{margin-left:70px}.dashboard-container{padding:16px}.page-header h1{font-size:24px}.stats-grid,.actions-grid{grid-template-columns:1fr}.quick-stats{grid-template-columns:1fr 1fr}}@media(max-width:600px){.main-content{margin-left:0}.dashboard-container{padding:16px 16px 100px}.page-header{margin-bottom:20px}.page-header h1{font-size:22px}.page-header p{font-size:14px}.stats-grid{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:24px}.stat-card{padding:16px;flex-direction:column;align-items:flex-start;gap:12px;border-radius:12px}.stat-card:hover{transform:translateY(-3px)}.stat-icon{width:48px;height:48px;font-size:20px;border-radius:10px}.stat-info h3{font-size:11px;margin-bottom:4px}.stat-value{font-size:24px}.quick-stats{grid-template-columns:1fr 1fr;gap:10px}.quick-stat{padding:14px 10px}.quick-stat-value{font-size:22px}.quick-stat-label{font-size:10px}.welcome-section{padding:20px;border-radius:12px}.welcome-section h2{font-size:18px;margin-bottom:16px}.actions-grid{grid-template-columns:1fr;gap:12px}.action-card{padding:16px;font-size:14px;border-radius:10px}.action-icon{font-size:22px}}@media(max-width:400px){.dashboard-container{padding:12px 12px 100px}.page-header h1{font-size:20px}.stats-grid{grid-template-columns:1fr!important;gap:10px}.stat-card{flex-direction:row;align-items:center;padding:14px}.stat-icon{width:44px;height:44px;font-size:18px}.stat-value{font-size:22px}.quick-stats{grid-template-columns:1fr;gap:8px}}.page-container{padding:28px;max-width:1400px;margin:0 auto}.btn-primary{background:linear-gradient(135deg,#1f6a75,#093635);color:#fff;border:none;padding:12px 24px;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s;box-shadow:0 4px 15px #1f6a7540;display:flex;align-items:center;gap:8px}.btn-secondary{background:var(--bg-light, #CED4D3);color:var(--text-dark, #0D0D0D);border:none;padding:12px 24px;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.users-table{background:#fff;border-radius:16px;box-shadow:0 4px 20px #09363514;overflow:hidden;border:1px solid rgba(31,106,117,.1)}.users-table table{width:100%;border-collapse:collapse}.users-table thead{background:linear-gradient(135deg,#1f6a75,#093635)}.users-table th{background:transparent;color:#fff;padding:18px 16px;text-align:left;font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.5px}.users-table td{padding:18px 16px;border-bottom:1px solid rgba(31,106,117,.08);color:#0d0d0d;font-size:14px;vertical-align:middle}.users-table tbody tr{transition:all .2s}.users-table tbody tr:nth-child(odd){background:#1f6a7505}.users-table tbody tr:hover{background:#1f6a750f}.user-id{font-weight:600;color:var(--primary, #1F6A75);font-family:monospace}.role-badge{display:inline-block;padding:5px 14px;border-radius:20px;font-size:11px;font-weight:600;text-transform:capitalize}.status-badge{display:inline-block;padding:5px 12px;border-radius:20px;font-size:11px;font-weight:600}.status-badge.active{background:#d1fae5;color:#059669}.status-badge.inactive{background:var(--bg-light, #f0f4f3);color:var(--text-light, #6b7280)}.btn-edit,.btn-delete{width:40px;height:40px;border:none;border-radius:10px;cursor:pointer;font-size:16px;transition:all .2s;display:inline-flex;align-items:center;justify-content:center}.btn-edit{background:linear-gradient(135deg,#1f6a75,#093635);color:#fff;box-shadow:0 2px 8px #1f6a754d}.btn-edit:hover{transform:translateY(-2px);box-shadow:0 4px 12px #1f6a7566}.btn-delete{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;box-shadow:0 2px 8px #ef44444d}.btn-delete:hover{transform:translateY(-2px);box-shadow:0 4px 12px #ef444466}.close-btn{background:#ffffff26;border:none;font-size:20px;color:#fff;cursor:pointer;transition:all .2s;width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center}.form-group label{display:flex;align-items:center;gap:6px;margin-bottom:10px;font-weight:600;color:var(--text-dark, #0D0D0D);font-size:14px}.form-group label i{color:var(--primary, #1F6A75);font-size:14px}.form-group input,.form-group select{width:100%;padding:14px 16px;border:2px solid var(--border-light, #CED4D3);border-radius:12px;font-size:14px;transition:all .2s;background:#fff}.form-group input:focus,.form-group select:focus{outline:none;border-color:var(--primary, #1F6A75);box-shadow:0 0 0 3px #1f6a751f}.form-group input:disabled,.form-group input[readonly],.form-group select:disabled{background:linear-gradient(135deg,#f0f4f3,#e8eceb);color:#1f6a75;font-weight:600;cursor:not-allowed;border-color:#1f6a7533}.form-group .helper-text,.form-group small{display:block;margin-top:6px;font-size:12px;color:#a2abaa;font-style:italic}.form-group .helper-text.info{color:#1f6a75}.form-group .helper-text.warning{color:#f49040}.form-section-title{font-size:14px;font-weight:600;color:var(--primary, #1F6A75);margin:24px 0 16px;padding-bottom:8px;border-bottom:2px solid rgba(31,106,117,.15);display:flex;align-items:center;gap:8px}.input-with-icon{position:relative}.input-with-icon i{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:#a2abaa;font-size:16px}.input-with-icon input{padding-left:42px}.input-with-icon input:focus+i,.input-with-icon input:not(:placeholder-shown)+i{color:var(--primary, #1F6A75)}.password-field{position:relative}.password-toggle{position:absolute;right:14px;top:50%;transform:translateY(-50%);background:none;border:none;color:#a2abaa;cursor:pointer;font-size:16px;padding:4px}.password-toggle:hover{color:var(--primary, #1F6A75)}@media(max-width:1024px){.users-table table{min-width:700px}}@media(max-width:600px){.users-page .page-container,.page-container{padding:12px 12px 80px}.page-header{flex-direction:column;align-items:flex-start;gap:16px}.header-actions{width:100%}.btn-primary{width:100%;justify-content:center}.users-table{overflow-x:auto;margin:0 -16px;padding:0 16px}.users-table table{min-width:600px}.modal-content{width:95%}.form-row{grid-template-columns:1fr}}@media(max-width:480px){.page-container{padding:12px}.page-header h1{font-size:22px}.modal-header{padding:18px 20px}.modal-form{padding:20px}.modal-actions{flex-direction:column;padding:16px 20px}.modal-actions button{width:100%}}.roles-page{padding:28px}.roles-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(380px,1fr));gap:24px}.role-card{background:#fff;border-radius:16px;padding:26px;box-shadow:0 4px 20px #09363514;transition:all .3s;border:1px solid rgba(206,212,211,.5);position:relative;overflow:hidden}.role-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#1f6a75,#f49040);transform:scaleX(0);transition:transform .3s}.role-card:hover:before{transform:scaleX(1)}.role-card:hover{transform:translateY(-6px);box-shadow:0 12px 35px #09363526}.role-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:14px}.role-header h3{font-size:20px;color:#0d0d0d;margin:0;font-weight:700}.role-actions{display:flex;gap:8px;align-items:center}.btn-edit-icon{background:#e0f2f4;border:none;font-size:16px;cursor:pointer;padding:8px 10px;border-radius:8px;transition:all .2s;color:#1f6a75}.btn-edit-icon:hover{background:#1f6a75;color:#fff;transform:scale(1.05)}.btn-delete{background:#fee2e2;border:none;font-size:16px;cursor:pointer;padding:8px 10px;border-radius:8px;transition:all .2s;color:#dc2626}.btn-delete:hover{background:#dc2626;color:#fff;transform:scale(1.05)}.role-description{color:#6b7280;font-size:14px;margin-bottom:18px;line-height:1.6}.permissions-list{margin-bottom:18px}.permissions-list strong{display:block;font-size:12px;color:#a2abaa;text-transform:uppercase;letter-spacing:.5px;margin-bottom:10px}.permission-tags{display:flex;flex-wrap:wrap;gap:8px}.permission-tag{display:inline-block;padding:5px 12px;background:linear-gradient(135deg,#e0f2f4,#c5e5e8);color:#1f6a75;border-radius:20px;font-size:11px;font-weight:600}.no-permissions{color:#a2abaa;font-size:12px;font-style:italic}.role-badge{display:inline-block;padding:6px 14px;border-radius:20px;font-size:12px;font-weight:600;text-transform:capitalize}.role-badge.superAdmin{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#dc2626}.role-badge.teamLead{background:linear-gradient(135deg,#fff4e6,#ffe0c2);color:#e07a2a}.role-badge.attendanceDepartment{background:linear-gradient(135deg,#e0f2f4,#c5e5e8);color:#1f6a75}.role-badge.ITAssetManager{background:linear-gradient(135deg,#f3e8ff,#e9d5ff);color:#7c3aed}.role-badge.employee{background:#f0f4f3;color:#6b7280}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 28px;border-bottom:1px solid rgba(31,106,117,.1);background:linear-gradient(135deg,#1f6a75,#093635);border-radius:20px 20px 0 0}.form-section-title i{font-size:16px}.form-group{margin-bottom:20px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:14px 16px;border:2px solid #CED4D3;border-radius:12px;font-size:14px;transition:all .2s;background:#fff}.form-group small,.helper-text{display:block;margin-top:6px;font-size:12px;color:#a2abaa;font-style:italic}.permissions-preview{background:linear-gradient(135deg,#f0f4f3,#e8eceb);padding:16px;border-radius:12px;margin-bottom:20px}.permissions-preview label{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:#a2abaa;text-transform:uppercase;letter-spacing:.5px;margin-bottom:10px}.preview-tags{display:flex;flex-wrap:wrap;gap:8px}.permission-tag-preview{display:inline-block;padding:6px 14px;background:linear-gradient(135deg,#1f6a75,#093635);color:#fff;border-radius:20px;font-size:12px;font-weight:600}.no-permissions-preview{color:#a2abaa;font-size:13px;font-style:italic}.alert{padding:14px 18px;border-radius:10px;margin-bottom:20px;font-size:14px;display:flex;align-items:center;gap:10px}.alert i{font-size:16px}.alert-error{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#dc2626;border-left:4px solid #ef4444}.alert-success{background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#059669;border-left:4px solid #10b981}.modal-actions{display:flex;gap:14px;justify-content:flex-end;padding:20px 28px;border-top:1px solid rgba(31,106,117,.1);background:linear-gradient(135deg,#f8fafa,#f0f4f3);border-radius:0 0 20px 20px}.btn-secondary{background:#ede9e9!important;color:#0d0d0d;border:none;padding:12px 24px;border-radius:10px;font-weight:600;font-size:14px;cursor:pointer;transition:all .2s}@media(max-width:1024px){.roles-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.roles-page{padding:16px}}@media(max-width:600px){.roles-page{padding:12px 12px 80px}.page-header{flex-direction:column;align-items:stretch;gap:12px}.header-actions{width:100%}.btn-primary{width:100%;justify-content:center}.roles-grid{grid-template-columns:1fr}}@media(max-width:480px){.roles-page{padding:12px}.page-header h1{font-size:22px}.role-card{padding:18px}}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px;margin-bottom:30px}.stat-card{background:#fff;padding:26px;border-radius:14px;box-shadow:0 4px 20px #09363514;display:flex;align-items:center;gap:18px;transition:all .3s;border:1px solid rgba(206,212,211,.5)}.stat-icon{width:64px;height:64px;border-radius:14px;background:linear-gradient(135deg,#1f6a75,#093635);display:flex;align-items:center;justify-content:center;font-size:28px;flex-shrink:0;box-shadow:0 4px 15px #1f6a754d}.stat-icon.present{background:linear-gradient(135deg,#10b981,#059669);box-shadow:0 4px 15px #10b9814d}.stat-icon.absent{background:linear-gradient(135deg,#ef4444,#dc2626);box-shadow:0 4px 15px #ef44444d}.stat-icon.late{background:linear-gradient(135deg,#f49040,#e07a2a);box-shadow:0 4px 15px #f490404d}.stat-info h3{font-size:12px;color:var(--text-light, #A2ABAA);margin-bottom:8px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.stat-value{font-size:30px;font-weight:700;color:var(--text-dark, #0D0D0D);margin:0}.filters-container{background:#fff;padding:20px;border-radius:14px;box-shadow:0 4px 20px #09363514;display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;margin-bottom:20px;border:1px solid rgba(206,212,211,.5)}.filter-group{display:flex;flex-direction:column;gap:6px}.filter-group select,.filter-group input{padding:10px 14px;border:2px solid var(--border-light, #CED4D3);border-radius:10px;font-size:14px;transition:all .2s}.export-buttons{display:flex;flex-direction:column;gap:6px}.btn-group{display:flex;gap:8px}.attendance-table-container{background:#fff;border-radius:16px;box-shadow:0 4px 20px #09363514;overflow:hidden;border:1px solid rgba(206,212,211,.5)}.attendance-table-container table{width:100%;border-collapse:collapse}.attendance-table-container th{background:linear-gradient(135deg,#1f6a75,#093635);color:#fff;padding:16px;text-align:left;font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.5px}.attendance-table-container td{padding:14px 16px;border-bottom:1px solid var(--border-light, #e5e7eb);color:var(--text-dark, #0D0D0D);font-size:14px}.attendance-table-container tbody tr:hover{background:#1f6a750a}.employee-id{font-weight:600;color:var(--primary, #1F6A75);font-family:monospace}.time-cell{font-family:monospace;font-weight:600;color:var(--text-dark, #0D0D0D)}.status-badge.present{background:#d1fae5;color:#059669}.status-badge.absent{background:#fee2e2;color:#dc2626}.status-badge.late{background:#fff4e6;color:#e07a2a}.status-badge.half-day{background:#f3e8ff;color:#7c3aed}.status-badge.leave{background:var(--bg-light, #f0f4f3);color:var(--text-light, #6b7280)}.status-badge.early-arrival{background:#e0f2f4;color:#1f6a75}.btn-edit-sm,.btn-delete-sm{padding:6px 14px;border:none;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s}.btn-manual-entry{background:linear-gradient(135deg,#f49040,#e07a2a);color:#fff;border:none;padding:10px 20px;border-radius:10px;cursor:pointer;font-weight:600;font-size:13px;transition:all .3s;display:flex;align-items:center;gap:8px;box-shadow:0 4px 15px #f490404d}.btn-manual-entry:hover{transform:translateY(-2px);box-shadow:0 6px 20px #f4904066}.form-group label{display:flex;align-items:center;gap:6px;margin-bottom:8px;font-weight:600;color:var(--text-dark, #0D0D0D);font-size:14px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px 16px;border:2px solid var(--border-light, #CED4D3);border-radius:12px;font-size:14px;transition:all .2s;font-family:inherit}.form-group textarea{resize:vertical;min-height:80px}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.btn-secondary{background:var(--bg-light, #CED4D3);color:var(--text-dark, #0D0D0D);border:none;padding:12px 24px;border-radius:10px;font-weight:600;font-size:14px;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:8px}.pagination-controls{display:flex;justify-content:center;align-items:center;gap:16px;padding:20px;border-top:1px solid var(--border-light, #e5e7eb)}.pagination-controls button{padding:8px 18px;border:2px solid var(--primary, #1F6A75);background:#fff;color:var(--primary, #1F6A75);border-radius:8px;cursor:pointer;font-weight:600;font-size:13px;transition:all .2s}.pagination-controls button:hover:not(:disabled){background:var(--primary, #1F6A75);color:#fff}.pagination-controls button:disabled{opacity:.4;cursor:not-allowed}.pagination-controls span{color:var(--text-dark, #0D0D0D);font-size:14px;font-weight:500}@media(max-width:768px){.stats-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:600px){.attendance-page{padding:12px 12px 100px}.stats-grid{grid-template-columns:1fr 1fr;gap:12px}.stat-card{padding:16px;flex-direction:column;align-items:flex-start;gap:10px}.stat-icon{width:48px;height:48px;font-size:22px;border-radius:10px}.stat-info h3{font-size:10px;margin-bottom:4px}.stat-value{font-size:24px}.filters-container{grid-template-columns:1fr}.export-buttons,.btn-group{width:100%}.btn-export{flex:1;justify-content:center;padding:12px 16px}.attendance-table-container{overflow-x:auto}.form-row{grid-template-columns:1fr}.header-actions{flex-direction:column;width:100%}.header-actions button{width:100%;justify-content:center}}@media(max-width:400px){.stats-grid{grid-template-columns:1fr;gap:10px}.stat-card{flex-direction:row;align-items:center;padding:14px}.stat-icon{width:44px;height:44px;font-size:20px}.stat-value{font-size:22px}}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px}.page-header h1{font-size:28px;color:var(--text-dark, #0D0D0D);margin-bottom:6px;font-weight:700}.page-header p{color:var(--text-light, #A2ABAA);font-size:14px}.report-controls{background:#fff;border-radius:16px;padding:28px;margin-bottom:28px;box-shadow:0 4px 20px #09363514;border:1px solid rgba(206,212,211,.5)}.report-type-selector{margin-bottom:28px}.report-type-selector label{display:block;font-size:13px;font-weight:600;color:var(--text-dark, #0D0D0D);margin-bottom:12px;text-transform:uppercase;letter-spacing:.5px}.btn-group{display:flex;gap:10px;flex-wrap:wrap}.btn-group button{padding:12px 22px;border:2px solid var(--border-light, #CED4D3);background:#fff;border-radius:10px;cursor:pointer;font-weight:600;font-size:13px;color:var(--text-light, #6b7280);transition:all .25s}.btn-group button:hover{border-color:var(--primary, #1F6A75);color:var(--primary, #1F6A75)}.btn-group button.active{background:linear-gradient(135deg,#1f6a75,#093635);border-color:transparent;color:#fff;box-shadow:0 4px 15px #1f6a754d}.filters-container{border-top:1px solid var(--border-light, #e5e7eb);padding-top:24px}.filter-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:20px}.filter-group label{font-size:13px;font-weight:600;color:var(--text-dark, #0D0D0D)}.filter-group input,.filter-group select{width:100%;padding:11px 14px;border:2px solid var(--border-light, #CED4D3);border-radius:10px;font-size:14px;transition:all .2s;background:#fff;box-sizing:border-box}.filter-group input:focus,.filter-group select:focus{outline:none;border-color:var(--primary, #1F6A75);box-shadow:0 0 0 3px #1f6a751f}.filter-group small{font-size:11px;color:var(--text-light, #A2ABAA)}.date-range{display:flex;gap:10px;align-items:center}.date-range span{color:var(--text-light, #A2ABAA);font-size:13px}.date-range input{flex:1;width:100%;box-sizing:border-box}.action-buttons{display:flex;gap:14px;flex-wrap:wrap}.btn-primary{background:linear-gradient(135deg,#1f6a75,#093635);color:#fff;border:none;padding:14px 32px;border-radius:12px;cursor:pointer;font-weight:700;font-size:15px;transition:all .3s ease;display:flex;align-items:center;gap:10px;box-shadow:0 4px 15px #1f6a7540}.btn-primary:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 8px 25px #1f6a7559}.btn-primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-secondary{background:var(--bg-light, #CED4D3);color:var(--text-dark, #0D0D0D);border:none;padding:14px 28px;border-radius:12px;cursor:pointer;font-weight:600;font-size:15px;transition:all .3s ease}.btn-secondary:hover:not(:disabled){background:var(--border-medium, #A2ABAA);transform:translateY(-2px)}.btn-secondary:disabled{opacity:.4;cursor:not-allowed}.btn-export{padding:12px 24px;border:none;border-radius:10px;cursor:pointer;font-weight:600;font-size:14px;transition:all .3s ease;display:flex;align-items:center;gap:8px}.btn-export.csv{background:linear-gradient(135deg,#10b981,#059669);color:#fff;box-shadow:0 4px 15px #10b9814d}.btn-export.csv:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #10b98166}.btn-export.excel{background:linear-gradient(135deg,#217346,#185c37);color:#fff;box-shadow:0 4px 15px #2173464d}.btn-export.excel:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #21734666}.report-result{background:#fff;border-radius:16px;padding:32px;box-shadow:0 4px 20px #09363514;border:1px solid rgba(206,212,211,.5)}.report-result h2{font-size:22px;color:var(--text-dark, #0D0D0D);margin-bottom:26px;padding-bottom:16px;border-bottom:2px solid var(--bg-light, #f0f4f3);font-weight:600}.summary-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:18px;margin-bottom:32px}.stat-box{background:var(--bg-light, #f0f4f3);padding:22px;border-radius:14px;text-align:center;transition:all .2s}.stat-box:hover{transform:translateY(-3px);box-shadow:0 4px 15px #0936351a}.stat-box h3{font-size:12px;color:var(--text-light, #A2ABAA);margin-bottom:10px;text-transform:uppercase;letter-spacing:.5px;font-weight:600}.stat-number{font-size:28px;font-weight:700;color:var(--primary, #1F6A75);margin:0}.stat-box.full-width{grid-column:1 / -1}.stat-box.salary-box{background:linear-gradient(135deg,#e0f2f4,#c5e5e8)}.stat-box.net-salary{background:linear-gradient(135deg,#1f6a75,#093635)}.stat-box.net-salary h3,.stat-box.net-salary .stat-number{color:#fff}.deduction{color:#ef4444!important}.status-grid{display:flex;flex-wrap:wrap;gap:12px;margin-top:14px;justify-content:center}.status-item{display:flex;align-items:center;gap:10px;padding:8px 16px;background:#fff;border-radius:25px;box-shadow:0 2px 8px #09363514}.status-badge{padding:5px 14px;border-radius:20px;font-size:12px;font-weight:600;color:#000!important}.status-badge.status-present,.status.status-present{background:#10b981}.status-badge.status-absent,.status.status-absent{background:#ef4444}.status-badge.status-late,.status.status-late{background:#f49040}.status-badge.status-half-day,.status.status-half-day{background:#8b5cf6}.status-badge.status-leave,.status.status-leave{background:#6b7280}.status-badge.status-early-arrival,.status.status-early-arrival{background:#06b6d4}.status-badge.status-late-early-arrival,.status.status-late-early-arrival{background:#a855f7}.status-item .count{font-weight:700;color:var(--text-dark, #0D0D0D);font-size:16px}.table-container{overflow-x:auto;margin-top:24px}.table-container h3{font-size:16px;color:var(--text-dark, #0D0D0D);margin-bottom:16px;font-weight:600}.table-container table{width:100%;border-collapse:collapse}.table-container th{background:linear-gradient(135deg,#1f6a75,#093635);color:#fff;padding:14px 16px;text-align:left;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.table-container td{padding:14px 16px;border-bottom:1px solid var(--border-light, #e5e7eb);color:var(--text-dark, #0D0D0D);font-size:14px}.table-container tbody tr:hover{background:#1f6a750a}.status{display:inline-block;padding:5px 14px;border-radius:20px;font-size:12px;font-weight:600;color:#000}.department-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:24px}.department-card{background:var(--bg-light, #f0f4f3);border-radius:16px;padding:24px;border:1px solid rgba(206,212,211,.5);transition:all .2s}.department-card:hover{box-shadow:0 8px 25px #0936351f;transform:translateY(-2px)}.department-card h3{font-size:18px;color:var(--primary, #1F6A75);margin-bottom:18px;padding-bottom:12px;border-bottom:2px solid white;font-weight:600}.employee-info{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;padding:18px;background:var(--bg-light, #f0f4f3);border-radius:12px;margin-bottom:24px}.employee-info p{margin:0;font-size:14px}.employee-info p strong{color:var(--text-light, #A2ABAA);font-weight:600}@media(max-width:600px){.reports-page .page-container,.page-container{padding:12px 12px 80px}.btn-group{flex-direction:column;width:100%}.btn-group button,.filters-container{width:100%}.filter-row{display:flex;flex-direction:column;gap:12px;width:100%}.filter-group{width:100%!important;max-width:100%!important}.filter-group input,.filter-group select{width:100%!important;max-width:100%!important;box-sizing:border-box}.date-range{flex-direction:column;gap:8px;width:100%}.date-range input{width:100%!important;box-sizing:border-box}.date-range span{text-align:center}.action-buttons{flex-direction:column;gap:10px;width:100%}.action-buttons button{width:100%;justify-content:center}.summary-stats,.department-cards,.employee-info{grid-template-columns:1fr}}.departments-page{padding:28px}.view-icon{font-size:16px}.departments-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}@media(max-width:900px){.departments-grid{grid-template-columns:1fr}}.department-card{background:#fff;border-radius:16px;padding:26px;box-shadow:0 4px 20px #09363514;transition:all .3s;display:flex;flex-direction:column;min-height:280px;border:1px solid rgba(206,212,211,.5);position:relative;overflow:hidden}.department-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#1f6a75,#f49040);transform:scaleX(0);transition:transform .3s}.department-card:hover:before{transform:scaleX(1)}.department-card:hover{transform:translateY(-6px);box-shadow:0 12px 35px #09363526}.dept-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.dept-name{font-size:20px;color:#0d0d0d;font-weight:700;margin:0}.dept-code{display:inline-block;background:#f0f4f3;color:#1f6a75;padding:6px 14px;border-radius:20px;font-size:12px;font-weight:600;font-family:monospace;margin-top:8px}.parent-dept-badge{display:inline-flex;align-items:center;gap:6px;background:linear-gradient(135deg,#fff4e6,#ffe0c2);color:#e07a2a;padding:6px 14px;border-radius:20px;font-size:12px;font-weight:600;margin-top:8px}.dept-description{color:#6b7280;font-size:14px;line-height:1.6;margin:12px 0;flex-grow:1}.dept-leverage{display:flex;align-items:center;gap:8px;color:#1f6a75;font-size:13px;font-weight:500;margin:12px 0;padding:10px 14px;background:#e0f2f4;border-radius:10px}.dept-team-info{display:flex;flex-direction:column;gap:8px;margin:12px 0;padding:14px;background:#f8fafa;border-radius:10px}.dept-team-info .info-item{display:flex;align-items:center;gap:8px;font-size:13px;color:#0d0d0d}.children-count{font-size:13px;color:#f49040;font-weight:600;padding:8px 0}.dept-footer{margin-top:auto;padding-top:16px;border-top:1px solid #e5e7eb}.dept-actions{display:flex;gap:10px}.btn-edit,.btn-delete{flex:1;padding:10px 16px;border:none;border-radius:10px;cursor:pointer;font-size:13px;font-weight:600;transition:all .25s;text-align:center}.btn-edit{background:#1f6a75;color:#fff}.btn-edit:hover{background:#093635}.btn-delete{background:#fee2e2;color:#dc2626}.btn-delete:hover{background:#fecaca}.tree-view-container{background:#fff;border-radius:16px;padding:28px;box-shadow:0 4px 20px #09363514;border:1px solid rgba(206,212,211,.5)}.tree-controls{display:flex;gap:12px}.tree-control-btn{padding:10px 18px;border:2px solid #CED4D3;background:#fff;border-radius:8px;cursor:pointer;font-weight:600;font-size:13px;color:#6b7280;transition:all .2s;display:flex;align-items:center;gap:6px}.tree-control-btn:hover{border-color:#1f6a75;color:#1f6a75}.organization-tree{padding:0}.tree-header{margin-bottom:20px;margin-top:15px}.tree-header h3{font-size:18px;color:#0d0d0d;font-weight:600;display:flex;align-items:center;gap:10px}.tree-body{padding-left:0}.tree-node{margin-bottom:4px}.tree-node-content{position:relative}.tree-node-content.level-0{margin-left:0}.tree-node-content.level-1{margin-left:32px}.tree-node-content.level-2{margin-left:64px}.tree-node-content.level-3{margin-left:96px}.tree-node-content.level-4{margin-left:128px}.tree-node-line{display:flex;align-items:center;gap:10px;padding:8px 0}.tree-expand-btn{width:28px;height:28px;border:2px solid #1F6A75;background:#fff;color:#1f6a75;border-radius:6px;cursor:pointer;font-size:16px;font-weight:700;display:flex;align-items:center;justify-content:center;transition:all .2s;flex-shrink:0}.tree-expand-btn:hover{background:#1f6a75;color:#fff}.tree-leaf-icon{width:28px;height:28px;display:flex;align-items:center;justify-content:center;color:#a2abaa;font-size:20px;flex-shrink:0}.tree-node-box{display:flex;align-items:center;gap:12px;padding:12px 20px;border-radius:10px;flex:1;transition:all .2s}.tree-node-box.root-node{background:linear-gradient(135deg,#e0f2f4,#c5e5e8);border-left:4px solid #1F6A75}.tree-node-box.child-node{background:#f8fafa;border-left:4px solid #CED4D3}.tree-node-box:hover{background:linear-gradient(135deg,#d0eaed,#b5dde1)}.tree-node-name{font-weight:600;color:#0d0d0d;font-size:14px}.tree-node-code{background:#fff;color:#1f6a75;padding:4px 12px;border-radius:20px;font-size:11px;font-weight:600;font-family:monospace}.tree-children{position:relative;margin-left:14px;padding-left:14px;border-left:2px dashed #CED4D3}.modal-content{background:#fff;border-radius:20px;width:90%;max-width:550px;max-height:90vh;overflow-y:auto;box-shadow:0 25px 60px #0936354d;animation:modalSlideIn .3s ease}.form-group label{display:flex;align-items:center;gap:6px;margin-bottom:10px;font-weight:600;color:#0d0d0d;font-size:14px}.form-group label i{color:#1f6a75;font-size:14px}.helper-text.warning{color:#f49040}.form-row,.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.btn-primary{background:linear-gradient(135deg,#1f6a75,#093635);color:#fff;border:none;padding:12px 24px;border-radius:10px;font-weight:600;font-size:14px;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:8px}@media(max-width:768px){.departments-page{padding:16px}}@media(max-width:600px){.departments-page{padding:12px 12px 80px}.page-header{flex-direction:column;align-items:stretch;gap:12px}.header-actions{width:100%}.header-actions .btn-primary{width:100%;justify-content:center}.departments-grid,.form-row{grid-template-columns:1fr}.tree-node-content.level-1,.tree-node-content.level-2,.tree-node-content.level-3,.tree-node-content.level-4{margin-left:20px}}.employees-page{padding:28px}.view-toggle{display:flex;background:#f0f4f3;border-radius:10px;padding:5px;border:2px solid #CED4D3}.view-btn{display:flex;align-items:center;gap:8px;padding:10px 18px;border:none;background:transparent;color:#a2abaa;font-size:13px;font-weight:600;cursor:pointer;border-radius:8px;transition:all .25s}.view-btn:hover{color:#0d0d0d}.view-btn.active{background:linear-gradient(135deg,#1f6a75,#093635);color:#fff;box-shadow:0 4px 12px #1f6a754d}.search-box{position:relative}.search-box input{padding:10px 14px 10px 40px;border:2px solid #CED4D3;border-radius:10px;font-size:14px;width:240px;transition:all .3s}.search-box input:focus{border-color:#1f6a75;box-shadow:0 0 0 3px #1f6a751f;outline:none}.search-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);font-size:14px}.dept-filter{padding:10px 14px;border:2px solid #CED4D3;border-radius:10px;font-size:14px;min-width:180px;background:#fff}.dept-filter:focus{border-color:#1f6a75;outline:none}.export-buttons{display:flex;gap:8px}.btn-export{padding:10px 16px;border:none;border-radius:8px;cursor:pointer;font-weight:600;font-size:13px;display:flex;align-items:center;gap:6px;transition:all .3s}.btn-export.csv{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.btn-export.excel{background:linear-gradient(135deg,#217346,#185c37);color:#fff}.btn-export:hover:not(:disabled){transform:translateY(-2px)}.btn-export:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:linear-gradient(135deg,#1f6a75,#093635);color:#fff;border:none;padding:12px 24px;border-radius:10px;cursor:pointer;font-weight:600;font-size:14px;transition:all .3s;box-shadow:0 4px 15px #1f6a7540}.employees-table{background:#fff;border-radius:16px;box-shadow:0 4px 20px #09363514;border:1px solid rgba(206,212,211,.5);overflow-x:auto;-webkit-overflow-scrolling:touch}.employees-table table{width:100%;min-width:1200px;border-collapse:collapse}.employees-table th{background:linear-gradient(135deg,#1f6a75,#093635);color:#fff;padding:16px 14px;text-align:left;font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap;position:sticky;top:0}.employees-table td{padding:14px;border-bottom:1px solid #e5e7eb;color:#0d0d0d;font-size:13px;vertical-align:middle}.employees-table tbody tr:hover{background:#1f6a750a}.emp-id{font-weight:600;color:#1f6a75;font-family:monospace}.bio-id{font-weight:600;color:#f49040;font-family:monospace}.dept-badges-container{display:flex;flex-direction:column;gap:6px;max-width:180px}.dept-badge-primary{display:inline-block;background:linear-gradient(135deg,#e0f2f4,#c5e5e8);color:#1f6a75;padding:5px 12px;border-radius:8px;font-size:12px;font-weight:600}.dept-badge-lead{display:inline-block;background:linear-gradient(135deg,#fff4e6,#ffe0c2);color:#e07a2a;padding:4px 10px;border-radius:8px;font-size:11px;font-weight:600}.dept-badge-secondary{display:inline-block;background:#f0f4f3;color:#6b7280;padding:4px 10px;border-radius:8px;font-size:11px;font-weight:500}.more-depts{display:inline-block;background:#ced4d3;color:#0d0d0d;padding:3px 8px;border-radius:8px;font-size:10px;font-weight:600}.role-badge{display:inline-block;padding:4px 12px;border-radius:15px;font-size:11px;font-weight:600;text-transform:capitalize}.role-badge.superAdmin,.role-superAdmin{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#dc2626}.role-badge.teamLead,.role-teamLead,.role-ITAssetManager{background:linear-gradient(135deg,#fff4e6,#ffe0c2);color:#e07a2a}.role-badge.employee,.role-employee{background:#f0f4f3;color:#6b7280}.action-buttons{display:flex;gap:6px}.btn-edit-small,.btn-delete-small{padding:6px 12px;border:none;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s}.btn-edit-small{background:#1f6a75;color:#fff}.btn-edit-small:hover{background:#093635}.btn-delete-small{background:#ef4444;color:#fff}.btn-delete-small:hover{background:#dc2626}.pagination-controls{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-top:1px solid #e5e7eb;flex-wrap:wrap;gap:16px}.pagination-btn{padding:8px 14px;border:2px solid #CED4D3;background:#fff;border-radius:8px;cursor:pointer;font-size:14px;transition:all .2s}.pagination-btn:hover:not(:disabled){border-color:#1f6a75;color:#1f6a75}.pagination-current{padding:0 12px;font-size:13px;font-weight:600;color:#0d0d0d}.employees-tree-view{background:#fff;border-radius:16px;padding:24px;box-shadow:0 4px 20px #09363514;border:1px solid rgba(206,212,211,.5)}.dept-tree-container{padding:0}.dept-tree-node{margin-bottom:8px}.dept-tree-node.level-0{margin-left:0}.dept-tree-node.level-1,.dept-tree-node.level-2,.dept-tree-node.level-3{margin-left:28px;padding-left:20px;border-left:2px dashed #CED4D3}.dept-tree-header{display:flex;align-items:center;padding:14px 18px;background:linear-gradient(135deg,#e0f2f4,#c5e5e8);border-radius:12px;cursor:pointer;transition:all .2s;border:1px solid transparent;margin-bottom:10px}.dept-tree-node.level-0>.dept-tree-header{border-left:4px solid #1F6A75}.dept-tree-header:hover{background:linear-gradient(135deg,#d0eaed,#b5dde1);border-color:#1f6a75}.dept-tree-info{display:flex;align-items:center;gap:14px;flex-wrap:wrap;width:100%}.expand-icon{width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-size:12px;color:#1f6a75;background:#fff;border-radius:6px;flex-shrink:0}.dept-tree-name{font-weight:700;color:#0d0d0d;font-size:15px}.dept-tree-code{background:#fff;color:#1f6a75;padding:4px 12px;border-radius:20px;font-size:11px;font-weight:600;font-family:monospace}.dept-tree-count{background:#fffc;color:#6b7280;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:500}.dept-tree-head{color:#f49040;font-size:12px;font-weight:600;margin-left:auto}.dept-tree-content{padding-left:20px;margin-left:12px;border-left:2px solid #e5e7eb}.dept-employees-list{display:flex;flex-direction:column;gap:10px;margin-bottom:16px}.tree-employee-card{display:flex;align-items:center;gap:16px;padding:14px 18px;background:#fff;border:1px solid #e5e7eb;border-radius:12px;transition:all .2s}.tree-employee-card:hover{border-color:#1f6a75;box-shadow:0 4px 12px #1f6a751a}.tree-emp-avatar{width:44px;height:44px;background:linear-gradient(135deg,#1f6a75,#093635);color:#fff;border-radius:10px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:18px;flex-shrink:0}.tree-emp-info{flex:1;min-width:0}.tree-emp-name{font-weight:600;color:#0d0d0d;font-size:14px;margin-bottom:2px}.tree-emp-position{color:#6b7280;font-size:12px;margin-bottom:6px}.tree-emp-details{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.tree-emp-id{font-family:monospace;font-size:11px;color:#1f6a75;background:#e0f2f4;padding:3px 10px;border-radius:12px;font-weight:600}.tree-emp-lead{color:#f49040;font-size:11px;font-weight:600}.tree-emp-role{font-size:10px;padding:3px 10px;border-radius:12px;font-weight:600;text-transform:capitalize;background:#f0f4f3;color:#6b7280}.tree-emp-role.role-superAdmin{background:#fee2e2;color:#dc2626}.tree-emp-role.role-ITAssetManager,.tree-emp-role.role-teamLead{background:#fff4e6;color:#e07a2a}.tree-emp-actions{display:flex;gap:6px;flex-shrink:0}.tree-emp-actions .btn-edit-small,.tree-emp-actions .btn-delete-small{padding:6px 10px;font-size:14px}.dept-children{margin-top:10px}.modal-large{max-width:850px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px 28px;border-bottom:1px solid #e5e7eb;background:linear-gradient(135deg,#f0f4f3,#fff);position:sticky;top:0;z-index:10}.close-btn{background:none;border:none;font-size:28px;color:#a2abaa;cursor:pointer;width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:all .2s}.close-btn:hover{background:#f0f4f3;color:#0d0d0d}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;padding:28px}.form-group{margin-bottom:0}.form-group.full-width{grid-column:1 / -1}.form-group label{display:block;margin-bottom:8px;font-weight:600;color:#0d0d0d;font-size:13px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:11px 14px;border:2px solid #CED4D3;border-radius:10px;font-size:14px;transition:all .2s}.form-group small{display:block;margin-top:6px;color:#a2abaa;font-size:11px}.section-title{grid-column:1 / -1;font-size:16px;color:#0d0d0d;font-weight:700;padding:16px 0 10px;border-top:1px solid #e5e7eb;margin-top:10px;display:flex;align-items:center;gap:10px}.section-title:first-of-type{border-top:none;margin-top:0;padding-top:0}.checkbox-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:8px;padding:14px;border:2px solid #CED4D3;border-radius:10px;background:#f8fafa;max-height:180px;overflow-y:auto}.checkbox-label{display:flex;align-items:center;gap:10px;font-size:13px;color:#0d0d0d;cursor:pointer;padding:8px 10px;border-radius:8px;transition:background .2s}.checkbox-label:hover{background:#fff}.checkbox-label input[type=checkbox]{width:18px;height:18px;accent-color:#1F6A75;flex-shrink:0}.dept-checkbox .dept-name{font-weight:500}.dept-checkbox .dept-code{font-size:11px;color:#a2abaa;font-family:monospace}.multi-dept-grid{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:6px;padding:10px;max-height:150px}.multi-dept-grid .checkbox-label{padding:6px 8px;gap:6px;font-size:12px;background:#fff;border:1px solid #e5e7eb}.multi-dept-grid .checkbox-label:hover{border-color:#1f6a75}.multi-dept-grid .checkbox-label input[type=checkbox]{width:14px;height:14px}.multi-dept-grid .dept-name{font-size:12px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:80px}.multi-dept-grid .dept-code{font-size:9px;color:#a2abaa}.weekdays-grid{display:flex;flex-wrap:wrap;gap:8px;padding:14px;border:2px solid #CED4D3;border-radius:10px;background:#f8fafa}.weekdays-grid .checkbox-label{flex:0 0 auto;min-width:100px;padding:8px 12px;background:#fff;border:1px solid #e5e7eb;border-radius:8px;font-size:13px}.weekdays-grid .checkbox-label:hover{border-color:#1f6a75}.weekdays-grid .checkbox-label input[type=checkbox]:checked+span,.weekdays-grid .checkbox-label:has(input:checked){color:#1f6a75;font-weight:600}@media(max-width:600px){.weekdays-grid{gap:6px}.weekdays-grid .checkbox-label{min-width:80px;padding:6px 10px;font-size:12px}}.modal-footer{display:flex;gap:14px;justify-content:flex-end;padding:20px 28px;border-top:1px solid #e5e7eb;background:#f8fafa;position:sticky;bottom:0}.no-data,.loading{text-align:center;padding:60px 20px;color:#a2abaa;font-size:15px}@media(max-width:1024px){.employees-table table{min-width:900px}}@media(max-width:768px){.employees-page{padding:16px}}@media(max-width:600px){.employees-page{padding:12px 12px 80px}.page-header{flex-direction:column;align-items:stretch;gap:12px}.header-actions{width:100%;flex-direction:column;gap:10px}.view-toggle{width:100%;justify-content:center}.view-toggle .toggle-btn{flex:1;justify-content:center}.search-box,.search-box input{width:100%}.dept-filter{width:100%;min-width:unset}.export-buttons{width:100%;flex-direction:row}.export-buttons .btn-export{flex:1}.btn-add{width:100%;justify-content:center}.form-grid{grid-template-columns:1fr;padding:20px}.dept-tree-info{flex-direction:column;align-items:flex-start;gap:8px}.tree-employee-card{flex-direction:column;align-items:flex-start;text-align:left}.tree-emp-actions{margin-top:10px;width:100%;justify-content:flex-end}.pagination-controls{flex-direction:column;gap:12px;align-items:stretch}.pagination-controls select{width:100%}}.salaries-page{padding:28px;width:100%;max-width:100%;overflow-x:hidden;box-sizing:border-box}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px;flex-wrap:wrap;gap:16px;max-width:100%}.btn-export{display:flex;align-items:center;gap:6px;padding:10px 16px;border:none;border-radius:10px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s}.btn-export.excel{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.btn-export.excel:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #10b98159}.btn-export.csv{background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff}.btn-export.csv:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #3b82f659}.btn-export:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-export i{font-size:14px}.month-selector,.year-selector,.department-selector{padding:10px 14px;border:2px solid #CED4D3;border-radius:10px;font-size:14px;cursor:pointer;background:#fff;transition:all .2s}.month-selector:focus,.year-selector:focus,.department-selector:focus{border-color:#1f6a75;outline:none}.btn-calculate,.btn-primary{background:linear-gradient(135deg,#1f6a75,#093635);color:#fff;border:none;padding:12px 22px;border-radius:10px;cursor:pointer;font-weight:600;font-size:14px;transition:all .3s;box-shadow:0 4px 15px #1f6a7540;display:flex;align-items:center;gap:8px}.btn-calculate:hover,.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #1f6a7559}.btn-calculate:disabled,.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.btn-calculate-all{background:linear-gradient(135deg,#f49040,#e07a2a);color:#fff;border:none;padding:12px 22px;border-radius:10px;cursor:pointer;font-weight:600;font-size:14px;transition:all .3s;box-shadow:0 4px 15px #f490404d;display:flex;align-items:center;gap:8px}.btn-calculate-all:hover{transform:translateY(-2px);box-shadow:0 6px 20px #f4904066}.btn-calculate-all:disabled{opacity:.6;cursor:not-allowed;transform:none}.salaries-table{background:#fff;border-radius:16px;box-shadow:0 4px 20px #09363514;overflow-x:auto;width:100%;max-width:100%;margin-top:20px;border:1px solid rgba(206,212,211,.5);-webkit-overflow-scrolling:touch}.salaries-table table{width:100%;border-collapse:collapse;min-width:1200px;table-layout:auto}.salaries-table th{background:linear-gradient(135deg,#1f6a75,#093635);color:#fff;padding:16px 12px;text-align:left;font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.salaries-table td{padding:14px 12px;border-bottom:1px solid #e5e7eb;color:#0d0d0d;font-size:13px;vertical-align:middle}.salaries-table tbody tr:hover{background:#1f6a750a}.employee-id{font-weight:600;color:#1f6a75;font-family:monospace}.amount{font-weight:600;font-family:monospace}.amount.positive{color:#10b981}.amount.negative{color:#ef4444}.status-badge{display:inline-block;padding:5px 14px;border-radius:20px;font-size:11px;font-weight:600;text-transform:capitalize}.status-badge.pending{background:#fff4e6;color:#e07a2a}.status-badge.approved{background:#e0f2f4;color:#1f6a75}.status-badge.paid{background:#d1fae5;color:#059669}.status-badge.rejected{background:#fee2e2;color:#dc2626}.action-buttons{display:flex;gap:6px;flex-wrap:wrap}.btn-approve,.btn-pay,.btn-view,.btn-edit-sm{padding:6px 12px;border:none;border-radius:6px;font-size:11px;font-weight:600;cursor:pointer;transition:all .2s}.btn-approve{background:#1f6a75;color:#fff}.btn-approve:hover{background:#093635}.btn-pay{background:#10b981;color:#fff}.btn-pay:hover{background:#059669}.btn-view,.btn-edit-sm{background:#f0f4f3;color:#0d0d0d}.btn-view:hover,.btn-edit-sm:hover{background:#ced4d3}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:20px;margin-bottom:28px}.summary-card{background:#fff;padding:24px;border-radius:14px;box-shadow:0 4px 20px #09363514;border:1px solid rgba(206,212,211,.5)}.summary-card h3{font-size:12px;color:#a2abaa;text-transform:uppercase;letter-spacing:.5px;margin-bottom:10px;font-weight:600}.summary-card .value{font-size:28px;font-weight:700;color:#0d0d0d}.summary-card.total .value{color:#1f6a75}.summary-card.pending-count .value{color:#f49040}.summary-card.paid-count .value{color:#10b981}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 28px;border-bottom:none;background:linear-gradient(135deg,#1f6a75,#093635);border-radius:20px 20px 0 0}.modal-body{padding:28px;max-height:70vh;overflow-y:auto}.form-section-title{font-size:14px;font-weight:600;color:#1f6a75;margin:20px 0 16px;padding-bottom:8px;border-bottom:2px solid rgba(31,106,117,.15);display:flex;align-items:center;gap:8px}.form-group label i{color:#1f6a75;margin-right:4px}.helper-text{display:block;margin-top:6px;font-size:12px;color:#a2abaa}.helper-text.info{color:#1f6a75}.radio-group{display:flex;flex-direction:column;gap:12px;margin-top:10px}.radio-option{display:flex;align-items:center;gap:12px;padding:14px 16px;background:linear-gradient(135deg,#f8fafa,#f0f4f3);border:2px solid #CED4D3;border-radius:12px;cursor:pointer;transition:all .2s}.radio-option:hover{border-color:#1f6a75;background:linear-gradient(135deg,#e0f2f4,#f0f4f3)}.radio-option input[type=radio]{width:20px;height:20px;accent-color:#1F6A75;cursor:pointer}.radio-option input[type=radio]:checked+.radio-custom+.radio-label{color:#1f6a75;font-weight:600}.radio-label{display:flex;align-items:center;gap:8px;font-size:14px;color:#0d0d0d}.radio-label i{color:#1f6a75}.checkbox-option{display:flex;align-items:center;gap:12px;padding:14px 16px;background:linear-gradient(135deg,#f8fafa,#f0f4f3);border:2px solid #CED4D3;border-radius:12px;cursor:pointer;transition:all .2s}.checkbox-option:hover{border-color:#1f6a75}.checkbox-option input[type=checkbox]{width:20px;height:20px;accent-color:#1F6A75;cursor:pointer}.checkbox-label{display:flex;align-items:center;gap:8px;font-size:14px;color:#0d0d0d}.checkbox-label i{color:#f49040}.bonus-settings{background:linear-gradient(135deg,#fef9f3,#fff8f0);border:2px solid rgba(244,144,64,.3);border-radius:12px;padding:16px;margin-top:12px}.salary-details{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.detail-item{padding:14px;background:#f8fafa;border-radius:10px}.detail-item label{display:block;font-size:11px;color:#a2abaa;text-transform:uppercase;letter-spacing:.5px;margin-bottom:6px;font-weight:600}.detail-item span{font-size:16px;color:#0d0d0d;font-weight:600}.detail-item.full-width{grid-column:1 / -1}.modal-actions{display:flex;gap:14px;justify-content:flex-end;padding:20px 28px;border-top:1px solid rgba(31,106,117,.1);background:linear-gradient(135deg,#f8fafa,#f0f4f3);border-radius:0 0 20px 20px;margin:0 -28px -28px}.btn-secondary{background:#ced4d3;color:#0d0d0d;border:none;padding:12px 24px;border-radius:10px;font-weight:600;font-size:14px;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:8px}.btn-primary{background:linear-gradient(135deg,#1f6a75,#093635);color:#fff;border:none;padding:12px 24px;border-radius:10px;font-weight:600;font-size:14px;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:8px;box-shadow:0 4px 15px #1f6a7540}@media(max-width:1024px){.salaries-table table{min-width:900px}}@media(max-width:768px){.salaries-page{padding:16px}}@media(max-width:600px){.salaries-page{padding:12px 12px 80px}.page-header{flex-direction:column;align-items:stretch;gap:12px}.header-actions{width:100%;flex-direction:column;gap:10px}.header-actions button,.header-actions select{width:100%}.btn-primary{justify-content:center}.summary-cards,.salary-details{grid-template-columns:1fr}.filters-section{flex-direction:column;gap:10px}.filters-section select,.filters-section input{width:100%}}.import-container{padding:2rem;max-width:1200px}.page-header{margin-bottom:2rem}.page-header h1{color:#1f2937;font-size:2rem;margin-bottom:.5rem}.page-header p{color:#6b7280;font-size:1rem;padding-right:96px}.import-card{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 1px 3px #0000001a;margin-bottom:2rem}.error-message{background:#fee2e2;color:#991b1b;padding:1rem;border-radius:8px;margin-bottom:1.5rem;font-weight:500}.success-message{background:#d1fae5;color:#065f46;padding:1rem;border-radius:8px;margin-bottom:1.5rem;font-weight:500}.upload-section h3{color:#1f2937;margin-bottom:.5rem}.help-text{color:#6b7280;margin-bottom:1.5rem;font-size:.9rem}.file-input-wrapper{margin-bottom:1.5rem}.file-input{display:none}.file-label{display:inline-block;padding:.75rem 1.5rem;background:#f3f4f6;border:2px dashed #d1d5db;border-radius:8px;cursor:pointer;transition:all .3s;min-width:300px;text-align:center}.file-label:hover{background:#e5e7eb;border-color:#667eea}.btn-import{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;padding:.75rem 2rem;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:transform .2s}.btn-import:hover:not(:disabled){transform:translateY(-2px)}.btn-import:disabled{opacity:.6;cursor:not-allowed}.results-section{margin-top:2rem;padding-top:2rem;border-top:2px solid #f3f4f6}.results-section h3{color:#1f2937;margin-bottom:1.5rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1rem;margin-bottom:2rem}.stat-card{padding:1.5rem;border-radius:8px;text-align:center}.stat-card.success{background:#d1fae5;color:#065f46}.stat-card.warning{background:#fef3c7;color:#92400e}.stat-card.error{background:#fee2e2;color:#991b1b}.stat-value{font-size:2rem;font-weight:700;margin-bottom:.5rem}.stat-label{font-size:.9rem;font-weight:500}.details-section{background:#f9fafb;padding:1.5rem;border-radius:8px}.details-section h4{color:#1f2937;margin-bottom:1rem}.details-list{max-height:400px;overflow-y:auto}.detail-item{display:grid;grid-template-columns:80px 150px 150px 120px 1fr;gap:1rem;padding:.75rem;background:#fff;border-radius:6px;margin-bottom:.5rem;font-size:.9rem;align-items:center}.detail-id{font-weight:600;color:#667eea}.detail-name{color:#1f2937;font-weight:500}.detail-time{color:#6b7280;font-size:.85rem}.detail-status{padding:.25rem .75rem;border-radius:12px;font-size:.8rem;font-weight:600;text-transform:capitalize;text-align:center}.status-check-in-created{background:#d1fae5;color:#065f46}.status-check-out-updated{background:#dbeafe;color:#1e40af}.status-skipped{background:#fef3c7;color:#92400e}.status-error{background:#fee2e2;color:#991b1b}.detail-reason{color:#6b7280;font-style:italic;font-size:.85rem}.instructions-card{background:#eff6ff;border:1px solid #dbeafe;border-radius:12px;padding:1.5rem}.instructions-card h3{color:#1e40af;margin-bottom:1rem}.instructions-card ol{padding-left:1.5rem;color:#1f2937}.instructions-card li{margin-bottom:.5rem;line-height:1.6}@media(max-width:768px){.import-container{padding:1rem}.page-header p{padding-right:0}.detail-item{grid-template-columns:1fr 1fr;gap:.5rem}}@media(max-width:600px){.import-container{padding:12px 12px 100px}.page-header h1{font-size:1.5rem}.import-card{padding:1rem}.file-label{min-width:100%;max-width:100%;padding:1rem}.btn-import{width:100%;justify-content:center}.stats-grid{grid-template-columns:1fr 1fr;gap:.75rem}.stat-card{padding:1rem}.stat-value{font-size:1.5rem}.detail-item{grid-template-columns:1fr;gap:.5rem;padding:.75rem}.instructions-card{padding:1rem}}@media(max-width:400px){.stats-grid{grid-template-columns:1fr}.stat-value{font-size:1.25rem}}.page-container{padding:28px}.page-header h1{font-size:28px;color:#0d0d0d;margin:0;font-weight:700}.page-header p{color:#a2abaa;margin:6px 0 0;font-size:14px}.header-actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;margin-bottom:28px}.stat-card{background:#fff;padding:24px;border-radius:14px;box-shadow:0 4px 20px #09363514;display:flex;align-items:center;gap:18px;border:1px solid rgba(206,212,211,.5);transition:all .3s}.stat-icon{font-size:40px;width:64px;height:64px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#e0f2f4,#c5e5e8);border-radius:14px}.stat-info h3{font-size:12px;color:#a2abaa;margin:0 0 8px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.stat-value{font-size:30px;font-weight:700;color:#0d0d0d;margin:0}.filters-container{display:flex;gap:14px;margin-bottom:24px;flex-wrap:wrap;align-items:center}.filters-container select,.filters-container input{padding:10px 14px;border:2px solid #CED4D3;border-radius:10px;font-size:14px;transition:all .2s;min-width:160px}.filters-container select:focus,.filters-container input:focus{border-color:#1f6a75;outline:none}.assets-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:24px}.asset-card{background:#fff;border-radius:16px;padding:24px;box-shadow:0 4px 20px #09363514;border:1px solid rgba(206,212,211,.5);transition:all .3s;position:relative;overflow:hidden}.asset-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#1f6a75,#f49040);transform:scaleX(0);transition:transform .3s}.asset-card:hover:before{transform:scaleX(1)}.asset-card:hover{transform:translateY(-6px);box-shadow:0 12px 35px #09363526}.asset-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:16px}.asset-header h3{font-size:18px;color:#0d0d0d;margin:0;font-weight:700}.asset-id{font-size:12px;color:#1f6a75;font-family:monospace;background:#e0f2f4;padding:4px 10px;border-radius:12px;font-weight:600}.asset-type{display:inline-block;background:#f0f4f3;color:#6b7280;padding:6px 14px;border-radius:20px;font-size:12px;font-weight:600;margin-bottom:16px}.asset-details{display:flex;flex-direction:column;gap:10px;margin-bottom:18px}.asset-details p{margin:0;font-size:13px;color:#6b7280;display:flex;align-items:center;gap:8px}.asset-details p strong{color:#0d0d0d;font-weight:600}.status-badge{display:inline-block;padding:6px 14px;border-radius:20px;font-size:11px;font-weight:600;text-transform:capitalize}.status-badge.available{background:#d1fae5;color:#059669}.status-badge.assigned{background:#e0f2f4;color:#1f6a75}.status-badge.maintenance{background:#fff4e6;color:#e07a2a}.status-badge.retired{background:#f0f4f3;color:#6b7280}.asset-actions{display:flex;gap:8px;margin-top:16px;padding-top:16px;border-top:1px solid #e5e7eb}.btn-assign,.btn-return,.btn-view,.btn-edit-sm,.btn-delete-sm{padding:8px 14px;border:none;border-radius:8px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s;flex:1;text-align:center}.btn-assign{background:linear-gradient(135deg,#1f6a75,#093635);color:#fff}.btn-assign:hover{opacity:.9}.btn-return{background:linear-gradient(135deg,#f49040,#e07a2a);color:#fff}.btn-return:hover{opacity:.9}.btn-view{background:#f0f4f3;color:#0d0d0d}.btn-view:hover{background:#ced4d3}.btn-edit-sm{background:#1f6a75;color:#fff}.btn-edit-sm:hover{background:#093635}.modal-content{background:#fff;border-radius:20px;width:90%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 25px 60px #0936354d;animation:modalSlideIn .3s ease}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px 28px;border-bottom:1px solid #e5e7eb;background:linear-gradient(135deg,#f0f4f3,#fff)}.modal-header h2{font-size:20px;color:#0d0d0d;font-weight:700}.close-btn{background:none;border:none;font-size:28px;color:#a2abaa;cursor:pointer;transition:all .2s}.close-btn:hover{color:#0d0d0d}.form-group label{display:block;margin-bottom:10px;font-weight:600;color:#0d0d0d;font-size:14px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px 16px;border:2px solid #CED4D3;border-radius:12px;font-size:14px;transition:all .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#1f6a75;box-shadow:0 0 0 3px #1f6a751f}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.asset-form{padding:0}.asset-form .form-section{padding:20px 24px;border-bottom:1px solid #e5e7eb}.asset-form .form-section:last-of-type{border-bottom:none}.asset-form .section-title{font-size:14px;font-weight:700;color:#1f6a75;margin:0 0 16px;display:flex;align-items:center;gap:8px;padding-bottom:10px;border-bottom:2px solid #e0f2f4}.asset-form .section-title i{font-size:14px;color:#1f6a75}.asset-form .form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.asset-form .form-group{margin-bottom:0}.asset-form .form-group label{font-size:12px;font-weight:600;color:#0d0d0d;margin-bottom:6px}.asset-form .form-group input,.asset-form .form-group select,.asset-form .form-group textarea{padding:10px 12px;font-size:13px;border-radius:8px}.asset-form .form-group textarea{resize:vertical;min-height:80px}.asset-info-card{display:flex;align-items:center;gap:14px;padding:14px 16px;background:linear-gradient(135deg,#e0f2f4,#c5e5e8);border-radius:10px;border:1px solid #1F6A75}.asset-info-icon{width:44px;height:44px;background:linear-gradient(135deg,#1f6a75,#093635);border-radius:10px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:18px;flex-shrink:0}.asset-info-details{display:flex;flex-direction:column;gap:2px}.asset-info-id{font-size:11px;font-weight:600;color:#1f6a75;font-family:monospace;background:#fff;padding:2px 8px;border-radius:4px;display:inline-block;width:fit-content}.asset-info-name{font-size:15px;font-weight:700;color:#0d0d0d}@media(max-width:600px){.asset-form .form-grid{grid-template-columns:1fr}.asset-form .form-section{padding:16px 18px}}.modal-actions{display:flex;gap:14px;justify-content:flex-end;padding:20px 28px;border-top:1px solid #e5e7eb;background:#f8fafa}.btn-secondary{background:#ced4d3;color:#0d0d0d;border:none;padding:12px 24px;border-radius:10px;font-weight:600;font-size:14px;cursor:pointer;transition:all .2s}.btn-secondary:hover{background:#a2abaa}.loading,.no-data{text-align:center;padding:60px;color:#a2abaa;font-size:16px}.data-table{width:100%;border-collapse:collapse;background:#fff;border-radius:16px;overflow:hidden;box-shadow:0 4px 20px #09363514}.data-table thead{background:linear-gradient(135deg,#1f6a75,#093635)}.data-table th{padding:16px 14px;text-align:left;font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.5px;color:#fff}.data-table td{padding:16px 14px;border-bottom:1px solid rgba(31,106,117,.08);color:#0d0d0d;font-size:14px;vertical-align:middle}.data-table tbody tr{transition:all .2s}.data-table tbody tr:nth-child(odd){background:#1f6a7505}.data-table tbody tr:hover{background:#1f6a750f}.data-table td.asset-id{background:transparent;color:#1f6a75;font-family:monospace;font-weight:600;padding:16px 14px;border-radius:0}.condition-badge{display:inline-block;padding:5px 12px;border-radius:16px;font-size:12px;font-weight:600;text-transform:capitalize}.condition-badge.good,.condition-badge.Good{background:#10b9811f;color:#059669}.condition-badge.fair,.condition-badge.Fair{background:#f490401f;color:#f49040}.condition-badge.poor,.condition-badge.Poor{background:#ef44441f;color:#ef4444}.condition-badge.new,.condition-badge.New{background:#1f6a751f;color:#1f6a75}.condition-badge.excellent{background:#10b98126;color:#047857}.condition-badge.unknown{background:#a2abaa26;color:#6b7280}.data-table .btn-edit,.data-table .btn-delete{width:36px;height:36px;border:none;border-radius:8px;cursor:pointer;font-size:14px;transition:all .2s;display:inline-flex;align-items:center;justify-content:center;margin-right:6px}.data-table .btn-edit{background:linear-gradient(135deg,#1f6a75,#093635);color:#fff}.data-table .btn-edit:hover{transform:translateY(-2px);box-shadow:0 4px 12px #1f6a754d}.data-table .btn-delete{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.data-table .btn-delete:hover{transform:translateY(-2px);box-shadow:0 4px 12px #ef44444d}@media(max-width:1024px){.stats-grid{grid-template-columns:repeat(2,1fr)}.data-table{min-width:900px}}@media(max-width:768px){.page-container{padding:16px}}@media(max-width:600px){.assets-page .page-container,.page-container{padding:12px 12px 100px}.page-header{flex-direction:column;align-items:flex-start;gap:16px}.header-actions{width:100%}.btn-primary{width:100%;justify-content:center}.stats-grid{grid-template-columns:1fr 1fr;gap:12px}.stat-card{padding:16px;flex-direction:column;align-items:flex-start;gap:10px}.stat-icon{width:48px;height:48px;font-size:22px;border-radius:10px}.stat-info h3{font-size:10px;margin-bottom:4px}.stat-value{font-size:22px}.filters-container{flex-direction:column}.filters-container select,.filters-container input{width:100%}.assets-grid{grid-template-columns:1fr}.table-wrapper{overflow-x:auto;margin:0 -16px;padding:0 16px}.data-table{min-width:800px}.form-row{grid-template-columns:1fr}.modal-content{width:95%}}@media(max-width:400px){.stats-grid{grid-template-columns:1fr;gap:10px}.stat-card{flex-direction:row;align-items:center;padding:14px}.stat-icon{width:44px;height:44px;font-size:20px}.stat-value{font-size:20px}}@media(max-width:480px){.page-container{padding:12px}.page-header h1{font-size:22px}.modal-header{padding:18px 20px}.modal-body{padding:20px}.modal-actions{flex-direction:column;padding:16px 20px}.modal-actions button{width:100%}}.tickets-page{padding:28px}.page-header h1{font-size:28px;color:#0d0d0d;font-weight:700}.header-actions{display:flex;gap:14px;align-items:center;flex-wrap:wrap}.table-container{background:#fff;border-radius:16px;box-shadow:0 4px 20px #09363514;overflow-x:auto;border:1px solid rgba(206,212,211,.5);-webkit-overflow-scrolling:touch}.data-table{width:100%;min-width:900px;border-collapse:collapse}.data-table thead{background:linear-gradient(135deg,#1f6a75,#093635)!important}.data-table th{background:transparent!important;color:#fff!important;padding:16px 14px;text-align:left;font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.data-table td{padding:14px;border-bottom:1px solid #e5e7eb;color:#0d0d0d;font-size:13px;vertical-align:middle}.data-table tbody tr:hover{background:#1f6a750a}.filter-checkbox{background:#fff;padding:12px 16px;border-radius:12px;border:2px solid rgba(31,106,117,.15);transition:all .2s}.filter-checkbox:hover{border-color:#1f6a75}.checkbox-label{display:flex;align-items:center;gap:10px;cursor:pointer;font-size:14px;font-weight:600;color:#0d0d0d;text-transform:none!important}.checkbox-label input[type=checkbox]{appearance:none;-webkit-appearance:none;width:20px;height:20px;min-width:20px;border:2px solid #1F6A75;border-radius:6px;cursor:pointer;transition:all .2s;position:relative;background:#fff}.checkbox-label input[type=checkbox]:checked{background:linear-gradient(135deg,#1f6a75,#093635);border-color:#1f6a75}.checkbox-label input[type=checkbox]:checked:after{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-size:12px;font-weight:700}.checkbox-label span{color:#1f6a75;font-weight:600}.filter-checkbox small{display:block;margin-top:6px;color:#a2abaa!important;font-size:11px!important}.tickets-table{background:#fff;border-radius:16px;box-shadow:0 4px 20px #09363514;overflow:hidden;border:1px solid rgba(206,212,211,.5)}.tickets-table table{width:100%;border-collapse:collapse}.tickets-table th{background:linear-gradient(135deg,#1f6a75,#093635);color:#fff;padding:16px;text-align:left;font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.5px}.tickets-table td{padding:16px;border-bottom:1px solid var(--border-light, #e5e7eb);color:var(--text-dark, #0D0D0D);font-size:14px}.tickets-table tbody tr:hover{background:#1f6a750a}.ticket-id{font-weight:700;color:var(--primary, #1F6A75);font-family:monospace}.priority-badge{padding:5px 12px;border-radius:20px;font-size:11px;font-weight:600}.status-badge{padding:5px 12px;border-radius:20px;font-size:11px;font-weight:600}.status-badge.Open{background:#e0f2f4;color:#1f6a75}.status-badge.In-Progress,.status-badge[class*="In Progress"]{background:#fff4e6;color:#f49040}.status-badge.Resolved{background:#d1fae5;color:#10b981}.status-badge.Closed{background:var(--bg-light, #f0f4f3);color:var(--text-light, #6b7280)}.category-badge{padding:5px 12px;border-radius:20px;font-size:11px;font-weight:600;background:var(--bg-light, #f0f4f3);color:var(--text-dark, #0D0D0D)}.category-badge.Technical{background:#dbeafe;color:#1d4ed8}.category-badge.HR{background:#fce7f3;color:#be185d}.category-badge.Administrative{background:#f3e8ff;color:#7c3aed}.category-badge.Maintenance{background:#fff4e6;color:#e07a2a}.action-buttons{display:flex;gap:8px}.btn-view,.btn-edit-sm,.btn-delete-sm{padding:6px 14px!important;border:none;border-radius:6px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s}.btn-edit-sm{background:var(--primary, #1F6A75);color:#fff}.btn-edit-sm:hover{background:var(--primary-dark, #093635)}.btn-delete-sm{background:#ef4444;color:#fff}.btn-delete-sm:hover{background:#dc2626}.modal-content{background:#fff;border-radius:20px;width:90%;max-width:700px;max-height:90vh;overflow-y:auto;box-shadow:0 25px 60px #0936354d;animation:modalSlideIn .3s ease}.file-upload-section{margin-top:16px}.file-upload-label{display:flex;flex-direction:column;align-items:center;padding:24px;border:2px dashed var(--border-light, #CED4D3);border-radius:12px;cursor:pointer;transition:all .2s;background:var(--bg-light, #f8fafa)}.file-upload-label:hover{border-color:var(--primary, #1F6A75);background:#1f6a750d}.file-upload-label span{font-size:14px;color:var(--text-dark, #0D0D0D);font-weight:500}.file-upload-label small{font-size:12px;color:var(--text-light, #A2ABAA);margin-top:6px}.attached-files{margin-top:14px;display:flex;flex-wrap:wrap;gap:10px}.attached-file{display:flex;align-items:center;gap:10px;padding:10px 14px;background:var(--bg-light, #f0f4f3);border-radius:10px;font-size:13px}.attached-file .file-name{font-weight:500;color:var(--text-dark, #0D0D0D)}.attached-file .file-size{color:var(--text-light, #A2ABAA);font-size:11px}.attached-file .remove-file{background:#fee2e2;color:#dc2626;border:none;width:22px;height:22px;border-radius:50%;cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:center;transition:all .2s}.attached-file .remove-file:hover{background:#fecaca}.ticket-detail{padding:24px}.ticket-info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-bottom:24px}.info-item{background:var(--bg-light, #f0f4f3);padding:14px 18px;border-radius:10px}.info-item label{display:block;font-size:12px;color:var(--text-light, #A2ABAA);margin-bottom:6px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.info-item span{font-size:14px;color:var(--text-dark, #0D0D0D);font-weight:500}@media(max-width:1024px){.filters{flex-wrap:wrap}.filter-group{flex:1 1 0}.data-table{min-width:900px}.table-container{overflow-x:auto}}@media(max-width:768px){.tickets-page{padding:16px}}@media(max-width:600px){.tickets-page{padding:12px 12px 100px}.page-header{flex-direction:column;align-items:flex-start;gap:16px}.header-actions{width:100%}.header-actions .btn-primary{width:100%;justify-content:center}.filters{flex-direction:column;padding:16px;gap:12px}.filter-group{width:100%}.filter-group select,.filter-group input{width:100%;min-width:unset}.filter-checkbox{width:100%;box-sizing:border-box}.checkbox-label input[type=checkbox]{flex-shrink:0;width:0%!important;min-width:0!important;height:10px!important}.checkbox-label{flex-wrap:nowrap;white-space:nowrap;font-size:13px}.checkbox-label input[type=checkbox]{flex-shrink:0}.table-container{overflow-x:auto;margin:0 -12px;padding:0 12px}.data-table{min-width:800px}.form-row,.ticket-info-grid{grid-template-columns:1fr}.modal-content{width:95%;max-height:90vh}.stats-container{grid-template-columns:1fr 1fr;gap:12px}.stat-card{padding:16px}.stat-card .value{font-size:26px}}@media(max-width:400px){.stats-container{grid-template-columns:1fr;gap:10px}.stat-card{padding:14px}.stat-card .value{font-size:24px}}@media(max-width:480px){.tickets-page{padding:12px}.page-header h1{font-size:22px}.modal-header{padding:16px 18px}.modal-body{padding:18px}.modal-actions{flex-direction:column;padding:16px 18px}.modal-actions button{width:100%}}.tasks-page{padding:28px}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px;flex-wrap:wrap;gap:16px}.page-header h1{font-size:28px;color:var(--text-dark, #0D0D0D);font-weight:700}.btn-primary{background:linear-gradient(135deg,#1f6a75,#093635);color:#fff;border:none;padding:12px 24px;border-radius:10px;cursor:pointer;font-weight:600;font-size:14px;transition:all .3s;box-shadow:0 4px 15px #1f6a7540;display:flex;align-items:center;gap:8px}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #1f6a7559}.btn-primary:disabled{opacity:.6;cursor:not-allowed;transform:none}.stats-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:20px;margin-bottom:28px}.stat-card{background:#fff;padding:24px;border-radius:14px;box-shadow:0 4px 20px #09363514;border:1px solid rgba(206,212,211,.5);transition:all .3s}.stat-card:hover{transform:translateY(-4px);box-shadow:0 8px 25px #0936351f}.stat-card h3{font-size:12px;color:var(--text-light, #A2ABAA);margin-bottom:10px;text-transform:uppercase;letter-spacing:.5px;font-weight:600}.stat-card .value{font-size:34px;font-weight:700;color:var(--text-dark, #0D0D0D)}.stat-card.todo .value{color:var(--text-light, #6b7280)}.stat-card.in-progress .value{color:#f49040}.stat-card.completed .value{color:#10b981}.filters{background:#fff;padding:22px;border-radius:14px;margin-bottom:24px;display:flex;gap:18px;flex-wrap:wrap;align-items:flex-end;box-shadow:0 4px 20px #09363514;border:1px solid rgba(206,212,211,.5)}.filter-group label{font-size:12px;color:var(--text-light, #A2ABAA);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.filter-group select,.filter-group input{padding:10px 14px;border:2px solid var(--border-light, #CED4D3);border-radius:10px;font-size:14px;min-width:160px;transition:all .2s}.filter-group select:focus,.filter-group input:focus{outline:none;border-color:var(--primary, #1F6A75);box-shadow:0 0 0 3px #1f6a751f}.kanban-board{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:24px}.kanban-column{background:var(--bg-light, #f0f4f3);border-radius:16px;padding:20px;min-height:400px;border:1px solid rgba(206,212,211,.5)}.column-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px;padding-bottom:14px;border-bottom:2px solid white}.column-title{font-weight:700;font-size:15px;color:var(--text-dark, #0D0D0D);display:flex;align-items:center;gap:10px}.column-count{background:#fff;color:var(--primary, #1F6A75);padding:4px 12px;border-radius:20px;font-size:13px;font-weight:700}.kanban-column.todo .column-header{border-bottom-color:var(--text-light, #A2ABAA)}.kanban-column.in-progress .column-header{border-bottom-color:#f49040}.kanban-column.completed .column-header{border-bottom-color:#10b981}.task-card{background:#fff;border-radius:12px;padding:18px;margin-bottom:14px;box-shadow:0 2px 8px #0936350f;cursor:pointer;transition:all .25s;border:1px solid transparent}.task-card:hover{transform:translateY(-3px);box-shadow:0 8px 20px #0936351f;border-color:var(--primary, #1F6A75)}.task-card.dragging{opacity:.6;transform:rotate(3deg)}.task-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.task-id{font-size:11px;color:var(--primary, #1F6A75);font-weight:700;background:#1f6a751a;padding:3px 10px;border-radius:12px}.priority-badge{padding:4px 10px;border-radius:12px;font-size:11px;font-weight:600}.priority-badge.Low{background:#d1fae5;color:#059669}.priority-badge.Medium{background:#e0f2f4;color:#1f6a75}.priority-badge.High{background:#fff4e6;color:#e07a2a}.priority-badge.Critical{background:#fee2e2;color:#dc2626}.task-title{font-weight:600;color:var(--text-dark, #0D0D0D);margin-bottom:10px;font-size:14px;line-height:1.4}.task-description{font-size:13px;color:var(--text-light, #6b7280);margin-bottom:14px;line-height:1.5}.task-meta{display:flex;flex-wrap:wrap;gap:12px;font-size:12px;color:var(--text-light, #A2ABAA);padding-top:12px;border-top:1px solid var(--border-light, #e5e7eb)}.task-meta span{display:flex;align-items:center;gap:5px}.task-assignees{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.assignee-badge{background:linear-gradient(135deg,#e0f2f4,#c5e5e8);color:var(--primary, #1F6A75);padding:4px 10px;border-radius:15px;font-size:11px;font-weight:600}.task-actions{display:flex;gap:8px;margin-top:14px}.task-actions button{flex:1;padding:8px 12px;border:none;border-radius:8px;font-size:12px;font-weight:600;cursor:pointer;transition:all .2s}.btn-view{background:var(--bg-light, #f0f4f3);color:var(--text-dark, #0D0D0D)}.btn-view:hover{background:var(--border-light, #CED4D3)}.btn-status{background:linear-gradient(135deg,#1f6a75,#093635);color:#fff}.btn-status:hover{opacity:.9}.modal-overlay{position:fixed;inset:0;background:#093635b3;display:flex;justify-content:center;align-items:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background:#fff;border-radius:20px;width:90%;max-width:650px;max-height:90vh;overflow-y:auto;box-shadow:0 25px 60px #0936354d;animation:modalSlideIn .3s ease}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px 28px;border-bottom:1px solid var(--border-light, #e5e7eb);background:linear-gradient(135deg,#f0f4f3,#fff)}.modal-header h2{font-size:20px;color:var(--text-dark, #0D0D0D);font-weight:700}.close-btn{background:none;border:none;font-size:28px;color:var(--text-light, #A2ABAA);cursor:pointer;transition:all .2s}.close-btn:hover{color:var(--text-dark, #0D0D0D)}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:10px;font-weight:600;color:var(--text-dark, #0D0D0D);font-size:14px}.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px 16px;border:2px solid var(--border-light, #CED4D3);border-radius:12px;font-size:14px;transition:all .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--primary, #1F6A75);box-shadow:0 0 0 3px #1f6a751f}.form-group textarea{min-height:100px;resize:vertical}.form-row{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.modal-actions{display:flex;gap:14px;justify-content:flex-end;padding:20px 28px;border-top:1px solid var(--border-light, #e5e7eb);background:var(--bg-light, #f8fafa)}.btn-secondary{background:var(--bg-light, #CED4D3);color:var(--text-dark, #0D0D0D);border:none;padding:12px 24px;border-radius:10px;font-weight:600;font-size:14px;cursor:pointer;transition:all .2s}.btn-secondary:hover{background:var(--border-medium, #A2ABAA)}.checkbox-group{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:10px;padding:14px;border:2px solid var(--border-light, #CED4D3);border-radius:12px;background:var(--bg-light, #f8fafa);max-height:200px;overflow-y:auto}.checkbox-item{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--text-dark, #0D0D0D);cursor:pointer;padding:8px 10px;border-radius:8px;transition:background .2s}.checkbox-item:hover{background:#fff}.checkbox-item input[type=checkbox]{width:18px;height:18px;accent-color:var(--primary, #1F6A75)}.comments-section{margin-top:24px;padding-top:20px;border-top:1px solid var(--border-light, #e5e7eb)}.comments-section h4{font-size:16px;color:var(--text-dark, #0D0D0D);margin-bottom:16px;font-weight:600}.comments-list{max-height:250px;overflow-y:auto}.comment{background:var(--bg-light, #f0f4f3);padding:14px;border-radius:10px;margin-bottom:12px}.comment-header{display:flex;justify-content:space-between;margin-bottom:8px}.comment-author{font-weight:600;color:var(--primary, #1F6A75);font-size:13px}.comment-date{font-size:11px;color:var(--text-light, #A2ABAA)}.comment-text{font-size:14px;color:var(--text-dark, #0D0D0D);line-height:1.5}.comment-form{display:flex;gap:10px;margin-top:14px}.comment-form input{flex:1}.comment-form button{padding:10px 20px;background:var(--primary, #1F6A75);color:#fff;border:none;border-radius:10px;font-weight:600;font-size:13px;cursor:pointer;transition:all .2s}.comment-form button:hover{background:var(--primary-dark, #093635)}.loading,.no-data{text-align:center;padding:60px;color:var(--text-light, #A2ABAA);font-size:16px}.employee-select-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;max-height:250px;overflow-y:auto;padding:12px;border:2px solid #CED4D3;border-radius:12px;background:#f8fafa}.employee-select-item{display:flex;align-items:center;gap:10px;padding:10px 12px;background:#fff;border:2px solid #e5e7eb;border-radius:10px;cursor:pointer;transition:all .2s;position:relative}.employee-select-item:hover{border-color:#1f6a75;background:#f0f9fa}.employee-select-item.selected{border-color:#1f6a75;background:linear-gradient(135deg,#e0f2f4,#c5e5e8)}.employee-select-item input[type=checkbox]{display:none}.employee-select-item .emp-avatar{width:36px;height:36px;background:linear-gradient(135deg,#1f6a75,#093635);color:#fff;border-radius:8px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;flex-shrink:0}.employee-select-item .emp-details{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.employee-select-item .emp-name{font-size:13px;font-weight:600;color:#0d0d0d;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.employee-select-item .emp-meta{font-size:11px;color:#6b7280;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.employee-select-item .emp-check{width:22px;height:22px;border:2px solid #CED4D3;border-radius:6px;display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:all .2s}.employee-select-item .emp-check i{font-size:11px;color:transparent}.employee-select-item.selected .emp-check{background:linear-gradient(135deg,#1f6a75,#093635);border-color:#1f6a75}.employee-select-item.selected .emp-check i{color:#fff}.no-employees-msg{grid-column:1 / -1;text-align:center;color:#a2abaa;font-size:13px;padding:20px;display:flex;align-items:center;justify-content:center;gap:8px}.selected-count{margin-top:10px;font-size:12px;color:#1f6a75;font-weight:600;display:flex;align-items:center;gap:6px;padding:8px 12px;background:#e0f2f4;border-radius:8px;width:fit-content}@media(max-width:600px){.employee-select-grid{grid-template-columns:1fr}}.task-detail-modal{max-width:700px}.task-detail-modal .modal-header{padding:18px 24px;display:flex;justify-content:space-between;align-items:center}.task-detail-header-info{display:flex;align-items:center;gap:12px}.task-id-badge{background:linear-gradient(135deg,#1f6a75,#093635);color:#fff;padding:6px 14px;border-radius:8px;font-size:13px;font-weight:700;font-family:monospace}.priority-badge-lg{color:#fff;padding:6px 14px;border-radius:8px;font-size:12px;font-weight:600;text-transform:uppercase}.task-detail-body{padding:24px}.task-detail-top{margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid #e5e7eb}.task-detail-title{font-size:22px;font-weight:700;color:#0d0d0d;margin:0 0 8px}.task-detail-desc{font-size:14px;color:#6b7280;margin:0 0 16px;line-height:1.6}.btn-edit-task{background:#f0f4f3;border:2px solid #CED4D3;color:#0d0d0d;padding:8px 16px;border-radius:8px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s;display:inline-flex;align-items:center;gap:6px}.btn-edit-task:hover{border-color:#1f6a75;color:#1f6a75}.status-section{margin-bottom:24px}.status-section h4{font-size:14px;color:#0d0d0d;margin:0 0 14px;display:flex;align-items:center;gap:8px;font-weight:600}.status-section h4 i{color:#1f6a75}.status-buttons{display:flex;gap:10px}.status-btn{flex:1;display:flex;flex-direction:column;align-items:center;gap:6px;padding:14px 12px;background:#f0f4f3;border:2px solid #e5e7eb;border-radius:10px;cursor:pointer;transition:all .2s;font-size:12px;font-weight:600;color:#6b7280}.status-btn i{font-size:18px}.status-btn:hover:not(:disabled){border-color:#1f6a75;color:#1f6a75}.status-btn:disabled{cursor:not-allowed;opacity:.5}.status-btn.active{background:linear-gradient(135deg,#e0f2f4,#c5e5e8);border-color:#1f6a75;color:#1f6a75}.status-btn.in-progress.active{background:linear-gradient(135deg,#fff4e6,#ffe0c2);border-color:#f49040;color:#e07a2a}.status-btn.completed.active{background:linear-gradient(135deg,#d1fae5,#a7f3d0);border-color:#10b981;color:#059669}.task-meta-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-bottom:24px}.meta-card{display:flex;align-items:center;gap:12px;padding:14px;background:#f8fafa;border-radius:10px;border:1px solid #e5e7eb}.meta-icon{width:38px;height:38px;background:linear-gradient(135deg,#1f6a75,#093635);color:#fff;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:14px;flex-shrink:0}.meta-content{display:flex;flex-direction:column;gap:2px;min-width:0}.meta-content .meta-label{font-size:11px;color:#a2abaa;font-weight:600;text-transform:uppercase}.meta-content .meta-value{font-size:13px;color:#0d0d0d;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.task-detail-modal .comments-section{border-top:1px solid #e5e7eb;padding-top:20px;margin-top:0}.task-detail-modal .comments-section h4{font-size:14px;color:#0d0d0d;margin:0 0 16px;display:flex;align-items:center;gap:8px;font-weight:600}.task-detail-modal .comments-section h4 i{color:#1f6a75}.task-detail-modal .comments-list{max-height:200px;overflow-y:auto;margin-bottom:16px}.task-detail-modal .comment-item{display:flex;gap:12px;margin-bottom:14px}.comment-avatar{width:36px;height:36px;background:linear-gradient(135deg,#f49040,#e07a2a);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px;flex-shrink:0}.comment-body{flex:1;background:#f0f4f3;padding:12px 14px;border-radius:10px}.task-detail-modal .comment-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.task-detail-modal .comment-author{font-weight:600;font-size:13px;color:#0d0d0d}.comment-emp-id{font-weight:500;color:#a2abaa;font-size:11px;margin-left:4px}.task-detail-modal .comment-date{font-size:11px;color:#a2abaa}.task-detail-modal .comment-text{font-size:13px;color:#4b5563;margin:0;line-height:1.5}.no-comments{text-align:center;color:#a2abaa;font-size:13px;padding:20px}.task-detail-modal .add-comment{display:flex;gap:10px}.task-detail-modal .add-comment input{flex:1;padding:12px 16px;border:2px solid #CED4D3;border-radius:10px;font-size:13px}.task-detail-modal .add-comment input:focus{outline:none;border-color:#1f6a75}.task-detail-modal .add-comment button{width:44px;height:44px;background:linear-gradient(135deg,#1f6a75,#093635);color:#fff;border:none;border-radius:10px;cursor:pointer;font-size:14px;transition:all .2s}.task-detail-modal .add-comment button:hover{transform:scale(1.05)}@media(max-width:600px){.task-meta-grid{grid-template-columns:1fr}.status-buttons{flex-direction:column}.task-detail-body{padding:18px}}@media(max-width:1024px){.kanban-board{grid-template-columns:1fr}.kanban-column{min-height:auto}}@media(max-width:768px){.tasks-page{padding:16px}}@media(max-width:600px){.tasks-page{padding:12px 12px 80px}.page-header{flex-direction:column;align-items:stretch;gap:12px}.header-actions{width:100%}.header-actions .btn-primary{width:100%;justify-content:center}.filters{flex-direction:column;gap:10px}.filter-group,.filter-group select,.filter-group input{width:100%}.form-row{grid-template-columns:1fr}.table-container{overflow-x:auto;margin:0 -12px;padding:0 12px}.data-table{min-width:700px}}.audit-logs-page{padding:28px}.page-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:28px;flex-wrap:wrap;gap:16px}.page-header h1{font-size:28px;color:#0d0d0d;font-weight:700;margin:0;display:flex;align-items:center;gap:12px}.page-subtitle{color:#6b7280;font-size:14px;margin:6px 0 0}.btn-export{background:linear-gradient(135deg,#1f6a75,#093635);color:#fff;border:none;padding:14px 28px;border-radius:12px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s;display:flex;align-items:center;gap:10px;box-shadow:0 4px 15px #1f6a7540}.btn-export:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #1f6a7559}.btn-export:disabled{opacity:.6;cursor:not-allowed;transform:none}.filters-section{background:#fff;border-radius:16px;padding:24px;margin-bottom:24px;box-shadow:0 4px 20px #09363514;border:1px solid rgba(31,106,117,.1);display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:20px;align-items:flex-end}.filter-group{display:flex;flex-direction:column;gap:8px}.filter-group label{font-size:12px;color:#1f6a75;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.filter-group select,.filter-group input{padding:12px 16px;border:2px solid rgba(31,106,117,.15);border-radius:10px;font-size:14px;background:#fff;color:#0d0d0d;transition:all .2s}.filter-group select:focus,.filter-group input:focus{outline:none;border-color:#1f6a75;box-shadow:0 0 0 3px #1f6a751f}.btn-clear{padding:12px 20px;background:linear-gradient(135deg,#1f6a751a,#1f6a750d);color:#1f6a75;border:2px solid rgba(31,106,117,.2);border-radius:10px;font-size:13px;font-weight:600;cursor:pointer;transition:all .2s}.btn-clear:hover{background:linear-gradient(135deg,#1f6a75,#093635);color:#fff;border-color:transparent}.logs-table-container{background:#fff;border-radius:16px;box-shadow:0 4px 20px #09363514;border:1px solid rgba(31,106,117,.1);overflow-x:auto;-webkit-overflow-scrolling:touch}.logs-table{width:100%;min-width:1000px;border-collapse:collapse}.logs-table thead{background:linear-gradient(135deg,#1f6a75,#093635)}.logs-table th{padding:16px 14px;text-align:left;font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.5px;color:#fff;white-space:nowrap}.logs-table td{padding:16px 14px;font-size:13px;color:#0d0d0d;border-bottom:1px solid rgba(31,106,117,.08);vertical-align:middle}.logs-table tbody tr{transition:all .2s}.logs-table tbody tr:nth-child(odd){background:#1f6a7505}.logs-table tbody tr:hover{background:#1f6a750f}.loading-cell,.empty-cell{text-align:center;padding:50px!important;color:#6b7280;font-size:15px}.action-badge{display:inline-block;padding:6px 14px;border-radius:20px;font-size:11px;font-weight:700;color:#fff;text-transform:uppercase;letter-spacing:.5px}.action-badge.CREATE{background:linear-gradient(135deg,#10b981,#059669)}.action-badge.UPDATE{background:linear-gradient(135deg,#1f6a75,#093635)}.action-badge.DELETE{background:linear-gradient(135deg,#ef4444,#dc2626)}.action-badge.LOGIN{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.action-badge.LOGOUT{background:linear-gradient(135deg,#6b7280,#4b5563)}.action-badge.PASSWORD_CHANGE{background:linear-gradient(135deg,#f49040,#e07a2a)}.action-badge.STATUS_CHANGE{background:linear-gradient(135deg,#06b6d4,#0891b2)}.action-badge.EXPORT{background:linear-gradient(135deg,#ec4899,#db2777)}.status-badge{display:inline-flex;align-items:center;gap:6px;padding:6px 14px;border-radius:20px;font-size:12px;font-weight:600}.status-badge.success{background:linear-gradient(135deg,#d1fae5,#a7f3d0);color:#059669}.status-badge.failed{background:linear-gradient(135deg,#fee2e2,#fecaca);color:#dc2626}.role-badge{display:inline-block;padding:5px 12px;border-radius:20px;font-size:11px;font-weight:600;background:linear-gradient(135deg,#e0f2f4,#c5e5e8);color:#1f6a75}.role-badge.superAdmin{background:linear-gradient(135deg,#fff4e6,#ffe0c2);color:#e07a2a}.user-cell{display:flex;flex-direction:column;gap:2px}.user-name{font-weight:600;color:#e68030}.user-id{font-size:11px;color:#6b7280;font-family:monospace}.timestamp-cell{font-family:Courier New,monospace;font-size:12px;color:#1f6a75;background:#1f6a750f;padding:6px 10px;border-radius:6px;display:inline-block}.description-cell{max-width:250px;color:#4b5563;line-height:1.4}.ip-address{font-family:Courier New,monospace;font-size:12px;color:#6b7280;background:#1f6a750f;padding:4px 10px;border-radius:6px}.pagination-container{display:flex;justify-content:space-between;align-items:center;padding:20px;border-top:1px solid rgba(31,106,117,.1);flex-wrap:wrap;gap:16px}.pagination-info{font-size:13px;color:#6b7280}.pagination-buttons{display:flex;align-items:center;gap:8px}.pagination-btn{padding:8px 16px;border:2px solid rgba(31,106,117,.2);background:#fff;color:#1f6a75;border-radius:8px;cursor:pointer;font-weight:600;font-size:13px;transition:all .2s}.pagination-btn:hover:not(:disabled){background:linear-gradient(135deg,#1f6a75,#093635);color:#fff;border-color:transparent}.pagination-btn:disabled{opacity:.4;cursor:not-allowed}.pagination-current{padding:8px 16px;background:linear-gradient(135deg,#1f6a75,#093635);color:#fff;border-radius:8px;font-size:13px;font-weight:600}@media(max-width:1024px){.filters-section{grid-template-columns:repeat(2,1fr)}.table-container{overflow-x:auto}}@media(max-width:768px){.audit-logs-page{padding:16px}}@media(max-width:600px){.audit-logs-page{padding:12px 12px 80px}.page-header{flex-direction:column;align-items:flex-start;gap:16px}.btn-export{width:100%;justify-content:center}.filters-section{grid-template-columns:1fr}.table-container{overflow-x:auto;margin:0 -16px;padding:0 16px}.logs-table{min-width:800px}.pagination-container{flex-direction:column;text-align:center;gap:12px}}@media(max-width:480px){.audit-logs-page{padding:12px}.page-header h1{font-size:22px}.filter-card{padding:16px}.pagination-controls button{padding:8px 12px;font-size:12px}}.profile-page{padding:28px;max-width:1200px;margin:0 auto}.profile-header{display:flex;align-items:center;gap:28px;padding:40px;background:linear-gradient(135deg,#1f6a75,#093635);border-radius:20px;margin-bottom:28px;color:#fff;position:relative;overflow:hidden;box-shadow:0 10px 40px #0936354d}.profile-header:before{content:"";position:absolute;top:-50%;right:-15%;width:350px;height:350px;background:#f4904026;border-radius:50%}.profile-header:after{content:"";position:absolute;bottom:-40%;left:10%;width:200px;height:200px;background:#ffffff0d;border-radius:50%}.profile-avatar{width:100px;height:100px;border-radius:20px;background:linear-gradient(135deg,#f49040,#e07a2a);display:flex;align-items:center;justify-content:center;border:4px solid rgba(255,255,255,.25);flex-shrink:0;box-shadow:0 8px 25px #f4904066;position:relative;z-index:1}.avatar-text{font-size:42px;font-weight:700;color:#fff}.profile-info{flex:1;position:relative;z-index:1}.profile-info h1{font-size:28px;margin:0 0 8px;font-weight:700}.profile-role{font-size:15px;opacity:.9;margin:0 0 6px;text-transform:capitalize;color:#ced4d3}.profile-id{font-size:13px;opacity:.75;margin:0;font-family:monospace;background:#ffffff26;padding:4px 12px;border-radius:6px;display:inline-block}.btn-change-password{padding:14px 28px;background:linear-gradient(135deg,#f49040,#e07a2a);color:#fff;border:none;border-radius:12px;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s;display:flex;align-items:center;gap:10px;position:relative;z-index:1;box-shadow:0 4px 15px #f4904059}.btn-change-password:hover{transform:translateY(-3px);box-shadow:0 8px 25px #f4904073}.profile-tabs{display:flex;gap:8px;margin-bottom:28px;background:#fff;padding:8px;border-radius:14px;box-shadow:0 4px 15px #09363514}.tab-btn{flex:1;padding:16px 24px;border:none;background:transparent;border-radius:10px;font-size:14px;font-weight:600;color:#a2abaa;cursor:pointer;transition:all .25s;display:flex;align-items:center;justify-content:center;gap:10px}.tab-btn:hover{background:#f0f4f3;color:#0d0d0d}.tab-btn.active{background:linear-gradient(135deg,#1f6a75,#093635);color:#fff;box-shadow:0 4px 15px #1f6a754d}.tab-content{animation:fadeIn .3s ease}@keyframes fadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.info-section{animation:fadeIn .3s ease}.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.info-card{background:#fff;border-radius:20px;padding:28px;box-shadow:0 4px 25px #09363514;border:1px solid rgba(31,106,117,.1);transition:all .3s;overflow:hidden}.info-card:hover{box-shadow:0 8px 35px #1f6a751f;border-color:#1f6a7533}.info-card.full-width{grid-column:1 / -1}.info-card h3{font-size:18px;color:#0d0d0d;margin:0 0 24px;padding-bottom:16px;border-bottom:2px solid #f0f4f3;font-weight:700;display:flex;align-items:center;gap:10px}.info-card h3:before{content:"";width:4px;height:20px;background:linear-gradient(180deg,#1f6a75,#f49040);border-radius:2px}.info-item{display:flex;justify-content:space-between;align-items:center;padding:18px 20px;margin:0 -20px;border-radius:10px;transition:all .2s;border-bottom:none}.info-item:nth-child(odd){background:#1f6a750a}.info-item:hover{background:linear-gradient(135deg,#1f6a7514,#f490400f)}.info-label{font-size:14px;color:#1f6a75;font-weight:600}.info-value{font-size:15px;color:#0d0d0d;font-weight:600;text-align:right;max-width:60%;word-break:break-word}.info-value.role-badge{padding:6px 16px;background:linear-gradient(135deg,#1f6a75,#093635);color:#fff!important;border-radius:20px;font-size:12px;text-transform:capitalize;font-weight:600;box-shadow:0 2px 8px #1f6a754d}.departments-badges{display:flex;flex-wrap:wrap;gap:12px}.dept-badge{padding:12px 20px;background:linear-gradient(135deg,#e0f2f4,#c5e5e8);color:#1f6a75;border-radius:12px;font-size:14px;font-weight:600;display:flex;align-items:center;gap:8px;transition:all .2s}.dept-badge:hover{transform:translateY(-2px);box-shadow:0 4px 12px #1f6a7526}.schedule-section{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.schedule-card{background:#fff;border-radius:20px;padding:32px;box-shadow:0 4px 25px #09363514;border:1px solid rgba(206,212,211,.4)}.schedule-card h3{font-size:18px;color:#0d0d0d;margin:0 0 26px;font-weight:700}.schedule-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.schedule-item{display:flex;align-items:center;gap:18px;padding:20px;background:linear-gradient(135deg,#1f6a750f,#1f6a7508);border-radius:14px;transition:all .2s;border:2px solid rgba(31,106,117,.1)}.schedule-item:hover{background:linear-gradient(135deg,#1f6a751f,#f4904014);border-color:#1f6a75;transform:translateY(-2px)}.schedule-icon{font-size:32px}.schedule-details{display:flex;flex-direction:column;gap:4px}.schedule-label{font-size:11px;color:#a2abaa;text-transform:uppercase;letter-spacing:.5px;font-weight:600}.schedule-value{font-size:22px;font-weight:700;color:#0d0d0d}.weekly-offs{margin-top:26px;padding-top:22px;border-top:1px solid #e5e7eb}.weekly-offs h4{font-size:13px;color:#a2abaa;margin:0 0 14px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.off-days{display:flex;gap:12px;flex-wrap:wrap}.off-day-badge{padding:10px 18px;background:linear-gradient(135deg,#fff4e6,#ffe0c2);color:#e07a2a;border-radius:25px;font-size:13px;font-weight:600}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-bottom:24px}.stat-item{display:flex;flex-direction:column;align-items:center;padding:22px 18px;border-radius:14px;text-align:center;transition:all .2s}.stat-item:hover{transform:translateY(-2px)}.stat-item.present{background:linear-gradient(135deg,#d1fae5,#a7f3d0)}.stat-item.absent{background:linear-gradient(135deg,#fee2e2,#fecaca)}.stat-item.late{background:linear-gradient(135deg,#fff4e6,#ffe0c2)}.stat-item.leave{background:linear-gradient(135deg,#f0f4f3,#ced4d3)}.stat-value{font-size:32px;font-weight:700;color:#0d0d0d}.stat-label{font-size:11px;color:#6b7280;margin-top:6px;text-transform:uppercase;letter-spacing:.5px;font-weight:600}.attendance-card{background:#fff;border-radius:20px;padding:32px;box-shadow:0 4px 25px #09363514;border:1px solid rgba(206,212,211,.4)}.attendance-card h3{font-size:18px;color:#0d0d0d;margin:0 0 22px;font-weight:700}.attendance-table-container{overflow-x:auto;border-radius:12px;border:1px solid #e5e7eb}.attendance-table{width:100%;border-collapse:collapse;min-width:600px}.attendance-table th{padding:14px 16px;text-align:left;background:linear-gradient(135deg,#1f6a75,#093635);color:#fff;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.attendance-table th:first-child{border-radius:12px 0 0}.attendance-table th:last-child{border-radius:0 12px 0 0}.attendance-table td{padding:16px;border-bottom:1px solid #f0f4f3;font-size:14px;color:#0d0d0d}.attendance-table tbody tr:hover{background:#1f6a750a}.attendance-table tbody tr:last-child td{border-bottom:none}.attendance-table .time{font-family:Courier New,monospace;font-size:13px;color:#1f6a75;font-weight:600;background:#e0f2f4;padding:4px 10px;border-radius:6px}.status-badge{display:inline-block;padding:6px 14px;border-radius:20px;font-size:12px;font-weight:600;color:#fff}.status-badge.present{background:linear-gradient(135deg,#10b981,#059669)}.status-badge.absent{background:linear-gradient(135deg,#ef4444,#dc2626)}.status-badge.late{background:linear-gradient(135deg,#f49040,#e07a2a)}.status-badge.half-day{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.status-badge.leave{background:linear-gradient(135deg,#6b7280,#4b5563)}.no-data{text-align:center;padding:50px;color:#a2abaa;font-size:14px}.loading-spinner{text-align:center;padding:70px;color:#1f6a75;font-size:16px}@media(max-width:1024px){.info-grid,.schedule-section{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.profile-page{padding:16px}}@media(max-width:600px){.profile-page{padding:12px 12px 80px}.profile-header{flex-direction:column;text-align:center;padding:28px}.profile-info{text-align:center}.btn-change-password{margin-top:18px}.profile-tabs{flex-direction:column}.schedule-grid{grid-template-columns:1fr}.stats-grid{grid-template-columns:repeat(2,1fr)}.attendance-table{font-size:12px}.attendance-table th,.attendance-table td{padding:10px}.info-card{padding:24px}}:root{--primary: #1F6A75;--primary-dark: #093635;--primary-light: #2a8a97;--primary-hover: #185960;--accent: #F49040;--accent-light: #f7a55f;--accent-dark: #e07a2a;--accent-hover: #d97a2a;--text-dark: #0D0D0D;--text-medium: #A2ABAA;--text-light: #6b7280;--bg-light: #CED4D3;--bg-page: #f0f4f3;--bg-white: #ffffff;--bg-card: #ffffff;--bg-sidebar: #093635;--bg-sidebar-hover: #1F6A75;--border-light: #d1d9d8;--border-medium: #A2ABAA;--success: #10b981;--success-light: #d1fae5;--warning: #F49040;--warning-light: #fef3c7;--error: #ef4444;--error-light: #fee2e2;--info: #1F6A75;--info-light: #e0f2f4;--shadow-sm: 0 1px 2px rgba(13, 13, 13, .05);--shadow-md: 0 4px 6px rgba(13, 13, 13, .07);--shadow-lg: 0 10px 25px rgba(13, 13, 13, .1);--shadow-xl: 0 20px 40px rgba(13, 13, 13, .15);--gradient-primary: linear-gradient(135deg, #1F6A75 0%, #093635 100%);--gradient-accent: linear-gradient(135deg, #F49040 0%, #e07a2a 100%);--gradient-sidebar: linear-gradient(180deg, #093635 0%, #1F6A75 100%);--radius-sm: 6px;--radius-md: 10px;--radius-lg: 16px;--radius-xl: 24px;--radius-full: 9999px;--transition-fast: .15s ease;--transition-normal: .25s ease;--transition-slow: .4s ease;--font-family: "Poppins", "Segoe UI", system-ui, -apple-system, sans-serif}body{font-family:var(--font-family);background-color:var(--bg-page);color:var(--text-dark);line-height:1.6}::-webkit-scrollbar-track{background:var(--bg-light);border-radius:4px}::-webkit-scrollbar-thumb{background:var(--primary);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--primary-dark)}::selection{background:var(--primary);color:#fff}a{color:var(--primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--accent)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;border:none;border-radius:var(--radius-md);font-weight:600;font-size:14px;cursor:pointer;transition:all var(--transition-normal)}.btn-primary{background:var(--gradient-primary);color:#fff;box-shadow:0 4px 15px #1f6a754d}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #1f6a7566}.btn-accent{background:var(--gradient-accent);color:#fff;box-shadow:0 4px 15px #f490404d}.btn-accent:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #f4904066}.btn-secondary{background:var(--bg-light);color:var(--text-dark)}.btn-secondary:hover:not(:disabled){background:var(--border-medium)}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none!important}input,select,textarea{font-family:var(--font-family);font-size:14px;padding:10px 14px;border:1px solid var(--border-light);border-radius:var(--radius-md);background:var(--bg-white);color:var(--text-dark);transition:all var(--transition-fast)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #1f6a7526}input::placeholder,textarea::placeholder{color:var(--text-light)}.card{background:var(--bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:24px}table{width:100%;border-collapse:collapse}th{background:var(--bg-light);color:var(--text-dark);font-weight:600;text-align:left;padding:14px 16px;font-size:12px;text-transform:uppercase;letter-spacing:.5px}td{padding:14px 16px;border-bottom:1px solid var(--border-light);color:var(--text-dark)}tbody tr:hover{background:#1f6a7508}.badge{display:inline-flex;align-items:center;padding:4px 12px;border-radius:var(--radius-full);font-size:12px;font-weight:600}.badge-primary{background:var(--info-light);color:var(--primary)}.badge-accent{background:var(--warning-light);color:var(--accent-dark)}.badge-success{background:var(--success-light);color:#059669}.badge-error{background:var(--error-light);color:#dc2626}.dashboard-layout{display:flex;min-height:100vh}.main-content{flex:1;padding:24px;margin-left:260px;background:var(--bg-page);min-height:100vh;transition:margin-left var(--transition-normal)}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;flex-wrap:wrap;gap:16px}.page-header h1{font-size:28px;font-weight:700;color:var(--text-dark)}.page-header p{color:var(--text-light);font-size:14px;margin-top:4px}.modal-overlay{position:fixed;inset:0;background:#0d0d0d99;display:flex;justify-content:center;align-items:center;z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background:var(--bg-white);border-radius:var(--radius-xl);width:90%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-xl);animation:modalSlideIn .3s ease}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(-20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 28px;border-bottom:none;background:linear-gradient(135deg,var(--primary) 0%,var(--primary-dark) 100%);border-radius:20px 20px 0 0;color:#fff}.modal-header h2{font-size:18px;color:#fff;font-weight:600;display:flex;align-items:center;gap:10px}.modal-header h2 i{font-size:20px;opacity:.9}.close-btn{background:#ffffff26;border:none;font-size:16px;color:#fff;cursor:pointer;transition:all .2s;width:36px;height:36px;border-radius:10px;display:flex;align-items:center;justify-content:center}.close-btn:hover{background:#ffffff40;transform:rotate(90deg)}.modal-body{padding:28px}.modal-footer,.modal-actions{display:flex;justify-content:flex-end;gap:14px;padding:20px 28px;border-top:1px solid rgba(31,106,117,.1);background:linear-gradient(135deg,#f8fafa,#f0f4f3);border-radius:0 0 20px 20px}.form-section-title{font-size:14px;font-weight:600;color:var(--primary);margin:20px 0 16px;padding-bottom:8px;border-bottom:2px solid rgba(31,106,117,.15);display:flex;align-items:center;gap:8px}.form-section-title:first-child{margin-top:0}.form-group label{display:flex;align-items:center;gap:6px;margin-bottom:10px;font-weight:600;color:var(--text-dark);font-size:14px}.form-group label i{color:var(--primary);font-size:14px}.form-group label .required{color:#ef4444;font-weight:700}.helper-text{display:block;margin-top:6px;font-size:12px;color:var(--text-muted)}.helper-text i{margin-right:4px}.helper-text.info{color:var(--primary)}.helper-text.warning{color:var(--secondary)}.loading{display:flex;justify-content:center;align-items:center;padding:40px;color:var(--primary)}.alert{padding:14px 18px;border-radius:var(--radius-md);margin-bottom:16px;font-size:14px}.alert-success{background:var(--success-light);color:#059669;border-left:4px solid var(--success)}.alert-error{background:var(--error-light);color:#dc2626;border-left:4px solid var(--error)}.alert-warning{background:var(--warning-light);color:var(--accent-dark);border-left:4px solid var(--accent)}.alert-info{background:var(--info-light);color:var(--primary);border-left:4px solid var(--primary)}@media(max-width:768px){.main-content{margin-left:70px;padding:16px}.page-header{flex-direction:column;align-items:flex-start}}@media(max-width:600px){.main-content{margin-left:0;padding:12px 12px 80px;min-height:calc(100vh - 70px)}.dashboard-layout{flex-direction:column}.page-header h1{font-size:20px}}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Poppins,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;background-color:#f0f4f3;color:#0d0d0d;line-height:1.6}#root{overflow-x:hidden;min-height:100vh}.dashboard-layout{display:flex;min-height:100vh;overflow-x:hidden;background:#f0f4f3}.main-content{flex:1;overflow-x:hidden;width:100%;margin-left:260px;padding:0;min-height:100vh;transition:margin-left .3s ease}.sidebar.collapsed~.main-content,.main-content.collapsed{margin-left:80px}:focus-visible{outline:3px solid #1F6A75;outline-offset:2px}a{color:#1f6a75;text-decoration:none;transition:color .2s ease}a:hover{color:#f49040}::selection{background-color:#1f6a75;color:#fff}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#ced4d3;border-radius:4px}::-webkit-scrollbar-thumb{background:#1f6a75;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#093635}code{font-family:Fira Code,source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace;background:#f0f4f3;padding:2px 6px;border-radius:4px;font-size:.9em}@media(max-width:1024px){.main-content{margin-left:80px}}@media(max-width:768px){.main-content{margin-left:70px}}@media(max-width:600px){.main-content{margin-left:0;padding-bottom:80px}}
