:root{--primary-color:#e11d48;--primary-hover:#be123c;--secondary-color:#9f1239;--bg-color:#0f172a;--sidebar-bg:#020617;--sidebar-text:#f8fafc;--sidebar-hover:#1e293b;--card-bg:#1e293b;--text-main:#f8fafc;--text-muted:#94a3b8;--border-color:#334155;--danger-color:#ef4444;--warning-color:#f59e0b;--sidebar-width:260px;--header-height:70px;--border-radius:12px;--shadow-sm:0 1px 2px 0 #0000004d;--shadow-md:0 4px 6px -1px #00000080, 0 2px 4px -2px #00000080;--shadow-lg:0 10px 15px -3px #00000080, 0 4px 6px -4px #00000080}*{box-sizing:border-box;margin:0;padding:0}body{background-color:var(--bg-color);color:var(--text-main);-webkit-font-smoothing:antialiased;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Open Sans,Helvetica Neue,sans-serif;line-height:1.5}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}.app-layout{background-color:var(--bg-color);width:100%;height:100vh;display:flex;overflow:hidden}.main-content{height:100vh;margin-left:var(--sidebar-width);flex-direction:column;flex:1;width:100%;min-width:0;transition:margin-left .3s cubic-bezier(.4,0,.2,1);display:flex}@media (width<=768px){.main-content{margin-left:0!important}}.page-content{flex:1;width:100%;min-width:0;padding:2rem;overflow:hidden auto}@media (width<=640px){.page-content{padding:1rem}}.table-wrapper{-webkit-overflow-scrolling:touch;border:1px solid var(--border-color);border-radius:8px;width:100%;margin-top:1rem;overflow-x:auto}.modal-overlay{z-index:2000;background:#000000b3;justify-content:center;align-items:center;padding:1rem;display:flex;position:fixed;inset:0}.modal-content{background:var(--card-bg);border-radius:var(--border-radius);width:100%;max-width:600px;max-height:90vh;box-shadow:var(--shadow-lg);border:1px solid var(--border-color);position:relative;overflow-y:auto}@media (width<=640px){.modal-content{max-height:95vh;padding:1rem}}.btn-primary,.btn-secondary,.btn-danger,.btn-success{border-radius:8px;justify-content:center;align-items:center;gap:.5rem;padding:.6rem 1.25rem;font-size:.9rem;font-weight:600;transition:all .2s;display:inline-flex}.btn-primary{background-color:var(--primary-color);color:#fff}.btn-primary:hover:not(:disabled){background-color:var(--primary-hover);transform:translateY(-1px)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.mobile-overlay{z-index:999;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#00000080;position:fixed;inset:0}@keyframes spin{to{transform:rotate(360deg)}}.page-title{color:var(--text-main);margin-bottom:.5rem;font-size:clamp(1.5rem,5vw,1.875rem);font-weight:700}.page-subtitle{color:var(--text-muted);margin-bottom:2rem;font-size:clamp(.875rem,3vw,1rem)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:.4s ease-out forwards fadeIn}@media (width<=768px){.main-content{margin-left:0!important}.page-content{padding:1rem}.page-title{font-size:1.5rem}.page-subtitle{margin-bottom:1.5rem}.card{padding:1rem}}.mobile-overlay{z-index:95;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background-color:#00000080;position:fixed;inset:0}.table-wrapper{-webkit-overflow-scrolling:touch;width:100%;overflow-x:auto}.data-table{border-collapse:collapse;table-layout:auto;width:100%;min-width:800px}.data-table th,.data-table td{text-align:left;vertical-align:middle;border-bottom:1px solid var(--border-color);padding:1rem 1.25rem;line-height:1.5}.data-table th{background-color:var(--bg-color);color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap;font-size:.8rem;font-weight:600}.data-table tbody tr{min-height:64px;transition:background-color .2s}.data-table tbody tr:hover{background-color:#ffffff05}.action-cell{height:100%;min-height:inherit;justify-content:center;align-items:center;gap:.5rem;display:flex;margin:0!important;padding:0!important}.action-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:none;border-radius:6px;justify-content:center;align-items:center;padding:.5rem;transition:all .2s;display:flex;margin:0!important}.sidebar{width:var(--sidebar-width);background-color:var(--sidebar-bg);color:var(--sidebar-text);z-index:1000;height:100vh;box-shadow:var(--shadow-md);flex-direction:column;transition:all .3s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;top:0;left:0}.sidebar.closed{width:80px}@media (width<=768px){.sidebar{width:280px;transform:translate(-100%)}.sidebar.open{transform:translate(0)}.sidebar.closed{width:280px;transform:translate(-100%)}}.sidebar-header{height:var(--header-height);background:#ffffff05;border-bottom:1px solid #ffffff0d;align-items:center;padding:0 1.25rem;display:flex}.logo-container{cursor:pointer;align-items:center;gap:.85rem;transition:transform .2s;display:flex}.logo-container:hover{transform:scale(1.02)}.logo-icon-wrapper{background:linear-gradient(135deg,#f43f5e,#e11d48);border-radius:10px;justify-content:center;align-items:center;width:38px;height:38px;padding:6px;display:flex;overflow:hidden;box-shadow:0 4px 12px #e11d484d}.sidebar-logo-img{object-fit:contain;filter:brightness(0)invert();width:100%;height:100%}.logo-text-wrapper{align-items:baseline;gap:4px;display:flex}.logo-brand{color:#fff;letter-spacing:-.5px;font-size:1.2rem;font-weight:800}.logo-suffix{color:#94a3b8;letter-spacing:.5px;font-size:1.1rem;font-weight:400}.logo-text{display:none}.sidebar-nav{flex:1;padding:1.5rem .75rem;overflow-y:auto}.sidebar-nav ul{flex-direction:column;gap:.5rem;list-style:none;display:flex}.nav-link{color:var(--sidebar-text);white-space:nowrap;border-radius:8px;align-items:center;gap:1rem;padding:.75rem 1rem;transition:all .2s;display:flex;overflow:hidden}.nav-link:hover{background-color:var(--sidebar-hover);color:#fff;transform:translate(4px)}.nav-link.active{background-color:var(--primary-color);color:#fff;box-shadow:0 4px 12px #4f46e566}.nav-icon{justify-content:center;align-items:center;min-width:24px;display:flex}.nav-text{font-size:.95rem;font-weight:500}.sidebar.closed .nav-link{justify-content:center;padding:.75rem 0}.sidebar.closed .nav-link:hover{transform:translateY(-2px)}.sidebar-footer{border-top:1px solid #ffffff1a;min-height:80px;padding:1rem}.user-info{cursor:pointer;background:#ffffff0d;border-radius:8px;align-items:center;gap:.75rem;padding:.5rem;transition:background .2s;display:flex}.user-info:hover{background:#ffffff1a}.avatar{background:var(--primary-color);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:.9rem;font-weight:600;display:flex}.user-details{flex-direction:column;display:flex}.user-name{color:#fff;font-size:.9rem;font-weight:600}.user-role{color:#94a3b8;font-size:.75rem}@media (width<=768px){.sidebar,.sidebar.closed{transform:translate(-100%);width:260px!important}.sidebar.open{transform:translate(0)}.sidebar.closed .nav-text,.sidebar.closed .logo-text,.sidebar.closed .user-info{display:none}}.top-header{height:var(--header-height);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border-color);z-index:90;background-color:#ffffffe6;justify-content:space-between;align-items:center;padding:0 2rem;display:flex;position:sticky;top:0}.header-left,.header-right{align-items:center;gap:1.5rem;display:flex}.menu-btn{color:var(--text-muted);border-radius:8px;justify-content:center;align-items:center;padding:.5rem;transition:all .2s;display:flex}.desktop-only{display:flex}.mobile-only{display:none}@media (width<=768px){.desktop-only{display:none}.mobile-only{display:flex}.top-header{padding:0 1rem}}.menu-btn:hover{background-color:var(--bg-color);color:var(--primary-color)}.search-bar{width:350px;position:relative}.search-bar input{border:1px solid var(--border-color);background-color:var(--bg-color);width:100%;color:var(--text-main);border-radius:20px;padding:.6rem 1rem .6rem 2.75rem;font-family:inherit;font-size:.9rem;transition:all .3s}.search-bar input:focus{border-color:var(--primary-color);background-color:var(--card-bg);outline:none;box-shadow:0 0 0 3px #e11d481a}.search-dropdown{background-color:var(--card-bg);width:100%;box-shadow:var(--shadow-md);border:1px solid var(--border-color);z-index:100;border-radius:8px;position:absolute;top:calc(100% + 5px);left:0;overflow:hidden}.search-group-title{text-transform:uppercase;color:var(--text-muted);background-color:var(--bg-color);border-bottom:1px solid var(--border-color);padding:.5rem 1rem;font-size:.75rem;font-weight:600}.search-result-item{cursor:pointer;align-items:center;gap:.75rem;padding:.75rem 1rem;transition:background-color .2s;display:flex}.search-result-item:hover{background-color:#e11d480d}.search-avatar{background-color:var(--primary-color);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:.75rem;font-weight:600;display:flex}.search-details{flex-direction:column;display:flex}.search-details span{color:var(--text-main);font-size:.85rem;font-weight:500}.search-details small{color:var(--text-muted);font-size:.7rem}.icon-btn{color:var(--text-muted);border-radius:50%;justify-content:center;align-items:center;padding:.5rem;transition:all .2s;display:flex;position:relative}.icon-btn:hover{background-color:var(--bg-color);color:var(--primary-color)}.notif-badge{background-color:var(--danger-color);color:#fff;border:2px solid var(--card-bg);z-index:10;border-radius:10px;justify-content:center;align-items:center;min-width:18px;height:18px;padding:0 4px;font-size:.65rem;font-weight:700;display:flex;position:absolute;top:-2px;right:-2px;box-shadow:0 0 0 1px #0000001a}.header-profile{cursor:pointer;align-items:center;display:flex}.profile-img{background-color:var(--primary-color);color:#fff;width:36px;height:36px;box-shadow:var(--shadow-sm);border-radius:50%;justify-content:center;align-items:center;transition:transform .2s;display:flex}.profile-img:hover{transform:scale(1.05)}.notification-wrapper{position:relative}.icon-btn.active{color:var(--primary-color);background-color:#3b82f626}.notifications-dropdown{background-color:var(--card-bg);border:1px solid var(--border-color);z-index:100;border-radius:12px;width:320px;position:absolute;top:calc(100% + 15px);right:-60px;overflow:hidden;box-shadow:0 10px 40px #0006}.dropdown-header{border-bottom:1px solid var(--border-color);background-color:var(--bg-color);justify-content:space-between;align-items:center;padding:1rem 1.25rem;display:flex}.dropdown-header h3{color:var(--text-main);margin:0;font-size:1rem;font-weight:600}.mark-read{color:var(--primary-color);cursor:pointer;align-items:center;font-size:.8rem;display:flex}.dropdown-body{max-height:300px;overflow-y:auto}.notif-item{border-bottom:1px solid var(--border-color);cursor:pointer;align-items:flex-start;gap:1rem;padding:1rem 1.25rem;transition:background-color .2s;display:flex}.notif-item:hover{background-color:#f8fafc}.notif-dot{border-radius:50%;flex-shrink:0;width:8px;height:8px;margin-top:6px}.notif-item.info .notif-dot{background-color:var(--primary-color)}.notif-item.success .notif-dot{background-color:var(--success-color)}.notif-item.warning .notif-dot{background-color:var(--warning-color)}.notif-content p{color:var(--text-main);margin:0 0 .25rem;font-size:.9rem;line-height:1.4}.notif-content span{color:var(--text-muted);font-size:.75rem}.dropdown-footer{text-align:center;border-top:1px solid var(--border-color);background-color:var(--bg-color);padding:.75rem}.dropdown-footer button{color:var(--primary-color);cursor:pointer;background:0 0;border:none;width:100%;padding:.5rem;font-size:.85rem;font-weight:600}.dropdown-footer button:hover{text-decoration:underline}@media (width<=768px){.hidden-mobile{display:none}.notifications-dropdown{width:280px;right:-100px}.top-header{padding:0 1rem}}.chatbot-container{z-index:9999;position:fixed;bottom:2rem;right:2rem}.chat-trigger{background:linear-gradient(135deg, var(--primary-color), var(--secondary-color));color:#fff;border-radius:50%;justify-content:center;align-items:center;width:60px;height:60px;transition:transform .2s,box-shadow .2s;display:flex;box-shadow:0 4px 15px #3b82f666}.chat-trigger:hover{transform:scale(1.05);box-shadow:0 6px 20px #3b82f699}.chat-window{background-color:var(--card-bg);width:350px;height:500px;box-shadow:var(--shadow-lg), 0 0 20px #0000001a;border:1px solid var(--border-color);border-radius:12px;flex-direction:column;display:flex;overflow:hidden}.chat-header{background:linear-gradient(135deg, var(--primary-color), var(--secondary-color));color:#fff;justify-content:space-between;align-items:center;padding:1rem;display:flex}.chat-title{align-items:center;gap:.5rem;font-size:1.05rem;font-weight:600;display:flex}.close-chat{color:#fffc;padding:.25rem}.close-chat:hover{color:#fff;background-color:#ffffff1a;border-radius:4px}.chat-messages{background-color:var(--bg-color);flex-direction:column;flex:1;gap:1rem;padding:1.25rem;display:flex;overflow-y:auto}.message-bubble{gap:.5rem;max-width:85%;display:flex}.message-bubble.ai{align-self:flex-start}.message-bubble.user{flex-direction:row-reverse;align-self:flex-end}.message-icon{background-color:var(--card-bg);width:28px;height:28px;box-shadow:var(--shadow-sm);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.message-bubble.ai .message-icon{color:var(--primary-color);border:1px solid #3b82f633}.message-bubble.user .message-icon{background-color:var(--primary-color);color:#fff}.message-text{box-shadow:var(--shadow-sm);border-radius:12px;padding:.75rem 1rem;font-size:.9rem;line-height:1.4}.message-bubble.ai .message-text{background-color:var(--card-bg);color:var(--text-main);border:1px solid var(--border-color);border-top-left-radius:4px}.message-bubble.user .message-text{background-color:var(--primary-color);color:#fff;border-top-right-radius:4px}.chat-input-area{border-top:1px solid var(--border-color);background-color:var(--card-bg);gap:.75rem;padding:1rem;display:flex}.chat-input-area input{border:1px solid var(--border-color);background-color:var(--bg-color);border-radius:20px;flex:1;padding:.75rem 1rem;font-family:inherit;font-size:.9rem}.chat-input-area input:focus{border-color:var(--primary-color);outline:none}.send-btn{background-color:var(--primary-color);color:#fff;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;transition:background-color .2s;display:flex}.send-btn:disabled{background-color:var(--border-color);color:var(--text-muted);cursor:not-allowed}.send-btn:not(:disabled):hover{background-color:var(--primary-hover)}@media (width<=480px){.chatbot-container{bottom:1rem;right:1rem}.chat-window{width:calc(100vw - 2rem);height:60vh}}.dashboard{flex-direction:column;gap:1.5rem;display:flex}.summary-cards{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.5rem;display:grid}.overview-card{flex-direction:column;gap:1rem;display:flex}.card-top{justify-content:space-between;align-items:flex-start;display:flex}.card-title{color:var(--text-muted);margin-bottom:.5rem;font-size:.9rem;font-weight:500}.card-value{color:var(--text-main);font-size:2rem;font-weight:700}.card-icon{border-radius:12px;justify-content:center;align-items:center;width:48px;height:48px;display:flex}.card-trend{color:var(--secondary-color);font-size:.85rem;font-weight:500}.dashboard-charts{grid-template-columns:2fr 1fr;gap:1.5rem;display:grid}@media (width<=1024px){.dashboard-charts{grid-template-columns:1fr}}.chart-card h3,.recent-activity-card h3{color:var(--text-main);margin-bottom:1.5rem;font-size:1.1rem}.chart-container{background-color:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);border-radius:12px;width:100%;height:400px;padding:2rem}.recent-activity-card{background-color:var(--bg-card);border:1px solid var(--border-color);box-shadow:var(--shadow-sm);border-radius:12px;padding:1.5rem}.activity-list{flex-direction:column;gap:1.5rem;list-style:none;display:flex}.activity-list li{gap:1rem;display:flex}.activity-dot{border-radius:50%;width:12px;height:12px;margin-top:5px}.activity-dot.present{background-color:var(--secondary-color)}.activity-dot.absent{background-color:var(--warning-color)}.activity-dot.info{background-color:var(--primary-color)}.activity-content p{color:var(--text-main);margin-bottom:.25rem;font-size:.95rem}.activity-content span{color:var(--text-muted);font-size:.8rem}.warning-text{color:var(--danger-color);font-weight:700}@media (width<=768px){.summary-cards{grid-template-columns:1fr}}.employees-page{flex-direction:column;display:flex}.page-header{justify-content:space-between;align-items:flex-start;margin-bottom:2rem;display:flex}.btn-primary{background-color:var(--primary-color);color:#fff;border-radius:8px;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-weight:600;transition:all .2s;display:flex;box-shadow:0 4px 12px #3b82f64d}.btn-primary:hover{background-color:var(--primary-hover);transform:translateY(-2px);box-shadow:0 6px 16px #3b82f666}.btn-secondary{border:1px solid var(--border-color);color:var(--text-main);background-color:#0000;border-radius:8px;padding:.75rem 1.5rem;font-weight:600;transition:all .2s}.btn-secondary:hover{background-color:var(--bg-color)}.table-card{padding:0;overflow:hidden}.table-actions{border-bottom:1px solid var(--border-color);background-color:var(--card-bg);justify-content:space-between;padding:1.5rem;display:flex}.search-input{width:300px;position:relative}.search-input input{border:1px solid var(--border-color);border-radius:8px;width:100%;padding:.6rem 1rem .6rem 2.5rem;font-family:inherit;transition:border-color .2s}.search-input input:focus{border-color:var(--primary-color);outline:none}.search-icon{color:var(--text-muted);position:absolute;top:50%;left:.75rem;transform:translateY(-50%)}.filter-select{border:1px solid var(--border-color);background-color:var(--card-bg);color:var(--text-main);cursor:pointer;border-radius:8px;outline:none;padding:.6rem 1rem;font-family:inherit}.emp-name-cell{align-items:center;gap:.75rem;font-weight:500;display:flex}.emp-avatar{background-color:var(--primary-color);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:.8rem;font-weight:700;display:flex}.emp-role{color:var(--text-main);font-weight:500}.emp-dept{color:var(--text-muted);font-size:.8rem}.status-badge.active{color:#065f46;background-color:#d1fae5}.status-badge.on-leave{color:#92400e;background-color:#fef3c7}.status-badge.inactive{color:#991b1b;background-color:#fee2e2}.modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:2000;background-color:#000000bf;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{border-radius:var(--border-radius);border:1px solid var(--border-color);background-color:#111827;flex-direction:column;width:100%;max-width:650px;display:flex;overflow:hidden;box-shadow:0 20px 25px -5px #00000080,0 10px 10px -5px #00000080}.modal-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:1.5rem;display:flex}.modal-header h2{color:var(--text-main);font-size:1.25rem}.close-btn{color:var(--text-muted);border-radius:4px;padding:.25rem}.close-btn:hover{background-color:var(--bg-color);color:var(--danger-color)}.detail-group.highlight-blue{border-left:4px solid var(--primary-color);background-color:#3b82f614}.detail-group.highlight-green{background-color:#10b98114;border-left:4px solid #10b981}.monospace{font-family:JetBrains Mono,Fira Code,monospace;font-size:1.05rem!important}.salary-text{color:var(--text-main)!important;font-size:1.15rem!important;font-weight:700!important}.modal-body{max-height:75vh;padding:2rem;overflow-y:auto}.profile-header{border-bottom:1px solid var(--border-color);align-items:center;gap:1.5rem;margin-bottom:2rem;padding-bottom:1.5rem;display:flex}.profile-avatar.large{width:64px;height:64px;font-size:1.5rem}.profile-header h3{margin-bottom:.25rem;font-size:1.5rem}.profile-header p{color:var(--text-muted)}.ml-auto{margin-left:auto}.detail-group{border:1px solid var(--border-color);background-color:#ffffff08;border-radius:8px;flex-direction:column;gap:.5rem;padding:1rem;transition:all .2s;display:flex}.detail-group:hover{border-color:var(--primary-color);background-color:#ffffff0d}.detail-group label{text-transform:uppercase;color:var(--text-muted);letter-spacing:1px;font-size:.75rem;font-weight:600;display:block}.detail-group p{color:var(--text-main);word-break:break-all;font-size:1rem;font-weight:600}.details-grid{grid-template-columns:repeat(2,1fr);gap:1.25rem;margin-top:1rem;display:grid}.modal-footer{border-top:1px solid var(--border-color);border-radius:0 0 var(--border-radius) var(--border-radius);background-color:#111827;justify-content:flex-end;gap:1rem;padding:1.5rem;display:flex}.form-group input{font-family:inherit;font-size:.95rem;transition:border-color .2s,box-shadow .2s;background-color:var(--bg-color)!important;color:var(--text-main)!important}.form-group input:focus{outline:none;box-shadow:0 0 0 3px #3b82f61a;border-color:var(--primary-color)!important}.form-group select{font-family:inherit;font-size:.95rem;background-color:var(--bg-color)!important;color:var(--text-main)!important}@media (width<=768px){.page-header{flex-direction:column;align-items:stretch;gap:1rem}.table-actions{flex-direction:column;gap:1rem}.search-input{width:100%}.details-grid{grid-template-columns:1fr}.profile-header{text-align:center;flex-direction:column}.ml-auto{margin-left:0}.modal-content{width:95%;max-height:90vh;margin:1rem}.modal-body{padding:1rem;overflow-y:auto}.modal-header,.modal-footer{padding:1rem}}.attendance-page{flex-direction:column;gap:1.5rem;display:flex}.attendance-grid{grid-template-columns:1fr 1fr;gap:1.5rem;display:grid}@media (width<=900px){.attendance-grid{grid-template-columns:1fr}}.marker-card{flex-direction:column;align-items:center;gap:1.5rem;padding:2.5rem 1.5rem;display:flex}.clock-display{text-align:center}.clock-display h3{letter-spacing:2px;background:linear-gradient(135deg, var(--primary-color), var(--secondary-color));-webkit-text-fill-color:transparent;-webkit-background-clip:text;margin-bottom:.5rem;font-size:3rem;font-weight:800}.clock-display p{color:var(--text-muted);font-size:1.1rem}.location-simulator{background:var(--bg-color);border:1px solid var(--border-color);border-radius:12px;width:100%;max-width:400px;padding:1.5rem}.sim-label{color:var(--text-main);align-items:center;gap:.5rem;margin-bottom:1rem;font-size:.9rem;font-weight:600;display:flex}.range-slider{width:100%;margin-bottom:.5rem}.distance-value{text-align:right;color:var(--primary-color);font-size:.85rem;font-weight:700}.btn-mark-attendance{background:linear-gradient(135deg, var(--primary-hover), var(--primary-color));color:#fff;border-radius:12px;justify-content:center;align-items:center;gap:.75rem;width:100%;max-width:400px;padding:1.25rem;font-size:1.1rem;font-weight:700;transition:all .3s;display:flex;box-shadow:0 4px 15px #3b82f666}.btn-mark-attendance:hover{transform:translateY(-2px);box-shadow:0 6px 20px #3b82f680}.status-alert{border-radius:8px;align-items:flex-start;gap:.75rem;width:100%;max-width:400px;padding:1rem;animation:.3s ease-out fadeIn;display:flex}.status-alert.error{color:var(--danger-color);border:1px solid var(--danger-color);background-color:#fef2f2}.status-alert.success{color:var(--secondary-color);border:1px solid var(--secondary-color);background-color:#f0fdf4}.stats-card{flex-direction:column;display:flex}.stats-card h3{margin-bottom:1.5rem;font-size:1.25rem}.stats-grid{grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.5rem;display:grid}.stat-box{background-color:var(--bg-color);border:1px solid var(--border-color);border-radius:12px;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;padding:1.5rem;display:flex}.stat-box.present{background-color:#f0fdf4;border-color:#bbf7d0}.stat-box.present .stat-number{color:var(--secondary-color)}.stat-box.late{background-color:#fef3c7;border-color:#fde68a}.stat-box.late .stat-number{color:var(--warning-color)}.stat-box.leave{background-color:#fef2f2;border-color:#fecaca}.stat-box.leave .stat-number{color:var(--danger-color)}.stat-number{color:var(--text-main);font-size:2.5rem;font-weight:800;line-height:1}.stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;font-size:.85rem;font-weight:600}.payroll-hint{color:var(--warning-color);background-color:#f59e0b1a;border-radius:8px;align-items:center;gap:.5rem;margin-top:auto;padding:1rem;font-size:.9rem;font-weight:500;display:flex}.logs-card{padding:0;overflow:hidden}.logs-card h3{border-bottom:1px solid var(--border-color);margin:0;padding:1.5rem}.inline-icon{vertical-align:middle;margin-top:-2px;margin-right:.25rem}@media (width<=768px){.stats-grid{grid-template-columns:1fr}.clock-display h3{font-size:2.25rem}}.payroll-page{flex-direction:column;display:flex}.rules-ribbon{border-left:4px solid var(--primary-color);color:var(--primary-color);background-color:#3b82f60d;border-radius:8px;align-items:center;gap:.75rem;margin-bottom:2rem;padding:1rem 1.5rem;display:flex}.rules-ribbon p{color:var(--text-main);font-size:.95rem}.salary-text{color:var(--text-muted);font-family:monospace;font-size:1.05rem}.final-salary-text{color:var(--secondary-color);font-family:monospace;font-size:1.15rem}.attendance-badges{gap:.4rem;display:flex}.attendance-badges span{border-radius:6px;justify-content:center;align-items:center;width:30px;height:30px;font-size:.8rem;font-weight:700;display:flex}.badge-present{color:#166534;background-color:#f0fdf4}.badge-late{color:#64748b;background-color:#f8fafc}.badge-late.warning{color:#b45309;background-color:#fef3c7}.badge-leave{color:#64748b;background-color:#f8fafc}.badge-leave.danger{color:#b91c1c;background-color:#fef2f2}.deduction-details{flex-direction:column;display:flex}.deduction-amount{color:var(--danger-color);font-family:monospace;font-weight:600}.deduction-reason{color:var(--text-muted);font-size:.75rem}.no-deduction{color:var(--text-muted);font-size:.85rem;font-style:italic}.status-badge.paid{color:#065f46;background-color:#d1fae5}.status-badge.pending{color:#92400e;background-color:#fef3c7}.status-badge.processing{color:#3730a3;background-color:#e0e7ff}.modal-overlay{z-index:2000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#000000bf;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{border:1px solid var(--border-color);background-color:#111827;border-radius:12px;width:100%;overflow:hidden;box-shadow:0 20px 25px -5px #00000080,0 10px 10px -5px #00000080}.modal-header{border-bottom:1px solid var(--border-color);background-color:#111827;padding:1.5rem}.modal-header h2{color:var(--text-main);margin:0;font-size:1.25rem}.modal-header p{color:var(--text-muted);margin:.25rem 0 0;font-size:.875rem}.modal-body{background-color:#111827;padding:2rem}.modal-footer{border-top:1px solid var(--border-color);background-color:#111827;justify-content:flex-end;gap:1rem;padding:1.25rem 1.5rem;display:flex}.form-grid{gap:1rem;display:grid}.form-group input{border:1px solid var(--border-color);background-color:var(--bg-color);color:var(--text-main);border-radius:6px;outline:none;padding:.625rem;transition:border-color .2s}.form-group input:focus{border-color:var(--primary-color)}.pill{border-radius:4px;padding:2px 8px;font-size:.75rem;font-weight:600}.pill.warning{color:#b45309;background-color:#fef3c7}.pill.danger{color:#b91c1c;background-color:#fef2f2}.animate-spin{animation:1s linear infinite spin}.btn-primary:disabled{opacity:.6;cursor:not-allowed;box-shadow:none!important;transform:none!important}@media (width<=768px){.attendance-badges{flex-wrap:wrap}}.ps-page{max-width:1000px;margin:0 auto;padding:1rem;font-family:Inter,sans-serif;animation:.4s ease-out fadeIn}.ps-header-bar{color:#070000;background-color:#fdfbfb;border-radius:12px;justify-content:space-between;align-items:center;margin-bottom:2.5rem;padding:1.5rem 2.5rem;display:flex;box-shadow:0 10px 25px -5px #0003}.ps-title{letter-spacing:-.5px;margin:0;font-size:1.8rem;font-weight:700}.ps-branding{align-items:center;gap:.8rem;display:flex}.ps-company-name{color:#0a0a0a;letter-spacing:1px;font-size:1.1rem;font-weight:700}.ps-company-icon{background-color:#ef4444;border-radius:50%;width:50px;height:50px;display:inline-block;box-shadow:0 0 10px #ef444499}.ps-section{background:#fff;border:1px solid #f3f4f6;border-radius:12px;margin-bottom:1.5rem;padding:2rem;box-shadow:0 4px 6px -1px #0000000d}.ps-section-title{color:#111;letter-spacing:-.3px;border-bottom:3px solid #ef4444;margin-bottom:1.5rem;padding-bottom:.3rem;font-size:1.1rem;font-weight:700;display:inline-block}.ps-grid-2{grid-template-columns:1fr 1fr;gap:1.5rem;display:grid}.ps-grid-3{grid-template-columns:repeat(3,1fr);gap:1.5rem;display:grid}.ps-form-group{flex-direction:column;display:flex}.ps-label{color:#374151;margin-bottom:.5rem;font-size:.95rem;font-weight:700}.ps-input{color:#1f2937;background-color:#fafafa;border:1px solid #e5e7eb;border-radius:8px;padding:1rem 1.2rem;font-size:1rem;transition:all .2s}.ps-input::placeholder{color:#9ca3af;font-weight:400}.ps-input:focus{background-color:#fff;border-color:#ef4444;outline:none;box-shadow:0 0 0 3px #ef44441a}select.ps-input{appearance:none;background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");background-position:right 1rem center;background-repeat:no-repeat;background-size:1em}.ps-btn-preview{color:#fff;cursor:pointer;background-color:#ef4444;border:none;border-radius:12px;width:100%;margin-top:1.5rem;padding:1.2rem;font-size:1.15rem;font-weight:700;transition:background-color .2s,transform .1s;box-shadow:0 10px 15px -3px #ef44444d}.ps-btn-preview:hover{background-color:#dc2626;transform:translateY(-2px)}.ps-btn-preview:active{transform:translateY(0)}.ps-modal-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1000;background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.ps-modal-content{background:#fff;border-radius:16px;width:90%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 25px 50px -12px #00000040}.ps-modal-header{border-bottom:1px solid #f3f4f6;justify-content:space-between;align-items:center;padding:1.5rem 2rem;display:flex}.ps-modal-header h2{color:#111;margin:0}.ps-modal-body{padding:2rem}.ps-slip-table{border-collapse:collapse;width:100%;margin-bottom:2rem}.ps-slip-table th,.ps-slip-table td{text-align:left;border-bottom:1px solid #f3f4f6;padding:.8rem}.ps-slip-table th{color:#6b7280;font-weight:500}.ps-slip-table td{color:#111;font-weight:600}.ps-slip-table .negative{color:#ef4444}.ps-slip-table .positive{color:#10b981}.ps-slip-total{background:#f9fafb;border-radius:12px;justify-content:space-between;align-items:center;padding:1.5rem;display:flex}.ps-slip-total h3{color:#374151;margin:0}.ps-slip-total .net-amount{color:#ef4444;font-size:2rem;font-weight:800}.dark-mode .ps-section{background:var(--card-bg);border-color:var(--border-color)}.dark-mode .ps-label{color:var(--text-main)}.dark-mode .ps-input{background-color:var(--bg-color);border-color:var(--border-color);color:var(--text-main)}.dark-mode .ps-modal-content{background:var(--card-bg)}.dark-mode .ps-modal-header h2{color:var(--text-main)}.dark-mode .ps-slip-table th{color:var(--text-muted)}.dark-mode .ps-slip-table td{color:var(--text-main);border-color:var(--border-color)}.dark-mode .ps-slip-total{background:var(--bg-color)}.dark-mode .ps-slip-total h3{color:var(--text-main)}@media print{body{background-color:#fff!important}.sidebar,.top-header,form,.ps-header-bar{display:none!important}.ps-modal-overlay{-webkit-backdrop-filter:none;backdrop-filter:none;background:#fff;width:100%;padding:0;position:absolute;top:0;left:0}.ps-modal-content{box-shadow:none;border-radius:0;width:100%;max-width:100%;margin:0}.ps-no-print{display:none!important}}@media (width<=768px){.ps-grid-2,.ps-grid-3{grid-template-columns:1fr}.ps-header-bar{text-align:center;flex-direction:column;gap:1rem;padding:1rem}.ps-slip-total{text-align:center;flex-direction:column;gap:1rem}}.recruitment-page{flex-direction:column;display:flex}.recruitment-container{grid-template-columns:1fr;align-items:start;gap:1.5rem;display:grid}@media (width<=1024px){.recruitment-container{grid-template-columns:1fr}}.form-card{padding:2rem}.form-card h2{margin-bottom:.5rem;font-size:1.5rem}.form-card>p{color:var(--text-muted);margin-bottom:2rem}.application-form{flex-direction:column;gap:1.5rem;display:flex}@media (width<=600px){.form-row{grid-template-columns:1fr}}.form-group{flex-direction:column;gap:.5rem;display:flex}.form-group label{color:var(--text-main);font-size:.9rem;font-weight:600}.form-group input,.form-group select,.form-group textarea{border:1px solid var(--border-color);background-color:var(--bg-color);border-radius:8px;padding:.75rem 1rem;font-family:inherit;font-size:.95rem;transition:all .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--primary-color);background-color:var(--bg-color);outline:none;box-shadow:0 0 0 3px #e11d481a}.file-upload{border:2px dashed var(--border-color);background-color:var(--bg-color);text-align:center;cursor:pointer;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;padding:2rem;transition:all .2s;display:flex;position:relative}.file-upload:hover{border-color:var(--primary-color);background-color:#3b82f60d}.file-upload input[type=file]{opacity:0;cursor:pointer;width:100%;height:100%;position:absolute;top:0;left:0}.upload-icon{color:var(--primary-color)}.file-hint{color:var(--text-muted);font-size:.8rem}.form-submit-btn{justify-content:center;margin-top:1rem;padding:1rem;font-size:1.05rem}.success-message{text-align:center;border:1px solid var(--success-color);background-color:#10b9811a;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;padding:4rem 2rem;display:flex}.success-message h3{color:var(--secondary-color);margin:1rem 0 .5rem;font-size:1.5rem}.success-message p{color:var(--text-muted)}.info-card{position:sticky;top:100px}.info-card h3{border-bottom:1px solid var(--border-color);margin-bottom:1.5rem;padding-bottom:1rem}.pipeline-stats{flex-direction:column;gap:1rem;display:flex}.pipeline-stage{background-color:var(--bg-color);border-left:4px solid var(--primary-color);border-radius:8px;justify-content:space-between;align-items:center;padding:1rem;display:flex}.pipeline-stage:nth-child(2){border-left-color:var(--warning-color)}.pipeline-stage:nth-child(3){border-left-color:#8b5cf6}.pipeline-stage:nth-child(4){border-left-color:var(--secondary-color)}.stage-name{font-weight:600}.stage-count{background-color:var(--card-bg);box-shadow:var(--shadow-sm);border-radius:20px;padding:.25rem .75rem;font-weight:700}.bank-details-page{flex-direction:column;display:flex}.bank-table th{color:#475569;background-color:#f8fafc}.emp-avatar.small{background-color:var(--secondary-color);width:28px;height:28px;font-size:.75rem}.emp-id-badge{color:#475569;background-color:#f1f5f9;border-radius:4px;padding:.25rem .5rem;font-family:monospace;font-size:.85rem}.dept-text{color:var(--text-muted);font-size:.85rem}.bank-name-cell{color:var(--text-main);align-items:center;gap:.5rem;font-weight:500;display:flex}.bank-icon{color:var(--secondary-color)}.account-number{letter-spacing:.5px;color:var(--primary-color);background-color:#3b82f60d;border:1px solid #3b82f61a;border-radius:6px;padding:.35rem .75rem;font-family:monospace;font-size:1.05rem;display:inline-block}.ledger-stats{align-items:center;height:100%;display:flex}.ledger-stat-pill{color:var(--secondary-color);box-shadow:var(--shadow-sm);background-color:#fff;border:1px solid #d1fae5;border-radius:20px;align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.85rem;font-weight:600;display:flex}.settings-container{align-items:flex-start;gap:2rem;display:flex}.settings-sidebar{background-color:var(--card-bg);border-radius:var(--border-radius);border:1px solid var(--border-color);width:280px;box-shadow:var(--shadow-sm);overflow:hidden}.settings-nav{margin:0;padding:0;list-style:none}.settings-nav li{color:var(--text-muted);cursor:pointer;border-bottom:1px solid var(--border-color);align-items:center;gap:.75rem;padding:1rem 1.5rem;font-weight:500;transition:all .2s;display:flex}.settings-nav li:last-child{border-bottom:none}.settings-nav li:hover{background-color:var(--bg-color);color:var(--text-main)}.settings-nav li.active{color:var(--primary-color);border-left:4px solid var(--primary-color);background-color:#e11d481a}.settings-content{flex:1}.settings-card{min-height:400px}.tab-pane h3{color:var(--text-main);border-bottom:1px solid var(--border-color);margin-bottom:2rem;padding-bottom:.75rem;font-size:1.25rem}.form-group-row{gap:1.5rem;margin-bottom:1.5rem;display:flex}.form-group-row .form-group{flex:1}.form-group label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.5rem;font-size:.85rem;font-weight:600;display:block}.form-control{border:1px solid var(--border-color);background-color:var(--bg-color);width:100%;color:var(--text-main);border-radius:8px;padding:.75rem 1rem;font-family:inherit;font-size:.95rem;transition:border-color .2s}.form-control:focus{border-color:var(--primary-color);outline:none}.form-control:disabled{opacity:.7;cursor:not-allowed;background-color:#ffffff0d}.toggle-group{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;padding:1rem 0;display:flex}.toggle-group label{color:var(--text-main);font-weight:500}.toggle-group input[type=checkbox]{width:20px;height:20px;accent-color:var(--primary-color)}@media screen and (width<=900px){.settings-container{flex-direction:column}.settings-sidebar{width:100%;margin-bottom:1.5rem}.settings-nav{white-space:nowrap;-webkit-overflow-scrolling:touch;display:flex;overflow-x:auto}.settings-nav li{border-bottom:none;border-right:1px solid var(--border-color)}.settings-nav li.active{border-left:none;border-bottom:4px solid var(--primary-color)}}@media screen and (width<=600px){.form-group-row{flex-direction:column;gap:0}.page-header{flex-direction:column;align-items:flex-start;gap:1rem}.page-header button{width:100%}.form-group[style]{max-width:100%!important}}.tasks-page{flex-direction:column;display:flex}.task-form{grid-template-columns:repeat(3,1fr);gap:1.5rem;display:grid}.task-form .form-group{flex-direction:column;display:flex}.task-form label{color:var(--text-muted);text-transform:uppercase;margin-bottom:.5rem;font-size:.85rem;font-weight:600}.task-completed-row{opacity:.7}.task-completed-row td{background-color:#10b98105}.action-btn.success{color:var(--text-muted)}.action-btn.success:hover{color:var(--success-color);background-color:#d1fae5}@media (width<=768px){.task-form{grid-template-columns:1fr}}.leave-apply-container{max-width:1200px;margin:0 auto;padding:24px}.leave-header{margin-bottom:32px}.leave-header h1{color:var(--text-main);margin-bottom:8px;font-size:24px}.leave-header p{color:var(--text-muted)}.leave-grid{grid-template-columns:1fr 1.5fr;gap:24px;display:grid}.leave-card{background:var(--card-bg);border-radius:var(--border-radius);box-shadow:var(--shadow-md);border:1px solid var(--border-color);padding:24px}.leave-card h2{color:var(--text-main);margin-bottom:24px;font-size:18px}.form-group{margin-bottom:20px}.form-group label{color:var(--text-muted);margin-bottom:8px;font-size:14px;font-weight:500;display:block}.form-group input,.form-group select,.form-group textarea{border:1px solid var(--border-color);background-color:var(--bg-color);width:100%;color:var(--text-main);border-radius:6px;outline:none;padding:10px 12px;font-size:14px;transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--primary-color)}.form-group textarea{resize:vertical;height:100px}.file-upload-wrapper{border:2px dashed var(--border-color);color:var(--text-muted);cursor:pointer;border-radius:8px;flex-direction:column;align-items:center;gap:8px;padding:20px;transition:all .2s;display:flex;position:relative}.file-upload-wrapper:hover{border-color:var(--primary-color);background:#e11d480d}.file-upload-wrapper input{opacity:0;cursor:pointer;position:absolute;inset:0}.submit-btn{background:var(--primary-color);color:#fff;cursor:pointer;border:none;border-radius:6px;width:100%;padding:12px;font-weight:600;transition:background .2s}.submit-btn:hover{background:var(--primary-hover)}.submit-btn:disabled{cursor:not-allowed;background:#ccc}.history-table-wrapper{-webkit-overflow-scrolling:touch;margin-top:1rem;overflow-x:auto}.history-table{width:100%;min-width:600px}.history-table th{background-color:#0000!important}.date-range{flex-direction:column;gap:2px;display:flex}.date-sep{color:var(--text-muted);font-size:11px;font-weight:600}.badge{text-transform:capitalize;border-radius:6px;justify-content:center;align-items:center;gap:6px;min-width:90px;padding:6px 12px;font-size:12px;font-weight:600;display:inline-flex;position:relative;top:auto;right:auto}.badge.pending{border:1px solid #f59e0b33;color:#fbbf24!important;background:#f59e0b1a!important}.badge.approved{border:1px solid #10b98133;color:#34d399!important;background:#10b9811a!important}.badge.rejected{border:1px solid #ef444433;color:#f87171!important;background:#ef44441a!important}.admin-comment{color:#888;align-items:center;gap:4px;margin-top:4px;font-size:11px;display:flex}.view-proof-link{color:var(--primary-color);font-size:13px;font-weight:600;text-decoration:none}.view-proof-link:hover{color:var(--primary-hover);text-decoration:underline}.no-data{text-align:center;color:#aaa;padding:40px!important}@media (width<=992px){.leave-grid{grid-template-columns:1fr}}@media (width<=768px){.leave-apply-container{padding:16px}.leave-header h1{font-size:20px}.form-row{grid-template-columns:1fr;gap:12px}.history-table{min-width:500px}}@media (width<=480px){.leave-apply-container{padding:12px}.leave-card{padding:16px}.badge{min-width:70px;padding:4px 6px;font-size:10px}.history-table th,.history-table td{padding:8px 4px;font-size:12px}.date-range span{font-size:11px}}@media (width<=580px){.leave-apply-container{padding:8px}.leave-header h1{font-size:18px}.leave-card{margin-bottom:16px;padding:12px}.leave-card h2{margin-bottom:16px;font-size:16px}.form-group{margin-bottom:16px}.form-group label{margin-bottom:6px;font-size:13px}.form-group input,.form-group select,.form-group textarea{padding:8px 10px;font-size:14px}.submit-btn{padding:10px;font-size:14px}.file-upload-wrapper{padding:16px}.history-table-wrapper{margin-top:0;overflow-x:visible}.history-table{width:100%;min-width:auto}.history-table thead{display:none}.history-table,.history-table tbody,.history-table tr,.history-table td{width:100%;display:block}.history-table tr{border:1px solid var(--border-color);background:var(--card-bg);box-shadow:var(--shadow-sm);border-radius:12px;margin-bottom:16px;padding:16px;transition:transform .2s,box-shadow .2s}.history-table tr:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.history-table td{border-bottom:1px solid #0000000d;justify-content:space-between;align-items:center;padding:12px 0;display:flex}.history-table td:last-child{border-bottom:none}.history-table td:before{content:attr(data-label);color:var(--text-muted);flex-shrink:0;margin-right:12px;font-size:12px;font-weight:600}.action-cell{justify-content:flex-end!important}.date-range{flex-direction:row;align-items:center;gap:8px}.date-range span{font-size:13px}.date-sep{opacity:.7;font-size:11px}.badge{min-width:80px;padding:4px 8px;font-size:11px}.view-proof-link{font-size:12px}}.admin-leaves-container{padding:24px}.admin-leaves-header{margin-bottom:32px}.admin-leaves-header h1{color:#1a1a1a;margin-bottom:8px;font-size:24px}.admin-leaves-header p{color:#666}.admin-controls{gap:16px;margin-bottom:24px;display:flex}@media (width<=768px){.admin-leaves-container{padding:16px}.admin-leaves-header h1{font-size:20px}.admin-controls{flex-direction:column}.search-box,.filter-box{width:100%}}@media (width<=480px){.admin-leaves-container{padding:12px}.admin-leaves-header{margin-bottom:20px}.modal-content{margin:10px;padding:20px}.action-btns{flex-direction:column;gap:4px}.action-btn{padding:6px}}.search-box{background:#fff;border:1px solid #ddd;border-radius:8px;flex:1;align-items:center;gap:8px;padding:0 12px;display:flex}.search-box input{border:none;outline:none;flex:1;padding:10px 0;font-size:14px}.filter-box{background:#fff;border:1px solid #ddd;border-radius:8px;align-items:center;gap:8px;padding:0 12px;display:flex}.filter-box select{cursor:pointer;background:0 0;border:none;outline:none;padding:10px 0;font-size:14px}.leaves-table-wrapper{background:#fff;border:1px solid #eee;border-radius:12px;overflow-x:auto;box-shadow:0 2px 8px #0000000d}.admin-leaves-table{width:100%;min-width:800px}@media (width<=1024px){.admin-leaves-table{min-width:1000px}}@media (width<=768px){.admin-leaves-table{min-width:900px}.reason-cell{max-width:150px}}.emp-info{flex-direction:column;display:flex}.emp-name{color:#333;font-weight:600}.emp-id{color:#888;font-size:12px}.type-tag{text-transform:capitalize;border-radius:4px;padding:4px 8px;font-size:12px;font-weight:500}.type-tag.sick{color:#b91c1c;background:#fee2e2}.type-tag.casual{color:#15803d;background:#dcfce7}.type-tag.annual{color:#0369a1;background:#e0f2fe}.type-tag.emergency{color:#c2410c;background:#ffedd5}.duration-info{flex-direction:column;font-size:13px;display:flex}.duration-to{color:#aaa;margin:2px 0;font-size:10px;font-weight:600}.reason-cell{white-space:nowrap;text-overflow:ellipsis;color:#555;max-width:200px;font-size:13px;overflow:hidden}.no-proof{color:#ccc;font-size:13px}.action-btns{gap:8px;display:flex}.approve-btn{color:#008766;background:#e6fffa}.approve-btn:hover{color:#fff;background:#008766}.reject-btn{color:#e53e3e;background:#fff5f5}.reject-btn:hover{color:#fff;background:#e53e3e}.status-badge{border-radius:20px;padding:4px 10px;font-size:12px;font-weight:500;display:inline-block}.status-badge.approved{color:#008766;background:#e6fffa}.status-badge.rejected{color:#e53e3e;background:#fff5f5}.status-badge.pending{color:#b37400;background:#fff8e6}.status-display{align-items:center;gap:8px;display:flex}.comment-indicator{color:#888;cursor:help}.modal-overlay{z-index:1000;background:#00000080;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{background:#fff;border-radius:12px;width:100%;max-width:400px;padding:24px}.modal-content h3{margin-bottom:12px}.modal-content textarea{border:1px solid #ddd;border-radius:8px;outline:none;width:100%;height:100px;margin:12px 0;padding:12px}.modal-actions{justify-content:flex-end;gap:12px;display:flex}.cancel-btn{cursor:pointer;background:#fff;border:1px solid #ddd;border-radius:6px;padding:8px 16px}.confirm-reject-btn{color:#fff;cursor:pointer;background:#e53e3e;border:none;border-radius:6px;padding:8px 16px}.loading-state,.empty-state{text-align:center;color:#888;background:#fff;border:1px solid #eee;border-radius:12px;padding:60px}@media (width<=850px){.admin-leaves-table thead{display:none}.admin-leaves-table,.admin-leaves-table tbody,.admin-leaves-table tr,.admin-leaves-table td{width:100%;display:block}.admin-leaves-table tr{background:#fff;border:1px solid #eee;border-radius:12px;margin-bottom:20px;padding:16px;box-shadow:0 2px 4px #00000005}.admin-leaves-table td{border-bottom:1px solid #f9f9f9;justify-content:space-between;align-items:center;padding:10px 0;display:flex}.admin-leaves-table td:last-child{border-bottom:none;flex-direction:column;align-items:stretch;gap:10px;padding-top:15px}.admin-leaves-table td:before{content:attr(data-label);color:#888;font-size:12px;font-weight:600}.emp-info,.duration-info{align-items:flex-end}.reason-cell{white-space:normal;text-align:right;max-width:none}.action-btns{width:100%}.action-btn{flex:1;justify-content:center}}.login-page{background:var(--bg-color);justify-content:center;align-items:center;min-height:100vh;padding:1rem;display:flex}.login-card{background-color:var(--card-bg);width:100%;max-width:440px;box-shadow:var(--shadow-lg), 0 20px 40px #00000014;border:1px solid #ffffff80;border-radius:20px;flex-direction:column;padding:3rem;display:flex}.login-header{text-align:center;margin-bottom:2rem}.login-logo{justify-content:center;margin-bottom:1.5rem;display:flex}.logo-icon-lg{background:linear-gradient(135deg, var(--primary-color), var(--secondary-color));color:#fff;border-radius:14px;justify-content:center;align-items:center;width:56px;height:56px;font-size:1.5rem;font-weight:800;display:flex;box-shadow:0 8px 20px #3b82f64d}.login-header h2{color:var(--text-main);margin-bottom:.5rem;font-size:1.75rem;font-weight:700}.login-header p{color:var(--text-muted);font-size:.95rem}.login-error{color:var(--danger-color);background-color:#fef2f2;border:1px solid #fecaca;border-radius:8px;align-items:center;gap:.5rem;margin-bottom:1.5rem;padding:.8rem;font-size:.85rem;animation:.3s fadeIn;display:flex}.login-form{flex-direction:column;gap:1.25rem;margin-bottom:2rem;display:flex}.input-with-icon{align-items:center;display:flex;position:relative}.input-icon{color:var(--text-muted);position:absolute;left:1rem}.input-with-icon input{width:100%;padding-left:2.75rem}.w-full{justify-content:center;width:100%;margin-top:.5rem;padding:.85rem;font-size:1rem}.demo-credentials{text-align:center;border-top:1px solid var(--border-color);margin-top:.5rem;padding-top:1.5rem}.demo-credentials p{color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:1rem;font-size:.8rem}.credentials-btns{justify-content:center;gap:1rem;display:flex}.demo-btn{border-radius:6px;padding:.5rem 1rem;font-size:.85rem;font-weight:600;transition:all .2s}.demo-btn.admin{color:var(--primary-color);background-color:#3b82f61a}.demo-btn.admin:hover{background-color:var(--primary-color);color:#fff}.demo-btn.employee{color:var(--secondary-color);background-color:#10b9811a}.demo-btn.employee:hover{background-color:var(--secondary-color);color:#fff}@media (width<=768px){.login-card{padding:2rem 1.5rem}.credentials-btns{flex-direction:column}}.apply-page{background-color:var(--bg-hover);justify-content:center;align-items:center;min-height:100vh;padding:2rem;display:flex}.apply-container{width:100%;max-width:800px}.apply-header{text-align:center;margin-bottom:2rem}.apply-logo{justify-content:center;margin-bottom:1rem;display:flex}.apply-logo .logo-icon-lg{background:linear-gradient(135deg, var(--primary-color), var(--secondary-color));color:#fff;width:60px;height:60px;box-shadow:var(--shadow-sm);border-radius:12px;justify-content:center;align-items:center;font-size:1.5rem;font-weight:800;display:flex}.apply-header h1{color:var(--text-main);margin:0 0 .5rem;font-size:1.8rem}.apply-header p{color:var(--text-muted);margin:0}.apply-container .form-card{background-color:var(--card-bg);box-shadow:var(--shadow-md);border-radius:12px;padding:2rem}.form-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}@media (width<=768px){.apply-page{align-items:flex-start;padding:1rem}.apply-container .form-card{padding:1.25rem}.form-row{grid-template-columns:1fr;gap:0}.apply-header h1{font-size:1.5rem}}.candidate-dashboard{padding:1rem}.dashboard-content{grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:1.5rem;display:grid}.status-card{padding:2rem}.status-card h2{color:var(--text-main);margin-bottom:2rem}.status-timeline{flex-direction:column;gap:1.5rem;display:flex;position:relative}.status-timeline:before{content:"";background-color:var(--border-color);z-index:0;width:2px;position:absolute;top:10px;bottom:20px;left:11px}.timeline-step{z-index:1;gap:1.5rem;display:flex;position:relative}.step-icon-container{background:var(--bg-color);border-radius:50%;padding:2px}.step-icon{color:var(--success-color)}.step-icon.pending{color:var(--text-muted)}.timeline-step.current .step-icon-container{border-radius:50%;box-shadow:0 0 0 4px #3b82f633}.timeline-step.current .step-icon{color:var(--primary-color)}.step-content{transform:translateY(2px)}.step-content h4{margin:0;font-size:1.1rem}.step-desc{color:var(--text-muted);margin:.25rem 0 0;font-size:.85rem}.details-card{padding:2rem}.details-card h3{margin-bottom:1.5rem}.details-grid{grid-template-columns:1fr 1fr;gap:1.5rem;display:grid}.detail-item{align-items:flex-start;gap:1rem;display:flex}.detail-icon{color:var(--primary-color);background:#3b82f61a;border-radius:8px;width:36px;height:36px;padding:.5rem}.detail-item label{color:var(--text-muted);margin-bottom:.25rem;font-size:.8rem;display:block}.detail-item p{margin:0;font-size:.95rem}.detail-item p.bold-text{color:var(--text-main);font-weight:600}.detail-item a{color:var(--primary-color);text-decoration:none}.detail-item a:hover{text-decoration:underline}.next-steps{border-left:4px solid var(--primary-color);background:#3b82f60d;border-radius:4px;margin-top:2rem;padding:1.5rem}.next-steps h4{color:var(--primary-color);margin:0 0 .5rem}.next-steps p{color:var(--text-main);margin:0;font-size:.95rem;line-height:1.5}.rejected-status{text-align:center;padding:2rem}.rejected-status h3{color:var(--danger-color);margin:1rem 0}@media (width<=768px){.dashboard-content{grid-template-columns:1fr}.details-grid{grid-template-columns:1fr;gap:1rem}}@media (width<=480px){.candidate-dashboard{padding:.5rem}.status-card,.details-card{padding:1.25rem}.page-title{font-size:1.5rem}}.counter{color:var(--accent);background:var(--accent-bg);border:2px solid #0000;border-radius:5px;margin-bottom:24px;padding:5px 10px;font-size:16px;transition:border-color .3s}.counter:hover{border-color:var(--accent-border)}.counter:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.hero{position:relative}.hero .base,.hero .framework,.hero .vite{margin:0 auto;inset-inline:0}.hero .base{z-index:0;width:170px;position:relative}.hero .framework,.hero .vite{position:absolute}.hero .framework{z-index:1;height:28px;top:34px;transform:perspective(2000px)rotate(300deg)rotateX(44deg)rotateY(39deg)scale(1.4)}.hero .vite{z-index:0;width:auto;height:26px;top:107px;transform:perspective(2000px)rotate(300deg)rotateX(40deg)rotateY(39deg)scale(.8)}#center{flex-direction:column;flex-grow:1;place-content:center;place-items:center;gap:25px;display:flex}@media (width<=1024px){#center{gap:18px;padding:32px 20px 24px}}#next-steps{border-top:1px solid var(--border);text-align:left;display:flex}#next-steps>div{flex:1 1 0;padding:32px}@media (width<=1024px){#next-steps>div{padding:24px 20px}}#next-steps .icon{width:22px;height:22px;margin-bottom:16px}@media (width<=1024px){#next-steps{text-align:center;flex-direction:column}}#docs{border-right:1px solid var(--border)}@media (width<=1024px){#docs{border-right:none;border-bottom:1px solid var(--border)}}#next-steps ul{gap:8px;margin:32px 0 0;padding:0;list-style:none;display:flex}#next-steps ul .logo{height:18px}#next-steps ul a{color:var(--text-h);background:var(--social-bg);border-radius:6px;align-items:center;gap:8px;padding:6px 12px;font-size:16px;text-decoration:none;transition:box-shadow .3s;display:flex}#next-steps ul a:hover{box-shadow:var(--shadow)}#next-steps ul a .button-icon{width:18px;height:18px}@media (width<=1024px){#next-steps ul{flex-wrap:wrap;justify-content:center;margin-top:20px}#next-steps ul li{flex:calc(50% - 8px)}#next-steps ul a{box-sizing:border-box;justify-content:center;width:100%}}#spacer{border-top:1px solid var(--border);height:88px}@media (width<=1024px){#spacer{height:48px}}.ticks{width:100%;position:relative}.ticks:before,.ticks:after{content:"";border:5px solid #0000;position:absolute;top:-4.5px}.ticks:before{border-left-color:var(--border);left:0}.ticks:after{border-right-color:var(--border);right:0}
