@import url(https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap);body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}body{background:#f5f7fa;font-family:Poppins,sans-serif;margin:0}.logo-div{align-items:center;display:flex;height:10rem;justify-content:center;width:10rem}.logo-div img{max-height:100%;max-width:100%;object-fit:contain}.app-shell{min-height:100vh}.auth-container{display:flex;height:100vh}.auth-left{align-items:center;background:linear-gradient(135deg,#2ed8a3,#2bb7da,#1e6bd6);display:flex;flex:1 1;justify-content:center;overflow:hidden;padding:60px;position:relative}.auth-left:before{background:#ffffff14;border-radius:50%;content:"";height:650px;position:absolute;right:-180px;top:-180px;width:650px}.branding{max-width:520px;position:relative;z-index:2}.brand-logo{margin-bottom:35px;object-fit:contain;width:180px}.brand-heading{color:#fff;font-size:64px;font-weight:800;letter-spacing:-2px;line-height:1.05;margin:0}.brand-heading span{display:inline}.brand-subtitle{color:#ffffffeb;font-size:24px;font-weight:400;margin-bottom:22px;margin-top:28px}.brand-company{color:#ffffffc7;font-size:15px;line-height:1.6}.auth-right{align-items:center;background:#f4f5f9;flex:1 1;overflow:hidden;padding:60px}.auth-card,.auth-right{display:flex;justify-content:center}.auth-card{flex-direction:column;max-width:520px;overflow:visible;width:100%}.auth-card h2{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#1e6bd6,#2bb7da);background-clip:text;-webkit-background-clip:text;font-size:48px;line-height:normal;margin:0 0 30px;padding-bottom:12px;padding-top:8px}.auth-hint{color:#64748b;font-size:14px;line-height:1.5;margin:-16px 0 10px}.auth-card h2{color:#1e6bd6;font-size:52px;font-weight:800;letter-spacing:-2px;line-height:1.1;margin-bottom:10px;white-space:nowrap}.auth-card form{display:flex;flex-direction:column;width:100%}.auth-card input{background:#fff;border:1px solid #e4e7ec;border-radius:18px;box-sizing:border-box;font-size:16px;height:58px;padding:0 10px;transition:.2s ease;width:100%}.auth-card button{background:linear-gradient(135deg,#1e6bd6,#2bb7da);border:none;border-radius:10px;color:#fff;cursor:pointer;font-size:17px;font-weight:500;height:58px;margin-top:1rem;transition:.25s ease;width:100%}.auth-links{align-items:center;display:flex;justify-content:space-between;margin-top:24px;padding:0 2px;width:100%}.error{color:#e11d48;margin-top:12px}.success{color:#16a34a;margin-top:12px}.form-group{margin-bottom:10px;margin-top:0;width:100%}.field-helper{display:flex;justify-content:space-between;margin-top:4px;padding:0 5px}.forgot-link{color:#06c;font-size:.85rem;text-decoration:none}.forgot-link:hover{text-decoration:underline}.dashboard-layout{display:flex;height:100vh}.dashboard-layout:not(:has(.main-area)) .sidebar{background:linear-gradient(180deg,#2ed8a3,#2bb7da,#1e6bd6);color:#fff;padding:24px;width:240px}.sidebar h2{margin-bottom:30px}.sidebar nav{display:flex;flex-direction:column;gap:1px}.sidebar a{color:#fff;font-size:15px;text-decoration:none}.dashboard-main{display:flex;flex:1 1;flex-direction:column}.topbar{align-items:center;background:#fff;border-bottom:1px solid #eee;display:flex;height:70px;justify-content:space-between;padding:0 24px}.dashboard-content{padding:24px}.dashboard-cards{display:flex;gap:20px;margin-top:20px}.card{background:#fff;border-radius:18px;box-shadow:0 2px 8px #0000000d;flex:1 1;padding:30px;text-align:center}.brand-title{color:#fff;font-size:86px;font-weight:800;letter-spacing:-4px;line-height:.95;margin:0}.login-powered{color:#777;font-size:14px;margin-top:30px}.back-link{margin-top:18px}.back-link a{color:#1e6bd6;font-size:14px;text-decoration:none}.back-link a:hover{text-decoration:underline}.bg-image{height:100%;inset:0;object-fit:contain;position:absolute;width:100%;z-index:-1}.login-container{-webkit-overflow-scrolling:touch;background-position:50%;background-repeat:no-repeat;background-size:cover;display:flex;flex-direction:column;min-height:100vh;min-height:100dvh;overflow-x:clip;overflow-y:auto;width:100%}.login-content{grid-gap:32px;align-items:center;box-sizing:border-box;display:grid;flex:1 1;gap:32px;grid-template-columns:1.1fr .9fr;margin:0 auto;max-width:1400px;min-width:0;padding:40px 24px 24px;width:100%}.hero-section{color:#fff;display:flex;flex-direction:column;gap:30px;min-width:0;padding-right:50px}.hero-text-block h1{font-size:42px;font-weight:700;line-height:1.2;margin-bottom:15px;margin-top:0}.hero-subtitle{font-size:16px;line-height:1.5;max-width:480px;opacity:.9}.features-list{display:flex;flex-direction:column;gap:10px}.feature-item{gap:15px}.feature-icon,.feature-item{align-items:center;display:flex}.feature-icon{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#fff;border-radius:8px;font-size:18px;height:46px;justify-content:center;width:47px}.feature-info h3{font-size:15px;font-weight:600}.feature-info p{font-size:13px;opacity:.8}.security-badge{align-items:center;background:#ffffff1a;border:1px solid #fff3;border-radius:8px;display:flex;gap:10px;margin-top:28px;max-width:-webkit-fit-content;max-width:fit-content;padding:14px 26px;top:5px}.shield-icon{font-size:20px}.security-badge strong{display:block;font-size:12px;letter-spacing:1px}.security-badge p{font-size:11px;opacity:.8}.form-section{align-items:flex-end;display:flex;flex-direction:column;min-width:0;position:relative;width:100%}.help-link{color:#0369a1;cursor:pointer;font-size:14px;font-weight:600;position:absolute;right:20px;text-decoration:none;top:-35px}.form-card{background:#fff;border-radius:24px;box-shadow:0 10px 30px #0000000d;box-sizing:border-box;max-width:580px;padding:40px;width:100%}.form-brand{align-items:center;display:inline-flex;margin-bottom:24px;text-decoration:none}.form-brand img{display:block;height:40px;max-width:220px;object-fit:contain;width:auto}.form-header h2{color:#1e293b;font-size:24px;margin:0 0 6px}.form-header p{color:#64748b;font-size:14px;margin:0 0 24px}.input-group{display:flex;flex-direction:column;gap:6px;margin-bottom:18px}.input-group label{color:#334155;font-size:13px;font-weight:600}.input-group input{border:1px solid #cbd5e1;border-radius:8px;box-sizing:border-box;color:#334155;font-size:14px;max-width:100%;min-width:0;outline:none;padding:12px 16px;transition:border-color .2s;width:100%}.input-group input:focus{border-color:#0284c7;box-shadow:0 0 0 3px #0284c71a}.helper-text{color:#94a3b8;font-size:11px;margin-top:2px}.form-utilities{flex-wrap:wrap;font-size:12px;gap:10px;justify-content:space-between;margin-bottom:24px}.form-utilities,.remember-me{align-items:center;display:flex}.remember-me{color:#475569;cursor:pointer;gap:6px}.forgot-links{align-items:flex-end;display:flex;flex-direction:column;gap:4px}.forgot-links a{color:#0284c7;font-weight:500;text-decoration:none}.forgot-links a:hover{text-decoration:underline}.btn-login{background:linear-gradient(135deg,#0284c7,#10b981);border:none;border-radius:12px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;padding:14px;transition:opacity .2s;width:100%}.btn-login:hover{opacity:.95}.form-divider{background-color:#f1f5f9;height:1px;margin:24px 0}.action-buttons-group{display:flex;gap:15px}.login-home-link{text-align:center}.login-home-link a{color:#0284c7;font-size:14px;font-weight:600;text-decoration:none}.login-home-link a:hover{text-decoration:underline}.btn-secondary{background:none;border:1px solid #0284c7;border-radius:8px;color:#0284c7;flex:1 1;font-size:14px;padding:10px}.btn-secondary:hover{background-color:#f0f9ff}.footer-copyright{box-sizing:border-box;color:#000;font-size:12px;font-weight:600;letter-spacing:.01em;line-height:24px;padding:12px 16px 20px;text-align:center;width:100%}@media (max-width:1100px){.hero-text-block h1{font-size:34px}.hero-section{gap:22px;padding-right:24px}}@media (max-width:900px){.login-content{align-items:center;display:flex;flex-direction:column;gap:0;justify-content:flex-start;padding:max(20px,env(safe-area-inset-top,0px)) 24px 28px;width:100%}.hero-section{display:none}.form-section{align-items:stretch;max-width:440px;width:100%}.form-card{max-width:none;padding:28px 24px 24px;width:100%}.help-link{align-self:flex-end;color:#0f172a;margin:0 4px 14px;position:static;text-align:right;width:auto}}@media (max-width:640px){.login-content{padding:max(16px,env(safe-area-inset-top,0px)) 18px 24px}.form-card{border-radius:18px;padding:22px 18px 20px}.form-brand{margin-bottom:16px}.form-brand img{height:32px;max-width:168px}.form-header h2{font-size:20px}.form-header p{font-size:13px;line-height:1.4;margin-bottom:16px}.input-group{margin-bottom:14px}.input-group input{font-size:16px;padding:11px 12px}.form-utilities{font-size:12px;gap:8px;margin-bottom:16px}.btn-login{font-size:15px;padding:13px}.form-divider{margin:16px 0}.help-link{font-size:13px;margin:0 2px 12px}}@media (max-width:400px){.login-content{padding:max(14px,env(safe-area-inset-top,0px)) 14px 20px}.form-utilities{flex-direction:column}.forgot-links,.form-utilities{align-items:flex-start}}*{box-sizing:border-box;margin:0;padding:0}body{background:#f5f7fb;font-family:Inter,sans-serif}:root{--sidebar-width:280px}.dashboard-layout{background:#f5f7fb;min-height:100vh}.dashboard-layout .sidebar{background:#fff;border-right:1px solid #e5e7eb;display:flex;flex-direction:column;gap:24px;height:100vh;justify-content:flex-start;left:0;overflow:hidden;padding:5px 20px 30px;position:fixed;top:0;width:280px;width:var(--sidebar-width);z-index:100}.sidebar-top{display:flex;flex-direction:column;min-height:0}.brand h1{color:#2563eb;font-size:26px;font-weight:800;line-height:1}.client-info{color:#0ea5e9;font-size:16px;font-weight:700;margin-top:16px}.brand span{color:#06b6d4}.brand p{color:#6b7280;font-size:14px;font-size:15px;margin-top:6px}.sidebar-menu{display:flex;flex:1 1;flex-direction:column;gap:10px;margin-top:10px;min-height:0;overflow-x:hidden;overflow-y:auto}.menu-item{align-items:center;background:#0000;border:none;border-radius:14px;color:#475569;cursor:pointer;display:flex;font-size:15px;font-weight:600;gap:10px;height:52px;transition:.2s}.menu-item:hover{background:#f1f5f9}.menu-item.active{background:#eff6ff;color:#2563eb}.sidebar-user{border-top:1px solid #e5e7eb;gap:12px;margin-top:auto;padding-top:20px}.sidebar-user,.user-avatar{align-items:center;display:flex;flex-shrink:0}.user-avatar{background:#2563eb;border-radius:50%;color:#fff;font-weight:700;height:48px;justify-content:center;overflow:hidden;width:48px}.user-avatar-img{display:block;height:100%;object-fit:cover;width:100%}.user-meta h4{font-size:14px}.user-meta p{color:#6b7280;font-size:12px}.dashboard-layout .main-area{display:flex;flex-direction:column;margin-left:280px;margin-left:var(--sidebar-width);min-height:100vh;min-width:0;width:calc(100% - 280px);width:calc(100% - var(--sidebar-width))}.dashboard-layout .topbar{align-items:center;background:#fff;border-bottom:1px solid #e5e7eb;display:flex;flex-shrink:0;gap:16px;height:78px;justify-content:space-between;min-width:0;padding:0 32px;position:-webkit-sticky;position:sticky;top:0;z-index:10}.topbar h2{color:#111827;font-size:16px;font-weight:700;margin:0}.topbar p{color:#6b7280;font-size:12px;margin-top:4px}.logout-btn{align-items:center;background:#ef4444;border:none;border-radius:12px;color:#fff;cursor:pointer;display:flex;font-weight:600;gap:8px;height:46px;padding:0 20px}.dashboard-layout .page-content{flex:1 1;min-width:0;overflow-x:auto;padding:20px 24px 32px}.stats-grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(4,1fr)}.stat-card{border:1px solid #edf2f7;border-radius:10px;display:flex;flex-direction:row-reverse;gap:12px;justify-content:flex-end;padding:20px 15px}.stat-card div{display:flex;flex-direction:column;gap:2px}.stat-card h4{color:#6b7280;font-size:15px;font-weight:600}.stat-card h2{color:#111827;font-size:24px}.positive{color:#16a34a}.neutral,.positive{font-size:12px;font-weight:600}.neutral{color:#64748b}.negative{color:#dc2626;font-size:12px;font-weight:600}.stat-icon{align-items:center;border-radius:10px;display:flex;font-size:28px;height:100%;justify-content:center;width:54px}.blue{background:#dbeafe}.green{background:#dcfce7}.orange{background:#ffedd5}.purple{background:#f3e8ff}.bottom-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(2,1fr);height:100%;margin-top:28px}.activity-card,.holiday-card,.leave-card{background:#fff;border:1px solid #edf2f7;border-radius:22px;max-height:40rem;min-height:15rem;overflow:hidden auto;padding:28px}.activity-card::-webkit-scrollbar,.holiday-card::-webkit-scrollbar,.leave-card::-webkit-scrollbar{width:8px}.activity-card::-webkit-scrollbar-track,.holiday-card::-webkit-scrollbar-track,.leave-card::-webkit-scrollbar-track{background:#0000;margin:1rem 0}.activity-card::-webkit-scrollbar-thumb,.holiday-card::-webkit-scrollbar-thumb,.leave-card::-webkit-scrollbar-thumb{background-clip:padding-box;background-color:#cbd5e1;border-radius:20px;margin-top:5px}.activity-card::-webkit-scrollbar-thumb:hover,.holiday-card::-webkit-scrollbar-thumb:hover,.leave-card::-webkit-scrollbar-thumb:hover{background-color:#94a3b8}.activity-card h3,.holiday-card h3,.leave-card h3{color:#111827;font-size:18px;margin-bottom:24px}.activity-item{border-bottom:1px solid #f1f5f9;display:flex;gap:16px;padding:18px 0}.activity-avatar{align-items:center;background:#dbeafe;border-radius:50%;color:#2563eb;display:flex;font-weight:700;height:52px;justify-content:center;width:42px}.activity-item h4{font-size:15px;margin-bottom:6px}.activity-item p{color:#6b7280;font-size:13px}.leave-item{background:#f8fafc;border-radius:14px;margin-bottom:16px;padding:14px}.leave-item h4{font-size:15px;margin-bottom:5px}.leave-item p{color:#6b7280;font-size:13px;margin-bottom:6px}.leave-item span{color:#2563eb;font-size:13px;font-weight:600}.holiday-card{margin-top:24px}.holiday-item{align-items:center;background:#f8fafc;border-radius:14px;display:flex;gap:14px;margin-bottom:12px;padding:14px}.holiday-item:last-child{margin-bottom:0}.holiday-date-badge{background:#fef3c7;border-radius:12px;color:#b45309;flex-shrink:0;min-width:132px;padding:10px 12px;text-align:center}.holiday-date-label{font-size:13px;font-weight:700}.holiday-details h4{color:#111827;font-size:15px;margin-bottom:4px}.holiday-details p{color:#6b7280;font-size:12px;text-transform:capitalize}.dashboard-page{min-height:100%;width:100%}.dashboard-welcome{margin-bottom:20px}.dashboard-welcome h3{color:#111827;font-size:22px;font-weight:700;margin-bottom:6px}.dashboard-welcome p{color:#64748b;font-size:14px}.role-badge{background:#eff6ff;border-radius:20px;color:#2563eb;display:inline-block;font-size:12px;font-weight:600;margin-left:4px;padding:2px 10px}.dashboard-loading{align-items:center;color:#64748b;display:flex;flex-direction:column;gap:12px;justify-content:center;padding:60px 20px}.dashboard-loading .spin{animation:dashboard-spin .8s linear infinite;color:#2563eb}@keyframes dashboard-spin{to{transform:rotate(1turn)}}.dashboard-error{align-items:center;background:#fef2f2;border:1px solid #fecaca;border-radius:12px;color:#dc2626;display:flex;font-size:14px;gap:10px;margin-bottom:20px;padding:14px 18px}.insights-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.insight-chip{align-items:center;background:#eff6ff;border-radius:20px;color:#1d4ed8;display:inline-flex;font-size:13px;font-weight:600;gap:8px;padding:8px 14px}.insight-chip.warning{background:#fff7ed;color:#c2410c}.dashboard-mid-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:1fr;margin-top:24px}.chart-card,.summary-card{background:#fff;border:1px solid #edf2f7;border-radius:22px;padding:24px 28px}.summary-card{margin-top:1rem}.chart-card-head{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:16px}.chart-card-head h3{align-items:center;color:#111827;display:flex;font-size:17px;gap:8px;margin-bottom:4px}.chart-card-head p{color:#64748b;font-size:13px}.attendance-rate-badge{background:#dcfce7;border-radius:20px;color:#15803d;font-size:13px;font-weight:700;padding:6px 12px;white-space:nowrap}.dashboard-chart{margin-top:8px}.attendance-breakdown{border-top:1px solid #f1f5f9;display:flex;flex-wrap:wrap;gap:8px;margin-top:16px;padding-top:16px}.breakdown-item{border-radius:20px;font-size:12px;font-weight:600;padding:4px 10px}.breakdown-item.present{background:#dcfce7;color:#15803d}.breakdown-item.absent{background:#fee2e2;color:#dc2626}.breakdown-item.late{background:#fef3c7;color:#d97706}.breakdown-item.half{background:#e0e7ff;color:#4338ca}.summary-card h3{color:#111827;font-size:17px;margin-bottom:4px}.summary-period{color:#64748b;font-size:13px;margin-bottom:20px}.summary-rows{display:flex;flex-direction:column;gap:14px}.summary-row{align-items:center;color:#64748b;display:flex;font-size:14px;justify-content:space-between}.summary-row strong{color:#111827;font-size:16px}.text-green{color:#16a34a!important}.text-amber{color:#d97706!important}.link-btn{align-items:center;background:#0000;border:none;color:#2563eb;cursor:pointer;display:inline-flex;font-size:13px;font-weight:600;gap:6px;margin-top:16px;padding:0}.link-btn.small{font-size:12px;margin-top:0}.section-head{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.section-head h3{font-size:18px;margin-bottom:0}.section-count{color:#94a3b8;font-size:12px;font-weight:600}.activity-body h4{color:#111827;font-size:14px;font-weight:600;margin-bottom:2px}.activity-body p{color:#475569;font-size:13px;margin-bottom:4px}.activity-time{color:#94a3b8;font-size:12px}.activity-avatar.leave{background:#ffedd5;color:#c2410c}.activity-avatar.expense{background:#f3e8ff;color:#7c3aed}.activity-avatar.attendance{background:#dcfce7;color:#15803d}.activity-avatar.employee{background:#dbeafe;color:#2563eb}.leave-item-top{gap:12px;margin-bottom:8px}.leave-avatar,.leave-item-top{align-items:center;display:flex}.leave-avatar{background:#dbeafe;border-radius:50%;color:#2563eb;flex-shrink:0;font-size:12px;font-weight:700;height:36px;justify-content:center;width:36px}.empty-hint{color:#94a3b8;font-size:14px;padding:12px 0}.approvals-section{margin-top:28px;padding:0}.approvals-section h3{color:#111827;font-size:18px;margin-bottom:16px;padding-left:8px}.approvals-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(2,1fr)}.approval-card{background:#fff;border:1px solid #edf2f7;border-radius:18px;padding:22px}.approval-card-head{align-items:center;color:#111827;display:flex;font-size:16px;font-weight:700;gap:8px;margin-bottom:16px}.approval-count{background:#fef3c7;border-radius:20px;color:#d97706;font-size:12px;font-weight:700;margin-left:auto;padding:2px 10px}.approval-item{border-bottom:1px solid #f1f5f9;display:flex;flex-direction:column;font-size:13px;gap:2px;padding:10px 0}.approval-item strong{color:#111827}.approval-item span{color:#64748b}@media (max-width:1100px){.stats-grid{grid-template-columns:repeat(2,1fr)}.approvals-grid,.bottom-grid,.dashboard-mid-grid{grid-template-columns:1fr}}@media (max-width:600px){.stats-grid{grid-template-columns:1fr}}.stats-grid{margin-top:10px}.bottom-grid{margin-top:20px}.employee-page{max-width:100%;min-width:0;width:100%}.employee-page__count{color:#64748b;font-size:14px;margin:0 0 16px}.employee-page__count strong{color:#0f172a;font-weight:700}.employee-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:20px}.search-wrapper{align-items:center;background:#fff;border:1px solid #e5e7eb;border-radius:8px;display:flex;flex:1 1;gap:10px;max-width:100%;min-height:40px;min-width:0;padding:0 14px}.search-wrapper svg{color:#94a3b8;flex-shrink:0}.search-wrapper input{background:#0000;border:none;flex:1 1;font-size:14px;min-width:0;outline:none;width:100%}.toolbar-actions{display:flex;flex-shrink:0;flex-wrap:wrap;gap:10px}.add-btn,.upload-btn{align-items:center;border:none;border-radius:12px;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:8px;height:48px;justify-content:center;padding:0 16px;white-space:nowrap}.upload-btn{background:#f1f5f9;color:#111827}.add-btn{background:linear-gradient(135deg,#1e6bd6,#2bb7da);color:#fff}.employee-table-card{background:#fff;border:1px solid #edf2f7;border-radius:16px;max-width:100%;overflow:hidden;padding:0;width:100%}.employee-table-scroll{-webkit-overflow-scrolling:touch;max-width:100%;overflow-x:auto;padding:16px 20px 20px;width:100%}.employee-table{border-collapse:collapse;min-width:880px;width:100%}.employee-table th{border-bottom:1px solid #f1f5f9;color:#6b7280;font-size:13px;padding:14px;text-align:left}.employee-table td{border-bottom:1px solid #f8fafc;font-size:14px;padding:16px 14px}.employee-table tr:hover{background:#f9fafb}.empty-row{color:#9ca3af;padding:24px;text-align:center}.status-badge{border-radius:20px;font-size:12px;font-weight:600;padding:6px 12px}.status-badge.active{background:#dcfce7;color:#15803d}.status-badge.inactive{background:#fee2e2;color:#dc2626}.action-buttons{display:flex;flex-wrap:nowrap;gap:6px}@media (max-width:1100px){:root{--sidebar-width:260px}.dashboard-layout .topbar{padding:0 20px}.dashboard-layout .page-content{padding:16px 18px 28px}}@media (max-width:768px){.employee-toolbar{align-items:stretch;flex-direction:column}.toolbar-actions{width:100%}.add-btn,.upload-btn{flex:1 1;min-width:0}.dashboard-layout .topbar h2{font-size:15px}}.delete-btn,.edit-btn,.view-btn{align-items:center;border:none;border-radius:10px;cursor:pointer;display:inline-flex;height:34px;justify-content:center;width:34px}.approve-btn svg,.delete-btn svg,.document-actions button svg,.document-icon svg,.edit-btn svg,.leave-actions button svg,.letter-btn svg,.logout-btn svg,.manage-depts-row-buttons button svg,.menu-item svg,.reject-btn svg,.view-btn svg{flex-shrink:0}.view-btn{background:#eff6ff;color:#2563eb}.edit-btn{background:#fef3c7;color:#d97706}.delete-btn{background:#fee2e2;color:#dc2626}.modal-overlay{background:#0f172a73;z-index:999}.modal{padding:16px;position:relative}.large-modal,.modal{background:#fff;border-radius:24px}.large-modal{max-height:90vh;max-width:1400px;overflow-y:auto;padding:24px;width:95%}.modal-header{margin-bottom:18px}.modal-header h3{color:#111827;font-size:20px}.modal-header button{background:#0000;border:none;cursor:pointer}.modal input{border:1px solid #e5e7eb;border-radius:12px;height:48px;margin-bottom:12px;padding:14px;width:100%}.modal button{background:#2563eb;border:none;border-radius:12px;color:#fff;cursor:pointer;padding:12px 20px}.employee-form{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(2,minmax(0,1fr))}.employee-form button{background:#2563eb;border:none;border-radius:12px;color:#fff;font-weight:600;grid-column:span 2;height:48px}.employee-form input,.employee-form select{border:1px solid #d9d9d9;border-radius:14px;height:56px;padding:0 16px;width:100%}.success{color:green;font-size:14px}.error{color:red;font-size:14px}.documents-page{padding:24px 28px}.documents-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.documents-header h1{color:#111827;font-size:24px;font-weight:700}.documents-header p{color:#6b7280;font-size:14px;margin-top:4px}.upload-document-btn{align-items:center;border:none;border-radius:14px;color:#fff;cursor:pointer;display:flex;font-size:15px;font-weight:600;gap:10px;height:50px;padding:0 26px}.upload-document-btn,.upload-document-btn:hover{background:linear-gradient(135deg,#1e6bd6,#2bb7da)}.modal-overlay{align-items:flex-start;background:#00000059;overflow-y:auto;z-index:9999}.upload-modal{background:#fff;border-radius:24px;box-shadow:0 20px 40px #0000001f;padding:32px;width:560px}.upload-modal h2{color:#111827;font-size:22px;margin-bottom:22px}.custom-file-upload{align-items:center;background:#fff;border:1px solid #dbe3ef;border-radius:18px;display:flex;gap:16px;height:72px;padding:0 16px;width:100%}.choose-file-btn{background:linear-gradient(135deg,#1e6bd6,#2bb7da);border:none;border-radius:14px;color:#fff;cursor:pointer;flex-shrink:0;font-size:15px;font-weight:600;height:44px;width:150px}.file-name{color:#6b7280;flex:1 1;font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hidden-file-input{display:none!important}.upload-category{background:#fff;border:1px solid #dbe3ef;border-radius:18px;font-size:15px;height:64px;margin-top:16px;outline:none;padding:0 18px;width:100%}.modal-actions{gap:14px}.cancel-btn{border-radius:14px;color:#111827;font-size:15px;font-weight:500;height:48px;width:120px}.upload-btn{border:none;border-radius:14px;cursor:pointer;height:50px;min-width:140px;width:-webkit-fit-content;width:fit-content}.doc-upload,.documents-toolbar-card{background:#fff;border:1px solid #e5e7eb;border-radius:18px;margin-bottom:28px;padding:20px}.doc-upload__row{align-items:flex-end;display:flex;flex-wrap:wrap;gap:14px}.doc-upload__field{display:flex;flex:1 1;flex-direction:column;gap:7px;min-width:200px}.doc-upload__field>span{color:#64748b;font-size:12.5px;font-weight:600}.doc-upload__field select{background:#fff;border:1px solid #e5e9f0;border-radius:11px;color:#0f172a;cursor:pointer;font-size:14px;height:44px;padding:0 12px}.doc-upload__file{align-items:center;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:11px;color:#64748b;display:flex;font-size:14px;gap:9px;height:44px;overflow:hidden;padding:0 14px;position:relative;transition:border-color .15s ease,background .15s ease}.doc-upload__file:hover{background:#f2f7ff;border-color:#93b4f5}.doc-upload__file input[type=file]{cursor:pointer;inset:0;opacity:0;position:absolute}.doc-upload__filename{color:#334155;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.doc-upload__hint{color:#94a3b8;font-size:12.5px;margin:12px 0 0}.doc-upload__msg{color:#1d4ed8;font-size:13px;font-weight:500;margin:8px 0 0}.document-filters{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.filter-btn{background:#f1f5f9;border:none;border-radius:12px;color:#475569;cursor:pointer;font-size:14px;font-weight:500;padding:10px 16px}.filter-btn.active{background:linear-gradient(135deg,#1e6bd6,#2bb7da);color:#fff}.documents-grid{grid-gap:18px;display:grid;gap:18px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.document-card{background:#fff;border:1px solid #eceff3;border-radius:16px;display:flex;flex-direction:column;padding:18px;transition:box-shadow .18s ease,border-color .18s ease,transform .18s ease}.document-card:hover{border-color:#dbe3ee;box-shadow:0 10px 24px #0f172a14;transform:translateY(-2px)}.document-top{gap:12px;justify-content:space-between;margin-bottom:14px}.document-icon,.document-top{align-items:center;display:flex}.document-icon{border-radius:12px;flex-shrink:0;height:46px;justify-content:center;width:46px}.document-icon--pdf{background:#fef2f2;color:#e11d48}.document-icon--sheet{background:#ecfdf5;color:#059669}.document-icon--image{background:#f5f3ff;color:#7c3aed}.document-icon--doc{background:#eff6ff;color:#2563eb}.document-type-badge{background:#f1f5f9;border-radius:999px;color:#475569;display:inline-block;font-size:11px;font-weight:600;letter-spacing:.01em;padding:4px 11px}.document-name{color:#0f172a;font-size:15px;font-weight:600;line-height:1.35;margin:0 0 6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.document-meta{align-items:center;color:#94a3b8;display:flex;flex-wrap:wrap;font-size:12.5px;gap:6px}.document-meta__dot{color:#cbd5e1}.document-owner{color:#475569;font-weight:600}.document-bottom{align-items:center;border-top:1px solid #f1f5f9;display:flex;justify-content:space-between;margin-top:16px;padding-top:13px}.document-date{color:#94a3b8;font-size:12.5px}.document-actions{display:flex;gap:8px}.document-actions button{align-items:center;background:#fff;border:1px solid #e5e9f0;border-radius:10px;color:#475569;cursor:pointer;display:inline-flex;font-size:13px;font-weight:500;gap:6px;height:34px;padding:0 10px;transition:background .15s ease,color .15s ease,border-color .15s ease}.document-actions__view{border-color:#dbe6fb;color:#1d4ed8}.document-actions button:hover{background:#eff6ff;border-color:#bfd6f7;color:#1d4ed8}.documents-empty{align-items:center;color:#94a3b8;display:flex;flex-direction:column;gap:6px;grid-column:1/-1;padding:56px 20px;text-align:center}.documents-empty p{color:#475569;font-size:15px;font-weight:600;margin:6px 0 0}.documents-empty span{color:#94a3b8;font-size:13px}.document-modal-content{display:flex;flex-direction:column;gap:16px;margin-top:20px}@media (max-width:768px){.documents-header{align-items:flex-start;flex-direction:column;gap:14px}.documents-grid{grid-template-columns:1fr}}.letter-btn{align-items:center;background:#eff6ff;border:none;border-radius:10px;color:#2563eb;cursor:pointer;display:flex;height:34px;justify-content:center;width:34px}.salary-grid{grid-gap:12px;display:grid;gap:12px;grid-column:1/-1;grid-template-columns:repeat(2,1fr)}.full-width{grid-column:1/-1}.employee-login-option{background:#f8fafc;border:1px solid #e8edf4;border-radius:12px;display:flex;flex-direction:column;gap:10px;padding:14px 16px}.employee-login-toggle{align-items:center;color:#0f172a;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:10px}.employee-login-toggle input{margin:0;min-height:auto;width:auto}.employee-login-hint{color:#64748b;font-size:13px;line-height:1.5;margin:0}.employee-login-warning{color:#b45309;font-size:13px;font-weight:600;line-height:1.5;margin:0}.credentials-modal{width:min(480px,92vw);z-index:1100}.modal-overlay:has(.credentials-modal){z-index:1099}.credentials-body{display:flex;flex-direction:column;gap:14px;margin-top:8px}.credentials-row{background:#f8fafc;border:1px solid #e8edf4;border-radius:10px;display:flex;flex-direction:column;gap:4px;padding:12px 14px}.credentials-row span{color:#64748b;font-size:12px;font-weight:600}.credentials-row strong{color:#0f172a;font-size:15px;word-break:break-all}.credentials-password-box{background:#eff6ff;border:1px solid #bfdbfe;border-radius:12px;display:flex;flex-direction:column;gap:8px;padding:16px}.credentials-password-box span{color:#1d4ed8;font-size:12px;font-weight:600}.credentials-password-box strong{color:#0f172a;font-size:24px;letter-spacing:.08em}.credentials-password-box p{color:#475569;font-size:13px;margin:0}.employee-login-fields{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr))}@media (max-width:760px){.employee-login-fields{grid-template-columns:1fr}}.salary-row{grid-gap:12px;display:grid;gap:12px;grid-template-columns:2fr 1fr 1fr auto;margin-bottom:12px;width:100%}.file-input{background:#0000!important;border:none!important;height:auto!important;padding:0!important;width:auto!important}.file-upload-wrapper{background:#fafafa;border:1px dashed #d9d9d9;border-radius:12px;padding:20px}.document-select{border:1px solid #d9d9d9;border-radius:12px;height:48px;margin-bottom:16px;padding:12px;width:250px}.documents-modal{max-width:700px}.document-section{display:flex;flex-direction:column;gap:20px;margin-top:24px}.employee-doc-header span{color:#777;font-size:13px}.employee-doc-header h4{font-size:22px;font-weight:600;margin-top:6px}.documents-modal .modal-header button{height:48px;min-width:48px;width:48px}.profile-section{margin-bottom:28px}.profile-section h4{border-bottom:1px solid #e5e7eb;color:#2563eb;font-size:18px;font-weight:600;margin-bottom:12px;padding-bottom:8px}.profile-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(2,1fr)}.profile-grid div{display:flex;flex-direction:column}.profile-grid label{color:#6b7280;font-size:12px;margin-bottom:4px}.profile-grid span{color:#111827;font-size:15px;font-weight:500}.documents-list h4{margin-bottom:12px}.document-item{background:#fafafa;margin-bottom:10px}.view-doc-btn{padding:8px 14px}.documents-list{margin-top:24px}.document-item{align-items:center;border:1px solid #e5e7eb;border-radius:10px;display:flex;justify-content:space-between;margin-top:10px;padding:12px}.view-doc-btn{background:#2563eb;border:none;border-radius:8px;color:#fff;cursor:pointer;padding:8px 16px}.save-btn{font-weight:600;height:48px;width:220px}.hdw-fab{align-items:center;background:linear-gradient(135deg,#1e6bd6,#2bb7da);border:none;border-bottom-left-radius:15px;border-top-left-radius:15px;bottom:80px;box-shadow:0 6px 18px #06c6;color:#fff;cursor:pointer;display:flex;height:56px;justify-content:center;position:fixed;right:0;transition:transform .15s ease;width:45px;z-index:1200}.hdw-fab:hover{width:76px}.hdw-panel{animation:hdw-rise .18s ease;background:#fff;border-radius:14px;bottom:150px;box-shadow:0 12px 40px #0f1e3c38;display:flex;flex-direction:column;height:560px;max-height:calc(100vh - 120px);max-width:calc(100vw - 32px);overflow:hidden;position:fixed;right:24px;width:380px;z-index:1201}@keyframes hdw-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.hdw-panel-head{align-items:center;background:linear-gradient(135deg,#1e6bd6,#2bb7da);color:#fff;display:flex;gap:8px;padding:14px 16px}.hdw-panel-head h3{flex:1 1;font-size:15px;margin:0}.hdw-x{background:#ffffff26;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;padding:4px}.hdw-panel-body{display:flex;flex:1 1;flex-direction:column;overflow:hidden}.hdw-list-header{align-items:center;display:flex;justify-content:space-between;padding:12px 14px 8px}.hdw-list-header h4{color:#333;font-size:14px;margin:0}.hdw-new-btn{align-items:center;background:#e8f1fc;border:none;border-radius:7px;color:#06c;cursor:pointer;display:flex;font-size:12px;font-weight:600;gap:4px;padding:6px 10px}.hdw-new-btn:hover{background:#d5e7fa}.hdw-ticket-list{flex:1 1;overflow-y:auto;padding:0 10px 12px}.hdw-ticket-row{background:#fafbfd;border:1px solid #edf0f4;border-radius:10px;cursor:pointer;margin-bottom:8px;padding:10px 26px 9px 12px;position:relative;text-align:left;transition:border-color .12s ease,background .12s ease;width:100%}.hdw-ticket-row:hover{background:#f3f8fe;border-color:#bcd8f5}.hdw-ticket-row-top{align-items:center;display:flex;justify-content:space-between;margin-bottom:3px}.hdw-code{color:#06c;font-size:11px;font-weight:700;letter-spacing:.4px}.hdw-status{border-radius:20px;font-size:10px;font-weight:700;padding:2px 8px;text-transform:uppercase}.hdw-status.open{background:#fff4e0;color:#b26a00}.hdw-status.closed{background:#e6f6ea;color:#1d7a35}.hdw-subject{color:#222;font-size:13px;font-weight:600;margin:2px 0 6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hdw-ticket-row-bottom{color:#8792a2;display:flex;font-size:11px;justify-content:space-between}.hdw-meta-right{align-items:center;display:inline-flex;gap:5px}.hdw-unread-dot{background:#f0453c;border-radius:50%;display:inline-block;height:8px;width:8px}.hdw-chevron{color:#b6bfcc;position:absolute;right:8px;top:50%;transform:translateY(-50%)}.hdw-empty{align-items:center;color:#98a2b3;display:flex;flex-direction:column;font-size:13px;gap:6px;padding:40px 16px;text-align:center}.hdw-empty p{color:#667085;font-weight:600;margin:4px 0 0}.hdw-empty span{font-size:12px}.hdw-form{display:flex;flex-direction:column;gap:11px;overflow-y:auto;padding:4px 16px 16px}.hdw-form-header{align-items:center;display:flex;gap:10px;padding-top:8px}.hdw-form-header h4{color:#333;font-size:14px;margin:0}.hdw-back{background:#f1f4f8;border:none;border-radius:7px;cursor:pointer;padding:5px}.hdw-back,.hdw-label{color:#475467;display:flex}.hdw-label{flex-direction:column;font-size:12px;font-weight:600;gap:5px}.hdw-row{grid-gap:10px;display:grid;gap:10px;grid-template-columns:1fr 1fr}.hdw-label input,.hdw-label select,.hdw-label textarea{border:1px solid #d7dee8;border-radius:8px;color:#101828;font-family:inherit;font-size:13px;outline:none;padding:8px 10px;resize:vertical}.hdw-label input:focus,.hdw-label select:focus,.hdw-label textarea:focus{border-color:#06c;box-shadow:0 0 0 2px #0066cc1f}.hdw-err{color:#d92d20;font-size:11px;font-weight:500}.hdw-submit{background:#06c;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:13px;font-weight:600;padding:10px}.hdw-submit:disabled{cursor:not-allowed;opacity:.6}.hdw-note{color:#98a2b3;font-size:11px;margin:-4px 0 0;text-align:center}.hdw-chat{display:flex;flex:1 1;flex-direction:column;min-height:0}.hdw-chat-header{align-items:center;border-bottom:1px solid #edf0f4;display:flex;gap:9px;padding:11px 12px}.hdw-chat-title{display:flex;flex:1 1;flex-direction:column;min-width:0}.hdw-chat-title strong{font-size:13px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hdw-chat-title span{color:#8792a2;font-size:11px}.hdw-close-btn{background:#fef0ef;border:1px solid #f5c6c2;border-radius:7px;color:#b42318;cursor:pointer;font-size:11px;font-weight:700;padding:6px 9px;white-space:nowrap}.hdw-closenote-box{background:#fffbf3;border-bottom:1px solid #f3e7cd;padding:10px 12px}.hdw-closenote-box textarea{border:1px solid #ecd9ae;border-radius:8px;font-family:inherit;font-size:12px;outline:none;padding:7px 9px;resize:none;width:100%}.hdw-closenote-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:7px}.hdw-closenote-actions button{background:#eef1f5;border:none;border-radius:7px;color:#344054;cursor:pointer;font-size:12px;font-weight:600;padding:6px 12px}.hdw-closenote-actions .confirm{background:#b42318;color:#fff}.hdw-messages{background:#f8fafc;flex:1 1;gap:10px;overflow-y:auto;padding:14px 12px}.hdw-messages,.hdw-msg{display:flex;flex-direction:column}.hdw-msg{max-width:82%}.hdw-msg.mine{align-items:flex-end;align-self:flex-end}.hdw-msg.theirs{align-items:flex-start;align-self:flex-start}.hdw-msg-sender{color:#667085;font-size:10px;font-weight:700;margin-bottom:3px}.hdw-bubble{border-radius:12px;font-size:13px;line-height:1.45;padding:8px 12px;white-space:pre-wrap;word-break:break-word}.hdw-msg.mine .hdw-bubble{background:#06c;border-bottom-right-radius:4px;color:#fff}.hdw-msg.theirs .hdw-bubble{background:#e9eef5;border-bottom-left-radius:4px;color:#1d2939}.hdw-msg-time{color:#98a2b3;font-size:10px;margin-top:3px}.hdw-inputbar{align-items:flex-end;background:#fff;border-top:1px solid #edf0f4;display:flex;gap:8px;padding:10px 12px}.hdw-inputbar textarea{border:1px solid #d7dee8;border-radius:9px;flex:1 1;font-family:inherit;font-size:13px;max-height:90px;outline:none;padding:8px 10px;resize:none}.hdw-inputbar textarea:focus{border-color:#06c}.hdw-inputbar button{align-items:center;background:#06c;border:none;border-radius:9px;color:#fff;cursor:pointer;display:flex;height:36px;justify-content:center;width:38px}.hdw-inputbar button:disabled{cursor:not-allowed;opacity:.5}.hdw-closed-bar{align-items:center;background:#f2f4f7;color:#667085;display:flex;font-size:12px;font-weight:600;gap:7px;justify-content:center;padding:12px}.hdw-error{background:#fef3f2;color:#b42318;font-size:12px;margin:0;padding:8px 14px}.generic-card{background:#fff;border:1px solid #f1f5f9;border-radius:10px;box-shadow:0 4px 20px #00000008;box-sizing:border-box;font-family:system-ui,-apple-system,sans-serif;max-width:380px;padding:20px;transition:transform .2s ease,box-shadow .2s ease;width:100%}.generic-card.interactive:hover{box-shadow:0 10px 25px #00000014;cursor:pointer;transform:translateY(-5px)}.generic-card.interactive:active{box-shadow:0 6px 15px #0000000d;transform:translateY(-2px)}.generic-card.stat-layout{align-items:center;display:flex;gap:18px}.card-icon-sidebar{align-items:center;background-color:#e6f0ff;border-radius:10px;display:flex;flex-shrink:0;font-size:28px;height:64px;justify-content:center;width:64px}.card-main-content{display:flex;flex-direction:column;gap:2px}.card-header{color:#64748b;font-size:16px;font-weight:500;margin:0}.card-body{color:#0f172a;font-size:24px;font-weight:700;line-height:1.2;margin:0}.card-footer{font-size:13px;font-weight:600;margin:0}.card-footer,.card-footer.positive{color:#00875a}.card-footer.negative{color:#de350b}.card-footer.neutral{color:#64748b}.card-icon-sidebar.blue{background-color:#dbeafe;color:#1e40af}.card-icon-sidebar.green{background-color:#dcfce7;color:#166534}.card-icon-sidebar.orange{background-color:#ffedd5;color:#9a3412}.card-icon-sidebar.purple{background-color:#f3e8ff;color:#6b21a8}.card-icon-sidebar.pink{background-color:#fce7f3;color:#be185d}.card-icon-sidebar.amber{background-color:#fef3c7;color:#b45309}.card-icon-sidebar.red{background-color:#fee2e2;color:#b91c1c}.card-icon-sidebar.teal{background-color:#ccfbf1;color:#0f766e}.card-icon-sidebar.gray{background-color:#e2e8f0;color:#475569}.emp-struct-editor{background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#334155;display:flex;flex-direction:column;font-family:system-ui,-apple-system,sans-serif;gap:20px;padding:24px}.emp-struct-editor__loading{animation:empStructPulse 2s infinite;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:12px;color:#64748b;font-size:.875rem;font-weight:500;padding:40px 20px;text-align:center}@keyframes empStructPulse{0%,to{opacity:1}50%{opacity:.7}}.emp-struct-view-header{align-items:center;background-color:#fff;border:1px solid #e2e8f0;border-radius:8px;display:flex;justify-content:space-between;padding:16px 20px}.emp-struct-view-header__ctc{display:flex;flex-direction:column;gap:4px}.emp-struct-view-header__label{color:#64748b;font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.emp-struct-view-header__value{color:#0f172a;font-size:1.25rem;font-weight:700}.emp-struct-mode-selector{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:24px 16px;text-align:center}.emp-struct-mode-selector__title{color:#334155;font-size:.95rem;font-weight:600;margin-bottom:16px}.emp-struct-mode-selector__options{grid-gap:16px;display:grid;gap:16px;grid-template-columns:1fr 1fr;margin:0 auto;max-width:560px}.emp-struct-mode-card{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:10px;cursor:pointer;display:flex;flex-direction:column;font-family:inherit;gap:10px;padding:28px 20px;transition:all .2s ease}.emp-struct-mode-card:hover:not(:disabled){background:#f0f7ff;border-color:#3b82f6;box-shadow:0 2px 8px #3b82f61f}.emp-struct-mode-card:disabled{cursor:not-allowed;opacity:.5}.emp-struct-mode-card__title{color:#0f172a;font-size:.875rem;font-weight:700}.emp-struct-mode-card__desc{color:#64748b;font-size:.75rem;line-height:1.4}.emp-struct-mode-switcher{display:flex;gap:8px;margin-bottom:4px}.emp-struct-mode-pill{align-items:center;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:20px;color:#64748b;cursor:pointer;display:inline-flex;font-size:.75rem;font-weight:600;gap:5px;padding:6px 14px;transition:all .2s ease}.emp-struct-mode-pill:hover{background:#e2e8f0}.emp-struct-mode-pill--active{background:#3b82f6;border-color:#3b82f6;color:#fff}.emp-struct-mode-pill--active:hover{background:#2563eb}.emp-struct-editor__toolbar{grid-gap:20px;align-items:flex-end;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;display:grid;gap:20px;grid-template-columns:1fr 1fr auto;padding:16px}.emp-struct-editor__field label{color:#334155;display:block;font-size:13px;font-weight:600;margin-bottom:8px}.emp-struct-editor__field input,.emp-struct-editor__field select{border:1px solid #cbd5e1;border-radius:6px;box-sizing:border-box;font-family:inherit;font-size:14px;padding:10px;width:100%}.emp-struct-editor__field input:focus,.emp-struct-editor__field select:focus{border-color:#3b82f6;outline:none}.emp-struct-editor__field input:disabled,.emp-struct-editor__field select:disabled{background-color:#f1f5f9;cursor:not-allowed}.emp-struct-manual{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;display:flex;flex-direction:column;gap:16px;padding:20px}.emp-struct-manual__header{align-items:flex-end;display:flex;gap:16px}.emp-struct-manual__header .emp-struct-editor__field{flex:1 1;margin-bottom:0}.emp-struct-manual__header .emp-struct-editor__field input{max-width:240px}.emp-struct-manual__picker{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.emp-struct-manual__group{display:flex;flex-direction:column;gap:2px}.emp-struct-manual__group-title{border-radius:6px 6px 0 0;font-size:.7rem;font-weight:700;letter-spacing:.05em;padding:8px 12px;text-transform:uppercase}.emp-struct-manual__group-title--earning{background:#f0fdf4;border:1px solid #bbf7d0;border-bottom:none;color:#166534}.emp-struct-manual__group-title--deduction{background:#fef2f2;border:1px solid #fecaca;border-bottom:none;color:#991b1b}.emp-struct-manual__group-title--employer{background:#eff6ff;border:1px solid #bfdbfe;border-bottom:none;color:#1e40af}.emp-struct-manual__item{align-items:center;background:#fff;border:1px solid #e2e8f0;border-top:none;cursor:pointer;display:flex;gap:8px;padding:8px 12px}.emp-struct-manual__item:last-child{border-radius:0 0 6px 6px}.emp-struct-manual__item:hover{background:#f1f5f9}.emp-struct-manual__item--selected{background:#eff6ff;border-color:#bfdbfe}.emp-struct-manual__item input[type=checkbox]{accent-color:#3b82f6;flex-shrink:0;height:16px;width:16px}.emp-struct-manual__item-name{color:#0f172a;flex:1 1;font-size:.8rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.emp-struct-manual__item-code{color:#94a3b8;font-size:.65rem;font-weight:500}.emp-struct-revision{grid-gap:16px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;display:grid;gap:16px;grid-template-columns:1fr 2fr;padding:16px}.emp-struct-simple-summary{align-items:center;background:#f1f5f9;border:1px solid #cbd5e1;border-radius:8px;display:flex;justify-content:space-between;padding:16px 20px}.emp-struct-simple-summary div{align-items:baseline;display:flex;gap:8px}.emp-struct-simple-summary span{color:#475569;font-size:.8rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.emp-struct-simple-summary strong{color:#0f172a;font-size:1.125rem;font-weight:700}.emp-struct-simple-summary .net-pay strong{color:#2563eb;font-size:1.25rem}.emp-struct-editor__panels{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(2,minmax(0,1fr))}.emp-struct-panel{background:#fff;border:1px solid #e2e8f0;border-radius:12px;display:flex;flex-direction:column;overflow:hidden}.emp-struct-panel__head{align-items:center;display:flex;font-size:.75rem;font-weight:700;justify-content:space-between;letter-spacing:.05em;padding:12px 16px;text-transform:uppercase}.emp-struct-panel--earning .emp-struct-panel__head{background:#f0fdf4;border-bottom:1px solid #bbf7d0;color:#166534}.emp-struct-panel--deduction .emp-struct-panel__head{background:#fef2f2;border-bottom:1px solid #fecaca;color:#991b1b}.emp-struct-panel__count{align-items:center;background:#fffc;border-radius:12px;display:inline-flex;font-size:.7rem;height:24px;justify-content:center;min-width:24px}.emp-struct-panel__empty{color:#94a3b8;font-size:.875rem;font-style:italic;padding:32px 16px;text-align:center}.emp-struct-row{grid-gap:12px;align-items:center;border-bottom:1px solid #f1f5f9;display:grid;gap:12px;grid-template-columns:minmax(0,1fr) 120px;padding:12px 16px}.emp-struct-row:last-child{border-bottom:none}.emp-struct-row__label{display:flex;flex-direction:column;gap:4px}.emp-struct-row__name{color:#0f172a;font-size:.875rem;font-weight:600}.emp-struct-row__hint{color:#64748b;font-size:.7rem}.emp-struct-row__amount input{border:1px solid #cbd5e1;border-radius:8px;box-sizing:border-box;font-size:.875rem;font-weight:500;height:40px;padding:0 12px;text-align:right;width:100%}.emp-struct-row__amount input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none}.emp-struct-row__amount input:focus{border-color:#3b82f6;outline:none}.emp-struct-row__amount input:disabled{background:#f1f5f9;color:#64748b;cursor:not-allowed}.emp-struct-editor__msg{align-items:center;border-radius:8px;display:flex;font-size:.875rem;font-weight:500;gap:8px;padding:12px 16px}.emp-struct-editor__msg--success{background:#ecfdf5;border:1px solid #a7f3d0;color:#065f46}.emp-struct-editor__msg--error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.emp-struct-editor__actions{border-top:1px solid #e2e8f0;display:flex;gap:12px;justify-content:flex-end;padding-top:16px}@media (max-width:900px){.emp-struct-editor__panels,.emp-struct-editor__toolbar{grid-template-columns:1fr}.emp-struct-simple-summary{align-items:flex-start;flex-direction:column;gap:12px}.emp-struct-mode-selector__options{grid-template-columns:1fr}}.generic-btn{align-content:center;align-items:center;background:linear-gradient(135deg,#1e6bd6,#2bb7da);border:none;border-radius:6px;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:5px;justify-content:center;padding:10px 16px;transition:opacity .2s ease,transform .1s ease}.secondary-btn{background:#fff;background-image:none;border:1.5px solid #1e6bd6;box-shadow:0 1px 2px #1e6bd614;color:#1e6bd6}.secondary-btn:hover:not(:disabled){background:#eff6ff;border-color:#1558b0;color:#1558b0;opacity:1}.secondary-btn:disabled{background:#f1f5f9;border-color:#cbd5e1;box-shadow:none;color:#94a3b8;cursor:not-allowed}.generic-btn:hover{opacity:.9}.generic-btn:active{transform:scale(.98)}.generic-btn:disabled{background:#ccc;color:#666;cursor:not-allowed;opacity:1;transform:none}.btn-icon{align-items:center;display:inline-flex;font-size:1.1em}.action-btn-delete{background:none;background-color:#fff1f2;color:#be123c}.action-btn-delete,.action-btn-edit{font-size:13px;font-weight:500;min-width:4rem;padding:8px 16px}.action-btn-edit{background:none;background-color:#c1bbbb77;color:#504f4f}.active{background:none;background-color:#1e6bd6}.active,.not-active{border-radius:20px;min-width:6rem}.not-active{background:none;background-color:#bfb9b9}.pagination{align-items:center;background:#fff;border-radius:0 0 16px 16px;border-top:1px solid #e2e8f0;box-shadow:0 4px 6px -1px #00000005;color:#475569;display:flex;flex-wrap:wrap;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:.875rem;gap:16px;justify-content:space-between;padding:14px 24px}.pagination-info{color:#64748b;font-weight:500;white-space:nowrap}.pagination-info span{color:#0f172a;font-weight:600}.pagination-controls{align-items:center;display:flex;gap:6px}.pagination-btn{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:10px;color:#334155;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;height:38px;justify-content:center;min-width:38px;outline:none;padding:0 12px;transition:all .2s cubic-bezier(.4,0,.2,1);-webkit-user-select:none;user-select:none}.pagination-btn:hover:not(:disabled){background:#f8fafc;border-color:#cbd5e1;box-shadow:0 2px 4px #0000000a;color:#0f172a;transform:translateY(-1px)}.pagination-btn:active:not(:disabled){transform:translateY(0)}.pagination-btn:focus-visible{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb33}.pagination-btn:disabled{background:#f8fafc;border-color:#f1f5f9;box-shadow:none;cursor:not-allowed;opacity:.4}.pagination-btn.page-number.active{background:#2563eb;border-color:#2563eb;box-shadow:0 4px 10px #2563eb40;color:#fff;font-weight:600}.pagination-btn.page-number.active:hover{background:#1d4ed8;border-color:#1d4ed8}.pagination-ellipsis{align-items:center;color:#94a3b8;display:inline-flex;font-weight:600;height:38px;justify-content:center;letter-spacing:1px;min-width:32px}.pagination-page-size{align-items:center;color:#64748b;display:flex;font-size:.875rem;font-weight:500;gap:10px}.pagination-select{background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#1e293b;cursor:pointer;font-family:inherit;font-size:.875rem;font-weight:500;outline:none;padding:8px 12px;transition:all .15s ease}.pagination-select:hover{background:#f8fafc;border-color:#cbd5e1}.pagination-select:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb26}@media (max-width:640px){.pagination{align-items:center;flex-direction:column;gap:16px;padding:16px}.pagination-controls{justify-content:center;order:1;width:100%}.pagination-info{font-size:.8125rem;order:2;text-align:center}.pagination-page-size{justify-content:center;order:3}.pagination-btn{height:34px;min-width:34px;padding:0 8px}}.month-mark-control{background-color:#fff;border:1px solid #cbd5e1;border-radius:6px;box-sizing:border-box;color:#0f172a;font-size:.875rem;line-height:1.25rem;outline:none;padding:.625rem .875rem;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.month-mark-control:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb26}.month-mark-control--disabled,.month-mark-control:disabled{background-color:#f8fafc;color:#94a3b8;cursor:not-allowed;opacity:.65}.month-mark-control--error,.month-mark-field--error .month-mark-control{background-color:#fff5f5;border-color:#ef4444}.month-mark-control--error:focus,.month-mark-field--error .month-mark-control:focus{box-shadow:0 0 0 3px #ef444426}.month-mark-combobox{position:relative;width:100%}.month-mark-combobox__trigger{align-items:center;cursor:pointer;display:flex;gap:.5rem;justify-content:space-between;-webkit-user-select:none;user-select:none}.month-mark-combobox__placeholder,.month-mark-combobox__value{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.month-mark-combobox__placeholder{color:#94a3b8}.month-mark-combobox__value{color:#0f172a;font-weight:500}.month-mark-combobox__trigger-actions{align-items:center;display:flex;flex:0 0 auto;gap:.25rem}.month-mark-combobox__arrow{color:#64748b;font-size:.7rem}.month-mark-combobox__clear{background:none;border:none;color:#94a3b8;cursor:pointer;font-size:1.2rem;line-height:1;padding:0 .25rem;transition:color .15s}.month-mark-combobox__clear:hover{color:#ef4444}.month-mark-combobox__dropdown{background:#fff;border:1px solid #cbd5e1;border-radius:8px;bottom:calc(100% + 4px);box-shadow:0 -10px 15px -3px #0000001a,0 -4px 6px -4px #0000001a;left:0;overflow:hidden;position:absolute;right:0;top:auto;z-index:50}.month-mark-combobox__search-wrap{background-color:#f8fafc;border-bottom:1px solid #f1f5f9;padding:.5rem}.month-mark-combobox__search-input{border:1px solid #cbd5e1;border-radius:6px;box-sizing:border-box;font-size:.85rem;outline:none;padding:.5rem .75rem;width:100%}.month-mark-combobox__search-input:focus{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb1a}.month-mark-combobox__list{list-style:none;margin:0;max-height:300px;overflow-y:auto;padding:0}.month-mark-combobox__item{cursor:pointer;display:flex;font-size:.875rem;gap:.5rem;padding:.625rem .875rem;transition:background-color .15s ease}.month-mark-combobox__item:hover{background-color:#f1f5f9}.month-mark-combobox__item--selected{background-color:#eff6ff;color:#1d4ed8;font-weight:600}.month-mark-combobox__item-code{color:#2563eb;font-weight:600}.month-mark-combobox__item-name{color:#334155}.month-mark-combobox__no-results{color:#94a3b8;font-size:.85rem;padding:.75rem;text-align:center}.emp-salary-view{background:#fff;color:#334155;display:flex;flex-direction:column;font-family:system-ui,-apple-system,sans-serif;gap:24px}.emp-salary-view--loading,.emp-salary-view__state--empty{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:8px;color:#64748b;font-size:.95rem;padding:40px 20px;text-align:center}.emp-salary-view__state--error,.emp-salary-view__state--warn{align-items:center;border-radius:6px;display:flex;font-size:.875rem;gap:8px;padding:12px 16px}.emp-salary-view__state--error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.emp-salary-view__state--warn{background:#fffbeb;border:1px solid #fde68a;color:#92400e}.emp-salary-view__header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding-bottom:20px}.emp-salary-view__metrics{display:flex;gap:32px}.emp-salary-view__metric{display:flex;flex-direction:column;gap:4px}.emp-salary-view__metric-label{color:#64748b;font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.emp-salary-view__metric-value{color:#0f172a;font-size:1.25rem;font-weight:700}.emp-salary-view__metric-value.highlight{color:#2563eb}.emp-salary-view__toggle{background:#f1f5f9;border-radius:6px;display:inline-flex;padding:4px}.emp-salary-view__toggle-btn{background:#0000;border:none;border-radius:4px;color:#64748b;cursor:pointer;font-size:.875rem;font-weight:600;padding:6px 16px;transition:all .2s}.emp-salary-view__toggle-btn.active{background:#fff;box-shadow:0 1px 2px #0000000d;color:#0f172a}.emp-salary-view__ctc-bar{margin-top:8px}.emp-salary-view__ctc-bar-header{color:#334155;display:flex;font-size:.8rem;font-weight:600;justify-content:space-between;margin-bottom:8px}.emp-salary-view__ctc-bar-visual{background:#f1f5f9;border-radius:6px;display:flex;height:12px;margin-bottom:12px;overflow:hidden}.emp-salary-view__ctc-segment{height:100%;transition:width .3s ease}.emp-salary-view__ctc-legend{display:flex;flex-wrap:wrap;gap:16px}.emp-salary-view__ctc-legend-item{align-items:center;color:#475569;display:flex;font-size:.75rem;gap:6px}.emp-salary-view__ctc-legend-dot{border-radius:50%;height:8px;width:8px}.emp-salary-view__panels{grid-gap:40px;display:grid;gap:40px;grid-template-columns:1fr 1fr}.emp-salary-view__panel-title{border-bottom:2px solid #e2e8f0;color:#0f172a;font-size:.95rem;font-weight:700;margin-bottom:8px;padding-bottom:12px}.emp-salary-view__row{padding:12px 0}.emp-salary-view__row-name{color:#334155;font-size:.875rem;font-weight:500}.emp-salary-view__row-hint{color:#94a3b8;font-size:.75rem;margin-left:8px}.emp-salary-view__row-amount{color:#0f172a;font-size:.95rem;font-weight:600}.emp-salary-view__panel-empty{color:#94a3b8;font-size:.875rem;font-style:italic;padding:20px 0}.emp-salary-view__summary{border-top:2px solid #e2e8f0;display:flex;flex-direction:column;gap:12px;margin-top:16px;padding-top:24px}.emp-salary-view__summary-row{align-items:center;display:flex;font-size:.95rem;justify-content:space-between}.emp-salary-view__summary-label{color:#475569;font-weight:600}.emp-salary-view__summary-value{color:#0f172a;font-weight:700}.emp-salary-view__summary-row--net{border-top:1px dashed #cbd5e1;font-size:1.125rem;margin-top:8px;padding-top:16px}.emp-salary-view__summary-row--net .emp-salary-view__summary-value{color:#2563eb;font-size:1.5rem}.emp-salary-view__badge{background:#e2e8f0;border-radius:12px;color:#475569;font-size:.65rem;font-style:normal;margin-left:8px;padding:2px 6px;text-transform:uppercase}.emp-salary-view__ctc-legend-dot--basic,.emp-salary-view__ctc-segment--basic{background:#3b82f6}.emp-salary-view__ctc-legend-dot--hra,.emp-salary-view__ctc-segment--hra{background:#8b5cf6}.emp-salary-view__ctc-legend-dot--conveyance,.emp-salary-view__ctc-segment--conveyance{background:#06b6d4}.emp-salary-view__ctc-legend-dot--special,.emp-salary-view__ctc-segment--special{background:#f59e0b}.emp-salary-view__ctc-legend-dot--medical,.emp-salary-view__ctc-segment--medical{background:#10b981}.emp-salary-view__ctc-legend-dot--default,.emp-salary-view__ctc-segment--default{background:#94a3b8}@media (max-width:768px){.emp-salary-view__header{align-items:flex-start;flex-direction:column;gap:16px}.emp-salary-view__panels{gap:24px;grid-template-columns:1fr}}.appt-letter-salary{width:100%}.appt-letter-salary__split-bar{align-items:flex-end;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px;padding:12px 14px}.appt-letter-salary__preset{display:flex;flex-direction:column;gap:4px;min-width:200px}.appt-letter-salary__preset label{color:#334155;font-size:.75rem;font-weight:600;padding-left:4px}.appt-letter-salary__preset select{border:1px solid #d1d9e6;border-radius:8px;font-size:.8125rem;height:38px}.appt-letter-salary__row,.appt-letter-salary__table-head{grid-gap:12px;align-items:center;border-bottom:1px solid #f1f5f9;display:grid;gap:12px;grid-template-columns:1fr 120px 120px;padding:10px 0}.appt-letter-salary__table-head{color:#64748b;font-size:.75rem;font-weight:700;letter-spacing:.04em;padding-top:0}.head-label{padding-left:3px;width:100%}.appt-letter-salary__name{align-items:center;color:#0f172a;display:flex;font-size:.875rem;font-weight:500;gap:8px}.appt-letter-salary__row input{border:1px solid #d1d9e6;border-radius:8px;font-size:.8125rem;height:38px;padding:0 10px;text-align:right}.appt-letter-salary__total{align-items:center;color:#065f46;display:flex;font-size:.875rem;font-weight:600;justify-content:space-between;padding:14px 0 4px}.appt-letter-salary__msg{border-radius:8px;font-size:.8125rem;margin-bottom:10px;padding:8px 12px}.appt-letter-salary__msg.success{background:#ecfdf5;color:#065f46}.appt-letter-salary__msg.error{background:#fef2f2;color:#991b1b}.appt-letter-salary__preview{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;margin-top:16px;padding:14px}.appt-letter-salary__preview h4{color:#0f172a;font-size:.875rem;margin:0 0 10px}.appt-letter-salary__preview-section{font-size:.8125rem;margin-bottom:10px}.appt-letter-salary__preview-section>span{color:#334155;display:block;font-weight:600;margin-bottom:4px}.appt-letter-salary__preview-section ul{color:#475569;margin:0;padding-left:18px}.appt-letter-salary__preview-note{color:#64748b;font-size:.75rem;line-height:1.45;margin:8px 0 0}.emp-salary-view__row{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;font-size:.8125rem;justify-content:space-between;padding:10px 0}.emp-salary-view__row:last-child{border-bottom:none}.emp-salary-view__stat{display:flex;flex-direction:column;gap:2px}.emp-salary-view__stat strong{color:#0f172a;font-size:1rem}.custom-select{-webkit-appearance:none;appearance:none;background-color:#fff;background-image:url("data:image/svg+xml;utf8,<svg xmlns=%27http://www.w3.org/2000/svg%27 width=%2724%27 height=%2724%27 viewBox=%270 0 24 24%27 fill=%27none%27 stroke=%27%236c757d%27 stroke-width=%272%27 stroke-linecap=%27round%27 stroke-linejoin=%27round%27><polyline points=%276 9 12 15 18 9%27></polyline></svg>");background-position:right 5px center;background-repeat:no-repeat;border-radius:5px;cursor:pointer;padding:10px 12px}.custom-select:focus{outline:none}@media (max-width:600px){.appt-letter-salary__row,.appt-letter-salary__table-head{grid-template-columns:1fr 100px}.appt-letter-salary__row input:last-child,.appt-letter-salary__table-head span:last-child{display:none}}.employee-filter select{background:#fff;border:1px solid #d1d5db;border-radius:10px;cursor:pointer;font-size:14px;height:44px;min-width:150px;padding:0 12px}.emp-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a80;display:flex;inset:0;justify-content:center;padding:16px;position:fixed;z-index:1000}.emp-modal{background:#fff;border-radius:16px;box-shadow:0 24px 48px #0f172a2e;display:flex;flex-direction:column;max-height:min(92vh,900px);overflow:hidden;width:100%}.emp-modal--md{max-width:560px}.emp-modal--lg{max-width:820px}.emp-modal--xl{max-width:960px}.emp-modal__header{align-items:center;background:#fafbfc;border-bottom:1px solid #e8edf4;display:flex;flex-shrink:0;gap:16px;justify-content:space-between;padding:20px 24px}.emp-modal__header h3{color:#0f172a;font-size:1.125rem;font-weight:700;letter-spacing:-.02em;margin:0}.emp-modal__close{align-items:center;background:#fff;border:none;border-radius:10px;color:#64748b;cursor:pointer;display:flex;flex-shrink:0;height:36px;justify-content:center;padding:0;transition:background .15s,color .15s;width:36px}.emp-modal__close:hover{background:#f1f5f9;color:#0f172a}.emp-modal__body{flex:1 1;overflow-y:auto;padding:20px 24px 8px}.emp-modal__footer{align-items:center;background:#fafbfc;border-top:1px solid #e8edf4;display:flex;flex-shrink:0;flex-wrap:wrap;gap:10px;justify-content:flex-end;padding:16px 24px 20px}.emp-form-section{margin-bottom:24px}.emp-form-section:last-child{margin-bottom:8px}.emp-form-section__head{margin-bottom:14px}.emp-form-section__head h4{color:#2563eb;font-size:.8125rem;font-weight:700;letter-spacing:.06em;margin:0 0 4px;text-transform:uppercase}.emp-form-section__head p{color:#64748b;font-size:.8125rem;line-height:1.45;margin:0}.emp-form-grid{grid-gap:14px 16px;display:grid;gap:14px 16px;grid-template-columns:repeat(2,minmax(0,1fr))}.emp-form-grid--1col{grid-template-columns:1fr}.emp-field{display:flex;flex-direction:column;gap:6px;min-width:0}.emp-field--full{grid-column:1/-1}.emp-field label{color:#334155;font-size:.8125rem;font-weight:600}.emp-required{color:#dc2626;margin-left:2px}.emp-field-hint{font-size:.75rem;line-height:1.4}.emp-field-error{color:#b91c1c;font-size:.8125rem;line-height:1.4;margin:4px 0 0}.emp-transfer-notice{background:#eef4ff;border-left:3px solid #1a365d;border-radius:6px;color:#1a365d;font-size:.8125rem;line-height:1.4;margin:6px 0 0;padding:8px 10px}.emp-field input.emp-field-input--error,.emp-field select.emp-field-input--error{border-color:#b91c1c;box-shadow:0 0 0 3px #b91c1c1a}.emp-field input,.emp-field select,.emp-field textarea{background:#fff;border:1px solid #d1d9e6;border-radius:10px;color:#0f172a;font-size:.875rem;height:42px;padding:0 12px;transition:border-color .15s,box-shadow .15s;width:100%}.emp-field input:focus,.emp-field select:focus,.emp-field textarea:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f;outline:none}.emp-field input::placeholder{color:#94a3b8}.emp-field select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;cursor:pointer;padding-right:36px}.emp-form-grid>.emp-field--full,.emp-form-grid>.emp-login-card{grid-column:1/-1}.emp-login-card{background:linear-gradient(180deg,#f8fafc,#fff);border:1px solid #e2e8f0;border-radius:12px;padding:16px}.emp-login-card__toggle{align-items:center;color:#0f172a;cursor:pointer;display:flex;font-size:.875rem;font-weight:600;gap:10px}.emp-login-card__toggle input{accent-color:#2563eb;cursor:pointer;flex-shrink:0;height:16px;margin-top:2px;width:16px}.employee-login-warning{font-size:.8rem}.emp-login-card__toggle div{color:#475569;display:flex;flex-direction:column;font-size:.7rem;gap:4px;padding-bottom:4px}.emp-login-card__fields{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.emp-login-card__fields,.emp-module-access{border-top:1px solid #e8edf4;margin-top:14px;padding-top:14px}.emp-module-access__label{color:#0f172a;font-size:.875rem;font-weight:600;margin:0 0 4px}.emp-module-access__hint{color:#64748b;font-size:.75rem;margin:0 0 10px}.emp-module-access__grid{grid-gap:8px 12px;display:grid;gap:8px 12px;grid-template-columns:repeat(2,minmax(0,1fr))}.emp-module-access__item{align-items:center;color:#334155;cursor:pointer;display:flex;font-size:.8125rem;font-weight:500;gap:8px}.emp-module-access__item input{accent-color:#2563eb;cursor:pointer;height:15px;margin:0;width:15px}.emp-btn{align-items:center;border:none;border-radius:10px;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:600;gap:8px;height:42px;justify-content:center;padding:0 18px;transition:background .15s,transform .1s;white-space:nowrap}.emp-btn:disabled{cursor:not-allowed;opacity:.6}.emp-btn--primary{background:#2563eb;color:#fff}.emp-btn--primary:hover:not(:disabled){background:#1d4ed8}.emp-btn--secondary{background:#fff;border:1px solid #d1d9e6;color:#334155}.emp-btn--secondary:hover:not(:disabled){background:#f8fafc}.emp-btn--danger-ghost{background:#fef2f2;border:1px solid #fecaca;color:#dc2626;height:36px;padding:0;width:36px}.emp-btn--danger-ghost:hover{background:#fee2e2}.emp-btn--block{width:100%}.emp-salary-list{display:flex;flex-direction:column;gap:10px}.emp-salary-list .emp-salary-row{grid-gap:10px;align-items:end;display:grid;gap:10px;grid-template-columns:1.4fr 1fr 1fr auto}.emp-salary-list .emp-salary-row .emp-field{margin:0}.emp-salary-list .emp-salary-row .emp-btn--danger-ghost{align-self:end;margin-bottom:0}.emp-doc-hero{align-items:center;background:#eff6ff;border:1px solid #bfdbfe;border-radius:12px;display:flex;gap:14px;margin-bottom:20px;padding:14px 16px}.emp-doc-hero__icon{align-items:center;background:#2563eb;border-radius:10px;color:#fff;display:flex;flex-shrink:0;height:44px;justify-content:center;width:44px}.emp-doc-hero__label{color:#1d4ed8;font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.emp-doc-hero__name{color:#0f172a;font-size:1.0625rem;font-weight:700;margin:2px 0 0}.emp-upload-zone{align-items:center;background:#f8fafc;border:2px dashed #cbd5e1;border-radius:12px;cursor:pointer;display:flex;flex-direction:column;gap:8px;justify-content:center;min-height:120px;padding:20px;position:relative;text-align:center;transition:border-color .15s,background .15s}.emp-upload-zone:hover{background:#eff6ff;border-color:#2563eb}.emp-upload-zone input[type=file]{cursor:pointer;height:100%;inset:0;opacity:0;position:absolute;width:100%}.emp-upload-zone__title{color:#334155;font-size:.875rem;font-weight:600}.emp-upload-zone__hint{color:#64748b;font-size:.75rem}.emp-upload-zone__file{color:#2563eb;font-size:.8125rem;font-weight:600;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.emp-doc-list{border-top:1px solid #e8edf4;margin-top:20px;padding-top:20px}.emp-doc-list h4{color:#64748b;font-size:.8125rem;font-weight:700;letter-spacing:.05em;margin:0 0 12px;text-transform:uppercase}.emp-doc-list__empty{background:#f8fafc;border:1px dashed #e2e8f0;border-radius:10px;color:#94a3b8;font-size:.875rem;margin:0;padding:24px;text-align:center}.emp-doc-item{align-items:center;background:#fff;border:1px solid #e8edf4;border-radius:10px;display:flex;gap:12px;justify-content:space-between;margin-bottom:8px;padding:12px 14px}.emp-doc-item:last-child{margin-bottom:0}.emp-doc-item__type{color:#0f172a;display:block;font-size:.8125rem;font-weight:700}.emp-doc-item__name{color:#64748b;display:block;font-size:.75rem;margin-top:2px;word-break:break-all}.emp-action-buttons{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.emp-grid-btn{align-items:center;background-color:#f3f4f6;border:1px solid #e5e7eb;border-radius:6px;color:#4b5563;cursor:pointer;display:inline-flex;height:36px;justify-content:center;padding:0;transition:all .2s ease-in-out;width:36px}.emp-grid-btn svg{stroke-width:2px;height:18px;width:18px}.emp-grid-btn:hover{background-color:#e5e7eb;border-color:#d1d5db;color:#1f2937}.emp-grid-btn:active{transform:scale(.95)}.emp-grid-btn:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}.emp-action-buttons button:last-child:hover{background-color:#fee2e2;border-color:#fca5a5;color:#dc2626}.emp-action-buttons button:first-child{background-color:#e0f2fe;border:1px solid #bae6fd;color:#0369a1}.emp-action-buttons button:first-child:hover{background-color:#bae6fd;color:#0c4a6e}.emp-action-buttons button:nth-child(2){background-color:#fef3c7;border:1px solid #fde68a;color:#b45309}.emp-action-buttons button:nth-child(2):hover{background-color:#fde68a;color:#78350f}.emp-action-buttons button:nth-child(3){background-color:#dcfce7;border:1px solid #bbf7d0;color:#15803d}.emp-action-buttons button:nth-child(3):hover{background-color:#bbf7d0;color:#14532d}.emp-action-buttons button:nth-child(4){background-color:#e0e7ff;border:1px solid #c7d2fe;color:#4338ca}.emp-action-buttons button:nth-child(4):hover{background-color:#c7d2fe;color:#312e81}.emp-action-buttons button:nth-child(5){background-color:#fee2e2;border:1px solid #fca5a5;color:#b91c1c}.emp-action-buttons button:nth-child(5):hover{background-color:#fca5a5;color:#7f1d1d}.emp-view-body .profile-section{margin-bottom:20px}.emp-view-body .profile-section h4{font-size:.8125rem;letter-spacing:.05em;text-transform:uppercase}.emp-view-body .profile-grid{gap:12px 16px}@media (max-width:768px){.emp-view-body .profile-grid{grid-template-columns:1fr}.emp-modal-overlay{align-items:flex-end;padding:0}.emp-modal{border-radius:16px 16px 0 0;max-height:94vh}.emp-form-grid,.emp-login-card__fields,.emp-module-access__grid,.emp-salary-list .emp-salary-row{grid-template-columns:1fr}.emp-salary-list .emp-salary-row .emp-btn--danger-ghost{height:38px;width:100%}.emp-modal__footer{flex-direction:column-reverse}.emp-modal__footer .emp-btn{width:100%}}@media (max-width:480px){.emp-modal__body,.emp-modal__footer,.emp-modal__header{padding-left:16px;padding-right:16px}}.employee-table-card,.employee-table-scroll{overflow:visible!important}.employee-table td{position:relative}.action-dropdown-menu{box-shadow:0 10px 25px -5px #0000001a,0 8px 10px -6px #0000001a;min-width:200px;padding:6px 0;z-index:9999}.action-dropdown-wrapper{display:inline-block;position:relative}.dropdown-toggle{background-color:initial;border:none;box-shadow:none;color:#64748b}.dropdown-toggle:hover{background-color:#f1f5f9;color:#0f172a}.action-dropdown-menu{background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 10px 15px -3px #0f172a1a,0 4px 6px -4px #0f172a0d;display:flex;flex-direction:column;margin-top:4px;min-width:220px;padding:8px 0;position:absolute;right:0;top:100%;z-index:100}.action-dropdown-menu button{align-items:center;background:#0000;border:none;color:#334155;cursor:pointer;display:flex;font-size:.875rem;font-weight:500;gap:12px;padding:10px 16px;text-align:left;transition:all .15s ease;width:100%}.action-dropdown-menu button svg{color:#64748b;transition:color .15s ease}.action-dropdown-menu button:hover{background-color:#f8fafc;color:#0f172a}.action-dropdown-menu button:hover svg{color:#2563eb}.dropdown-divider{background-color:#e2e8f0;height:1px;margin:6px 0}.action-dropdown-menu button.dropdown-item-disabled,.action-dropdown-menu button:disabled{color:#9ca3af;cursor:not-allowed;opacity:.7}.action-dropdown-menu button.dropdown-item-disabled svg,.action-dropdown-menu button:disabled svg{color:#9ca3af}.action-dropdown-menu button.dropdown-item-disabled:hover,.action-dropdown-menu button:disabled:hover{background-color:initial;color:#9ca3af}.action-dropdown-menu button.dropdown-item-disabled:hover svg,.action-dropdown-menu button:disabled:hover svg{color:#9ca3af}.action-dropdown-menu button.dropdown-item-danger,.action-dropdown-menu button.dropdown-item-danger svg{color:#dc2626}.action-dropdown-menu button.dropdown-item-danger:hover{background-color:#fef2f2;color:#b91c1c}.employee-table-scroll{overflow:visible}.preview-overlay{align-items:center;background:#000000bf;display:flex;inset:0;justify-content:center;position:fixed;z-index:9999}.preview-container{background:#fff;border-radius:10px;display:flex;flex-direction:column;height:90%;overflow:hidden;width:90%}.preview-header{align-items:center;border-bottom:1px solid #ddd;display:flex;height:60px;justify-content:space-between;padding:0 20px}.close-btn{background:#ef4444;border:none;border-radius:50%;color:#fff;cursor:pointer;font-size:18px;height:36px;width:36px}.preview-body{align-items:center;display:flex;flex:1 1;justify-content:center;overflow:auto}.preview-image{max-height:100%;max-width:100%;object-fit:contain}.preview-pdf{border:none;height:100%;width:100%}.unsupported{color:#666;font-size:18px}.settings-container{--settings-radius-card:16px;--settings-radius-control:10px;background:#f8fafc;display:flex;flex:1 1;flex-direction:column;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;gap:16px;min-height:100%;overflow-y:auto;padding:20px 24px}.settings-header{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:2px}.settings-title{color:#0f172a;font-size:28px;font-weight:800;letter-spacing:-.5px;margin:0}.settings-subtitle{color:#64748b;font-size:14px;line-height:1.4;margin:4px 0 0}.settings-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:2fr 1fr}.settings-bottom-grid,.settings-notification-section{display:flex;flex-direction:column;gap:16px}.ot-form-scroll-target,.ot-list-scroll-target{scroll-margin-top:1rem}@media (max-width:1024px){.settings-grid{grid-template-columns:1fr}}@media (max-width:768px){.settings-container{padding:16px}.settings-header{align-items:flex-start;flex-direction:column}}.profile-card{background:#fff;border:1px solid #e2e8f0;border-radius:20px;box-shadow:0 2px 8px #0000000d;padding:20px}.profile-card__loading,.profile-error,.profile-upload-status{font-size:.8125rem;margin:0 0 12px}.profile-card__loading{color:#64748b;padding:24px 0;text-align:center}.profile-error{color:#b91c1c}.profile-upload-status{color:#2563eb;text-align:center}.profile-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.profile-title{color:#1e293b;font-size:20px;font-weight:600}.profile-subtitle{color:#64748b;font-size:13px;margin-top:6px}.camera-btn,.profile-card .edit-btn{align-items:center;background:#f1f5f9;border:none;border-radius:12px;cursor:pointer;display:flex;height:48px;justify-content:center;width:48px}.camera-btn:hover,.profile-card .edit-btn:hover{background:#e2e8f0}.remove-photo-btn{background:#fee2e2;border:none;border-radius:8px;color:#dc2626;cursor:pointer;font-size:12px;font-weight:500;margin-top:10px;padding:6px 12px}.remove-photo-btn:hover{background:#fecaca}.error-text{color:#ef4444;font-size:12px;margin-top:4px}.label-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:6px}.error-inline{color:#ef4444;font-size:11px;font-weight:500}.input-error{border:1px solid #ef4444!important}.profile-content{align-items:flex-start;display:flex;gap:32px}.profile-avatar-section{align-items:center;display:flex;flex-direction:column;min-width:110px}.profile-avatar{align-items:center;background:linear-gradient(135deg,#1e6bd6,#2bb7da);border-radius:50%;color:#fff;display:flex;font-size:22px;font-weight:600;height:80px;justify-content:center;overflow:hidden;width:80px}.profile-avatar-img{border-radius:50%;height:100%;object-fit:cover;width:100%}.camera-options{display:flex;flex-direction:column;gap:12px;margin-top:16px}.camera-btn{margin-top:12px}.profile-form-grid{grid-gap:16px;display:grid;flex:1 1;gap:16px;grid-template-columns:repeat(2,1fr)}.profile-label{color:#334155;display:block;font-size:14px;font-weight:500;margin-bottom:8px}.input-wrapper{position:relative}.input-icon{left:12px;position:absolute;top:50%;transform:translateY(-50%)}.profile-input{border:1px solid #cbd5e1;border-radius:12px;font-size:14px;height:42px;outline:none;padding:0 16px 0 40px;width:100%}.input-disabled{background:#e2e8f0;color:#64748b;cursor:not-allowed}.button-row{display:flex;gap:12px;justify-content:flex-end;margin-top:20px}.discard-btn{background:#fff;border:1px solid #cbd5e1;border-radius:12px}.discard-btn,.save-btn{cursor:pointer;padding:10px 20px}.save-btn{background:linear-gradient(135deg,#1e6bd6,#2bb7da);border:none;border-radius:12px;color:#fff}.image-popup-overlay{align-items:center;background:#00000080;display:flex;height:100%;justify-content:center;left:0;position:fixed;top:0;width:100%;z-index:9999}.image-popup{background:#fff;border-radius:12px;min-width:250px;padding:20px}.image-popup button{display:block;margin-top:10px;padding:10px;width:100%}@media(max-width:768px){.profile-content{flex-direction:column}.profile-form-grid{grid-template-columns:1fr}}.notifications-card{background:#fff;border:1px solid #e2e8f0;border-radius:20px;box-shadow:0 2px 8px #0000000d;padding:20px}.notifications-header{align-items:center;display:flex;gap:14px;margin-bottom:20px}.notifications-icon-box{align-items:center;background:#f8fafc;border-radius:12px;display:flex;height:42px;justify-content:center;width:42px}.notifications-title{color:#1e293b;font-size:16px;font-weight:600}.notifications-subtitle{color:#64748b;font-size:12px;margin-top:4px}.toggle-row{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;padding:14px 0}.toggle-row:last-child{border-bottom:none}.toggle-left{align-items:center;display:flex;gap:12px}.toggle-icon{color:#64748b}.toggle-title{color:#334155;font-size:14px;font-weight:500}.toggle-switch{background:#475569;border-radius:999px;cursor:pointer;height:24px;position:relative;transition:.3s;width:44px}.toggle-active{background:linear-gradient(135deg,#1e6bd6,#2bb7da)}.toggle-dot{background:#fff;border-radius:50%;height:16px;position:absolute;top:4px;transition:.3s;width:16px}.dot-left{left:4px}.dot-right{right:4px}.security-card{background:#fff;border:1px solid #e2e8f0;border-radius:20px;box-shadow:0 2px 8px #0000000d;padding:20px}.security-header{align-items:center;display:flex;gap:14px;margin-bottom:20px}.security-header-icon{align-items:center;background:#d1fae5;border-radius:12px;display:flex;height:42px;justify-content:center;width:42px}.security-title{color:#1e293b;font-size:16px;font-weight:600}.security-subtitle{color:#64748b;font-size:12px;margin-top:4px}.security-item{align-items:center;background:#fff;border:none;border-radius:14px;cursor:pointer;display:flex;gap:12px;margin-bottom:10px;padding:14px;transition:.25s;width:100%}.security-item:hover{background:#f8fafc}.security-item-icon{color:#64748b}.security-item-title{color:#334155;font-size:14px;font-weight:500}.modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0006;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1000}.modal-box{background:#fff;border-radius:20px;box-shadow:0 20px 50px #00000026;max-width:420px;padding:24px;width:100%}.modal-box h2,.modal-headerr h2{color:#0f172a;font-size:20px;font-weight:600}.modal-headerr p,.modal-subtext{color:#64748b;font-size:14px;margin-top:8px}.modal-form{display:flex;flex-direction:column;gap:14px;margin-top:20px}.form-group{margin-top:18px}.form-group label{display:block;font-size:14px;font-weight:500;margin-bottom:8px}.modal-input{background:#f8fafc;border:1px solid #d1d5db;border-radius:14px;font-size:14px;outline:none;padding:14px 16px;transition:.25s;width:100%}.modal-input:focus{background:#fff;border-color:#2563eb}.modal-actions{margin-top:24px}.cancel-btn{background:#fff;border:1px solid #d1d5db;border-radius:12px;color:#334155;cursor:pointer;padding:10px 18px}.primary-btn{background:linear-gradient(135deg,#2563eb,#06b6d4)}.primary-btn,.verify-btn{border:none;border-radius:12px;color:#fff;cursor:pointer;padding:10px 18px}.verify-btn{background:linear-gradient(135deg,#16a34a,#10b981)}.roles-card{background:#fff;border:1px solid #e2e8f0;border-radius:20px;box-shadow:0 2px 8px #0000000d;display:flex;flex-direction:column;height:100%;padding:20px}.roles-header{gap:14px;margin-bottom:20px}.roles-header,.roles-icon-box{align-items:center;display:flex}.roles-icon-box{background:#ede9fe;border-radius:12px;height:42px;justify-content:center;width:42px}.roles-title{color:#1e293b;font-size:16px;font-weight:600}.roles-subtitle{color:#64748b;font-size:12px;margin-top:4px}.role-item{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;padding:14px 0}.role-item:last-child{border-bottom:none}.role-item-left{align-items:center;display:flex;gap:12px}.role-item-title{color:#334155;font-size:14px;font-weight:500}.role-item-subtitle{color:#64748b;font-size:12px;margin-top:3px}.shift-manager-container{display:flex;flex-direction:column-reverse;gap:40px;margin:0 auto;width:100%}.shift-form-section{background:#fff;border:1px solid #eef2f5;border-radius:12px;box-shadow:0 4px 12px #0000000d;flex:1 1;height:-webkit-fit-content;height:fit-content;padding:24px}.shift-list-section{flex:2 1}.shift-form-section h2{color:#1e293b;font-size:1.5rem;margin-bottom:20px;margin-top:0}.shift-form{display:flex;flex-direction:column;gap:16px}.form-group{gap:6px}.form-row{display:flex;gap:16px}.form-row .form-group{flex:1 1}label{color:#475569;font-size:.85rem;font-weight:600}.shift-input{border:1px solid #cbd5e1;border-radius:6px;color:#334155;font-size:.95rem;padding:10px 12px;transition:border-color .2s}.shift-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f626;outline:none}.form-actions{display:flex;gap:.75rem;justify-content:flex-end;margin-top:10px}.shift-manager-container button{border:none;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:500;padding:10px 16px;transition:all .2s}.btn-primary{background:linear-gradient(135deg,#1e6bd6,#2bb7da);padding:.625rem 1.25rem}.btn-primary:hover:not(:disabled){background-color:#1d4ed8}.btn-secondary{background-color:#fff;border:1px solid #d1d5db;color:#475569;padding:.625rem 1.25rem}.btn-secondary:hover:not(:disabled){background-color:#f9fafb}button:disabled,input:disabled{cursor:not-allowed;opacity:.6}.shifts-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.loading-shifts,.no-shifts{color:#64748b;font-style:italic}.shift-card{background:#fff;border:1px solid #eef2f5;border-radius:12px;box-shadow:0 4px 12px #0000000d;flex-direction:column;padding:20px}.shift-card,.shift-card-header{display:flex;justify-content:space-between}.shift-card-header{align-items:center;margin-bottom:12px}.shift-title{color:#1e293b;font-size:1.15rem;margin:0}.shift-badge{background-color:#f0fdf4;border-radius:12px;color:#166534;font-size:.7rem;font-weight:600;padding:2px 6px}.time-info-container{align-items:center;background-color:#f8fafc;border-radius:8px;display:flex;justify-content:space-between;margin-bottom:12px;padding:10px}.time-block{display:flex;flex-direction:column}.time-label{color:#64748b;font-size:.7rem;text-transform:uppercase}.time-value{color:#334155;font-size:1rem;font-weight:700}.time-divider{color:#94a3b8}.grace-time-info{display:flex;font-size:.85rem;justify-content:space-between;margin-bottom:16px}.grace-label{color:#64748b}.grace-value{color:#dc2626;font-weight:600}.shift-card-actions-wrapper{border-top:1px solid #f3f4f6;display:flex;gap:.5rem;justify-content:flex-end;margin-top:1.25rem;padding-top:1rem}.shift-action-btn-delete,.shift-action-btn-edit{border:1px solid #0000;border-radius:.375rem;font-size:.8125rem;font-weight:500;padding:.375rem .75rem}.shift-action-btn-edit{background-color:#f3f4f6;border-color:#d1d5db;color:#374151}.shift-action-btn-edit:hover:not(:disabled){background-color:#e5e7eb}.shift-action-btn-delete{background-color:#fef2f2;border-color:#fecaca;color:#991b1b}.shift-action-btn-delete:hover:not(:disabled){background-color:#fee2e2}@media (max-width:768px){.shift-manager-container{flex-direction:column}}.shift-form-section{scroll-margin-top:2rem}.ot-container{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffd9;border:1px solid #e2e8f0cc;border-radius:16px;box-shadow:0 4px 20px -2px #94a3b814,0 2px 8px -1px #94a3b80a;color:#334155;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;padding:16px 18px;width:100%}.ot-header{border-bottom:1px solid #f1f5f9;margin-bottom:12px;padding-bottom:10px}.ot-header h3{color:#0f172a;font-size:15px;font-weight:700;line-height:1.3;margin:0}.ot-header p{color:#64748b;font-size:13px;line-height:1.45;margin:4px 0 0}.ot-form{gap:16px}.ot-form,.ot-section{display:flex;flex-direction:column}.ot-section{gap:10px}.ot-section-title{color:#64748b;font-size:11px;font-weight:600;letter-spacing:.04em;margin:0;text-transform:uppercase}.ot-grid-2{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.ot-bg-box{background:#fafbfc;border:1px solid #f1f5f9;border-radius:10px;display:flex;flex-direction:column;gap:12px;padding:12px 14px}.ot-info-text{align-items:flex-end;color:#64748b;display:flex;font-size:12px;line-height:1.45;padding-bottom:4px}.ot-strategy-group{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(3,minmax(0,1fr))}.ot-card{background:#fff;border:1px solid #e2e8f0;border-radius:10px;cursor:pointer;display:flex;flex-direction:column;gap:6px;justify-content:space-between;padding:12px 14px;transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}.ot-card:hover{background:#f8fafc}.ot-card.Active{background:#eff6ff;border-color:#1e6bd6;box-shadow:0 0 0 3px #1e6bd61a}.ot-card-title{align-items:center;display:flex;gap:8px;justify-content:space-between}.ot-card-title span{color:#0f172a;font-size:14px;font-weight:600}.ot-card-title input[type=radio]{accent-color:#1e6bd6;flex-shrink:0;height:16px;width:16px}.ot-card p{color:#64748b;font-size:12px;line-height:1.45;margin:0}.ot-label{color:#475569;display:block;font-size:11px;font-weight:600;letter-spacing:.04em;margin-bottom:4px;text-transform:uppercase}.ot-input,.ot-select{background:#fff;border:1px solid #cbd5e1;border-radius:10px;box-sizing:border-box;color:#0f172a;font-size:14px;font-weight:500;height:40px;outline:none;padding:0 12px;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.ot-select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:14px;cursor:pointer;padding-right:36px}.ot-input:focus,.ot-select:focus{border-color:#1e6bd6;box-shadow:0 0 0 3px #1e6bd61f}.ot-sub-panel{background:#fafbfc;border:1px solid #f1f5f9;border-radius:10px;padding:12px 14px}.ot-relative-input{position:relative}.ot-relative-input input{padding-right:5.5rem}.ot-unit-badge{color:#94a3b8;font-size:11px;font-weight:600;letter-spacing:.03em;pointer-events:none;position:absolute;right:12px;text-transform:uppercase;top:50%;transform:translateY(-50%)}.ot-days-flex{display:flex;flex-wrap:wrap;gap:8px}.ot-divider{border:0;margin:0}.ot-actions,.ot-divider{border-top:1px solid #f1f5f9}.ot-actions{display:flex;gap:10px;justify-content:flex-end;padding-top:12px}.ot-submit-status{border-radius:10px;font-size:13px;font-weight:500;padding:10px 12px}.ot-submit-status.success{background:#ecfdf5;border:1px solid #bbf7d0;color:#065f46}.ot-submit-status.error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.ot-list-empty,.ot-list-loading{background:#fafbfc;border:1px dashed #cbd5e1;border-radius:10px;color:#64748b;font-size:14px;padding:24px 16px;text-align:center}.ot-list-empty p{margin:0}.ot-table-wrapper{background:#fff;border:1px solid #e2e8f0;border-radius:10px;overflow-x:auto;width:100%}.ot-table{border-collapse:collapse;font-size:14px;text-align:left;width:100%}.ot-table th{background:#fafbfc;border-bottom:1px solid #e2e8f0;color:#64748b;font-size:11px;font-weight:600;letter-spacing:.04em;padding:10px 12px;text-transform:uppercase;white-space:nowrap}.ot-table td{border-bottom:1px solid #f8fafc;color:#334155;padding:11px 12px;vertical-align:middle}.ot-table tr:last-child td{border-bottom:none}.ot-td-bold{color:#0f172a!important;font-weight:600}.ot-text-muted{color:#64748b;font-size:13px}.ot-badge-gray{background:#f1f5f9;color:#475569}.ot-badge-action,.ot-badge-gray{align-items:center;border-radius:6px;display:inline-flex;font-size:12px;font-weight:600;padding:4px 8px}.ot-badge-action.incentive{background:#eff6ff;color:#1d4ed8}.ot-badge-action.add-leave{background:#ecfdf5;color:#047857}.ot-badge-action.none{background:#f1f5f9;color:#64748b}.ot-table-days{display:flex;flex-wrap:wrap;gap:4px}.ot-day-mini-badge{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:6px;color:#64748b;font-size:10px;font-weight:600;letter-spacing:.03em;padding:3px 6px;text-transform:uppercase}.ot-action-buttons-group{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}@media (max-width:900px){.ot-strategy-group{grid-template-columns:1fr}}@media (max-width:768px){.ot-grid-2{grid-template-columns:1fr}.ot-actions{flex-direction:column-reverse}}.holiday-manager-container{display:flex;flex-direction:column-reverse;gap:32px;margin-top:24px;width:100%}.holiday-form-section,.holiday-list-section{background:#fff;border:1px solid #eef2f5;border-radius:12px;box-shadow:0 4px 12px #0000000d;padding:24px}.holiday-list-header{align-items:flex-start;gap:16px;margin-bottom:20px}.holiday-form-section h2,.holiday-list-header h2{color:#1e293b;font-size:1.35rem;margin:0 0 8px}.holiday-list-header p{color:#64748b;font-size:.92rem;margin:0}.holiday-year-filter{display:flex;flex-direction:column;gap:6px}.holiday-year-filter label{color:#475569;font-size:.8rem;font-weight:600}.holiday-year-filter select{background:#fff;border:1px solid #dbe3ea;border-radius:8px;min-width:110px;padding:8px 10px}.holiday-form{display:flex;flex-direction:column;gap:16px}.holiday-form .form-group{display:flex;flex-direction:column;gap:6px}.holiday-form .form-row{display:flex;gap:16px}.holiday-form .form-row .form-group{flex:1 1}.holiday-form label{color:#475569;font-size:.85rem;font-weight:600}.holiday-form input,.holiday-form select,.holiday-form textarea{border:1px solid #dbe3ea;border-radius:8px;font-size:.95rem;padding:10px 12px}.holiday-form textarea{resize:vertical}.holiday-form-actions{display:flex;gap:10px;justify-content:flex-end}.holiday-btn{border:none;border-radius:8px;cursor:pointer;font-weight:600;padding:10px 16px}.holiday-btn:disabled{cursor:not-allowed;opacity:.6}.holiday-btn--primary{background:linear-gradient(135deg,#1e6bd6,#2bb7da);color:#fff}.holiday-btn--ghost{background:#f8fafc;border:1px solid #dbe3ea;color:#334155}.holiday-btn--danger{background:#fff1f2;border:1px solid #fecdd3;color:#be123c}.holiday-table-wrap{overflow-x:auto}.holiday-table{border-collapse:collapse;width:100%}.holiday-table td,.holiday-table th{border-bottom:1px solid #eef2f5;padding:12px 10px;text-align:left;vertical-align:top}.holiday-table th{color:#64748b;font-size:.8rem;letter-spacing:.04em;text-transform:uppercase}.holiday-table td strong{color:#0f172a;display:block}.holiday-table td small{color:#64748b;display:block;font-size:.82rem;margin-top:4px}.holiday-actions{display:flex;flex-wrap:wrap;gap:8px}.holiday-type-badge{background:#eff6ff;border-radius:999px;color:#1d4ed8;display:inline-block;font-size:.78rem;font-weight:600;padding:4px 10px}.holiday-type-badge--festival{background:#fff7ed;color:#c2410c}.holiday-type-badge--restricted{background:#faf5ff;color:#7e22ce}.holiday-type-badge--company{background:#ecfdf5;color:#047857}.holiday-empty{color:#64748b;margin:0}.holiday-status{border-radius:8px;font-size:.9rem;margin-bottom:16px;padding:10px 12px}.holiday-status--success{background:#ecfdf5;border:1px solid #bbf7d0;color:#047857}.holiday-status--error{background:#fff1f2;border:1px solid #fecdd3;color:#be123c}@media (max-width:768px){.holiday-form .form-row,.holiday-list-header{flex-direction:column}}.holiday-list-header{margin-bottom:16px}.holiday-form-header,.holiday-list-header{align-items:center;display:flex;justify-content:space-between}.holiday-form-header{margin-bottom:20px}.holiday-form-header h2{margin:0}.holiday-header-actions{align-items:center;display:flex;gap:12px}.bulk-upload-trigger-btn{background-color:#f1f5f9;border:1px solid #cbd5e1;color:#0f172a}.bulk-upload-trigger-btn:hover{background-color:#e2e8f0}.modal-template-download{align-items:center;background-color:#f8fafc;border:1px solid #e2e8f0;border-radius:6px;color:#475569;display:flex;font-size:.85rem;justify-content:space-between;margin-bottom:16px;padding:8px 12px}.template-link-btn{align-items:center;background:none;border:none;color:#2563eb;cursor:pointer;display:inline-flex;font-size:.85rem;font-weight:500;gap:4px;padding:0}.template-link-btn:hover{color:#1d4ed8;text-decoration:underline}.modal-backdrop{align-items:center;background-color:#0006;display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:1000}.modal-container{background-color:#fff;border-radius:8px;box-shadow:0 10px 25px #00000026;max-width:480px;padding:24px;width:90%}.modal-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.modal-header h3{font-size:1.25rem;margin:0}.close-modal-btn{background:none;border:none;color:#64748b;cursor:pointer;font-size:1.25rem}.modal-drop-zone{background-color:#f8fafc;border:2px dashed #cbd5e1;border-radius:8px;cursor:pointer;margin-bottom:16px;padding:32px 16px;text-align:center;transition:all .2s ease}.modal-drop-zone.drag-active{background-color:#eff6ff;border-color:#2563eb}.modal-drop-zone label span{color:#2563eb;text-decoration:underline}.modal-upload-summary{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:12px}.summary-item{background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;color:#334155;display:flex;flex-direction:column;gap:3px;margin-top:0;padding:8px 10px}.summary-item span{color:#64748b;font-size:.68rem;letter-spacing:.04em;text-transform:uppercase}.summary-item strong{color:#0f172a;font-size:.96rem}.summary-item.success strong{color:#15803d;margin-top:0}.summary-item.warning strong{color:#b45309}.modal-success-message{background:#ecfdf5;border:1px solid #bbf7d0;border-radius:8px;color:#166534;font-size:.85rem;font-weight:600;margin-bottom:12px;padding:8px 10px}.modal-error-inline{background:#fff7ed;border:1px solid #fed7aa;border-radius:8px;color:#9a4d00;display:flex;flex-direction:column;font-size:.85rem;gap:4px;margin-bottom:12px;padding:10px 12px}.modal-error-inline strong{font-size:.82rem;letter-spacing:.04em;text-transform:uppercase}.error-view-modal{max-width:620px}.error-view-body{background:#fff5f5;border:1px solid #fecaca;border-radius:8px;display:flex;flex-direction:column;gap:8px;margin-bottom:16px;max-height:420px;overflow-y:auto;padding:12px}.error-line{border-bottom:1px solid #991b1b1f;color:#991b1b;font-size:.875rem;line-height:1.55;padding-bottom:6px;white-space:pre-wrap;word-break:break-word}.error-line:last-child{border-bottom:none;padding-bottom:0}.modal-actions{flex-wrap:wrap}.weekoff-manager-container{display:flex;flex-direction:column-reverse;gap:32px;margin-top:24px;width:100%}.weekoff-form-section,.weekoff-list-section{background:#fff;border:1px solid #eef2f5;border-radius:12px;box-shadow:0 4px 12px #0000000d;padding:24px}.weekoff-form-section h2,.weekoff-list-header h2{color:#1e293b;font-size:1.35rem;margin:0 0 8px}.weekoff-list-header p{color:#64748b;font-size:.92rem;margin:0 0 20px}.weekoff-form{display:flex;flex-direction:column;gap:18px}.weekoff-form .form-group{display:flex;flex-direction:column;gap:8px}.weekoff-form label{color:#475569;font-size:.85rem;font-weight:600}.weekoff-form select{background:#fff;border:1px solid #dbe3ea;border-radius:8px;padding:10px 12px}.weekoff-field-hint{color:#64748b;font-size:.82rem;line-height:1.4}.weekoff-days-grid{display:flex;flex-wrap:wrap;gap:10px}.weekoff-day-btn{background:#f8fafc;border:1px solid #dbe3ea;border-radius:10px;color:#475569;cursor:pointer;font-weight:600;min-width:54px;padding:10px 12px}.weekoff-day-btn.active{background:linear-gradient(135deg,#1e6bd6,#2bb7da);border-color:#0000;color:#fff}.weekoff-form-actions{display:flex;gap:10px;justify-content:flex-end}.weekoff-btn{border:none;border-radius:8px;cursor:pointer;font-weight:600;padding:10px 16px}.weekoff-btn:disabled{cursor:not-allowed;opacity:.6}.weekoff-btn--primary{background:linear-gradient(135deg,#1e6bd6,#2bb7da);color:#fff}.weekoff-btn--ghost{background:#f8fafc;border:1px solid #dbe3ea;color:#334155}.weekoff-btn--danger{background:#fff1f2;border:1px solid #fecdd3;color:#be123c}.weekoff-table-wrap{overflow-x:auto}.weekoff-table{border-collapse:collapse;width:100%}.weekoff-table td,.weekoff-table th{border-bottom:1px solid #eef2f5;padding:12px 10px;text-align:left;vertical-align:top}.weekoff-table th{color:#64748b;font-size:.8rem;letter-spacing:.04em;text-transform:uppercase}.weekoff-table td strong{color:#0f172a;display:block}.weekoff-table td small{color:#64748b;display:block;font-size:.82rem;margin-top:4px}.weekoff-day-badges{display:flex;flex-wrap:wrap;gap:8px}.weekoff-day-badge{background:#eff6ff;border-radius:999px;color:#1d4ed8;display:inline-block;font-size:.8rem;font-weight:600;padding:4px 10px}.weekoff-actions{display:flex;flex-wrap:wrap;gap:8px}.weekoff-empty{color:#64748b;margin:0}.weekoff-status{border-radius:8px;font-size:.9rem;margin-bottom:16px;padding:10px 12px}.weekoff-status--success{background:#ecfdf5;border:1px solid #bbf7d0;color:#047857}.weekoff-status--error{background:#fff1f2;border:1px solid #fecdd3;color:#be123c}@media (max-width:768px){.weekoff-days-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr))}}.lp-manager{background:#fff;border:1px solid #eef2f5;border-radius:16px;box-shadow:0 4px 12px #0000000d;color:#0f172a;display:flex;flex-direction:column;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;gap:22px;padding:24px}.lp-header h2{color:#1e293b;font-size:1.35rem;font-weight:800;letter-spacing:-.3px;margin:0 0 6px}.lp-block-head p,.lp-header p,.lp-loading{color:#64748b;font-size:.92rem;line-height:1.5;margin:0}.lp-banner{border-radius:10px;font-size:.9rem;line-height:1.45;padding:10px 12px}.lp-banner.success{background:#ecfdf5;border:1px solid #a7f3d0;color:#047857}.lp-banner.error{background:#fef2f2;border:1px solid #fecaca;color:#b91c1c}.lp-banner.info{background:#eff6ff;border:1px solid #bfdbfe;color:#1d4ed8}.lp-block{display:flex;flex-direction:column;gap:14px}.lp-block-head h3,.lp-type-titles h3{color:#1e293b;font-size:.98rem;font-weight:700;margin:0 0 4px}.lp-template-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.lp-template-card{background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:12px;color:inherit;cursor:pointer;display:flex;flex-direction:column;gap:6px;min-height:100%;padding:14px 14px 16px;text-align:left}.lp-template-card:hover{border-color:#93c5fd}.lp-template-card.is-active{background:#eff6ff;border-color:#1e6bd6;box-shadow:0 0 0 3px #1e6bd61f}.lp-template-title{font-size:.95rem;font-weight:700}.lp-template-blurb{color:#64748b;font-size:.8rem;line-height:1.45}.lp-toolbar{align-items:center;display:flex;flex-wrap:wrap;gap:10px}.lp-toolbar-note{color:#1d4ed8;font-size:.85rem;margin:0}.lp-field-row,.lp-year-fields{display:flex;flex-wrap:wrap;gap:16px}.lp-field{display:flex;flex:1 1;flex-direction:column;gap:6px;min-width:160px}.lp-field-label{color:#475569;font-size:.8rem;font-weight:600}.lp-field-hint,.lp-toggle-hint{color:#64748b;font-size:.78rem;font-weight:400;line-height:1.4}.lp-input{background:#fff;border:1px solid #dbe3ea;border-radius:8px;color:#0f172a;font-size:.92rem;max-width:420px;padding:9px 11px;width:100%}.lp-input:disabled{background:#f8fafc;color:#475569}.lp-input-sm{max-width:120px}.lp-inline-days{align-items:center;color:#475569;display:flex;font-size:.9rem;gap:8px}.lp-types{display:flex;flex-direction:column;gap:14px}.lp-type-card{background:#fff;border:1px solid #e8eef3;border-left:4px solid #1e6bd6;border-radius:14px;padding:16px 18px 18px}.lp-type-card[data-code=SL]{border-left-color:#0d9488}.lp-type-card[data-code=EL]{border-left-color:#7c3aed}.lp-type-card[data-code=CO]{border-left-color:#d97706}.lp-type-card.is-off{background:#f8fafc;opacity:.72}.lp-type-head{grid-gap:12px;align-items:start;display:grid;gap:12px;grid-template-columns:auto 1fr auto}.lp-type-titles p{color:#475569;font-size:.84rem;line-height:1.5;margin:0}.lp-code{align-items:center;background:#eff6ff;border-radius:8px;color:#1e6bd6;display:inline-flex;font-size:.78rem;font-weight:800;height:32px;justify-content:center;letter-spacing:.04em;min-width:42px;padding:0 8px}.lp-type-card[data-code=SL] .lp-code{background:#f0fdfa;color:#0f766e}.lp-type-card[data-code=EL] .lp-code{background:#f5f3ff;color:#6d28d9}.lp-type-card[data-code=CO] .lp-code{background:#fffbeb;color:#b45309}.lp-code-sm{height:28px;min-width:40px}.lp-type-body{border-top:1px solid #eef2f5;display:flex;flex-direction:column;gap:14px;margin-top:14px;padding-top:14px}.lp-toggle{align-items:flex-start;display:flex;gap:10px}.lp-toggle.is-disabled{opacity:.65}.lp-toggle-copy{display:flex;flex-direction:column;gap:2px}.lp-toggle-label{color:#334155;font-size:.88rem;font-weight:600}.lp-switch{background:#cbd5e1;border:0;border-radius:999px;cursor:pointer;flex-shrink:0;height:22px;margin-top:1px;padding:0;position:relative;width:40px}.lp-switch.is-on{background:linear-gradient(135deg,#1e6bd6,#2bb7da)}.lp-switch-knob{background:#fff;border-radius:50%;box-shadow:0 1px 3px #0f172a33;height:18px;left:2px;position:absolute;top:2px;transition:transform .15s ease;width:18px}.lp-switch.is-on .lp-switch-knob{transform:translateX(18px)}.lp-other-list{display:flex;flex-direction:column;gap:8px}.lp-other-row{grid-gap:12px;align-items:center;background:#f8fafc;border:1px solid #eef2f5;border-radius:10px;display:grid;gap:12px;grid-template-columns:auto 1fr auto;padding:10px 12px}.lp-other-copy{display:flex;flex-direction:column;gap:2px}.lp-other-copy strong{font-size:.9rem}.lp-other-copy span{color:#64748b;font-size:.78rem}.lp-actions{display:flex;justify-content:flex-end}@media (max-width:900px){.lp-other-row,.lp-template-grid,.lp-type-head{grid-template-columns:1fr}}@media (max-width:640px){.lp-manager{padding:16px}.lp-input,.lp-input-sm{max-width:100%}}.confirm-modal-overlay{align-items:center;animation:confirm-overlay-in .15s ease;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#0f0f1973;display:flex;inset:0;justify-content:center;padding:16px;position:fixed;z-index:1100}@keyframes confirm-overlay-in{0%{opacity:0}to{opacity:1}}.confirm-modal{animation:confirm-modal-in .18s cubic-bezier(.34,1.56,.64,1);background:#fff;border-radius:18px;box-shadow:0 20px 60px #00000026,0 4px 16px #00000014;max-width:420px;padding:28px 28px 24px;position:relative;width:100%}@keyframes confirm-modal-in{0%{opacity:0;transform:scale(.9) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}.confirm-modal-close{align-items:center;background:none;border:none;border-radius:6px;color:#9ca3af;cursor:pointer;display:flex;padding:4px;position:absolute;right:14px;top:14px;transition:color .15s,background .15s}.confirm-modal-close:hover{background:#f3f4f6;color:#374151}.confirm-modal-header{align-items:center;display:flex;gap:12px;margin-bottom:12px}.confirm-modal-icon{flex-shrink:0}.confirm-modal-icon.danger{color:#ef4444}.confirm-modal-icon.warning{color:#f59e0b}.confirm-modal-icon.success{color:#10b981}.confirm-modal-title{color:#111827;font-size:1.05rem;font-weight:700;margin:0}.confirm-modal-message{color:#6b7280;font-size:.875rem;line-height:1.55;margin:0 0 18px}.confirm-modal-input-block{margin-bottom:18px}.confirm-modal-input-label{color:#374151;display:block;font-size:.8rem;font-weight:600;margin-bottom:6px}.confirm-modal-textarea{border:1px solid #e5e7eb;border-radius:10px;box-sizing:border-box;color:#111827;font-family:inherit;font-size:.85rem;min-height:80px;outline:none;padding:9px 12px;resize:vertical;transition:border-color .15s;width:100%}.confirm-modal-textarea:focus{border-color:#6366f1}.confirm-modal-actions{display:flex;gap:10px;justify-content:flex-end}.confirm-modal-btn:disabled{cursor:not-allowed;opacity:.55}.confirm-modal-btn:active:not(:disabled){transform:scale(.97)}.confirm-modal-btn.cancel{background:#f3f4f6;color:#374151}.confirm-modal-btn.cancel:hover:not(:disabled){background:#e5e7eb}.confirm-modal-btn.confirm--success:hover:not(:disabled){opacity:.9}.org-profile-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffd9;border:1px solid #e2e8f0cc;border-radius:16px;box-shadow:0 4px 20px -2px #94a3b814,0 2px 8px -1px #94a3b80a;padding:16px 18px}.org-profile-card__head{align-items:flex-start;border-bottom:1px solid #f1f5f9;color:#1e6bd6;display:flex;gap:10px;margin-bottom:12px;padding-bottom:10px}.org-profile-card__head h3{color:#0f172a;font-size:15px;font-weight:700;line-height:1.3;margin:0}.org-profile-card__head p{color:#64748b;font-size:13px;line-height:1.45;margin:4px 0 0}.org-profile-card__logo-row{align-items:center;background:#fafbfc;border:1px dashed #cbd5e1;border-radius:10px;display:flex;gap:14px;margin-bottom:14px;padding:12px 14px}.org-profile-card__logo-preview{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:10px;display:flex;flex-shrink:0;height:72px;justify-content:center;overflow:hidden;width:72px}.org-profile-card__logo-preview img{max-height:100%;max-width:100%;object-fit:contain}.org-profile-card__logo-fallback{align-items:center;background:linear-gradient(135deg,#1e6bd6,#0ea5e9);color:#fff;display:flex;font-size:20px;font-weight:700;height:100%;justify-content:center;width:100%}.org-profile-card__upload-btn{align-items:center;background:#fff;border:1px solid #cbd5e1;border-radius:10px;color:#334155;cursor:pointer;display:inline-flex;font-size:13px;font-weight:600;gap:8px;height:40px;padding:0 14px;transition:background .15s ease,border-color .15s ease}.org-profile-card__upload-btn:hover:not(:disabled){background:#f8fafc;border-color:#94a3b8}.org-profile-card__upload-btn:disabled{cursor:not-allowed;opacity:.6}.org-profile-card__hint{color:#64748b;font-size:12px;line-height:1.4;margin:6px 0 0}.org-profile-card__grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.org-profile-card__grid label{color:#475569;display:flex;flex-direction:column;font-size:11px;font-weight:600;gap:4px;letter-spacing:.04em;text-transform:uppercase}.org-profile-card__grid label.full-width{grid-column:1/-1}.org-profile-card__grid input,.org-profile-card__grid textarea{background:#fff;border:1px solid #cbd5e1;border-radius:10px;color:#0f172a;font-size:14px;font-weight:500;outline:none;padding:0 12px;transition:border-color .15s ease,box-shadow .15s ease}.org-profile-card__grid input{height:40px}.org-profile-card__grid textarea{line-height:1.45;min-height:72px;padding:10px 12px;resize:vertical}.org-profile-card__grid input:focus,.org-profile-card__grid textarea:focus{border-color:#1e6bd6;box-shadow:0 0 0 3px #1e6bd61f}.org-profile-card__grid input:disabled{background:#f1f5f9;color:#64748b;cursor:not-allowed}.org-profile-card__footer{align-items:center;border-top:1px solid #f1f5f9;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-top:14px;padding-top:12px}.org-profile-card__save{align-items:center;background:#1e6bd6;border:none;border-radius:10px;box-shadow:0 4px 12px #1e6bd626;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;height:40px;justify-content:center;padding:0 18px;transition:background .15s ease}.org-profile-card__save:hover:not(:disabled){background:#1d4ed8}.org-profile-card__save:disabled{cursor:not-allowed;opacity:.6}.org-profile-card__msg{border-radius:10px;font-size:13px;font-weight:500;padding:8px 12px}.org-profile-card__msg.success{background:#ecfdf5;border:1px solid #bbf7d0;color:#065f46}.org-profile-card__msg.error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.org-profile-card__loading{background:#fafbfc;border:1px dashed #cbd5e1;border-radius:10px;color:#64748b;font-size:14px;padding:24px;text-align:center}@media (max-width:768px){.org-profile-card__grid{grid-template-columns:1fr}.org-profile-card__logo-row{align-items:flex-start;flex-direction:column}.org-profile-card__footer{align-items:stretch;flex-direction:column}.org-profile-card__save{width:100%}}.salary-cm{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffd9;border:1px solid #e2e8f0cc;border-radius:16px;box-shadow:0 4px 20px -2px #94a3b814,0 2px 8px -1px #94a3b80a;min-height:20rem;padding:16px 18px}.salary-cm__head{align-items:flex-start;border-bottom:1px solid #f1f5f9;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px;padding-bottom:10px}.salary-cm__head h3{color:#0f172a;font-size:15px;font-weight:700;line-height:1.3;margin:0}.salary-cm__head p{color:#64748b;font-size:13px;line-height:1.45;margin:4px 0 0}.salary-cm__actions{align-items:center;display:flex;flex-shrink:0;flex-wrap:wrap;gap:8px}.salary-cm__template-select{-webkit-appearance:none;appearance:none;background:#fff;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:14px;border:1px solid #cbd5e1;border-radius:10px;cursor:pointer;height:40px;min-width:180px;outline:none;padding:0 36px 0 12px;transition:border-color .15s ease,box-shadow .15s ease}.salary-cm__template-select,.salary-cm__template-select option{color:#0f172a;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px;font-weight:500}.salary-cm__template-select:focus{border-color:#1e6bd6;box-shadow:0 0 0 3px #1e6bd61f}.salary-cm__columns{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.salary-cm__col{border-radius:12px;min-width:0}.salary-cm__col-head{font-size:11px;letter-spacing:.04em;padding:10px 14px;text-transform:uppercase}.salary-cm__col-head.earning{background:#ecfdf5;border-bottom:1px solid #bbf7d0;color:#047857}.salary-cm__col-head.deduction{background:#fef2f2;border-bottom:1px solid #fecaca;color:#b91c1c}.salary-cm__col-head.employer{background:#eff6ff;border-bottom:1px solid #bfdbfe;color:#1d4ed8}.salary-cm__row{align-items:center;border-top:1px solid #f1f5f9;display:flex;gap:10px;justify-content:space-between;padding:11px 14px}.salary-cm__row div{flex:1 1}.salary-cm__row:first-of-type{border-top:none}.salary-cm__row-name{color:#0f172a;font-size:14px;font-weight:600;line-height:1.35}.salary-cm__row-meta{color:#64748b;display:flex;flex-direction:column;font-size:12px;gap:2px;line-height:1.35;margin-top:2px}.salary-cm__row-actions{align-items:center;display:flex;flex-direction:column;justify-content:space-evenly;max-width:2rem}.salary-cm__icon-btn{background:#0000;border:none;border-radius:8px;color:#64748b;cursor:pointer;padding:6px}.salary-cm__icon-btn:hover{background:#f1f5f9;color:#0f172a}.salary-cm__badge{background:#e0e7ff;color:#3730a3;letter-spacing:.03em;padding:2px 6px}.salary-cm__badge.system{background:#fffbeb}.salary-cm__empty{color:#94a3b8;font-size:13px;padding:20px 14px;text-align:center}.salary-cm__overlay{background:#0f172a8c;box-sizing:border-box;inset:0;padding:16px;z-index:2000}.salary-cm__modal{border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 24px 48px #0f172a33;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;max-height:calc(100dvh - 32px);max-width:600px;overflow:hidden;width:100%}.salary-cm__modal-head{align-items:flex-start;border-bottom:1px solid #f1f5f9;flex-shrink:0;gap:8px;padding:5px 18px}.salary-cm__modal-head h3{font-size:14px;font-weight:700;margin:0}.salary-cm__modal-subtitle{font-size:13px;font-weight:400;letter-spacing:normal;line-height:1.45;margin:4px 0 0;text-transform:none}.salary-cm__modal-close{background:#fff;border:1px solid #e2e8f0;border-radius:10px;color:#64748b;display:inline-flex;flex-shrink:0;height:36px;transition:background .15s ease,color .15s ease;width:36px}.salary-cm__modal-close:hover{background:#f8fafc}.salary-cm__modal-body{-webkit-overflow-scrolling:touch;flex:1 1 auto;min-height:0;overflow-x:hidden;overscroll-behavior:contain;padding:14px 18px 16px}.salary-cm__modal-section{margin-bottom:14px}.salary-cm__modal-section:last-child{margin-bottom:0}.salary-cm__modal-section-title{color:#64748b;font-size:11px;font-weight:600;letter-spacing:.04em;margin:0 0 10px;text-transform:uppercase}.salary-cm__options{background:#fafbfc;border:1px solid #f1f5f9;border-radius:10px;padding:12px 14px}.salary-cm__options .salary-cm__modal-section-title{margin-bottom:8px}.salary-cm__options .salary-cm__check:last-child{margin-bottom:0}.salary-cm__field{margin-bottom:10px}.salary-cm__field label{color:#475569;font-size:11px;letter-spacing:.04em;margin-bottom:4px;text-transform:uppercase}.salary-cm__field input,.salary-cm__field select{background:#fff;border:1px solid #cbd5e1;border-radius:10px;box-sizing:border-box;color:#0f172a;font-size:14px;font-weight:500;height:40px;outline:none;padding:0 12px;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.salary-cm__field select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:14px;cursor:pointer;padding-right:36px}.salary-cm__field input:focus,.salary-cm__field select:focus{border-color:#1e6bd6;box-shadow:0 0 0 3px #1e6bd61f}.salary-cm__grid2{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:10px}.salary-cm__grid2 .salary-cm__field,.salary-cm__grid2:last-child{margin-bottom:0}.salary-cm__check{align-items:flex-start;font-size:13px;font-weight:500;gap:10px;line-height:1.45;margin-bottom:8px}.salary-cm__check input{accent-color:#1e6bd6;flex-shrink:0;height:16px;margin-top:2px;width:16px}.salary-cm__modal-foot{background:#fff;border-top:1px solid #f1f5f9;flex-shrink:0;gap:10px;padding:12px 18px 16px}.salary-cm__hint{color:#64748b;font-size:12px;line-height:1.4;margin-top:4px}.salary-cm__error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.salary-cm__error,.salary-cm__msg{border-radius:10px;font-size:13px;margin-bottom:12px;padding:8px 12px}.salary-cm__msg.success{background:#ecfdf5;border:1px solid #bbf7d0;color:#065f46}.salary-cm__msg.error{background:#fef2f2}@media (max-width:768px){.salary-cm__overlay{align-items:flex-end;padding:12px}.salary-cm__modal{border-bottom-left-radius:0;border-bottom-right-radius:0;height:calc(100dvh - 24px);max-height:calc(100dvh - 24px)}.salary-cm__head{flex-direction:column}.salary-cm__actions{width:100%}.salary-cm__template-select{flex:1 1;min-width:0}.salary-cm__grid2{grid-template-columns:1fr}.salary-cm__modal-foot{flex-direction:column-reverse}.salary-cm__modal-foot .generic-btn{width:100%}}.action-btn{color:#64748b;height:32px;width:32px}.action-btn-edit:hover{color:#3b82f6}.action-btn-delete:hover{color:#ef4444}.salary-cm__action-btn{align-items:center;background:#0000;border:none;border-radius:8px;color:#64748b;cursor:pointer;display:inline-flex;height:32px;justify-content:center;padding:0;transition:all .2s ease;width:32px}.salary-cm__action-btn--edit:hover{color:#3b82f6}.salary-cm__action-btn--delete:hover{color:#ef4444}.salary-cm__badge{border-radius:6px;display:inline-block;font-size:10px;font-weight:700;letter-spacing:.04em;margin-left:6px;padding:3px 8px;text-transform:uppercase;vertical-align:middle}.code-badge{color:#3730a3}.salary-cm__badge.system{color:#92400e}.salary-cm__badge.status-active{background:#d1fae5;border:1px solid #bbf7d0;color:#065f46}.salary-cm__badge.status-inactive{background:#f1f5f9;border:1px solid #e2e8f0;color:#475569}.salary-cm__inactive{background-color:#f8fafc}.salary-cm__filters{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}.salary-cm__filter-btn{background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#64748b;cursor:pointer;font-size:12px;font-weight:600;padding:5px 12px;transition:all .15s ease}.salary-cm__filter-btn:hover{border-color:#cbd5e1;color:#334155}.salary-cm__filter-btn.active{background:#1e6bd6;border-color:#1e6bd6;color:#fff}.salary-cm__advanced-toggle{align-items:center;background:#0000;border:1px dashed #cbd5e1;border-radius:8px;color:#64748b;cursor:pointer;display:flex;font-size:12px;font-weight:600;gap:6px;padding:6px 12px;transition:all .15s ease}.salary-cm__advanced-toggle:hover{background:#f0f7ff;border-color:#3b82f6;color:#3b82f6}.salary-cm__modal--wide{max-width:720px}.salary-cm__badge.adhoc{background:#fef3c7;color:#92400e}.salary-cm__badge.reimbursement{background:#f3e8ff;color:#7c3aed}.salary-cm__badge.statutory{background:#dbeafe;color:#1e40af}.salary-struct-header{align-items:flex-start;border-bottom:1px solid #f1f5f9;gap:12px;margin-bottom:16px;padding-bottom:12px}.salary-struct-header h1{font-size:17px;margin:0}.salary-struct-header p{font-size:13px;margin:4px 0 0}.salary-struct-filters{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:16px}.salary-struct-filter-btn{background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#64748b;cursor:pointer;font-size:12px;font-weight:600;padding:5px 12px;transition:all .15s ease}.salary-struct-filter-btn:hover{border-color:#cbd5e1;color:#334155}.salary-struct-filter-btn.active{background:#1e6bd6;border-color:#1e6bd6;color:#fff}.salary-cm__formula-builder{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;padding:16px}.salary-cm__formula-head{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;margin-bottom:12px}.salary-cm__formula-help{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:999px;color:#64748b;display:inline-flex;font-size:11px;gap:4px;padding:4px 8px}.salary-cm__formula-input-wrap{margin-bottom:12px}.salary-cm__formula-input{background:#fff;border:1.5px solid #cbd5e1;border-radius:12px;box-sizing:border-box;color:#0f172a;font-family:JetBrains Mono,SF Mono,Menlo,monospace;font-size:14px;font-weight:600;line-height:1.5;min-height:64px;outline:none;padding:12px 14px;resize:vertical;transition:border-color .15s,box-shadow .15s;width:100%}.salary-cm__formula-input:focus{border-color:#1e6bd6;box-shadow:0 0 0 3px #1e6bd61f}.salary-cm__formula-input.has-error{border-color:#ef4444;box-shadow:0 0 0 3px #ef44441a}.salary-cm__formula-input.has-success{border-color:#10b981;box-shadow:0 0 0 3px #10b9811a}.salary-cm__formula-preview{margin-top:8px;min-height:22px}.formula-status{align-items:center;border-radius:999px;display:inline-flex;font-size:12px;font-weight:600;gap:6px;line-height:1.3;padding:6px 10px}.formula-status.success{background:#ecfdf5;border:1px solid #bbf7d0;color:#065f46}.formula-status.error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.formula-status.hint{background:#fff;border:1px dashed #cbd5e1;color:#64748b;font-weight:500}.salary-cm__formula-row{align-items:flex-end;display:flex;flex-wrap:wrap;gap:10px;margin-bottom:14px}.salary-cm__formula-operators{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr;margin-bottom:14px}@media (max-width:640px){.salary-cm__formula-operators{grid-template-columns:1fr}}.formula-op-group{background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:10px}.formula-op-group-label{color:#64748b;display:block;font-size:10px;font-weight:700;letter-spacing:.05em;margin-bottom:8px;text-transform:uppercase}.formula-op-btns{display:flex;flex-wrap:wrap;gap:6px}.salary-cm__formula-btn{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#0f172a;cursor:pointer;display:inline-flex;font-size:13px;font-weight:700;justify-content:center;min-width:36px;padding:7px 10px;transition:all .12s ease}.salary-cm__formula-btn:hover:not(:disabled){box-shadow:0 2px 8px #0f172a14;transform:translateY(-1px)}.salary-cm__formula-btn:disabled{cursor:not-allowed;opacity:.5}.salary-cm__formula-btn.op{background:#eff6ff;border-color:#bfdbfe;color:#1d4ed8}.salary-cm__formula-btn.op:hover:not(:disabled){background:#dbeafe;border-color:#93c5fd}.salary-cm__formula-btn.num{background:#f8fafc;border-color:#e2e8f0;color:#334155}.salary-cm__formula-btn.func{background:#fef3c7;border-color:#fde68a;color:#92400e;font-size:11px;padding:7px 8px}.salary-cm__formula-btn.func:hover:not(:disabled){background:#fde68a}.salary-cm__formula-btn.ghost{background:#fff;border-color:#cbd5e1;color:#475569;font-size:12px;font-weight:600;height:40px;padding:0 14px}.salary-cm__formula-chips{margin-bottom:14px}.formula-chips-label{color:#475569;display:block;font-size:11px;font-weight:600;margin-bottom:8px}.formula-chips{align-items:center;display:flex;flex-wrap:wrap;gap:6px}.formula-chip{background:#fff;border:1px solid #cbd5e1;border-radius:999px;color:#0f172a;cursor:pointer;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:700;padding:5px 9px;transition:all .12s}.formula-chip:hover:not(:disabled){background:#0f172a;border-color:#0f172a;color:#fff}.salary-cm__formula-examples{margin-bottom:14px}.formula-examples-grid{grid-gap:8px;display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-top:8px}.formula-example{background:#fff;border:1px solid #e2e8f0;border-radius:10px;cursor:pointer;padding:10px 12px;text-align:left;transition:all .12s}.formula-example:hover:not(:disabled){background:#f0f7ff;border-color:#1e6bd6;transform:translateY(-1px)}.formula-example-label{color:#475569;display:block;font-size:11px;font-weight:600;margin-bottom:4px}.formula-example code{background:#f1f5f9;border-radius:6px;color:#0f172a;display:block;font-family:JetBrains Mono,monospace;font-size:11px;font-weight:700;padding:4px 6px;word-break:break-all}.salary-cm__formula-note{background:#fffbeb;border:1px solid #fde68a;border-radius:10px;color:#92400e;font-size:12px;line-height:1.5;padding:10px 12px}.salary-cm__formula-note code{background:#fef3c7;border-radius:4px;font-family:JetBrains Mono,monospace;font-size:11px;padding:1px 5px}.salary-cm__badge.formula{align-items:center;background:#ecfdf5;border:1px solid #bbf7d0;color:#065f46;display:inline-flex}.salary-structure{background-color:#fff;border-radius:10px;color:#333;font-family:system-ui,-apple-system,sans-serif;margin:0 auto;min-height:20rem;padding:24px;width:100%}.salary-structure,.salary-structure *,.salary-structure :after,.salary-structure :before{box-sizing:border-box}.salary-struct-header{align-items:center;border-bottom:1px solid #eaeaea;display:flex;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.salary-struct-header h1{color:#0f172a;font-size:1rem;font-weight:700;margin:0 0 4px}.salary-struct-header p{color:#64748b;font-size:14px;margin:0}.salary-struct-main{width:100%}.struct-table-container{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 1px 3px #0000000d;overflow-x:auto;width:100%}.struct-table{border-collapse:collapse;text-align:left;width:100%}.struct-table thead th{background:#f8fafc;box-shadow:inset 0 -1px 0 #e2e8f0;color:#475569;font-size:13px;font-weight:600;padding:12px 16px;position:-webkit-sticky;position:sticky;top:0;z-index:10}.struct-table th.col-name{width:20%}.struct-table th.col-desc{width:30%}.struct-table th.col-deduct,.struct-table th.col-earn{width:20%}.struct-table th.col-actions{text-align:right;width:10%}.struct-table tr{border-bottom:1px solid #f1f5f9}.struct-table td{padding:16px;vertical-align:middle}.struct-name-cell{color:#0f172a;font-size:14px;font-weight:500}.struct-desc-cell{color:#64748b;font-size:13px}.no-desc{font-style:italic;opacity:.6}.table-actions{align-items:flex-end;display:flex;flex-direction:column;gap:12px;justify-content:flex-end;padding-right:10px}.pill-container{display:flex;flex-wrap:wrap;gap:6px}.pill{border-radius:12px;font-size:12px;font-weight:500;padding:2px 8px;white-space:nowrap}.pill-earning{background:#dcfce7;color:#166534}.pill-deduction{background:#fee2e2;color:#991b1b}.no-data{color:#94a3b8;font-size:13px}.loading-state{color:#64748b;padding:40px;text-align:center}.empty-state{background:#f8fafc;border:1px dashed #cbd5e1;border-radius:8px;padding:60px 20px;text-align:center}.empty-state-icon{color:#94a3b8;display:block;margin:0 auto 16px}.empty-state p{color:#475569;font-size:15px;margin-bottom:16px}.action-btn{background:#0000;border-radius:6px;display:flex;flex-direction:column;padding:0;transition:all .2s ease}.action-btn-edit{color:#3b82f6}.action-btn-edit:hover{color:#2563eb}.action-btn-delete{color:#ef4444}.action-btn-delete:hover{color:#dc2626}.salary-struct__action-btn{align-items:flex-end;background:#0000;border:none;border-radius:6px;cursor:pointer;display:flex;flex-direction:column;height:32px;justify-content:center;padding:0;transition:all .2s ease;width:32px}.salary-struct__action-btn--edit{color:#3b82f6}.salary-struct__action-btn--edit:hover{color:#2563eb}.salary-struct__action-btn--delete{color:#ef4444}.salary-struct__action-btn--delete:hover{color:#dc2626}.salary-struct__action-btn--adjust{color:#64748b;height:28px;padding-right:10px;width:28px}.salary-struct__action-btn--adjust:hover{background:#eff6ff;border-color:#bfdbfe;color:#3b82f6}.salary-cm__overlay{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f172a99;display:flex;height:100vh;justify-content:center;left:0;padding:20px;position:fixed;top:0;width:100vw;z-index:9999}.salary-cm__modal{animation:modalFadeIn .2s ease-out forwards;background:#fff;border-radius:12px;box-shadow:0 25px 50px -12px #00000040;display:flex;flex-direction:column;max-width:700px;width:90%}@keyframes modalFadeIn{0%{opacity:0;transform:translateY(15px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.salary-cm__modal-head{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:20px 24px}.salary-cm__modal-head h3{color:#0f172a;font-size:18px;font-weight:600;margin:0 0 4px}.salary-cm__modal-subtitle{color:#64748b;font-size:14px;margin:0}.salary-cm__modal-close{align-items:center;background:none;border:none;border-radius:6px;color:#94a3b8;cursor:pointer;display:flex;justify-content:center;padding:6px;transition:all .2s ease}.salary-cm__modal-close:hover{background:#f1f5f9;color:#0f172a}.salary-cm__modal-body{max-height:60vh;overflow-y:auto;padding:24px}.salary-cm__modal-body::-webkit-scrollbar{width:6px}.salary-cm__modal-body::-webkit-scrollbar-track{background:#0000}.salary-cm__modal-body::-webkit-scrollbar-thumb{background-color:#cbd5e1;border-radius:10px}.salary-cm__modal-section{margin-bottom:20px}.salary-cm__field{margin-bottom:16px}.salary-cm__field label{color:#334155;display:block;font-size:13px;font-weight:600;margin-bottom:6px}.salary-cm__field input[type=text],.salary-cm__field textarea{background:#fff;border:1px solid #cbd5e1;border-radius:6px;color:#0f172a;font-family:inherit;font-size:14px;padding:10px 12px;transition:border-color .2s,box-shadow .2s;width:100%}.salary-cm__field input:focus,.salary-cm__field textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f626;outline:none}.salary-cm__field textarea{min-height:60px;resize:vertical}.salary-cm__col{background:#fff;border:1px solid #e2e8f0;border-radius:8px;display:flex;flex-direction:column;overflow:hidden}.salary-cm__col-head{align-items:center;background:#f8fafc;border-bottom:1px solid #e2e8f0;display:flex;font-size:13px;font-weight:600;justify-content:space-between;padding:12px 16px}.salary-cm__col-head.earning{color:#166534}.salary-cm__col-head.deduction{color:#991b1b}.salary-cm__options{max-height:220px;overflow-y:auto;padding:12px 0}.salary-cm__options::-webkit-scrollbar{width:4px}.salary-cm__options::-webkit-scrollbar-thumb{background-color:#cbd5e1;border-radius:4px}.salary-cm__check{align-items:center;border-bottom:1px solid #f1f5f9;color:#334155;cursor:pointer;display:flex;font-size:14px;margin:0;padding:8px 12px;transition:background-color .2s}.salary-cm__check:hover{background-color:#f8fafc}.salary-cm__check input[type=checkbox]{accent-color:#3b82f6;cursor:pointer;height:16px;margin-right:12px;width:16px}.salary-cm__check small{color:#64748b;margin-left:4px}.no-options{color:#94a3b8;font-size:13px;padding:0 12px}.salary-cm__modal-foot{background:#f8fafc;border-radius:0 0 12px 12px;border-top:1px solid #e2e8f0;display:flex;gap:12px;justify-content:flex-end;padding:16px 24px}.secondary-btn{background-color:#fff!important;border:1px solid #cbd5e1!important;box-shadow:0 1px 2px #0000000d;color:#475569!important}.secondary-btn:hover{background-color:#f8fafc!important;border-color:#94a3b8!important}.salary-cm__msg{border-radius:6px;font-size:14px;font-weight:500;margin-bottom:16px;padding:12px 16px}.salary-cm__msg.error{background-color:#fef2f2;border:1px solid #fecaca;color:#991b1b}@media (max-width:640px){.salary-cm__columns{grid-template-columns:1fr}.struct-table-container{border-left:none;border-radius:0;border-right:none}}.payroll-adj{background:#fff;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden}.payroll-adj__head{align-items:center;background:#f8fafc;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:10px 14px}.payroll-adj__head h5{color:#64748b;font-size:.6875rem;font-weight:700;letter-spacing:.06em;margin:0;text-transform:uppercase}.payroll-adj__add-btn{align-items:center;background:#fff;border:1px solid #cbd5e1;border-radius:8px;color:#334155;cursor:pointer;display:inline-flex;font-size:.75rem;font-weight:600;gap:4px;padding:5px 10px;transition:background .15s,border-color .15s}.payroll-adj__add-btn:hover:not(:disabled){background:#f8fafc;border-color:#94a3b8}.payroll-adj__body{padding:8px 14px 12px}.payroll-adj__empty,.payroll-adj__hint{color:#94a3b8;font-size:.8125rem;line-height:1.45;margin:0;padding:8px 0}.payroll-adj__list{list-style:none;margin:0;padding:0}.payroll-adj__list li{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;font-size:.875rem;gap:12px;justify-content:space-between;padding:10px 0}.payroll-adj__list li:last-child{border-bottom:none}.payroll-adj__meta{color:#94a3b8;display:block;font-size:.75rem;margin-top:3px}.payroll-adj__actions{align-items:center;display:flex;gap:8px}.payroll-adj__actions .earn{color:#059669}.payroll-adj__actions .ded,.payroll-adj__actions .earn{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:700}.payroll-adj__actions .ded{color:#dc2626}.payroll-adj__remove{background:#0000;border:none;border-radius:6px;color:#94a3b8;cursor:pointer;padding:4px}.payroll-adj__remove:hover{background:#fef2f2;color:#dc2626}.payroll-adj__form{background:#fafbfc;border-top:1px solid #e2e8f0;padding:12px 14px 14px}.payroll-adj__grid{grid-gap:10px;display:grid;gap:10px;grid-template-columns:repeat(2,minmax(0,1fr));margin-bottom:10px}.payroll-adj__form label{color:#64748b;display:flex;flex-direction:column;font-size:.75rem;font-weight:500;gap:4px}.payroll-adj__form input,.payroll-adj__form select{border:1px solid #cbd5e1;border-radius:8px;color:#0f172a;font-size:.875rem;height:36px;padding:0 10px}.payroll-adj__form-actions{display:flex;gap:8px;justify-content:flex-end;margin-top:10px}.payroll-adj__form-actions button{border-radius:8px;cursor:pointer;font-size:.8125rem;font-weight:600;height:36px;padding:0 14px}.payroll-adj__form-actions button[type=button]{background:#fff;border:1px solid #cbd5e1;color:#334155}.payroll-adj__form-actions button[type=submit]{background:#1e40af;border:none;color:#fff}.payroll-adj__error{color:#dc2626;font-size:.8125rem;margin-bottom:8px}@media (max-width:480px){.payroll-adj__grid{grid-template-columns:1fr}}.payroll-breakdown{display:flex;flex-direction:column;gap:16px}.payroll-breakdown__sheet{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))}.payroll-breakdown__col{background:#fff;border:1px solid #e2e8f0;border-radius:12px;display:flex;flex-direction:column;min-height:0;overflow:hidden}.payroll-breakdown__col-head{border-bottom:1px solid #e2e8f0;font-size:.6875rem;font-weight:700;letter-spacing:.06em;padding:10px 14px;text-transform:uppercase}.payroll-breakdown__col--earn .payroll-breakdown__col-head{background:#ecfdf5;color:#047857}.payroll-breakdown__col--ded .payroll-breakdown__col-head{background:#fef2f2;color:#b91c1c}.payroll-breakdown__col-body{flex:1 1;padding:4px 14px}.payroll-breakdown__col-foot{font-feature-settings:"tnum";align-items:center;background:#f8fafc;border-top:1px solid #e2e8f0;display:flex;font-size:.875rem;font-variant-numeric:tabular-nums;font-weight:700;gap:12px;justify-content:space-between;padding:12px 14px}.payroll-breakdown__col-foot--ded{color:#b91c1c}.payroll-breakdown__col-foot-amount{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.payroll-breakdown__line{grid-gap:12px;align-items:start;border-bottom:1px solid #f1f5f9;display:grid;font-size:.875rem;gap:12px;grid-template-columns:minmax(0,1fr) auto;padding:10px 0}.payroll-breakdown__line:last-child{border-bottom:none}.payroll-breakdown__line-label{display:flex;flex-direction:column;gap:3px;min-width:0}.payroll-breakdown__line-name{color:#0f172a;font-size:.8125rem;font-weight:600;line-height:1.35}.payroll-breakdown__line-code{color:#94a3b8;font-size:.6875rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.payroll-breakdown__line-formula{color:#64748b;font-size:.75rem;line-height:1.4;word-break:break-word}.payroll-breakdown__line-amount{font-feature-settings:"tnum";color:#0f172a;font-size:.875rem;font-variant-numeric:tabular-nums;font-weight:700;padding-top:1px;white-space:nowrap}.payroll-breakdown__line--ot .payroll-breakdown__line-amount{color:#059669}.payroll-breakdown__line--lop .payroll-breakdown__line-amount{color:#dc2626}.payroll-breakdown__empty{color:#94a3b8;font-size:.8125rem;padding:16px 0;text-align:center}.payroll-breakdown__employer{background:#f8fafc;border:1px solid #bfdbfe;border-radius:12px;overflow:hidden}.payroll-breakdown__employer-head{background:#eff6ff;border-bottom:1px solid #bfdbfe;padding:10px 14px}.payroll-breakdown__employer-head h4{color:#1d4ed8;font-size:.6875rem;font-weight:700;letter-spacing:.06em;margin:0;text-transform:uppercase}.payroll-breakdown__employer-note{color:#64748b;font-size:.75rem;line-height:1.4;margin:4px 0 0}.payroll-breakdown__employer-body{padding:4px 14px}.payroll-breakdown__line--employer .payroll-breakdown__line-amount{color:#1d4ed8}.payroll-breakdown__advloan{background:#fbfdff;border-color:#e2e8f0}.payroll-breakdown__advloan .payroll-breakdown__employer-head{background:#f1f5f9;border-bottom:1px solid #e2e8f0}.payroll-breakdown__advloan .payroll-breakdown__employer-head h4{color:#475569}.payroll-breakdown__advloan-row{align-items:flex-start;border-bottom:1px dashed #e2e8f0;display:flex;gap:12px;justify-content:space-between;padding:8px 0}.payroll-breakdown__advloan-row:last-child{border-bottom:none}.payroll-breakdown__advloan-date{color:#94a3b8;display:block;font-size:.6875rem;margin-top:2px}.payroll-breakdown__advloan-amount{color:#475569;font-weight:600}.payroll-breakdown__validation{background:#fffbeb;border:1px solid #fde68a;border-radius:12px;overflow:hidden}.payroll-breakdown__validation-head{align-items:center;border-bottom:1px solid #fde68a;color:#92400e;display:flex;font-size:.8125rem;font-weight:600;gap:8px;padding:10px 14px}.payroll-breakdown__validation-body{padding:8px 14px 12px}.payroll-breakdown__issue{align-items:flex-start;display:flex;font-size:.8125rem;gap:10px;line-height:1.45;padding:6px 0}.payroll-breakdown__issue--fail{color:#991b1b}.payroll-breakdown__issue--warn{color:#92400e}.payroll-breakdown__issue-dot{border-radius:50%;flex-shrink:0;height:6px;margin-top:6px;width:6px}.payroll-breakdown__issue--fail .payroll-breakdown__issue-dot{background:#ef4444}.payroll-breakdown__issue--warn .payroll-breakdown__issue-dot{background:#f59e0b}.payroll-breakdown__engine{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;overflow:hidden}.payroll-breakdown__engine-head{align-items:center;background:#fff;border-bottom:1px solid #e2e8f0;color:#334155;display:flex;font-size:.8125rem;font-weight:600;gap:8px;padding:10px 14px}.payroll-breakdown__engine-body{padding:4px 14px 10px}.payroll-breakdown__engine-row{grid-gap:12px;border-bottom:1px solid #f1f5f9;display:grid;font-size:.8125rem;gap:12px;grid-template-columns:120px minmax(0,1fr);line-height:1.45;padding:8px 0}.payroll-breakdown__engine-row:last-child{border-bottom:none}.payroll-breakdown__engine-key{color:#64748b;font-weight:600}.payroll-breakdown__engine-val{color:#0f172a;word-break:break-word}.payroll-breakdown__engine-val--highlight{color:#047857;font-weight:700}@media (max-width:520px){.payroll-breakdown__sheet{grid-template-columns:1fr}.payroll-breakdown__engine-row{gap:4px;grid-template-columns:1fr}}.pb-drawer{--pb-space-xs:6px;--pb-space-sm:10px;--pb-space-md:12px;--pb-space-lg:14px;--pb-space-xl:16px;--pb-radius:12px;--pb-text-xs:0.6875rem;--pb-text-sm:0.75rem;--pb-text-base:0.875rem;--pb-text-lg:1rem;--pb-text-xl:1.5rem;--pb-label:#64748b;--pb-text:#0f172a;--pb-muted:#94a3b8;--pb-border:#e2e8f0;--pb-surface:#f8fafc}.pb-drawer.details-drawer{gap:var(--pb-space-lg);max-width:520px;padding:var(--pb-space-xl)}.pb-drawer .drawer-header{border-bottom:1px solid var(--pb-border);margin-bottom:0;padding-bottom:var(--pb-space-sm)}.pb-drawer .drawer-header h2{font-size:1.0625rem;font-weight:700;letter-spacing:-.01em;line-height:1.3;margin:0}.pb-drawer .drawer-header p{font-size:var(--pb-text-sm);line-height:1.4;margin:2px 0 0}.pb-drawer__body{display:flex;flex:1 1;flex-direction:column;gap:var(--pb-space-lg)}.pb-drawer__meta{grid-gap:var(--pb-space-md);background:var(--pb-surface);border:1px solid var(--pb-border);border-radius:var(--pb-radius);display:grid;gap:var(--pb-space-md);grid-template-columns:repeat(2,minmax(0,1fr));padding:var(--pb-space-md)}.pb-drawer__meta-item{display:flex;flex-direction:column;gap:4px;min-width:0}.pb-drawer__meta-label{color:var(--pb-muted);font-size:var(--pb-text-xs);font-weight:600;letter-spacing:.06em;text-transform:uppercase}.pb-drawer__meta-value{color:var(--pb-text);font-size:var(--pb-text-base);font-weight:600;line-height:1.35;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pb-section{background:#fff;border:1px solid var(--pb-border);border-radius:var(--pb-radius);padding:var(--pb-space-md)}.pb-section__title{color:var(--pb-text);font-size:var(--pb-text-base);font-weight:600;letter-spacing:-.01em;margin:0 0 var(--pb-space-sm)}.pb-section__note{background:#fffbeb;border:1px solid #fde68a;border-radius:8px;color:#92400e;font-size:var(--pb-text-sm);line-height:1.45;margin:0 0 var(--pb-space-sm);padding:var(--pb-space-xs) var(--pb-space-sm)}.pb-att-grid{grid-gap:var(--pb-space-sm);display:grid;gap:var(--pb-space-sm);grid-template-columns:repeat(2,minmax(0,1fr))}.pb-att-stat{background:var(--pb-surface);border:1px solid var(--pb-border);border-radius:10px;display:flex;flex-direction:column;gap:6px;min-height:72px;padding:var(--pb-space-sm)}.pb-att-stat__label{color:var(--pb-label);font-size:var(--pb-text-xs);font-weight:500;line-height:1.35}.pb-att-stat__value{font-feature-settings:"tnum";color:var(--pb-text);font-size:var(--pb-text-lg);font-variant-numeric:tabular-nums;font-weight:700;line-height:1}.pb-att-stat--present{background:#ecfdf5;border-color:#bbf7d0}.pb-att-stat--present .pb-att-stat__value{color:#047857}.pb-att-stat--paid{background:#eff6ff;border-color:#bfdbfe}.pb-att-stat--paid .pb-att-stat__value{color:#1d4ed8}.pb-att-stat--absent{background:#fff1f2;border-color:#fecaca}.pb-att-stat--absent .pb-att-stat__value{color:#b91c1c}.pb-ot-note{background:#fffbeb;border:1px solid #fde68a;border-radius:8px;color:#b45309;font-size:var(--pb-text-sm);margin-top:var(--pb-space-sm);padding:var(--pb-space-xs) var(--pb-space-sm)}.pb-drawer__footer{border-top:1px solid var(--pb-border);flex-direction:column;margin-top:auto;padding-top:var(--pb-space-md)}.pb-drawer__footer,.pb-net-card{display:flex;gap:var(--pb-space-md)}.pb-net-card{align-items:center;background:linear-gradient(135deg,#0f172a,#1e293b);border-radius:var(--pb-radius);color:#fff;justify-content:space-between;padding:var(--pb-space-md) var(--pb-space-lg)}.pb-net-card__label{color:#94a3b8;display:block;font-size:var(--pb-text-xs);font-weight:600;letter-spacing:.06em;text-transform:uppercase}.pb-net-card__words{color:#cbd5e1;font-size:var(--pb-text-sm);line-height:1.4;margin:4px 0 0;max-width:260px}.pb-net-card__amount{font-feature-settings:"tnum";color:#34d399;font-size:var(--pb-text-xl);font-variant-numeric:tabular-nums;font-weight:700;margin:0;white-space:nowrap}.pb-drawer__actions{grid-gap:var(--pb-space-sm);display:grid;gap:var(--pb-space-sm);grid-template-columns:1fr 1fr}.pb-drawer__actions .btn-cancel,.pb-drawer__actions .btn-primary-commit{border-radius:10px;font-size:var(--pb-text-base);height:44px}.pb-drawer .breakdown-loading{align-items:center;color:var(--pb-label);display:flex;flex-direction:column;font-size:var(--pb-text-base);gap:var(--pb-space-sm);justify-content:center;padding:48px var(--pb-space-md)}@media (max-width:480px){.pb-drawer.details-drawer{border-radius:0;max-width:100%;padding:var(--pb-space-md)}.pb-drawer__meta{grid-template-columns:1fr}.pb-net-card{align-items:flex-start;flex-direction:column}.pb-drawer__actions{grid-template-columns:1fr}}.payroll-page{--payroll-radius-card:16px;--payroll-radius-control:10px;background-color:#f8fafc;display:flex;flex:1 1;flex-direction:column;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;gap:16px;overflow-y:auto;padding:20px 24px}.glass-morphism{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffd9;border:1px solid #e2e8f0cc;border-radius:var(--payroll-radius-card);box-shadow:0 4px 20px -2px #94a3b814,0 2px 8px -1px #94a3b80a;transition:transform .2s ease,box-shadow .2s ease}.payroll-header-banner{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:2px}.payroll-title{color:#0f172a;font-size:28px;font-weight:800;letter-spacing:-.5px;margin:0}.payroll-subtitle{color:#64748b;font-size:14px;line-height:1.4;margin:4px 0 0}.payroll-header-actions{display:flex;gap:12px}.payroll-tabs-bar{border-bottom:1px solid #e2e8f0;display:flex;gap:8px;margin-bottom:16px;padding-bottom:6px}.tab-btn{align-items:center;background:none;border:none;border-radius:var(--payroll-radius-control);color:#64748b;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:10px 18px;transition:all .2s ease}.tab-btn:hover{background:#f1f5f9;color:#0f172a}.tab-btn.active{background:#eff6ff;color:#1e6bd6}.payroll-stats-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:16px}.payroll-stats-grid .generic-card{max-width:none}.payroll-analytics-panel{display:flex;flex-direction:column;gap:16px}.payroll-stats-grid .stat-card{align-items:center;display:flex;gap:12px;justify-content:flex-start;padding:22px 24px}.metric-card:hover,.stat-card:hover{box-shadow:0 6px 16px -4px #94a3b81f;transform:translateY(-1px)}.stat-icon-wrapper{align-items:center;border-radius:var(--payroll-radius-control);display:flex;flex-shrink:0;height:38px;justify-content:center;width:38px}.indigo-bg{background-color:#eff6ff}.green-bg{background-color:#ecfdf5}.red-bg{background-color:#fef2f2}.amber-bg{background-color:#fffbeb}.metric-card span,.stat-label{color:#64748b;display:block;font-size:11px;font-weight:600;letter-spacing:.4px;margin:0;text-transform:uppercase}.metric-card strong,.stat-value{color:#0f172a;display:block;font-size:18px;font-weight:700;letter-spacing:-.3px;margin:4px 0 0}.status-banner{align-items:center;animation:fadeIn .3s ease;border-radius:12px;display:flex;font-size:14px;font-weight:500;gap:12px;margin-bottom:16px;padding:12px 16px;position:relative}.status-banner.success{background-color:#d1fae5;border:1px solid #a7f3d0;color:#065f46}.status-banner.error{background-color:#fee2e2;border:1px solid #fca5a5;color:#991b1b}.status-banner.info{background-color:#eff6ff;border:1px solid #bfdbfe;color:#1e40af}.payroll-run-banner{align-items:flex-start;border:1px solid #0000;border-radius:12px;display:flex;gap:12px;margin-bottom:16px;padding:14px 16px}.payroll-run-banner--info{background:#f8fafc;border-color:#e2e8f0;color:#334155}.payroll-run-banner--success{background:#ecfdf5;border-color:#a7f3d0;color:#065f46}.payroll-run-banner--warning{background:#fffbeb;border-color:#fde68a;color:#92400e}.payroll-run-banner__icon{flex-shrink:0;margin-top:2px}.payroll-run-banner__body{min-width:0}.payroll-run-banner__title{display:block;font-size:14px;font-weight:700;margin-bottom:4px}.payroll-run-banner__message{font-size:13px;font-weight:500;line-height:1.5;margin:0}.payroll-processor-hint{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;color:#475569;font-size:13px;line-height:1.5;margin:0 0 16px;padding:12px 14px}.bulk-result-panel{animation:fadeIn .25s ease;border:1px solid #e2e8f0;margin-bottom:16px;padding:18px 20px}.bulk-result-header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between;margin-bottom:14px}.bulk-result-title{color:#0f172a;font-size:15px;font-weight:700;margin:0}.bulk-result-type{color:#64748b;font-size:13px;font-weight:600}.bulk-result-subtitle{color:#64748b;font-size:13px;margin:4px 0 0}.bulk-result-close{align-items:center;background:#f1f5f9;border:none;border-radius:50%;color:#475569;cursor:pointer;display:flex;flex-shrink:0;font-size:18px;height:28px;justify-content:center;line-height:1;width:28px}.bulk-result-close:hover{background:#e2e8f0}.bulk-result-stats{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:16px}.bulk-stat{align-items:center;border-radius:999px;display:inline-flex;font-size:13px;font-weight:600;gap:6px;padding:6px 12px}.bulk-stat strong{font-size:14px}.bulk-stat--success{background:#dcfce7;color:#15803d}.bulk-stat--failed{background:#fee2e2;color:#991b1b}.bulk-stat--skipped{background:#fffbeb;border:1px solid #fde68a;color:#b45309}.bulk-result-section{border-top:1px solid #f1f5f9;margin-top:14px;padding-top:14px}.bulk-result-section-title{color:#0f172a;font-size:13px;font-weight:700;margin:0 0 4px}.bulk-result-count{color:#64748b;font-weight:600}.bulk-result-hint{color:#64748b;font-size:12px;margin:0 0 10px}.bulk-skipped-list{display:flex;flex-wrap:wrap;gap:8px;max-height:220px;overflow-y:auto;padding:4px 2px}.bulk-skipped-chip{align-items:center;background:#fffbeb;border:1px solid #fde68a;border-radius:999px;color:#92400e;display:inline-flex;font-size:12px;font-weight:600;gap:4px;padding:5px 10px;white-space:nowrap}.bulk-skipped-chip em{color:#b45309;font-style:normal;font-weight:700}.bulk-skipped-chip--failed{background:#fef2f2;border-color:#fecaca;color:#991b1b}.bulk-result-toggle{background:#fff;border:1px solid #cbd5e1;border-radius:8px;color:#334155;cursor:pointer;font-size:12px;font-weight:600;margin-top:10px;padding:6px 12px}.bulk-result-toggle:hover{background:#f8fafc}.payroll-run-meta{color:#64748b;display:flex;flex-wrap:wrap;font-size:13px;gap:8px 16px;margin:0 0 16px}.payroll-run-meta strong{color:#0f172a}.close-status{background:none;border:none;color:inherit;cursor:pointer;opacity:.6;position:absolute;right:14px;top:50%;transform:translateY(-50%)}.close-status:hover{opacity:1}.gradient-btn{align-items:center;background:linear-gradient(135deg,#1e6bd6,#2bb7da);border:none;border-radius:var(--payroll-radius-control);box-shadow:0 4px 12px #1e6bd626;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:8px;padding:11px 20px;transition:all .2s ease}.gradient-btn:hover{box-shadow:0 6px 16px #1e6bd640;opacity:.95;transform:translateY(-1px)}.gradient-btn:active{transform:translateY(0)}.gradient-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.btn-secondary-custom{align-items:center;background-color:#fff;border:1px solid #cbd5e1;border-radius:var(--payroll-radius-control);color:#334155;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:8px;padding:11px 20px;transition:all .2s ease}.btn-secondary-custom:hover{background-color:#f8fafc;border-color:#94a3b8}.btn-primary-custom{align-items:center;background-color:#1e6bd6;border:none;border-radius:var(--payroll-radius-control);box-shadow:0 4px 12px #1e6bd626;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:8px;padding:11px 20px;transition:all .2s ease}.btn-primary-custom:hover{background-color:#1d4ed8;box-shadow:0 6px 16px #1e6bd640}.btn-primary-custom:disabled{cursor:not-allowed;opacity:.6}.processor-controls{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:16px;margin-top:0}.processor-controls.compact{align-items:flex-end;display:flex;flex-wrap:wrap;gap:12px;margin:0}.processor-controls.compact .control-group{flex:1 1;min-width:130px}.processor-controls.compact .control-select{height:40px;width:100%}.control-group{display:flex;flex-direction:column;gap:4px}.control-group label{color:#475569;font-size:12px;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.control-select{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-color:#fff;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:14px;border:1px solid #cbd5e1;border-radius:var(--payroll-radius-control);color:#0f172a;cursor:pointer;font-size:14px;font-weight:500;height:40px;outline:none;padding:0 36px 0 14px;transition:border-color .2s ease}.control-select:focus{border-color:#1e6bd6}.processor-actions-footer{border-top:1px solid #f1f5f9;display:flex;gap:10px;justify-content:flex-end;margin-top:4px;padding-top:14px}.history-table-container{margin-bottom:16px;padding:16px 18px}.table-header-filters{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:12px}.table-header-filters h2{color:#0f172a;font-size:17px;font-weight:700;line-height:1.3;margin:0}.table-header-filters .subtitle{color:#64748b;font-size:13px;line-height:1.4;margin:2px 0 0}.history-table-container h3{color:#0f172a;font-size:15px;font-weight:700;margin:0 0 10px}.filter-actions-row{align-items:flex-end;display:flex;flex-wrap:wrap;gap:12px;width:100%}.filter-actions-row-left{align-items:flex-end;display:flex;flex:1 1;flex-wrap:wrap;gap:12px}.filter-actions-row .processor-controls.compact{flex:0 0 auto;margin-bottom:0}.filter-actions-row-left .processor-controls.compact .control-group{flex:0 0 auto;min-width:110px}.filter-actions-row .btn-csv,.filter-actions-row .table-search-bar{flex-shrink:0}.pm-type-switch{align-items:center;align-self:flex-end;background:#f1f5f9;border-radius:10px;box-sizing:border-box;display:inline-flex;flex-shrink:0;flex-wrap:nowrap;gap:4px;height:40px;padding:3px}.pm-type-switch .generic-btn{border:none;border-radius:8px;box-shadow:none;flex:0 0 auto;font-size:13px;font-weight:600;height:34px;line-height:1;min-width:72px;padding:0 14px;transform:none;transition:all .15s ease}.pm-type-switch .generic-btn.active{background:#fff;border-radius:8px;box-shadow:0 1px 3px #00000014;color:#1e6bd6;opacity:1}.pm-type-switch .generic-btn.not-active{background:#0000;border-radius:8px;color:#64748b;opacity:1}.pm-type-switch .generic-btn.not-active:hover{background:#e2e8f0;color:#334155;opacity:1;transform:none}.pm-type-switch .generic-btn:disabled{opacity:.6}.wage-sheet-btn{flex-shrink:0;height:40px;white-space:nowrap}.wage-sheet-btn:disabled{background:#e2e8f0!important;border:1px solid #cbd5e1!important;box-shadow:none;color:#94a3b8!important;cursor:not-allowed;opacity:1}.table-search-bar{align-items:center;background-color:#fff;border:1px solid #cbd5e1;border-radius:var(--payroll-radius-control);display:flex;gap:8px;height:40px;min-width:220px;padding:0 12px;width:min(280px,100%)}.table-search-bar input{border:none;color:#0f172a;font-size:14px;width:100%}.table-search-bar input,.table-search-bar input:focus{box-shadow:none;outline:none}.table-search-bar svg{color:#64748b}.btn-csv{align-items:center;background:#fff;border:1px solid #cbd5e1;border-radius:var(--payroll-radius-control);color:#334155;cursor:pointer;display:inline-flex;font-size:13px;font-weight:600;gap:8px;height:40px;padding:0 14px;transition:all .2s ease}.btn-csv:hover{background-color:#f8fafc}.scrollable-table-wrapper{overflow-x:auto}.payroll-custom-table{border-collapse:collapse;text-align:left;width:100%}.payroll-custom-table th{background-color:#f8fafc;border-bottom:2px solid #e2e8f0;color:#334155;font-size:12px;font-weight:700;letter-spacing:.5px;padding:14px 16px;text-transform:uppercase}.payroll-custom-table td{border-bottom:1px solid #f1f5f9;color:#334155;font-size:14px;padding:16px;vertical-align:middle}.payroll-custom-table tr:hover td{background-color:#f8fafc}.payroll-custom-table td.col-center,.payroll-custom-table th.col-center{text-align:center}.payroll-code-text{color:#1e6bd6;font-weight:700}.emp-code-cell{color:#475569;font-weight:600}.emp-name-cell{color:#0f172a;font-weight:600}.net-salary-val{color:#0f172a;font-weight:700}.deduction-val{color:#ef4444}.emp-field-hint{color:#64748b;font-size:13px}.empty-table-cell{color:#64748b;font-style:italic;padding:40px!important;text-align:center}.row-action-buttons{display:flex;gap:8px;justify-content:center}.action-btn-pdf,.action-btn-view{align-items:center;background:none;border:none;border-radius:var(--payroll-radius-control);cursor:pointer;display:flex;height:32px;justify-content:center;transition:all .2s ease;width:32px}.row-action-buttons .generic-btn.action-btn-pdf,.row-action-buttons .generic-btn.action-btn-view{box-shadow:none;height:32px;min-width:32px;padding:0;transform:none;width:32px}.row-action-buttons .generic-btn.action-btn-view:active,.row-action-buttons .generic-btn.action-btn-view:hover{opacity:1;transform:none}.row-action-buttons .generic-btn.action-btn-pdf>span:not(.btn-icon),.row-action-buttons .generic-btn.action-btn-view>span:not(.btn-icon){display:none}.action-btn-pdf svg,.action-btn-view svg{flex-shrink:0}.action-btn-view{background-color:#eff6ff;color:#3b82f6}.row-action-buttons .generic-btn.action-btn-view{background:#eff6ff;color:#3b82f6}.action-btn-view:hover{background-color:#dbeafe}.action-btn-pdf{background-color:#ecfdf5;color:#10b981}.row-action-buttons .generic-btn.action-btn-pdf{background:#ecfdf5;color:#10b981}.action-btn-pdf:hover{background-color:#d1fae5}.badge-status{align-items:center;border-radius:9999px;display:inline-flex;font-size:12px;font-weight:600;padding:4px 12px}.badge-status.processed{background-color:#d1fae5;color:#065f46}.badge-status.pending{background-color:#fffbeb;color:#b45309}.badge-status.approved{background-color:#d1fae5;color:#065f46}.badge-status.rejected{background-color:#fee2e2;color:#991b1b}.badge-status.severity-pass{background-color:#d1fae5;color:#065f46}.badge-status.severity-warn{background-color:#fef3c7;color:#92400e}.badge-status.fail,.badge-status.severity-fail{background-color:#fee2e2;color:#991b1b}.badge-status.fail,.badge-status.warn{font-size:11px;padding:2px 8px}.badge-status.warn{background-color:#fef3c7;color:#92400e}.badge-status.daily-type{background-color:#ede9fe;color:#6d28d9;font-size:11px;padding:2px 8px}.badge-status.monthly-type{background-color:#dbeafe;color:#1e40af;font-size:11px;padding:2px 8px}.run-status-badge{align-items:center;border-radius:999px;display:inline-flex;font-size:12px;font-weight:700;padding:4px 10px;text-transform:capitalize}.run-status-badge.pendingreview{background:#fef3c7;color:#92400e}.run-status-badge.approved{background:#d1fae5;color:#065f46}.run-status-badge.processed{background:#dbeafe;color:#1e40af}.run-status-badge.draft,.run-status-badge.rejected{background:#f1f5f9;color:#475569}.section-title{color:#0f172a;font-size:15px;font-weight:700;margin:0 0 10px}.details-overlay{animation:fadeIn .2s ease-out;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a66;display:flex;inset:0;justify-content:flex-end;position:fixed;z-index:1000}.details-drawer{animation:slideLeft .3s cubic-bezier(.16,1,.3,1);background-color:#fff;border-radius:24px 0 0 24px;box-shadow:-10px 0 30px #0f172a1a;display:flex;flex-direction:column;gap:14px;height:100%;max-width:580px;overflow-y:auto;padding:18px 20px;width:100%}.drawer-header{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.drawer-header h2{color:#0f172a;font-size:18px;font-weight:700;line-height:1.3;margin:0}.drawer-header p{color:#64748b;font-size:13px;line-height:1.4;margin:2px 0 0}.close-drawer-btn{align-items:center;background-color:#f1f5f9;border:none;border-radius:50%;color:#475569;cursor:pointer;display:flex;height:36px;justify-content:center;transition:background-color .2s ease;width:36px}.close-drawer-btn:hover{background-color:#e2e8f0}.drawer-meta-grid{grid-gap:16px;background-color:#f8fafc;border-radius:12px;display:grid;gap:16px;grid-template-columns:repeat(2,1fr);padding:16px 20px}.meta-item{display:flex;flex-direction:column;gap:4px}.meta-lbl{color:#94a3b8;font-size:11px;font-weight:600;text-transform:uppercase}.meta-item strong{color:#334155;font-size:14px}.details-card-block{border:1px solid #f1f5f9;border-radius:var(--payroll-radius-card);padding:20px}.details-card-block h3{color:#0f172a;font-size:14px;font-weight:700;margin-bottom:14px}.breakdown-period-note{background:#fffbeb;border:1px solid #fde68a;border-radius:8px;color:#b45309;font-size:12px;margin:-4px 0 12px;padding:8px 12px}.grid-4-cols{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(4,1fr)}.att-box{background-color:#f8fafc;border-radius:10px;display:flex;flex-direction:column;gap:6px;padding:12px}.att-box span{color:#64748b;font-size:11px}.att-box strong{color:#0f172a;font-size:16px}.att-box.present{background-color:#ecfdf5;color:#047857}.att-box.paid{background-color:#eff6ff;color:#1d4ed8}.att-box.absent{background-color:#fff1f2;color:#b91c1c}.att-box.absent strong,.att-box.paid strong,.att-box.present strong{color:inherit}.ot-badge-alert{background-color:#fffbeb;border:1px solid #fef3c7;border-radius:10px;color:#d97706;font-size:13px;margin-top:14px;padding:10px 14px}.earnings-deductions-sheet{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(2,1fr)}.sheet-column h4{border-bottom:2px solid #f1f5f9;font-weight:700;margin-bottom:12px;padding-bottom:6px;text-transform:uppercase}.item-row,.sheet-column h4{color:#475569;font-size:13px}.item-row{border-bottom:1px solid #f8fafc;display:flex;justify-content:space-between;padding:8px 0}.item-row.highlight-green{color:#10b981;font-weight:600}.item-row.highlight-red{color:#ef4444;font-weight:600}.total-summary-row{border-top:2px dashed #e2e8f0;color:#0f172a;display:flex;font-size:14px;font-weight:700;justify-content:space-between;margin-top:10px;padding-top:10px}.total-summary-row.red-total{color:#ef4444}.net-payout-banner{align-items:center;background:linear-gradient(135deg,#0f172a,#1e293b);border-radius:16px;color:#fff;display:flex;justify-content:space-between;padding:20px 24px}.net-payout-banner .net-lbl{color:#94a3b8;font-size:12px;font-weight:600;text-transform:uppercase}.net-payout-banner .words-lbl{color:#cbd5e1;font-size:11px;font-style:italic;margin-top:4px}.net-val{color:#10b981;font-size:28px;font-weight:800}.formula-audit-card{background-color:#1e293b;border-radius:12px;color:#cbd5e1;padding:16px 20px}.formula-head{align-items:center;color:#94a3b8;display:flex;font-size:12px;font-weight:600;gap:8px;margin-bottom:10px;text-transform:uppercase}.formula-body{display:flex;flex-direction:column;font-family:Fira Code,Courier New,Courier,monospace;font-size:11px;gap:6px;line-height:1.6}.formula-body code{color:#38bdf8}.drawer-commit-row{display:flex;gap:12px;margin-top:auto}.btn-cancel{background-color:#fff;border:1px solid #cbd5e1;border-radius:var(--payroll-radius-control);color:#334155}.btn-cancel,.btn-primary-commit{cursor:pointer;flex:1 1;font-weight:600;height:48px}.btn-primary-commit{align-items:center;background-color:#10b981;border:none;border-radius:var(--payroll-radius-control);box-shadow:0 4px 12px #10b98126;color:#fff;display:flex;gap:8px;justify-content:center}.btn-primary-commit:hover{background-color:#059669}.upload-overlay{align-items:center;animation:fadeIn .2s ease;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a73;display:flex;inset:0;justify-content:center;padding:24px;position:fixed;z-index:1100}.upload-modal{border-radius:var(--payroll-radius-card);max-width:480px;padding:28px 32px;position:relative;text-align:center;width:100%}.upload-modal h2{color:#0f172a;font-size:20px;font-weight:700;margin-bottom:8px}.upload-modal>p{color:#64748b;font-size:14px;line-height:1.5;margin-bottom:4px}.upload-close{align-items:center;background:#f1f5f9;border:none;border-radius:50%;color:#475569;cursor:pointer;display:flex;height:36px;justify-content:center;position:absolute;right:16px;top:16px;transition:background .2s ease;width:36px}.upload-close:hover{background:#e2e8f0}.upload-icon-wrap{background:#eff6ff;border-radius:14px;color:#1e6bd6;height:56px;margin:0 auto 16px;width:56px}.upload-dropzone,.upload-icon-wrap{align-items:center;display:flex;justify-content:center}.upload-dropzone{background:#f8fafc;border:2px dashed #cbd5e1;border-radius:var(--payroll-radius-control);color:#475569;cursor:pointer;font-size:14px;font-weight:500;margin:20px 0 16px;min-height:52px;padding:12px 16px;transition:border-color .2s ease,background .2s ease}.upload-dropzone:hover{background:#eff6ff;border-color:#1e6bd6;color:#1e6bd6}.upload-submit-btn{background:linear-gradient(135deg,#1e6bd6,#2bb7da);border:none;border-radius:var(--payroll-radius-control);color:#fff;cursor:pointer;font-size:14px;font-weight:600;height:46px;transition:opacity .2s ease;width:100%}.upload-submit-btn:hover:not(:disabled){opacity:.92}.upload-submit-btn:disabled{cursor:not-allowed;opacity:.6}.upload-results-box{background-color:#eff6ff;border:1px solid #bfdbfe;border-radius:10px;color:#1e3a8a;font-size:13px;margin-top:14px;padding:12px 16px;text-align:left;white-space:pre-wrap}.modal-textarea{border:1px solid #cbd5e1;border-radius:var(--payroll-radius-control);color:#0f172a;font-family:inherit;font-size:14px;margin:16px 0 20px;min-height:100px;outline:none;padding:12px 14px;resize:vertical;transition:border-color .2s ease;width:100%}.modal-textarea:focus{border-color:#1e6bd6}.modal-actions{display:flex;gap:12px;justify-content:flex-end}.payroll-summary-stats .generic-card{max-width:none}.payroll-summary-stats .card-header{color:#64748b;font-size:13px;font-weight:500;letter-spacing:0;text-transform:none}.payroll-summary-stats .card-body{font-size:20px}.payroll-summary-stats .card-icon-sidebar{height:52px;width:52px}.summary-panels-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-bottom:16px}.summary-panel{background:#fff;border:1px solid #e2e8f0;border-radius:var(--payroll-radius-card);padding:14px 16px}.summary-panel h3{border-bottom:1px solid #f1f5f9;color:#0f172a;font-size:14px;font-weight:700;margin-bottom:14px;padding-bottom:10px}.summary-panel .payroll-custom-table td:last-child{color:#0f172a;font-weight:600}.kv-table td{border-bottom:1px solid #f1f5f9;color:#475569;padding:9px 0}.kv-table tr:hover td{background-color:initial}.kv-table td:last-child{color:#0f172a;font-weight:600}.chart-empty{align-items:center;color:#94a3b8;display:flex;flex-direction:column;gap:10px;padding:36px 0}.breakdown-loading{align-items:center;color:#64748b;display:flex;flex:1 1;flex-direction:column;gap:14px;justify-content:center;min-height:280px}.breakdown-loading p{font-size:14px;font-weight:500}.breakdown-loading svg{color:#1e6bd6}.spin{animation:spin 1s linear infinite}@keyframes slideLeft{0%{transform:translateX(100%)}to{transform:translateX(0)}}.pm-new{display:flex;flex-direction:column;gap:16px}.pm-stats{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(4,1fr)}.pm-stat-card{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:12px;display:flex;gap:14px;padding:16px 18px;transition:box-shadow .15s ease}.pm-stat-card:hover{box-shadow:0 4px 12px -2px #94a3b81a}.pm-stat-icon{align-items:center;border-radius:10px;display:flex;flex-shrink:0;height:42px;justify-content:center;width:42px}.pm-stat-icon--blue{background:#eff6ff;color:#1e6bd6}.pm-stat-icon--amber{background:#fffbeb;color:#d97706}.pm-stat-icon--green{background:#dcfce7;color:#15803d}.pm-stat-icon--emerald{background:#ecfdf5;color:#047857}.pm-stat-body{display:flex;flex-direction:column;gap:2px;min-width:0}.pm-stat-label{color:#64748b;font-size:11px;font-weight:600;letter-spacing:.4px;text-transform:uppercase}.pm-stat-value{color:#0f172a;font-size:18px;font-weight:700;letter-spacing:-.3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.pm-calc-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 1px 3px #0000000a}.pm-calc-header{align-items:center;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;padding:20px 24px 0}.pm-calc-title-group{align-items:center;display:flex;gap:14px}.pm-calc-icon-wrap{align-items:center;background:linear-gradient(135deg,#1e6bd6,#2bb7da);border-radius:10px;box-shadow:0 2px 8px #1e6bd633;color:#fff;display:flex;flex-shrink:0;height:42px;justify-content:center;width:42px}.pm-calc-title{color:#0f172a;font-size:16px;font-weight:700;line-height:1.3;margin:0}.pm-calc-subtitle{color:#64748b;font-size:13px;margin:2px 0 0}.pm-type-pills{background:#f1f5f9;border-radius:10px;display:flex;gap:4px;padding:3px}.pm-pill{align-items:center;background:#0000;border:none;border-radius:8px;color:#64748b;cursor:pointer;display:inline-flex;font-size:13px;font-weight:600;gap:6px;padding:7px 14px;transition:all .15s ease;white-space:nowrap}.pm-pill:hover{color:#334155}.pm-pill--active{background:#fff;box-shadow:0 1px 3px #00000014;color:#1e6bd6}.pm-calc-body{display:flex;flex-direction:column;gap:16px;padding:18px 24px 22px}.pm-calc-row{align-items:flex-end;display:flex;gap:14px}.pm-calc-row--actions{border-top:1px solid #f1f5f9;margin-top:4px;padding-top:4px}.pm-calc-field{display:flex;flex-direction:column;gap:5px;min-width:0}.pm-calc-field--period{flex:0 0 auto}.pm-calc-field--full{flex:1 1;min-width:0}.pm-calc-label{color:#64748b;font-size:11px;font-weight:600;letter-spacing:.4px;text-transform:uppercase}.pm-calc-period-group{display:flex;gap:6px}.pm-calc-select{appearance:none;-webkit-appearance:none;background:#fff;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:14px;border:1px solid #e2e8f0;border-radius:10px;color:#0f172a;cursor:pointer;font-size:14px;font-weight:500;height:42px;outline:none;padding:0 36px 0 12px;transition:border-color .15s ease,box-shadow .15s ease}.pm-calc-select:focus{border-color:#1e6bd6;box-shadow:0 0 0 3px #1e6bd61a}.pm-calc-select--year{min-width:80px}input.pm-calc-select[type=date]{background-image:none;padding-right:12px}.pm-calc-emp-wrap{position:relative}.pm-calc-emp-wrap .pm-calc-select--emp{background-image:none;padding-left:36px;padding-right:36px;width:100%}.pm-calc-emp-icon{bottom:13px;left:12px;pointer-events:none}.pm-calc-clear,.pm-calc-emp-icon{color:#94a3b8;position:absolute;z-index:1}.pm-calc-clear{background:none;border:none;bottom:9px;cursor:pointer;font-size:18px;line-height:1;padding:2px 6px;right:8px}.pm-calc-clear:hover{color:#ef4444}.pm-calc-dropdown{background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:0 8px 24px -4px #94a3b833;left:0;max-height:240px;overflow-y:auto;position:absolute;right:0;top:calc(100% + 4px);z-index:50}.pm-calc-dropdown-item{align-items:center;cursor:pointer;display:flex;font-size:13px;gap:10px;padding:10px 14px;transition:background .1s ease}.pm-calc-dropdown-item:hover{background:#f1f5f9}.pm-calc-dropdown-item.selected{background:#eff6ff}.pm-dropdown-code{color:#1e6bd6;font-weight:700;min-width:70px}.pm-dropdown-name{color:#334155;font-weight:500}.pm-dropdown-more{border-top:1px solid #f1f5f9;color:#94a3b8;font-size:11px;font-weight:600;padding:8px 14px;text-align:center}.pm-calc-btn-row{align-items:flex-start;display:flex;flex-wrap:wrap;gap:10px}.pm-calc-btn{align-items:center;border:none;border-radius:10px;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:6px;height:42px;padding:0 20px;transition:all .15s ease;white-space:nowrap}.pm-calc-btn--primary{background:linear-gradient(135deg,#1e6bd6,#2bb7da);box-shadow:0 2px 8px #1e6bd626;color:#fff}.pm-calc-btn--primary:hover:not(:disabled){box-shadow:0 4px 12px #1e6bd633;opacity:.9;transform:translateY(-1px)}.pm-calc-btn--primary:disabled{background:#cbd5e1;box-shadow:none;color:#fff;cursor:not-allowed;transform:none}.pm-calc-btn--outline{background:#fff;border:1px solid #e2e8f0;color:#334155}.pm-calc-btn--outline:hover:not(:disabled){background:#f8fafc;border-color:#cbd5e1}.pm-calc-btn--outline:disabled{background:#f1f5f9;border-color:#e2e8f0;color:#94a3b8;cursor:not-allowed}.pm-calc-sep{background:#e2e8f0;flex-shrink:0;height:28px;width:1px}.pm-calc-bulk-group{display:flex;flex-direction:column;gap:4px}.pm-calc-hint{align-items:center;color:#64748b;display:inline-flex;font-size:11px;font-weight:500;gap:4px;padding-left:2px}.pm-calc-hint svg{color:#3b82f6;flex-shrink:0}.pm-toast{border-radius:10px;font-size:13px;font-weight:600;padding:12px 18px}.pm-toast--success{background:#dcfce7;border:1px solid #a7f3d0;color:#15803d}.pm-toast--error{background:#fee2e2;border:1px solid #fecaca;color:#dc2626}.pm-toast--info{background:#eff6ff;border:1px solid #bfdbfe;color:#1e40af}.pm-empty{background:#fff;border:1px solid #e2e8f0;border-radius:16px;flex-direction:column;padding:60px 24px;text-align:center}.pm-empty,.pm-empty-graphic{align-items:center;display:flex}.pm-empty-graphic{background:#f1f5f9;border-radius:20px;color:#cbd5e1;height:80px;justify-content:center;margin-bottom:18px;width:80px}.pm-empty-title{color:#334155;font-size:16px;font-weight:700;margin:0}.pm-empty-desc{color:#94a3b8;font-size:13px;line-height:1.5;margin:6px 0 0;max-width:320px}.pm-records-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 1px 3px #0000000a;overflow:hidden}.pm-records-section{padding:0}.pm-records-section+.pm-records-section{border-top:1px solid #f1f5f9}.pm-records-header{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;padding:16px 20px 12px}.pm-records-header-left{align-items:center;display:flex;gap:10px}.pm-records-header-right{align-items:center;display:flex;gap:12px}.pm-dot{border-radius:50%;flex-shrink:0;height:8px;width:8px}.pm-dot--amber{background:#d97706}.pm-dot--green{background:#10b981}.pm-records-title{color:#334155;font-size:13px;font-weight:700;letter-spacing:.3px;margin:0;text-transform:uppercase}.pm-records-count{background:#f1f5f9;border-radius:999px;color:#94a3b8;font-size:11px;font-weight:700;padding:2px 8px}.pm-check-toggle{align-items:center;color:#64748b;cursor:pointer;display:flex;font-size:12px;font-weight:600;gap:6px;-webkit-user-select:none;user-select:none}.pm-check-toggle input{accent-color:#1e6bd6;height:15px;width:15px}.pm-selected-pill{background:#eff6ff;border-radius:999px;color:#1e6bd6;font-size:11px;font-weight:700;padding:3px 10px}.pm-bulk-bar{align-items:center;background:#f8fafc;border:1px solid #f1f5f9;border-radius:10px;display:flex;flex-wrap:wrap;gap:10px;margin:0 20px 12px;padding:10px 14px}.pm-bulk-sep{background:#e2e8f0;flex-shrink:0;height:24px;width:1px}.pm-bulk-comment{background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#334155;font-size:12px;font-weight:500;height:34px;min-width:150px;outline:none;padding:0 10px;transition:border-color .15s ease}.pm-bulk-comment::placeholder{color:#94a3b8}.pm-bulk-comment:focus{border-color:#1e6bd6;box-shadow:0 0 0 2px #1e6bd614}.pm-bulk-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-size:12px;font-weight:600;gap:6px;height:34px;padding:0 14px;transition:all .15s ease;white-space:nowrap}.pm-bulk-btn--calc{background:#1e6bd6;color:#fff}.pm-bulk-btn--calc:hover:not(:disabled){background:#1d4ed8}.pm-bulk-btn--calc:disabled{background:#cbd5e1;color:#fff;cursor:not-allowed}.pm-bulk-btn--approve{background:#10b981;color:#fff}.pm-bulk-btn--approve:hover:not(:disabled){background:#059669}.pm-bulk-btn--approve:disabled{background:#cbd5e1;color:#fff;cursor:not-allowed}.pm-rows{display:flex;flex-direction:column;gap:6px;padding:0 20px 16px}.pm-row{background:#fff;border:1px solid #f1f5f9;border-radius:10px;transition:border-color .15s ease,box-shadow .15s ease}.pm-row:hover{border-color:#e2e8f0}.pm-row--open{border-color:#bfdbfe;box-shadow:0 1px 4px #1e6bd60f}.pm-row-top{align-items:center;cursor:pointer;display:flex;gap:14px;padding:14px 16px;-webkit-user-select:none;user-select:none}.pm-row-check{accent-color:#1e6bd6;flex-shrink:0;height:16px;width:16px}.pm-row-identity{align-items:center;display:flex;flex-shrink:0;gap:8px;min-width:180px}.pm-row-code{color:#1e6bd6;font-size:12px;font-weight:700;white-space:nowrap}.pm-row-name{color:#0f172a;font-size:14px;font-weight:600}.pm-tag{align-items:center;border-radius:999px;display:inline-flex;font-size:10px;font-weight:700;letter-spacing:.3px;padding:2px 8px;text-transform:uppercase}.pm-tag--daily{background:#ede9fe;color:#6d28d9}.pm-row-meta{display:flex;flex-direction:column;gap:2px;min-width:100px}.pm-row-period-text{color:#475569;font-size:12px;font-weight:600}.pm-row-days-text{color:#94a3b8;font-size:11px}.pm-row-amounts{display:flex;flex:1 1;gap:24px;justify-content:flex-end}.pm-amt-block{align-items:flex-end;display:flex;flex-direction:column;min-width:80px}.pm-amt-label{color:#94a3b8;font-size:10px;font-weight:600;letter-spacing:.3px;text-transform:uppercase}.pm-amt-value{color:#0f172a;font-size:13px;font-weight:700;margin-top:1px}.pm-amt-block--ded .pm-amt-value{color:#ef4444}.pm-amt-block--net .pm-amt-value{color:#10b981;font-size:14px}.pm-status-badge{align-items:center;border-radius:999px;display:inline-flex;flex-shrink:0;font-size:11px;font-weight:700;padding:3px 10px;white-space:nowrap}.pm-status--pending{background:#fffbeb;color:#b45309}.pm-status--approved{background:#dcfce7;color:#15803d}.pm-status--rejected{background:#fee2e2;color:#dc2626}.pm-status--processed{background:#dbeafe;color:#1e40af}.pm-status--draft{background:#f1f5f9;color:#64748b}.pm-row-chevron{align-items:center;background:none;border:none;border-radius:6px;color:#94a3b8;cursor:pointer;display:flex;flex-shrink:0;padding:4px;transition:all .15s ease}.pm-row-chevron:hover{background:#f1f5f9;color:#475569}.pm-row-detail{align-items:center;background:#f8fafc;border-top:1px solid #f1f5f9;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;padding:12px 16px 14px}.pm-row-detail-info{color:#475569;display:flex;font-size:13px;gap:18px}.pm-row-detail-info strong{color:#0f172a}.pm-row-detail-actions{display:flex;gap:8px}.pm-action-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-size:12px;font-weight:600;gap:5px;height:32px;padding:0 12px;transition:all .15s ease}.pm-action-btn--view{background:#eff6ff;color:#1e6bd6}.pm-action-btn--view:hover{background:#dbeafe}.pm-action-btn--approve{background:#dcfce7;color:#15803d}.pm-action-btn--approve:hover:not(:disabled){background:#bbf7d0}.pm-action-btn--approve:disabled{cursor:not-allowed;opacity:.6}.pm-action-btn--delete{background:#fee2e2;color:#dc2626}.pm-action-btn--delete:hover:not(:disabled){background:#fecaca}.pm-action-btn--delete:disabled{cursor:not-allowed;opacity:.6}@media (max-width:1100px){.pm-stats{grid-template-columns:repeat(2,1fr)}}@media (max-width:900px){.pm-calc-row{align-items:stretch;flex-direction:column}.pm-calc-field--full{min-width:0}.pm-calc-btn-row{flex-wrap:wrap}.pm-bulk-bar{align-items:stretch;flex-direction:column}.pm-bulk-sep{height:1px;width:100%}.pm-row-top{flex-wrap:wrap}.pm-row-amounts{flex-wrap:wrap;gap:16px}.pm-row-identity{min-width:0}}@media (max-width:768px){.payroll-page{padding:16px}.drawer-meta-grid,.earnings-deductions-sheet{grid-template-columns:1fr}.grid-4-cols{grid-template-columns:repeat(2,1fr)}.payroll-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.filter-actions-row,.filter-actions-row-left{gap:10px}.pm-type-switch{height:38px}.pm-type-switch .generic-btn{flex:1 1;font-size:12px;min-width:0;padding:0 10px}.table-search-bar{min-width:0;width:100%}.wage-sheet-btn{justify-content:center;width:100%}}@media (max-width:600px){.payroll-stats-grid,.pm-stats{grid-template-columns:1fr}.pm-row-amounts{width:100%}.pm-row-right{justify-content:flex-start;width:100%}}.attendance-page{--attendance-radius-card:16px;--attendance-radius-control:10px;background-color:#f8fafc;display:flex;flex:1 1;flex-direction:column;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;gap:16px;overflow-y:auto;padding:20px 24px}.attendance-header-banner{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:2px}.attendance-title{color:#0f172a;font-size:28px;font-weight:800;letter-spacing:-.5px;margin:0}.attendance-subtitle{color:#64748b;font-size:14px;line-height:1.4;margin:4px 0 0}.attendance-alert{border-radius:var(--attendance-radius-control);font-size:14px;font-weight:500;margin:0;padding:10px 14px}.attendance-alert--error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.attendance-view-toolbar,.attendance-view-toolbar-text h1,.attendance-view-toolbar-text p{all:unset}.attendance-error{background:#fef2f2;border:1px solid #fecaca;border-radius:var(--attendance-radius-control);color:#991b1b;font-weight:500;margin:0;padding:10px 14px}.attendance-employee-calendar-wrap .calendar-legend-hint{flex-basis:100%;margin-left:0;margin-top:4px}.attendance-employee-calendar-wrap .attendance-day-sessions-card{margin-top:0}.attendance-page .stat-card{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:var(--attendance-radius-card);display:flex;gap:12px;justify-content:flex-start;padding:16px 18px}.attendance-page .stat-card.glass-morphism{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffd9;border:1px solid #e2e8f0cc;box-shadow:0 4px 20px -2px #94a3b814,0 2px 8px -1px #94a3b80a;transition:transform .2s ease,box-shadow .2s ease}.attendance-page .stat-card:hover{box-shadow:0 6px 16px -4px #94a3b81f;transform:translateY(-1px)}.attendance-page .stat-icon-wrapper{align-items:center;border-radius:var(--attendance-radius-control);display:flex;flex-shrink:0;height:38px;justify-content:center;width:38px}.attendance-page .indigo-bg{background-color:#eff6ff}.attendance-page .green-bg{background-color:#ecfdf5}.attendance-page .red-bg{background-color:#fef2f2}.attendance-page .amber-bg{background-color:#fffbeb}.attendance-page .stat-label{color:#64748b;display:block;font-size:11px;font-weight:600;letter-spacing:.4px;margin:0;text-transform:uppercase}.attendance-page .stat-value{color:#0f172a;display:block;font-size:18px;font-weight:700;letter-spacing:-.3px;margin:4px 0 0}.attendance-page .attendance-glass{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffd9;border:1px solid #e2e8f0cc;border-radius:var(--attendance-radius-card);box-shadow:0 4px 20px -2px #94a3b814,0 2px 8px -1px #94a3b80a}.attendance-panel{display:flex;flex-direction:column;padding:16px 18px;width:100%}.attendance-panel__head{align-items:start;display:flex;flex-direction:column;flex-wrap:wrap;gap:16px;justify-content:space-between}.month-mark-button-wrap{align-items:center;display:flex;gap:1rem;height:100%;justify-content:flex-end}.attendance-panel__head h2{flex-shrink:0}.attendance-panel__head{border-bottom:1px solid #f1f5f9;margin-bottom:12px;padding-bottom:10px}.attendance-panel__head h2{color:#0f172a;font-size:15px;font-weight:700;line-height:1.3;margin:0}.attendance-panel__head.calendar-toolbar{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px;padding-bottom:10px}.attendance-mark-card{padding:20px 22px}.attendance-mark-form__head{border-bottom:1px solid #f1f5f9;margin-bottom:18px;padding-bottom:14px}.attendance-mark-form__title-wrap h2{align-items:center;color:#0f172a;display:flex;font-size:16px;font-weight:700;gap:10px;line-height:1.3;margin:0}.attendance-mark-form__title-wrap h2 svg{color:#1e6bd6;flex-shrink:0}.attendance-mark-form__subtitle{color:#64748b;font-size:13px;line-height:1.45;margin:6px 0 0}.attendance-mark-form{display:flex;flex-direction:column;gap:16px}.attendance-mark-form__row{grid-gap:14px;align-items:end;display:grid;gap:14px;grid-template-columns:minmax(0,1.6fr) minmax(180px,.8fr)}.attendance-mark-form__row--details{align-items:end;background:linear-gradient(180deg,#f8fafc,#fff);border:1px solid #e8edf4;border-radius:12px;grid-template-columns:minmax(130px,.75fr) minmax(130px,.75fr) minmax(0,1.5fr);padding:16px}.attendance-field{display:flex;flex-direction:column;gap:6px;min-width:0}.attendance-field--full{grid-column:1/-1}.attendance-mark-form .attendance-field label{color:#64748b;font-size:12px;font-weight:600;letter-spacing:.01em;text-transform:none}.attendance-control{background:#fff;border:1px solid #cbd5e1;border-radius:var(--attendance-radius-control);color:#0f172a;font-size:14px;font-weight:500;height:42px;outline:none;padding:0 12px;transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease;width:100%}.attendance-control--status-present{background:#f0fdf4;border-color:#86efac}.attendance-control--status-absent{background:#fef2f2;border-color:#fca5a5}.attendance-control--status-half-day{background:#fffbeb;border-color:#fcd34d}.attendance-control--status-late{background:#f5f3ff;border-color:#c4b5fd}.attendance-mark-form__hint{background:#f8fafc;border:1px dashed #e2e8f0;border-radius:8px;color:#64748b;font-size:12px;line-height:1.4;margin:-4px 0 0;padding:10px 12px}.attendance-form-actions{border-top:1px solid #f1f5f9;display:flex;justify-content:flex-end;margin-top:2px;padding-top:16px}.attendance-mark-form .attendance-form-actions{grid-column:unset}.attendance-control:focus{border-color:#1e6bd6;box-shadow:0 0 0 3px #1e6bd61f}select.attendance-control{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:14px;cursor:pointer;padding-right:36px}input.attendance-control[type=time]{cursor:pointer}.attendance-control:disabled{background:#f1f5f9;border-color:#e2e8f0;color:#94a3b8;cursor:not-allowed}.attendance-btn{align-items:center;border:none;border-radius:var(--attendance-radius-control);cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;height:40px;justify-content:center;padding:0 18px}.attendance-btn--primary{background:#1e6bd6;box-shadow:0 4px 12px #1e6bd626;color:#fff}.attendance-btn--primary:hover{background:#1d4ed8}.attendance-save-msg{color:#2563eb;font-size:14px;margin:8px 0 0}.attendance-role-select-wrap{display:flex;flex-direction:column;gap:6px;min-width:200px}.attendance-role-select-wrap label{color:#64748b;font-size:13px;font-weight:600}.attendance-role-select{background:#fff;border:1px solid #dbe4ef;border-radius:10px;color:#0f172a;cursor:pointer;font-size:14px;font-weight:600;min-height:42px;padding:10px 12px}.attendance-role-banner{align-items:center;border-radius:10px;display:flex;font-size:14px;font-weight:500;gap:10px;padding:12px 16px}.attendance-role-banner.manager{background:#eff6ff;border:1px solid #bfdbfe;color:#1d4ed8}.attendance-hr-actions{display:flex;flex-wrap:wrap;gap:10px}.attendance-hr-btn{align-items:center;background:#2563eb;border:none;border-radius:10px;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:8px;padding:10px 16px}.attendance-hr-btn.secondary{background:#fff;border:1px solid #dbe4ef;color:#334155}.attendance-checkin-card{background:#fff;border:1px solid #e8edf4;border-radius:16px;box-shadow:0 4px 24px #0f172a0f;overflow:hidden;padding:0}.attendance-checkin-card--hero .attendance-checkin-hero{align-items:flex-start;background:linear-gradient(135deg,#1e3a8a,#2563eb 55%,#3b82f6);color:#fff;display:flex;gap:16px;justify-content:space-between;padding:22px 24px}.attendance-checkin-hero-text{flex:1 1;min-width:0}.attendance-checkin-card--hero .attendance-checkin-subtitle{color:#ffffffc7;font-size:13px;line-height:1.45;margin:8px 0 0;max-width:36ch}.attendance-checkin-card--hero .attendance-today-sessions{background:#fafbfc;border-top:1px solid #f1f5f9;margin:0;padding:20px 24px 24px}.attendance-checkin-card--hero .attendance-checkin-proof{background:#f8fafc;border:1px solid #eef2f7;border-radius:12px;margin:0 24px 16px;padding:16px 18px}.attendance-checkin-hero-text h2{color:#fff;font-size:22px;font-weight:700;letter-spacing:-.02em;margin:8px 0 0}.attendance-checkin-card--hero .attendance-checkin-date{color:#ffffffd9;display:inline-block;font-size:13px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.attendance-status-pill{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff2e;border:1px solid #ffffff47;border-radius:999px;color:#fff;display:inline-flex;font-size:13px;font-weight:700;gap:6px;padding:8px 14px;white-space:nowrap}.attendance-status-pill.live{background:#22c55e40;border-color:#86efac80}.attendance-status-pill.present{background:#22c55e33}.attendance-status-pill.absent{background:#ef444433}.attendance-status-pill.late{background:#3b82f640}.attendance-status-pill.half-day{background:#f59e0b40}.attendance-status-pill.leave{background:#ec489940}.attendance-status-pill.wfh{background:#d9770640}.attendance-checkin-actions--center{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:center;padding:12px 24px 20px}.attendance-checkin-actions--center .generic-btn{justify-content:center;min-width:148px}.attendance-checkin-actions--center .generic-btn.secondary-btn{background:#fff;border:1px solid #dbe4ef;box-shadow:none;color:#334155}.attendance-checkin-card--hero .checkin-btn{border-radius:10px;box-shadow:0 2px 8px #0f172a14;font-size:15px;min-width:148px;padding:14px 22px}.attendance-checkin-card--hero .checkin-btn.present{background:linear-gradient(135deg,#16a34a,#22c55e)}.attendance-checkin-card--hero .attendance-save-msg{margin:0;padding:0 24px 8px}.attendance-today-sessions-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:16px}.attendance-today-sessions-header h3{color:#0f172a;font-size:15px;font-weight:700;margin:0}.attendance-today-sessions-count{background:#fff;border:1px solid #e2e8f0;border-radius:999px;color:#64748b;font-size:13px;font-weight:600;padding:4px 10px}.attendance-employee-layout{grid-gap:20px;align-items:start;display:grid;gap:20px;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr)}.attendance-employee-calendar-wrap,.attendance-employee-primary,.attendance-employee-secondary{display:flex;flex-direction:column;gap:16px;min-width:0}.attendance-employee-calendar-wrap .attendance-calendar-card{height:100%}.attendance-employee-primary .attendance-checkin-card--hero{display:flex;flex-direction:column;height:100%}.attendance-employee-primary .attendance-today-sessions{flex:1 1}.attendance-link-notice{padding:24px 28px}.attendance-checkin-header{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:20px}.attendance-checkin-header h2{color:#0f172a;font-size:18px;font-weight:700;margin:0}.attendance-checkin-date{color:#64748b;font-size:14px;font-weight:500}.attendance-checkin-body{align-items:center;display:flex;flex-wrap:wrap;gap:24px;justify-content:space-between}.attendance-checkin-label{color:#64748b;display:block;font-size:13px;margin-bottom:4px}.attendance-checkin-times{color:#475569;display:flex;font-size:14px;gap:16px;margin-top:10px}.attendance-checkin-times span{align-items:center;display:inline-flex;gap:6px}.attendance-checkin-actions{display:flex;flex-wrap:wrap;gap:10px}.checkin-btn{align-items:center;border:none;border-radius:10px;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:8px;padding:12px 18px}.checkin-btn.present{background:#16a34a;color:#fff}.checkin-btn.outline{background:#fff;border:1px solid #dbe4ef;color:#334155}.checkin-btn:disabled{cursor:not-allowed;opacity:.55}.attendance-checkin-subtitle{color:#64748b;font-size:13px;margin:6px 0 0}.attendance-link-notice p{margin:0}.attendance-section-heading{color:#0f172a;font-size:20px;font-weight:700;margin:0 0 14px}.attendance-today-sessions{border-top:1px solid #f1f5f9;margin-top:22px;padding-top:20px}.attendance-today-sessions h3{color:#0f172a;font-size:15px;font-weight:700;margin:0 0 12px}.attendance-day-sessions-card{animation:attendance-fade-in .25s ease}@keyframes attendance-fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.attendance-day-records{display:flex;flex-direction:column;gap:18px}.attendance-day-record{background:#fafbfc;border:1px solid #f1f5f9;border-radius:12px;padding:16px}.attendance-day-record-header{align-items:center;display:flex;flex-wrap:wrap;gap:10px;margin-bottom:12px}.attendance-checkin-proof{display:flex;flex-wrap:wrap;gap:20px}.attendance-checkin-selfie{align-items:flex-start;border-top:none;display:flex;flex-direction:column;margin-top:0;padding-top:0}.attendance-checkin-selfie img{border:1px solid #dbe4ef;border-radius:12px;display:block;height:120px;margin-top:8px;object-fit:cover;width:120px}.attendance-checkin-location-link{align-items:center;color:#2563eb;display:inline-flex;font-size:14px;font-weight:500;gap:8px;margin-top:8px;text-decoration:none}.attendance-checkin-location-link:hover{text-decoration:underline}.selfie-modal-backdrop{align-items:center;background:#0f172a8c;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1200}.selfie-modal{background:#fff;border-radius:16px;box-shadow:0 24px 48px #0f172a2e;overflow:hidden;width:min(100%,480px)}.selfie-modal-header{display:flex;gap:16px;justify-content:space-between;padding:20px 22px 0}.selfie-modal-header h2{color:#0f172a;font-size:18px;font-weight:700;margin:0}.selfie-modal-header p{color:#64748b;font-size:14px;margin:6px 0 0}.selfie-modal-close{align-items:center;background:#fff;border:1px solid #dbe4ef;border-radius:10px;color:#475569;cursor:pointer;display:inline-flex;height:36px;justify-content:center;width:36px}.selfie-modal-body{padding:18px 22px}.selfie-preview,.selfie-video-wrap{aspect-ratio:4/3;background:#0f172a;border-radius:14px;overflow:hidden;width:100%}.selfie-video-wrap{position:relative}.selfie-preview,.selfie-video{display:block;height:100%;object-fit:cover;width:100%}.selfie-video-loading{align-items:center;background:#0f172a59;color:#fff;display:flex;font-size:14px;inset:0;justify-content:center;position:absolute}.selfie-error{color:#dc2626;font-size:14px;margin:12px 0 0}.selfie-modal-actions{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end;padding:0 22px 22px}.selfie-btn{align-items:center;border:none;border-radius:10px;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:8px;padding:11px 16px}.selfie-modal-close svg{stroke:#000;flex-shrink:0;height:24px;width:24px}.selfie-btn.primary{background:#16a34a;color:#fff}.selfie-btn.secondary{background:#fff;border:1px solid #dbe4ef;color:#334155}.selfie-btn:disabled{cursor:not-allowed;opacity:.65}.attendance-my-row{align-items:center;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between;padding:8px 0}.attendance-my-details{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(4,minmax(80px,1fr))}.attendance-my-label{color:#94a3b8;display:block;font-size:12px;font-weight:600;margin-bottom:4px}.attendance-my-details strong{color:#0f172a;font-size:15px}.attendance-calendar-card,.attendance-day-sessions-card,.attendance-table-card{padding:16px 18px}.month-mark-card{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffd9;border:1px solid #e2e8f0cc;border-radius:12px;box-shadow:0 10px 25px -5px #0000000d,0 8px 10px -6px #00000003;color:#1e293b;font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;margin:0 auto;padding:1.5rem;width:100%}.month-mark-head{align-items:flex-start;border-bottom:1px solid #e2e8f0;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1.25rem;padding-bottom:1rem}.month-mark-upload-trigger{flex-shrink:0}.month-upload-backdrop{background:#0f172a94;display:grid;inset:0;padding:1rem;place-items:center;position:fixed;z-index:1300}.month-upload-modal{background:#fff;border-radius:14px;box-shadow:0 24px 48px #0f172a40;max-height:min(85vh,720px);overflow:auto;width:min(100%,640px)}.month-upload-modal__actions,.month-upload-modal__header{align-items:center;display:flex;gap:1rem;justify-content:space-between;padding:1.25rem 1.5rem}.month-upload-modal__header{border-bottom:1px solid #e2e8f0}.month-upload-modal__header h2{color:#0f172a;font-size:1.1rem;margin:0}.month-upload-modal__header p{color:#64748b;font-size:.875rem;margin:.3rem 0 0}.month-upload-close{background:#0000;border:0;color:#475569;cursor:pointer;padding:.35rem}.month-upload-modal__body{padding:1.25rem 1.5rem}.month-upload-template-download{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;color:#475569;display:flex;font-size:.85rem;gap:1rem;justify-content:space-between;margin-bottom:1rem;padding:.7rem .85rem}.month-upload-template-download button{background:#0000;border:0;color:#2563eb;cursor:pointer;font:inherit;font-weight:600;padding:0}.month-upload-template-download button:hover{text-decoration:underline}.month-upload-drop-zone{background:#f8fafc;border:2px dashed #cbd5e1;border-radius:10px;display:grid;min-height:150px;place-items:center;text-align:center;transition:.2s ease}.month-upload-drop-zone.drag-active{background:#eff6ff;border-color:#2563eb}.month-upload-drop-zone label{color:#2563eb;cursor:pointer;display:flex;flex-direction:column;gap:.45rem;padding:2rem 1rem;width:100%}.month-upload-drop-zone label strong{font-size:.95rem}.month-upload-drop-zone label small{color:#64748b}.month-upload-result{border:1px solid #dbe4ef;border-radius:8px;margin-top:1rem;padding:.85rem 1rem}.month-upload-result--errors{background:snow;border-color:#fecaca}.month-upload-success,.month-upload-summary{color:#166534;font-weight:600;margin:0}.month-upload-errors{color:#b91c1c;font-size:.85rem;line-height:1.5;margin:.75rem 0 0;max-height:220px;overflow-y:auto;overscroll-behavior:contain;padding:0 .5rem 0 1.25rem}.month-upload-modal__actions{border-top:1px solid #e2e8f0;justify-content:flex-end}.month-mark-heading{align-items:center;color:#0f172a;display:flex;font-size:1.125rem;font-weight:600;gap:.5rem;margin:0 0 .25rem}.month-mark-heading svg{color:#2563eb}.month-mark-subtitle{color:#64748b;font-size:.875rem;margin:0}.month-mark-alert{align-items:center;border-radius:8px;display:flex;font-size:.875rem;gap:.5rem;margin-bottom:1.25rem;padding:.75rem 1rem}.month-mark-alert--error{background-color:#fef2f2;border:1px solid #fecaca;color:#991b1b}.month-mark-form{gap:1.25rem}.month-mark-form,.month-mark-row{display:flex;flex-direction:column}.month-mark-row{gap:1rem}.month-mark-row--split{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:repeat(3,minmax(0,1fr))}.month-mark-field{display:flex;flex-direction:column;gap:.375rem}.month-mark-label{color:#334155;font-size:.875rem;font-weight:500}.month-mark-error-msg{color:#dc2626;font-size:.75rem;font-weight:500}.month-mark-actions{display:flex;justify-content:flex-end;padding-top:.5rem}.month-mark-btn{align-items:center;border:none;border-radius:6px;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;gap:.5rem;justify-content:center;padding:.625rem 1.25rem;transition:background-color .15s ease,transform .1s ease}.month-mark-btn--primary{background-color:#2563eb;color:#fff}.month-mark-btn--primary:hover:not(:disabled){background-color:#1d4ed8}.month-mark-btn--primary:active:not(:disabled){transform:translateY(1px)}.month-mark-btn:disabled{cursor:not-allowed;opacity:.65}.month-mark-spinner{animation:month-mark-spin 1s linear infinite}@keyframes month-mark-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@media (max-width:640px){.month-mark-row--split{grid-template-columns:1fr}.month-mark-card{padding:1rem}.month-mark-head{align-items:stretch;flex-direction:column}.month-upload-template-download{align-items:flex-start;flex-direction:column}}@media (max-width:1200px){.attendance-employee-layout,.attendance-mark-form__row,.attendance-mark-form__row--details{grid-template-columns:1fr}}@media (max-width:1100px){.attendance-page .payroll-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.attendance-page{padding:16px}.attendance-mark-form__row,.attendance-mark-form__row--details,.attendance-page .payroll-stats-grid{grid-template-columns:1fr}.attendance-field--full{grid-column:span 1}.attendance-session-row{gap:8px}.attendance-metrics-grid,.attendance-session-row,.attendance-timeline-times{grid-template-columns:1fr}.attendance-checkin-card--hero .attendance-checkin-hero{align-items:flex-start;flex-direction:column}.attendance-checkin-actions--center{align-items:stretch;flex-direction:column}.attendance-checkin-actions--center .generic-btn{min-width:0;width:100%}.attendance-checkin-card--hero .checkin-btn{width:100%}.calendar-day{font-size:12px;min-height:40px}.attendance-my-details{grid-template-columns:repeat(2,minmax(0,1fr));width:100%}.attendance-role-select-wrap{width:100%}}.toast-container{bottom:28px;display:flex;flex-direction:column;gap:10px;max-width:360px;pointer-events:none;position:fixed;right:24px;width:calc(100vw - 48px);z-index:1200}.toast-item{align-items:flex-start;animation:toast-slide-in .22s cubic-bezier(.34,1.56,.64,1);background:#fff;border-radius:14px;box-shadow:0 8px 30px #0000001f,0 2px 8px #0000000f;display:flex;gap:10px;overflow:hidden;padding:13px 14px;pointer-events:all;position:relative}@keyframes toast-slide-in{0%{opacity:0;transform:translateX(60px) scale(.95)}to{opacity:1;transform:translateX(0) scale(1)}}.toast-item:before{border-radius:14px 0 0 14px;bottom:0;content:"";left:0;position:absolute;top:0;width:4px}.toast-item--success:before{background:#10b981}.toast-item--error:before{background:#ef4444}.toast-item--warning:before{background:#f59e0b}.toast-item--info:before{background:#6366f1}.toast-icon{display:flex;flex-shrink:0;margin-top:1px}.toast-icon--success{color:#10b981}.toast-icon--error{color:#ef4444}.toast-icon--warning{color:#f59e0b}.toast-icon--info{color:#6366f1}.toast-message{color:#111827;flex:1 1;font-size:.875rem;font-weight:500;line-height:1.45;margin:0;word-break:break-word}.toast-close{background:none;border:none;border-radius:5px;color:#9ca3af;cursor:pointer;display:flex;flex-shrink:0;margin-top:1px;padding:2px;transition:color .15s,background .15s}.toast-close:hover{background:#f3f4f6;color:#374151}@media (max-width:480px){.toast-container{bottom:16px;left:12px;max-width:none;right:12px;width:auto}}.attendance-page .payroll-stats-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:16px}.attendance-metrics-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(2,minmax(0,1fr));padding:20px 24px 12px}.attendance-metric-card{align-items:center;background:#f8fafc;border:1px solid #eef2f7;border-radius:12px;display:flex;gap:12px;min-width:0;padding:14px 16px;transition:transform .15s ease,box-shadow .15s ease}.attendance-metric-content{display:flex;flex:1 1;flex-direction:column;gap:4px;min-width:0}.attendance-metric-card:hover{box-shadow:0 4px 12px #0f172a0f;transform:translateY(-1px)}.attendance-metric-icon{align-items:center;border-radius:10px;display:flex;flex-shrink:0;height:40px;justify-content:center;width:40px}.attendance-metric-card.accent-green .attendance-metric-icon{background:#dcfce7;color:#16a34a}.attendance-metric-card.accent-slate .attendance-metric-icon{background:#f1f5f9;color:#475569}.attendance-metric-card.accent-blue .attendance-metric-icon{background:#dbeafe;color:#2563eb}.attendance-metric-card.accent-violet .attendance-metric-icon{background:#ede9fe;color:#7c3aed}.attendance-metric-label{color:#64748b;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.attendance-metric-label,.attendance-metric-value{display:block;line-height:1.2;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attendance-metric-value{color:#0f172a;font-size:17px;font-weight:700}.attendance-sessions-timeline{display:flex;flex-direction:column;gap:0}.attendance-timeline-item{grid-gap:14px;align-items:stretch;display:grid;gap:14px;grid-template-columns:28px 1fr}.attendance-timeline-rail{align-items:center;display:flex;flex-direction:column;padding-top:18px}.attendance-timeline-dot{background:#2563eb;border:3px solid #dbeafe;border-radius:50%;flex-shrink:0;height:12px;width:12px}.attendance-timeline-item.open .attendance-timeline-dot{background:#16a34a;border-color:#bbf7d0;box-shadow:0 0 0 4px #22c55e26}.attendance-timeline-line{background:linear-gradient(180deg,#cbd5e1,#e2e8f0);flex:1 1;margin-top:6px;min-height:24px;width:2px}.attendance-timeline-card{background:#fff;border:1px solid #e8edf4;border-radius:14px;box-shadow:0 1px 3px #0f172a0a;margin-bottom:14px;padding:16px 18px}.attendance-timeline-item.open .attendance-timeline-card{background:linear-gradient(180deg,#f0fdf4,#fff);border-color:#86efac}.attendance-timeline-card-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:14px}.attendance-session-badge{color:#475569;font-size:12px;font-weight:700;letter-spacing:.02em;text-transform:uppercase}.attendance-live-pill{background:#dcfce7;border-radius:999px;color:#16a34a;font-size:11px;font-weight:700;letter-spacing:.05em;padding:4px 10px;text-transform:uppercase}.attendance-timeline-times{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.attendance-timeline-time{align-items:flex-start;background:#f8fafc;border-radius:10px;display:flex;gap:10px;padding:10px 12px}.attendance-timeline-time.in svg{color:#16a34a;flex-shrink:0;margin-top:2px}.attendance-timeline-time.out svg{color:#64748b;flex-shrink:0;margin-top:2px}.attendance-timeline-time span{color:#94a3b8;display:block;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.attendance-timeline-time strong{color:#0f172a;display:block;font-size:15px;font-weight:700;margin-top:2px}.attendance-sessions-empty-wrap{align-items:center;background:#fff;border:2px dashed #e2e8f0;border-radius:14px;color:#94a3b8;display:flex;flex-direction:column;gap:10px;justify-content:center;padding:32px 20px}.attendance-sessions-empty-wrap p{line-height:1.5;margin:0;max-width:280px;text-align:center}.attendance-sessions-list{display:flex;flex-direction:column;gap:10px}.attendance-session-row{grid-gap:12px;align-items:center;background:#f8fafc;border:1px solid #e8edf4;border-radius:10px;color:#334155;display:grid;font-size:14px;gap:12px;grid-template-columns:110px 1fr 1fr auto;padding:12px 14px}.attendance-session-row.open{background:#f0fdf4;border-color:#86efac}.attendance-session-time{align-items:center;display:inline-flex;gap:6px}.attendance-session-hours{color:#0f172a;font-weight:600;text-align:right}.attendance-sessions-total{align-items:center;background:linear-gradient(135deg,#eff6ff,#dbeafe);border:1px solid #bfdbfe;border-radius:12px;color:#1d4ed8;display:flex;font-size:14px;justify-content:space-between;margin-top:6px;padding:14px 18px}.attendance-sessions-total strong{font-size:18px;font-weight:800}.attendance-sessions-empty{color:#94a3b8;font-size:14px;margin:0}.attendance-session-location{align-items:center;color:#2563eb;display:inline-flex;font-size:13px;font-weight:500;gap:8px;margin-top:12px;text-decoration:none}.attendance-session-location:hover{text-decoration:underline}.attendance-session-locations{display:flex;flex-direction:column;gap:8px;margin-top:12px}.attendance-selfie-btn,.attendance-selfie-icon-btn{align-items:center;background:#eef2ff;border:1px solid #c7d2fe;border-radius:6px;color:#4f46e5;cursor:pointer;display:inline-flex;font-size:.75rem;font-weight:500;gap:.3rem;padding:.25rem .5rem;transition:all .15s ease}.attendance-selfie-btn:hover,.attendance-selfie-icon-btn:hover{background:#e0e7ff;border-color:#a5b4fc}.attendance-location-btn{align-items:center;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:6px;color:#059669;display:inline-flex;font-size:.75rem;font-weight:500;gap:.3rem;padding:.25rem .55rem;text-decoration:none;transition:all .15s ease}.attendance-location-btn:hover{background:#d1fae5;border-color:#6ee7b7}.calendar-day{align-items:center;background:#fff;border:1px solid #0000;border-radius:10px;color:#334155;cursor:default;display:flex;flex-direction:column;font-family:inherit;font-size:14px;font-weight:600;gap:4px;justify-content:center;min-height:58px;padding:6px 4px}.calendar-day-num{display:block;font-size:14px;font-weight:700;line-height:1}.calendar-day-meta{align-items:center;display:flex;flex-direction:column;gap:2px;justify-content:center;max-width:100%;min-height:16px;width:100%}.calendar-day.has-sessions:not(:disabled){cursor:pointer}.calendar-day.has-sessions:not(:disabled):hover{box-shadow:0 0 0 2px #93c5fd}.calendar-day.selected{border-color:#2563eb;box-shadow:0 0 0 2px #2563eb}.calendar-day:disabled{cursor:default}.calendar-day-sessions{align-items:center;background:#2563eb;border-radius:999px;color:#fff;display:inline-flex;font-size:10px;font-weight:800;height:18px;justify-content:center;line-height:1;min-width:18px;padding:0 5px}.calendar-day.has-sessions .calendar-day-sessions{margin-top:0}.calendar-day.present .calendar-day-sessions{background:#15803d}.calendar-day.today .calendar-day-sessions{background:#4f46e5}.calendar-legend-hint{color:#94a3b8;font-size:12px;margin-left:auto}.calendar-toolbar{align-items:center;border-bottom:none;display:flex;justify-content:space-between;margin-bottom:0;padding-bottom:0}.calendar-toolbar h2{color:#0f172a;font-size:15px;font-weight:700;margin:0}.calendar-nav{display:flex;gap:6px}.calendar-nav button{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:var(--attendance-radius-control);color:#475569;cursor:pointer;display:flex;height:34px;justify-content:center;width:34px}.calendar-nav button:hover{background:#f8fafc}.calendar-days,.calendar-weekdays{grid-gap:6px;display:grid;gap:6px;grid-template-columns:repeat(7,1fr)}.calendar-weekdays span{color:#94a3b8;font-size:11px;font-weight:600;letter-spacing:.04em;padding:4px 0 8px;text-align:center;text-transform:uppercase}.calendar-day.empty{background:#0000}.calendar-day.neutral{background:#fff;color:#475569;font-weight:500}.calendar-day.present{background:#dcfce7;color:#15803d}.calendar-day.absent{background:#fee2e2;color:#b91c1c}.calendar-day.half-day{background:#ffedd5;color:#c2410c}.calendar-day.late{background:#dbeafe;color:#1d4ed8}.calendar-day.leave{background:#fce7f3;color:#be185d}.calendar-day.wfh{background:#fef3c7;color:#b45309}.calendar-day.holiday{background:#eef2ff;border:1px solid #c7d2fe;color:#3730a3}.calendar-day.holiday:not(:disabled){cursor:pointer}.calendar-day.week-off{background:#f8fafc;border:1px dashed #cbd5e1;color:#475569}.calendar-day.week-off:not(:disabled){cursor:pointer}.calendar-day-holiday{display:block;font-size:.58rem;font-weight:600;line-height:1.15;max-width:100%;overflow:hidden;padding:0 2px;text-overflow:ellipsis;white-space:nowrap}.calendar-day-weekoff{color:#64748b}.calendar-day-leave,.calendar-day-weekoff,.calendar-day-wfh{display:block;font-size:.62rem;font-weight:700;line-height:1}.calendar-day-leave,.calendar-day-wfh{max-width:100%;overflow:hidden;padding:0 2px;text-overflow:ellipsis;white-space:nowrap}.calendar-day-leave{color:#be185d}.calendar-day-wfh{color:#b45309}.calendar-day-weekoff--compact{font-size:.55rem;opacity:.85}.calendar-day.today{border-color:#6366f1;box-shadow:0 0 0 2px #6366f1;font-weight:700;position:relative;z-index:1}.calendar-legend{border-top:1px solid #f1f5f9;display:flex;flex-wrap:wrap;gap:12px 16px;margin-top:12px;padding-top:12px}.calendar-legend span{align-items:center;color:#64748b;display:inline-flex;font-size:13px;font-weight:500;gap:8px}.legend-dot{border-radius:50%;display:inline-block;height:10px;width:10px}.legend-dot.present{background:#22c55e}.legend-dot.absent{background:#ef4444}.legend-dot.half-day{background:#f59e0b}.legend-dot.late{background:#3b82f6}.legend-dot.leave{background:#ec4899}.legend-dot.wfh{background:#f59e0b}.legend-dot.holiday{background:#6366f1}.legend-dot.week-off{background:#94a3b8}.attendance-selfie-modal-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a99;display:flex;inset:0;justify-content:center;padding:1rem;position:fixed;z-index:1000}.attendance-selfie-modal-content{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a;max-width:440px;overflow:hidden;width:100%}.attendance-selfie-modal-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:1rem 1.25rem}.attendance-selfie-modal-header h3{color:#0f172a;font-size:.95rem;font-weight:600;margin:0}.attendance-selfie-close-btn{align-items:center;background:#0000;border:none;border-radius:6px;color:#64748b;cursor:pointer;display:flex;justify-content:center;padding:.25rem}.attendance-selfie-close-btn:hover{background:#f1f5f9;color:#0f172a}.attendance-selfie-modal-body{background:#f8fafc;display:flex;justify-content:center;padding:1rem}.attendance-selfie-preview-img{border-radius:8px;max-height:65vh;max-width:100%;object-fit:contain}.record-edit-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f172a73;display:flex;inset:0;justify-content:center;padding:1rem;position:fixed;z-index:1200}.record-edit-modal{background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 24px 48px #0f172a2e;overflow:hidden;width:min(560px,100%)}.record-edit-modal__head{align-items:flex-start;background:#f8fafc;border-bottom:1px solid #e2e8f0;display:flex;gap:12px;justify-content:space-between;padding:1.1rem 1.25rem}.record-edit-modal__eyebrow{color:#64748b;font-size:11px;font-weight:700;letter-spacing:.06em;margin:0 0 4px;text-transform:uppercase}.record-edit-modal__head h2{color:#0f172a;font-size:1.05rem;font-weight:700;margin:0}.record-edit-modal__close{background:#0000;border:none;border-radius:8px;color:#64748b;cursor:pointer;padding:4px}.record-edit-modal__close:hover{background:#e2e8f0;color:#0f172a}.record-edit-modal__body{display:flex;flex-direction:column;gap:14px;padding:1.25rem}.record-edit-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr))}.record-edit-field{display:flex;flex-direction:column;gap:6px}.record-edit-field--full{grid-column:1/-1}.record-edit-field span{color:#64748b;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.record-edit-field input,.record-edit-field select,.record-edit-field textarea{background:#fff;border:1px solid #e2e8f0;border-radius:10px;color:#0f172a;font-size:.925rem;padding:.65rem .75rem;width:100%}.record-edit-field textarea{min-height:84px;resize:vertical}.record-edit-field input:disabled,.record-edit-field select:disabled,.record-edit-field textarea:disabled{background:#f8fafc;color:#94a3b8}.record-edit-error{background:#fff7ed;border:1px solid #fed7aa;border-radius:10px;color:#9a3412;font-size:.875rem;margin:0;padding:10px 12px}.record-edit-modal__actions{display:flex;gap:10px;justify-content:flex-end;padding-top:4px}.attendance-edit-btn,.leave-edit-btn{align-items:center;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;color:#1d4ed8;cursor:pointer;display:inline-flex;font-size:12px;font-weight:600;gap:6px;justify-content:center;min-height:32px;padding:0 10px}.attendance-edit-btn:hover,.leave-edit-btn:hover{background:#dbeafe}@media (max-width:640px){.record-edit-grid{grid-template-columns:1fr}}.attendance-download-btn{align-items:center;background:#2563eb;border:none;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:8px;height:33px;justify-content:center;padding:0 18px;transition:all .2s ease}.attendance-download-btn:hover{background:#1d4ed8}.attendance-download-btn:active{transform:scale(.98)}.attendance-download-btn:disabled{background:#cbd5e1;cursor:not-allowed;transform:none}.attendance-filter-container{align-items:center;display:flex;flex:1 1;justify-content:flex-end;width:100%}.attendance-filter-buttons{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;width:100%}.attendance-filter-btn{align-items:center;background:#fff;border:1px solid #d1d5db;border-radius:8px;color:#374151;cursor:pointer;display:inline-flex;font-size:13px;font-weight:500;justify-content:center;padding:8px 18px;transition:all .2s ease}.attendance-filter-btn:hover{background:#f3f4f6}.attendance-filter-btn.active{background:#2563eb;border-color:#2563eb;color:#fff;font-weight:600}.attendance-date-filter{align-items:center;display:flex;gap:10px}.attendance-date-filter input{border:1px solid #d1d5db;border-radius:8px;padding:8px 12px}.attendance-search{background:#fff;border:1px solid #d9d9d9;border-radius:10px;font-size:14px;height:33px;outline:none;padding:0 14px;transition:all .2s ease;width:170px}.attendance-search::placeholder{color:#9ca3af}.attendance-search:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.attendance-search:hover{border-color:#bdbdbd}.attendance-holiday-banner{align-items:center;background:#eef2ff;border:1px solid #c7d2fe;border-radius:10px;color:#312e81;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px;padding:12px 14px}.attendance-holiday-banner span{font-size:.82rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.attendance-weekoff-banner{align-items:center;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:10px;color:#334155;display:flex;gap:12px;justify-content:space-between;margin-bottom:12px;padding:12px 14px}.attendance-weekoff-banner span{color:#64748b;font-size:.82rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.attendance-table-wrap{overflow-x:auto}.attendance-table{border-collapse:collapse;width:100%}.attendance-table th{border-bottom:1px solid #e2e8f0;color:#64748b;font-size:11px;font-weight:600;letter-spacing:.04em;padding:8px 10px 10px 0;text-align:left;text-transform:uppercase;white-space:nowrap}.attendance-table th:last-child{padding-right:0}.attendance-table td{border-bottom:1px solid #f8fafc;color:#334155;font-size:14px;padding:11px 10px 11px 0;vertical-align:middle}.attendance-table td:last-child{padding-right:0}.attendance-table tbody tr:last-child td{border-bottom:none}.attendance-empty{color:#94a3b8;padding:20px 12px;text-align:center}.employee-cell{align-items:center;display:flex;gap:12px}.employee-info{display:flex;flex-direction:column;gap:2px}.employee-code{font-size:12px}.employee-avatar{align-items:center;background:#ede9fe;border-radius:50%;color:#7c3aed;display:flex;flex-shrink:0;font-size:13px;font-weight:700;height:38px;justify-content:center;width:38px}.employee-name{color:#0f172a;font-weight:600}.muted-cell{color:#64748b}.status-text{font-size:14px;font-weight:600}.status-text-present{color:#16a34a}.status-text-absent{color:#dc2626}.status-text-half-day{color:#ea580c}.status-text-late{color:#2563eb}.status-text-leave{color:#db2777}.status-text-wfh{color:#d97706}.attendance-date-range-wrap{align-items:center;background:#fff;border:1px solid #d1d5db;border-radius:8px;box-sizing:border-box;color:#64748b;display:inline-flex;font-size:12px;gap:6px;height:33px;padding:0 10px}.attendance-date-input{background:#0000;border:none;color:#0f172a;font-family:inherit;font-size:12px;font-weight:500;outline:none;padding:0}.attendance-date-input::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.6;-webkit-transition:opacity .15s ease;transition:opacity .15s ease}.attendance-date-input::-webkit-calendar-picker-indicator:hover{opacity:1}.attendance-inline-session-wrapper{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 1px 2px #00000008;margin:.75rem 1rem}.attendance-session-toggle{align-items:center;background:#fff;border:1px solid #dbe4ef;border-radius:8px;color:#2563eb;cursor:pointer;display:inline-flex;font-size:13px;font-weight:600;gap:4px;padding:4px 8px}.attendance-sessions-expand-row td{background:#f8fafc;padding-top:0}.attendance-action-btn{background:#fff;border:1px solid #dbe4ef;color:#2563eb}@keyframes skeleton-pulse{0%,to{opacity:.4}50%{opacity:.8}}.skeleton{animation:skeleton-pulse 1.5s ease-in-out infinite;background:linear-gradient(90deg,#e2e8f0 25%,#f1f5f9 50%,#e2e8f0 75%);background-size:200% 100%;border-radius:6px}.skeleton-avatar{border-radius:50%;height:36px;width:36px}.skeleton-text{height:14px;width:80%}.attendance-skeleton-row td{padding:.75rem 1rem}.mar-overlay{align-items:center;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background-color:#00000080;display:flex;height:100vh;justify-content:center;left:0;position:fixed;top:0;width:100vw;z-index:1000}.mar-modal{animation:marFadeIn .25s ease-out;background:#fff;border-radius:12px;box-shadow:0 10px 25px #00000026;max-width:500px;overflow:hidden;width:100%}.mar-header{align-items:center;border-bottom:1px solid #eaeaea;display:flex;justify-content:space-between;padding:20px}.mar-header h3{color:#1a1a1a;font-size:1.1rem;font-weight:600;margin:0}.action-btn-edit{background:#0000;border:none;border-radius:4px;color:#666;cursor:pointer;font-size:1.2rem;font-weight:700;justify-content:flex-end;padding:4px 0;transition:background-color .2s,color .2s}.mar-body{display:flex;flex-direction:column;gap:20px;padding:24px}.mar-body select{background-color:#f9f9f9;border:1px solid #ccc;border-radius:8px;color:#333;font-size:.95rem;outline:none;padding:12px 16px;transition:border-color .2s,box-shadow .2s;width:100%}.mar-body select:focus{background-color:#fff;border-color:#007bff;box-shadow:0 0 0 3px #007bff26}.mar-body button:not(.action-btn-edit){background-color:#007bff;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:1rem;font-weight:500;padding:12px;transition:background-color .2s;width:100%}.mar-body button:not(.action-btn-edit):hover{background-color:#0056b3}@keyframes marFadeIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.leave-page{--leave-radius-card:16px;--leave-radius-control:10px;background-color:#f8fafc;display:flex;flex:1 1;flex-direction:column;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;gap:16px;overflow-y:auto;padding:20px 24px}.leave-page .leave-glass{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffd9;border:1px solid #e2e8f0cc;border-radius:var(--leave-radius-card);box-shadow:0 4px 20px -2px #94a3b814,0 2px 8px -1px #94a3b80a}.leave-header-banner{align-items:center;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:2px}.leave-title{color:#0f172a;font-size:28px;font-weight:800;letter-spacing:-.5px;margin:0}.leave-subtitle{color:#64748b;font-size:14px;line-height:1.4;margin:4px 0 0}.leave-alert{border-radius:var(--leave-radius-control);font-size:14px;font-weight:500;margin:0;padding:10px 14px}.leave-alert--error{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}.leave-page .payroll-stats-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:16px}.leave-page .payroll-stats-grid .generic-card{max-width:none}.leave-page .stat-card{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:var(--leave-radius-card);display:flex;gap:12px;justify-content:flex-start;padding:16px 18px}.leave-page .stat-card.glass-morphism{-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#ffffffd9;border:1px solid #e2e8f0cc;border-radius:var(--leave-radius-card);box-shadow:0 4px 20px -2px #94a3b814,0 2px 8px -1px #94a3b80a;transition:transform .2s ease,box-shadow .2s ease}.leave-page .stat-card:hover{box-shadow:0 6px 16px -4px #94a3b81f;transform:translateY(-1px)}.leave-page .stat-icon-wrapper{align-items:center;border-radius:var(--leave-radius-control);display:flex;flex-shrink:0;height:38px;justify-content:center;width:38px}.leave-page .indigo-bg{background-color:#eff6ff}.leave-page .green-bg{background-color:#ecfdf5}.leave-page .red-bg{background-color:#fef2f2}.leave-page .amber-bg{background-color:#fffbeb}.leave-page .stat-label{color:#64748b;display:block;font-size:11px;font-weight:600;letter-spacing:.4px;margin:0;text-transform:uppercase}.leave-page .stat-value{color:#0f172a;display:block;font-size:18px;font-weight:700;letter-spacing:-.3px;margin:4px 0 0}.leave-layout-grid{grid-gap:16px;align-items:stretch;display:grid;gap:16px;grid-template-columns:1.45fr 1fr}.leave-section-heading{color:#0f172a;font-size:18px;font-weight:700;margin:0 0 12px}.leave-self-section{gap:16px}.leave-panel,.leave-self-section{display:flex;flex-direction:column}.leave-panel{min-height:100%;padding:16px 18px}.leave-panel--wide{width:100%}.leave-panel__head{border-bottom:1px solid #f1f5f9;margin-bottom:12px;padding-bottom:10px}.leave-panel__head h3{align-items:center;color:#0f172a;display:flex;font-size:15px;font-weight:700;gap:8px;line-height:1.3;margin:0}.leave-form-grid{grid-gap:12px;align-items:end;display:grid;gap:12px;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}.leave-field{display:flex;flex-direction:column;gap:4px;min-width:0}.leave-field--wide{grid-column:span 2}.leave-field--full{grid-column:1/-1}.leave-field label{color:#475569;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.leave-control{background:#fff;border:1px solid #cbd5e1;border-radius:var(--leave-radius-control);color:#0f172a;font-size:14px;font-weight:500;height:40px;outline:none;padding:0 12px;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.leave-control:focus{border-color:#1e6bd6;box-shadow:0 0 0 3px #1e6bd61f}select.leave-control{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:14px;cursor:pointer;padding-right:36px}.leave-form-actions{display:flex;grid-column:1/-1;justify-content:flex-end;padding-top:4px}.leave-control--invalid{background:#fffbfb;border-color:#f1a8a8!important;box-shadow:0 0 0 3px #dc262614}.leave-control--invalid:focus{border-color:#ef4444!important;box-shadow:0 0 0 3px #ef444429}.leave-date-feedback{align-items:flex-start;animation:leave-feedback-in .18s ease-out;border:1px solid #0000;border-radius:var(--leave-radius-control);display:flex;gap:12px;padding:12px 14px}.leave-date-feedback--ok{background:#f0f9ff;border-color:#bae6fd;color:#0c4a6e}.leave-date-feedback--error{background:#fff7ed;border-color:#fed7aa;color:#9a3412}.leave-date-feedback__icon{align-items:center;border-radius:999px;display:inline-flex;flex-shrink:0;height:32px;justify-content:center;margin-top:1px;width:32px}.leave-date-feedback--ok .leave-date-feedback__icon{background:#e0f2fe;color:#0284c7}.leave-date-feedback--error .leave-date-feedback__icon{background:#ffedd5;color:#ea580c}.leave-date-feedback__body{display:flex;flex-direction:column;gap:4px;min-width:0}.leave-date-feedback__title{color:inherit;font-size:13px;font-weight:700;letter-spacing:-.01em;line-height:1.3}.leave-date-feedback__text{color:inherit;font-size:12.5px;line-height:1.45;margin:0;opacity:.92}.leave-date-feedback__meta{font-size:11.5px;font-weight:500;margin:2px 0 0;opacity:.85}.leave-date-feedback__meta strong{font-weight:700}@keyframes leave-feedback-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.leave-date-feedback{animation:none}}.leave-btn{align-items:center;border:none;border-radius:var(--leave-radius-control);cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:8px;height:40px;justify-content:center;padding:0 18px;transition:all .15s ease}.leave-btn--primary{background:#1e6bd6;box-shadow:0 4px 12px #1e6bd626;color:#fff}.leave-btn--primary:hover{background:#1d4ed8}.balance-editor{display:flex;flex:1 1;flex-direction:column;gap:12px}.leave-balance-grid{display:flex;flex-direction:column;gap:10px}.balance-row{grid-gap:10px;align-items:end;background:#fafbfc;border:1px solid #f1f5f9;border-radius:var(--leave-radius-control);display:grid;gap:10px;grid-template-columns:36px 1fr 1fr;padding:10px 12px}.balance-row__type{color:#64748b;font-size:12px;font-weight:700;padding-bottom:10px;text-align:center}.balance-row__field label{font-size:10px}.leave-list{display:flex;flex:1 1;flex-direction:column;gap:8px}.leave-list-item{align-items:center;background:#fafbfc;border:1px solid #f1f5f9;border-radius:var(--leave-radius-control);display:flex;gap:12px;justify-content:space-between;padding:10px 12px}.leave-list-item strong{color:#0f172a;font-size:14px}.leave-list-item p{color:#64748b;font-size:13px;margin:2px 0 0}.leave-balance-list{display:flex;flex:1 1;flex-direction:column}.leave-balance-item{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;font-size:14px;gap:12px;justify-content:space-between;padding:10px 0}.leave-balance-item:last-child{border-bottom:none}.leave-balance-item strong{font-feature-settings:"tnum";color:#0f172a;font-variant-numeric:tabular-nums}.leave-team-balance-group{border-bottom:1px solid #f1f5f9;padding:10px 0}.leave-team-balance-group:last-child{border-bottom:none}.leave-team-balance-name{color:#0f172a;display:block;font-size:13px;font-weight:600;margin-bottom:6px}.leave-table-wrap{flex:1 1;overflow-x:auto}.leave-table{border-collapse:collapse;min-width:520px;width:100%}.leave-table th{border-bottom:1px solid #e2e8f0;color:#64748b;font-size:11px;font-weight:600;letter-spacing:.04em;padding:8px 10px 10px 0;text-align:left;text-transform:uppercase;white-space:nowrap}.leave-table td{border-bottom:1px solid #f8fafc;color:#334155;font-size:14px;padding:11px 10px 11px 0;vertical-align:middle}.leave-table tbody tr:last-child td{border-bottom:none}.leave-status{align-items:center;border-radius:999px;display:inline-flex;font-size:12px;font-weight:600;padding:4px 10px;white-space:nowrap}.leave-status.approved{background:#dcfce7;color:#15803d}.leave-status.pending{background:#fef3c7;color:#b45309}.leave-status.rejected{background:#fee2e2;color:#b91c1c}.leave-status.cancelled{background:#e2e8f0;color:#334155}.leave-actions{display:flex;gap:6px}.approve-btn,.reject-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;height:32px;justify-content:center;transition:opacity .15s ease;width:32px}.leave-actions .generic-btn.approve-btn,.leave-actions .generic-btn.reject-btn{box-shadow:none;height:32px;min-width:32px;padding:0;transform:none;width:32px}.leave-actions .generic-btn.approve-btn:active,.leave-actions .generic-btn.approve-btn:hover,.leave-actions .generic-btn.reject-btn:active,.leave-actions .generic-btn.reject-btn:hover{opacity:.85;transform:none}.leave-actions .generic-btn.approve-btn>span:not(.btn-icon),.leave-actions .generic-btn.reject-btn>span:not(.btn-icon){display:none}.approve-btn:hover,.reject-btn:hover{opacity:.85}.approve-btn{background:#dcfce7;color:#15803d}.reject-btn{background:#fee2e2;color:#b91c1c}.leave-actions .generic-btn.approve-btn{background:#dcfce7;color:#15803d}.leave-actions .generic-btn.reject-btn,.leave-cancel-btn{background:#fee2e2;color:#b91c1c}.leave-cancel-btn{border:none;border-radius:8px;cursor:pointer;font-size:12px;font-weight:600;height:30px;padding:0 10px}.leave-role-banner{align-items:center;border-radius:var(--leave-radius-control);display:flex;font-size:14px;font-weight:500;gap:10px;padding:10px 14px}.leave-role-banner.manager{background:#eff6ff;border:1px solid #bfdbfe;color:#1d4ed8}.leave-hr-actions{display:flex;flex-wrap:wrap;gap:10px;padding-left:5px}.leave-hr-btn{align-items:center;background:#1e6bd6;border:none;border-radius:var(--leave-radius-control);color:#fff;cursor:pointer;display:inline-flex;font-size:14px;font-weight:600;gap:8px;height:40px;padding:0 16px}.leave-hr-btn.secondary{background:#fff;border:1px solid #cbd5e1;color:#334155}.leave-policy-overlay{display:flex;inset:0;justify-content:flex-end;position:fixed;z-index:500}.leave-policy-backdrop{animation:lp-fade-in .18s ease;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0f172a59;inset:0;position:absolute}@keyframes lp-fade-in{0%{opacity:0}to{opacity:1}}.leave-policy-drawer{animation:lp-slide-in .22s cubic-bezier(.25,.46,.45,.94);background:#f8fafc;box-shadow:-6px 0 32px #0f172a24;display:flex;flex-direction:column;height:100%;position:relative;width:min(680px,95vw);z-index:1}@keyframes lp-slide-in{0%{transform:translateX(100%)}to{transform:translateX(0)}}.leave-policy-drawer-header{align-items:flex-start;background:#fff;border-bottom:1px solid #e2e8f0;display:flex;flex-shrink:0;gap:12px;justify-content:space-between;padding:20px 22px 16px}.leave-policy-drawer-header h2{color:#1e293b;font-size:1.15rem;font-weight:800;letter-spacing:-.2px;margin:0 0 4px}.leave-policy-drawer-header p{color:#64748b;font-size:.84rem;margin:0}.leave-policy-drawer-close{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px;color:#64748b;cursor:pointer;display:flex;flex-shrink:0;height:34px;justify-content:center;width:34px}.leave-policy-drawer-close:hover{background:#f1f5f9;color:#0f172a}.leave-policy-drawer-body{flex:1 1;overflow-y:auto;padding:20px 22px}.leave-policy-drawer-body .lp-manager{background:#0000;border:none;box-shadow:none;padding:0}.leave-empty{color:#94a3b8;font-size:14px;margin:0;padding:20px 12px;text-align:center}.leave-empty--inline{padding:8px 0 4px;text-align:left}.leave-self-notice .leave-empty--inline{padding-bottom:0}@media (max-width:1200px){.leave-layout-grid{grid-template-columns:1fr}.leave-field--wide{grid-column:span 1}.leave-page .payroll-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.leave-page{padding:16px}.balance-row,.leave-form-grid,.leave-page .payroll-stats-grid{grid-template-columns:1fr}.balance-row{gap:8px}.balance-row__type{padding-bottom:0;text-align:left}}.regularization-page{--reg-blue:#2563eb;--reg-ink:#0f172a;--reg-muted:#64748b;--reg-border:#cbd5e1c7;background:radial-gradient(circle at 92% 0,#dbeafeb8,#0000 28rem),linear-gradient(180deg,#f8fafc,#f1f5f9);color:var(--reg-ink);flex:1 1;min-height:100%;min-width:0;overflow-y:auto;padding:24px}.regularization-glass{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#ffffffdb;border:1px solid var(--reg-border);box-shadow:0 12px 32px -24px #0f172a52}.regularization-header{align-items:flex-start;display:flex;gap:24px;justify-content:space-between;margin-bottom:20px}.regularization-eyebrow{color:var(--reg-blue);display:block;font-size:11px;font-weight:800;letter-spacing:.11em;margin-bottom:5px;text-transform:uppercase}.regularization-header h1{font-size:clamp(25px,3vw,34px);letter-spacing:-.035em;line-height:1.15;margin:0}.regularization-header p,.regularization-panel__head p{color:var(--reg-muted);font-size:14px;line-height:1.55;margin:7px 0 0}.regularization-header__badge{align-items:center;background:#eff6ffdb;border:1px solid #bfdbfe;border-radius:999px;color:#1d4ed8;display:inline-flex;font-size:12px;font-weight:700;gap:8px;padding:9px 12px;white-space:nowrap}.regularization-stats{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(3,minmax(0,1fr));margin-bottom:18px}.regularization-stat{align-items:center;border-radius:16px;display:flex;gap:12px;padding:15px 16px}.regularization-stat__icon{align-items:center;border-radius:12px;display:inline-flex;height:40px;justify-content:center;width:40px}.regularization-stat__icon.amber{background:#fffbeb;color:#b45309}.regularization-stat__icon.blue{background:#eff6ff;color:#2563eb}.regularization-stat__icon.green{background:#ecfdf5;color:#15803d}.regularization-stat span,.regularization-stat strong{display:block}.regularization-stat strong{font-size:21px;line-height:1}.regularization-stat div>span{color:var(--reg-muted);font-size:12px;font-weight:650;margin-top:5px}.regularization-tabs{background:#e2e8f094;border:1px solid #e2e8f0;border-radius:14px;display:flex;gap:5px;margin-bottom:16px;overflow-x:auto;padding:5px}.regularization-tabs button{align-items:center;background:#0000;border:0;border-radius:10px;color:#475569;cursor:pointer;display:inline-flex;font:inherit;font-size:13px;font-weight:700;gap:7px;justify-content:center;min-height:40px;padding:8px 15px;transition:color .16s ease,background .16s ease,box-shadow .16s ease;white-space:nowrap}.regularization-tabs button:hover{color:#1e40af}.regularization-tabs button.is-active{background:#fff;box-shadow:0 3px 10px -5px #0f172a66;color:#1d4ed8}.regularization-count,.regularization-tabs__count{align-items:center;background:#dbeafe;border-radius:999px;color:#1d4ed8;display:inline-flex;font-size:10px;font-weight:800;height:21px;justify-content:center;min-width:21px;padding:0 6px}.regularization-filter-chips{display:flex;gap:7px;margin:17px 0 3px}.regularization-filter-chips button{background:#fff;border:1px solid #dbe3ee;border-radius:999px;color:#64748b;cursor:pointer;font:inherit;font-size:11px;font-weight:750;padding:7px 12px}.regularization-filter-chips button.is-active,.regularization-filter-chips button:hover{background:#eff6ff;border-color:#93c5fd;color:#1d4ed8}.regularization-content{margin:0 auto;max-width:1060px}.regularization-panel{border-radius:20px;padding:22px}.regularization-panel__head{border-bottom:1px solid #eef2f7;padding-bottom:17px}.regularization-panel__head--row{align-items:flex-start;display:flex;gap:20px;justify-content:space-between}.regularization-panel__head h2,.regularization-placeholder h2{font-size:19px;letter-spacing:-.025em;margin:0}.regularization-kind-toggle{grid-gap:8px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;display:grid;gap:8px;grid-template-columns:repeat(2,minmax(0,1fr));margin:18px 0;padding:5px}.regularization-kind-toggle button{align-items:center;background:#0000;border:1px solid #0000;border-radius:10px;color:#64748b;cursor:pointer;display:flex;font:inherit;font-size:13px;font-weight:750;gap:8px;justify-content:center;min-height:43px}.regularization-kind-toggle button.is-active{background:#fff;border-color:#bfdbfe;box-shadow:0 5px 15px -10px #2563ebb3;color:#1d4ed8}.regularization-form{grid-gap:17px;display:grid;gap:17px;grid-template-columns:repeat(2,minmax(0,1fr))}.regularization-field{display:flex;flex-direction:column;gap:7px;min-width:0}.regularization-field--full{grid-column:1/-1}.regularization-cancel-box label,.regularization-field label{color:#334155;font-size:12px;font-weight:750}.regularization-cancel-box input,.regularization-field input,.regularization-field select,.regularization-field textarea{background:#fff;border:1px solid #cbd5e1;border-radius:10px;box-sizing:border-box;color:#0f172a;font:inherit;font-size:13px;min-height:43px;outline:none;padding:10px 12px;transition:border-color .16s ease,box-shadow .16s ease;width:100%}.regularization-field textarea{min-height:84px;resize:vertical}.regularization-cancel-box input:focus,.regularization-field input:focus,.regularization-field select:focus,.regularization-field textarea:focus{border-color:#60a5fa;box-shadow:0 0 0 3px #3b82f621}.regularization-field [aria-invalid=true]{border-color:#f97316}.regularization-employee-control{align-items:center;background:#fff;border:1px solid #cbd5e1;border-radius:10px;box-sizing:border-box;color:#0f172a;cursor:pointer;display:flex;font-size:13px;justify-content:space-between;min-height:43px;padding:10px 12px;width:100%}.regularization-employee-control.month-mark-control--error{border-color:#f97316}.regularization-field small{color:#94a3b8;font-size:11px}.regularization-readonly{align-items:center;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:10px;color:#475569;display:flex;font-size:13px;min-height:43px;padding:0 12px}.regularization-comparison{grid-gap:10px;align-items:stretch;display:grid;gap:10px;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);margin:2px 0}.regularization-snapshot{border:1px solid #e2e8f0;border-radius:14px;padding:15px}.regularization-snapshot--current{background:#f8fafc}.regularization-snapshot--requested{background:#eff6ff;border-color:#bfdbfe}.regularization-snapshot__label{color:#64748b;display:block;font-size:10px;font-weight:800;letter-spacing:.08em;margin-bottom:10px;text-transform:uppercase}.regularization-snapshot dl,.regularization-snapshot p{margin:0}.regularization-snapshot dl{grid-gap:8px;display:grid;gap:8px}.regularization-snapshot dl div{display:flex;gap:12px;justify-content:space-between}.regularization-snapshot dt{color:#64748b;font-size:12px}.regularization-snapshot dd{font-size:12px;font-weight:750;margin:0;text-align:right}.regularization-comparison__arrow{align-self:center;color:#94a3b8}.regularization-muted{align-items:center;color:#64748b;display:flex;font-size:12px;gap:6px}.regularization-date-feedback{align-items:flex-start;animation:reg-feedback-in .18s ease-out;border:1px solid;border-radius:12px;display:flex;gap:10px;padding:12px 14px}.regularization-date-feedback--ok{background:#f0f9ff;border-color:#bae6fd;color:#0c4a6e}.regularization-date-feedback--error{background:#fff7ed;border-color:#fed7aa;color:#9a3412}.regularization-date-feedback svg{flex:0 0 auto;margin-top:1px}.regularization-date-feedback strong{display:block;font-size:13px}.regularization-date-feedback p{font-size:12px;line-height:1.45;margin:4px 0 0}.regularization-inline-error{align-items:center;background:#fff7ed;border-radius:10px;color:#9a3412;display:flex;font-size:12px;font-weight:650;gap:7px;padding:10px 12px}.regularization-form__actions{align-items:center;border-top:1px solid #eef2f7;display:flex;gap:18px;justify-content:space-between;padding-top:17px}.regularization-form__actions>span{color:#64748b;font-size:12px}.regularization-request-list{grid-gap:10px;display:grid;gap:10px;margin-top:15px}.regularization-request-card{grid-gap:13px;background:#f8fafcad;border:1px solid #e2e8f0;border-radius:15px;display:grid;gap:13px;grid-template-columns:auto minmax(0,1fr);padding:15px;transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.regularization-request-card:hover{border-color:#cbd5e1;box-shadow:0 10px 22px -20px #0f172a85;transform:translateY(-1px)}.regularization-request-card__icon{align-items:center;border-radius:11px;display:inline-flex;height:39px;justify-content:center;width:39px}.regularization-request-card__icon.attendance{background:#dbeafe;color:#2563eb}.regularization-request-card__icon.leave{background:#ede9fe;color:#7c3aed}.regularization-request-card__top{align-items:flex-start;display:flex;gap:12px;justify-content:space-between}.regularization-request-card h3{font-size:14px;margin:0}.regularization-request-card__top p{color:#64748b;font-size:11px;margin:4px 0 0}.regularization-request-card__reason{color:#334155;font-size:12.5px;line-height:1.5;margin:10px 0}.regularization-request-card__meta{color:#94a3b8;display:flex;flex-wrap:wrap;font-size:10.5px;gap:12px}.regularization-approval-list{grid-gap:12px;display:grid;gap:12px;margin-top:14px}.regularization-approval-card{background:#f8fafcb8;border:1px solid #e2e8f0;border-radius:16px;padding:16px}.regularization-approval-card__identity{grid-gap:12px;align-items:center;display:grid;gap:12px;grid-template-columns:auto minmax(0,1fr) auto}.regularization-approval-card__identity h3{font-size:14px;margin:0}.regularization-approval-card__identity p{color:#64748b;font-size:11px;margin:4px 0 0}.regularization-kind-badge{border-radius:999px;display:inline-flex;font-size:10px;font-weight:800;padding:5px 9px}.regularization-kind-badge.attendance{background:#dbeafe;color:#1d4ed8}.regularization-kind-badge.leave{background:#ede9fe;color:#6d28d9}.regularization-approval-card__change{grid-gap:10px;align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:12px;display:grid;gap:10px;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);margin:14px 0 0;padding:12px}.regularization-approval-card__change>div{min-width:0}.regularization-approval-card__change span,.regularization-approval-card__change strong{display:block}.regularization-approval-card__change span{color:#94a3b8;font-size:9px;font-weight:800;letter-spacing:.07em;margin-bottom:4px;text-transform:uppercase}.regularization-approval-card__change strong{color:#334155;font-size:11.5px;line-height:1.45}.regularization-approval-card__change svg{color:#94a3b8}.regularization-approval-card__actions{border-top:1px solid #e2e8f0;display:flex;gap:8px;justify-content:flex-end;padding-top:12px}.regularization-status{border-radius:999px;display:inline-flex;font-size:10px;font-weight:800;padding:4px 9px}.regularization-status.pending{background:#fef3c7;color:#b45309}.regularization-status.approved{background:#dcfce7;color:#15803d}.regularization-status.rejected{background:#fee2e2;color:#b91c1c}.regularization-status.cancelled{background:#e2e8f0;color:#475569}.regularization-review-note{background:#f1f5f9;border-radius:9px;color:#475569;display:flex;font-size:11px;gap:8px;margin-top:10px;padding:9px 10px}.regularization-cancel-trigger{align-items:center;background:#0000;border:0;color:#b45309;cursor:pointer;display:inline-flex;font:inherit;font-size:11px;font-weight:700;gap:5px;margin-top:11px;padding:0}.regularization-cancel-box{grid-gap:8px;background:#fff7ed;border:1px solid #fed7aa;border-radius:11px;display:grid;gap:8px;margin-top:12px;padding:12px}.regularization-cancel-box strong{font-size:12px}.regularization-cancel-box p{color:#9a3412;font-size:11px;margin:2px 0 0}.regularization-cancel-box__actions{display:flex;gap:8px;justify-content:flex-end}.regularization-list-foot{align-items:center;color:#94a3b8;display:flex;font-size:10.5px;gap:6px;justify-content:center;margin-top:16px}.regularization-placeholder,.regularization-state{align-items:center;color:#64748b;display:flex;flex-direction:column;justify-content:center;min-height:230px;text-align:center}.regularization-placeholder p,.regularization-state p{font-size:13px;margin:7px 0}.regularization-placeholder>span,.regularization-state--empty>span{align-items:center;background:#eff6ff;border-radius:16px;color:#2563eb;display:inline-flex;height:52px;justify-content:center;margin-bottom:10px;width:52px}.regularization-state h3{color:#334155;font-size:15px;margin:0}.regularization-placeholder>div{background:#eff6ff;border-radius:8px;color:#1d4ed8;font-size:11px;font-weight:700;margin-top:8px;padding:7px 10px}.spin{animation:reg-spin .8s linear infinite}@keyframes reg-spin{to{transform:rotate(1turn)}}@keyframes reg-feedback-in{0%{opacity:0;transform:translateY(-3px)}to{opacity:1;transform:translateY(0)}}@media (max-width:760px){.regularization-page{padding:18px}.regularization-header__badge{display:none}.regularization-stats{grid-template-columns:1fr}.regularization-stat{padding:12px 14px}}@media (max-width:600px){.regularization-page{padding:15px}.regularization-form{grid-template-columns:1fr}.regularization-field--full{grid-column:auto}.regularization-panel{border-radius:16px;padding:16px}.regularization-comparison{grid-template-columns:1fr}.regularization-comparison__arrow{justify-self:center;transform:rotate(90deg)}.regularization-form__actions{align-items:stretch;flex-direction:column}.regularization-form__actions .generic-btn{width:100%}.regularization-request-card{grid-template-columns:1fr}.regularization-request-card__icon{height:34px;width:34px}.regularization-approval-card__identity{grid-template-columns:auto minmax(0,1fr)}.regularization-kind-badge{grid-column:2;justify-self:start}.regularization-approval-card__change{grid-template-columns:1fr}.regularization-approval-card__change svg{justify-self:center;transform:rotate(90deg)}.regularization-approval-card__actions{flex-direction:column-reverse}.regularization-approval-card__actions .generic-btn{width:100%}.regularization-cancel-box__actions{flex-direction:column-reverse}.regularization-cancel-box__actions .generic-btn{width:100%}}@media (prefers-reduced-motion:reduce){.regularization-date-feedback,.regularization-request-card,.spin{animation:none;transition:none}}.site-payout-rule{margin-bottom:15px}.site-extra-fields{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.site-extra-fields>div{width:100%}@media (max-width:768px){.site-extra-fields{grid-template-columns:1fr}}.manage-depts-container{box-sizing:border-box;color:#334155;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;padding:2rem;width:100%}.manage-depts-stats{color:#64748b;font-size:.95rem;margin-bottom:1.25rem}.manage-depts-stats strong{color:#1e293b;font-weight:600}.manage-depts-toolbar{align-items:center;display:flex;gap:1rem;justify-content:space-between;margin-bottom:1.5rem}.manage-depts-search{align-items:center;display:flex;flex:1 1;max-width:720px;position:relative}.manage-depts-search svg{color:#94a3b8;left:1rem;pointer-events:none;position:absolute}.manage-depts-search input{background-color:#fff;border:1px solid #e2e8f0;border-radius:10px;color:#1e293b;font-size:.95rem;outline:none;padding:.75rem 1rem .75rem 2.75rem;transition:border-color .15s ease;width:100%}.manage-depts-search input:focus{border-color:#3b82f6}.manage-depts-actions{align-items:center;display:flex}.manage-depts-add-trigger{align-items:center;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border:none;border-radius:10px;box-shadow:0 2px 4px #2563eb33;color:#fff;cursor:pointer;display:inline-flex;font-size:.95rem;font-weight:600;gap:.5rem;padding:.75rem 1.5rem;transition:opacity .15s ease}.manage-depts-add-trigger:hover{opacity:.95}.manage-depts-card{background-color:#fff;border-radius:16px;box-shadow:0 4px 6px -1px #0000000d,0 2px 4px -1px #00000008;overflow:hidden;width:100%}.manage-depts-scrollable{overflow-x:auto;width:100%}.manage-depts-table{border-collapse:collapse;font-size:.95rem;text-align:left;width:100%}.manage-depts-table th{background-color:#fafafa;color:#64748b;font-weight:600;text-transform:capitalize}.manage-depts-table td,.manage-depts-table th{border-bottom:1px solid #f1f5f9;padding:1.25rem 1.5rem}.manage-depts-table td{color:#1e293b;vertical-align:middle}.manage-depts-table tr:last-child td{border-bottom:none}.manage-depts-empty{color:#94a3b8;font-style:italic;padding:4rem!important;text-align:center}.manage-depts-row-buttons{align-items:center;display:flex;gap:.5rem}.manage-depts-row-buttons button{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;height:36px;justify-content:center;padding:0;transition:transform .1s ease,background-color .15s ease;width:36px}.manage-depts-row-buttons button:active{transform:scale(.95)}.manage-depts-btn-view{background-color:#eff6ff;color:#2563eb}.manage-depts-btn-view:hover{background-color:#dbeafe}.manage-depts-btn-edit{background-color:#fef3c7;border:none!important;color:#d97706}.manage-depts-btn-edit:hover{background-color:#fde68a}.manage-depts-btn-delete{background-color:#fef2f2;color:#ef4444}.manage-depts-btn-delete:hover{background-color:#fee2e2}.manage-depts-copy-btn{align-items:center;background-color:#f8fafc;border:none;border-radius:8px;color:#475569;cursor:pointer;display:inline-flex;height:36px;justify-content:center;padding:0;transition:transform .1s ease,background-color .15s ease;width:36px}.manage-depts-copy-btn:hover{background-color:#e2e8f0}.manage-depts-copy-btn:active{transform:scale(.95)}.manage-depts-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#0f172a4d;display:flex;inset:0;justify-content:center;position:fixed;z-index:999}.manage-depts-modal{background-color:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;display:flex;flex-direction:column;margin:1rem;max-height:85vh;width:100%}.manage-depts-modal--md{max-width:520px}.manage-depts-modal--lg{max-width:720px}.manage-depts-modal__header{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;justify-content:space-between;padding:1.25rem 1.5rem}.manage-depts-modal__header h3{color:#0f172a;font-size:1.2rem;font-weight:600;margin:0}.manage-depts-modal__close{background:#0000;border:none;border-radius:6px;color:#64748b;cursor:pointer;display:inline-flex;padding:.25rem}.manage-depts-modal__close:hover{background-color:#f1f5f9}.manage-depts-modal__body{flex:1 1;overflow-y:auto;padding:1.5rem}.manage-depts-modal__footer{align-items:center;background-color:#fafafa;border-bottom-left-radius:12px;border-bottom-right-radius:12px;border-top:1px solid #f1f5f9;display:flex;gap:.75rem;justify-content:flex-end;padding:1.25rem 1.5rem}.manage-depts-section{margin-bottom:2rem}.manage-depts-section:last-child{margin-bottom:0}.manage-depts-section__head{margin-bottom:1.25rem}.manage-depts-section__head h4{color:#1e293b;font-size:1.05rem;font-weight:600;margin:0 0 .25rem}.manage-depts-section__head p{color:#64748b;font-size:.85rem;margin:0}.manage-depts-grid{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(2,1fr)}.manage-depts-field{display:flex;flex-direction:column;gap:.5rem}.manage-depts-field--full{grid-column:span 2}.manage-depts-field label{color:#475569;font-size:.85rem;font-weight:600}.manage-depts-required{color:#ef4444;margin-left:.25rem}.manage-depts-field input[type=text],.manage-depts-field select,.manage-depts-field textarea{background-color:#fff;border:1px solid #cbd5e1;border-radius:8px;box-sizing:border-box;color:#1e293b;font-size:.95rem;outline:none;padding:.65rem .85rem;width:100%}.manage-depts-field input[type=text]:focus,.manage-depts-field select:focus,.manage-depts-field textarea:focus{border-color:#3b82f6}.manage-depts-field input:disabled,.manage-depts-field select:disabled,.manage-depts-field textarea:disabled{background-color:#f8fafc;color:#64748b;cursor:not-allowed}.manage-depts-control-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:inline-flex;font-size:1rem;font-weight:600;justify-content:center;padding:.65rem 1.5rem;transition:background-color .15s ease}.manage-depts-control-btn--secondary{background-color:#e2e8f0;color:#475569}.manage-depts-control-btn--secondary:hover{background-color:#cbd5e1}.manage-depts-control-btn--primary{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff}.manage-depts-control-btn--primary:hover{opacity:.95}@media (max-width:640px){.manage-depts-grid{grid-template-columns:1fr}.manage-depts-field--full{grid-column:span 1}.manage-depts-toolbar{align-items:stretch;flex-direction:column}}.expense-required-star{color:red}.expense-page{background:#f8fafc;display:flex;flex:1 1;flex-direction:column;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;gap:16px;padding:20px 24px 28px}.expense-context-line{color:#64748b;font-size:.875rem;line-height:1.45;margin:-4px 0 0;max-width:56ch}.expense-summary-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:8px}.expense-summary-grid .generic-card{max-width:none}@media (max-width:1100px){.expense-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:560px){.expense-summary-grid{grid-template-columns:1fr}}.expense-summary-card{align-items:center;background:#fff;border-radius:14px;box-shadow:0 1px 4px #0000000f;display:flex;gap:14px;padding:18px 20px;transition:box-shadow .2s}.expense-summary-card:hover{box-shadow:0 4px 14px #0000001a}.expense-summary-card h3{color:#1a1a2e;font-size:1.4rem;font-weight:700;margin:0}.expense-summary-card p{color:#6b7280;font-size:.78rem;margin:2px 0 0}.expense-icon{align-items:center;border-radius:12px;display:flex;flex-shrink:0;height:42px;justify-content:center;width:42px}.expense-icon.blue{background:#eff6ff;color:#3b82f6}.expense-icon.green{background:#ecfdf5;color:#10b981}.expense-icon.amber{background:#fffbeb;color:#f59e0b}.expense-icon.purple{background:#f3e8ff;color:#8b5cf6}.expense-icon.rose{background:#fff1f2;color:#f43f5e}.expense-layout-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr 1fr;margin-bottom:24px}.expense-layout-grid-1{grid-gap:20px;display:grid;gap:20px;grid-template-columns:1fr;margin-bottom:24px}@media (max-width:900px){.expense-layout-grid{grid-template-columns:1fr}}.expense-card{background:#fff;border:1px solid #e8edf3;border-radius:16px;box-shadow:0 1px 3px #0f172a0a,0 4px 16px #0f172a08;padding:22px 24px}.expense-card--form{height:100%}.expense-card__head{border-bottom:1px solid #f1f5f9;margin-bottom:18px;padding-bottom:14px}.expense-card h3,.expense-card__head h3{align-items:center;color:#0f172a;display:flex;font-size:1rem;font-weight:700;gap:8px;margin:0}.expense-card__head p{color:#64748b;font-size:.8125rem;line-height:1.45;margin:6px 0 0}.expense-card>h3{margin-bottom:16px}.expense-status{border-radius:999px;display:inline-block;font-size:.75rem;font-weight:600;padding:3px 10px;text-transform:capitalize}.expense-status.draft{background:#f3f4f6;color:#6b7280}.expense-status.pending{background:#fef3c7;color:#b45309}.expense-status.approved{background:#d1fae5;color:#065f46}.expense-status.rejected{background:#fee2e2;color:#991b1b}.expense-status.reimbursed{background:#dbeafe;color:#1e40af}.expense-table{border-collapse:collapse;font-size:.85rem;gap:1rem;width:100%}.expense-table th{border-bottom:1px solid #e2e8f0;color:#64748b;font-size:.75rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}.expense-table td,.expense-table th{padding:12px 10px 12px 0;text-align:left}.expense-table td{border-bottom:1px solid #f1f5f9;color:#334155;vertical-align:middle}.expense-table tbody tr:hover{background:#f8fafc}.expense-table tbody tr:last-child td{border-bottom:none}.expense-empty{color:#9ca3af;font-size:.85rem;padding:24px;text-align:center}.expense-actions{display:flex;gap:6px}.approve-expense-btn{background:#d1fae5;color:#065f46}.reject-expense-btn{background:#fee2e2;color:#991b1b}.reimburse-btn{background:#dbeafe;color:#1e40af}.edit-expense-btn{background:#eff6ff;color:#3b82f6}.expense-form{gap:16px}.expense-field,.expense-form{display:flex;flex-direction:column}.expense-field{gap:6px;min-width:0}.expense-field--full{grid-column:1/-1}.expense-field label{color:#334155;font-size:.75rem;font-weight:600;letter-spacing:.01em}.expense-field-hint{color:#94a3b8;font-size:.75rem;line-height:1.35}.expense-control{background:#fff;border:1px solid #d1d9e6;border-radius:10px;box-sizing:border-box;color:#0f172a;font-family:inherit;font-size:.875rem;height:42px;outline:none;padding:0 12px;transition:border-color .15s ease,box-shadow .15s ease;width:100%}.expense-form select.expense-control{appearance:none;-webkit-appearance:none;-moz-appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;background-size:12px;cursor:pointer;padding-right:36px}.expense-control:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.expense-control::placeholder{color:#94a3b8}.expense-control--textarea{height:auto;line-height:1.5;min-height:88px;padding:10px 12px;resize:vertical}.expense-form-row{grid-gap:14px;align-items:start;display:grid;gap:14px;grid-template-columns:1fr 1fr}.expense-file-zone{align-items:center;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:10px;display:flex;min-height:42px;padding:0 12px;position:relative;transition:border-color .15s ease,background .15s ease}.expense-file-zone:hover{background:#eff6ff;border-color:#93c5fd}.expense-file-input{cursor:pointer;height:100%;inset:0;opacity:0;position:absolute;width:100%}.expense-file-zone__label{color:#64748b;font-size:.8125rem;overflow:hidden;pointer-events:none;text-overflow:ellipsis;white-space:nowrap}.expense-checkbox{align-items:center;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;color:#334155;cursor:pointer;display:flex;font-size:.8125rem;gap:10px;padding:12px 14px;-webkit-user-select:none;user-select:none}.expense-checkbox input{accent-color:#2563eb;cursor:pointer;height:16px;margin:0;width:16px}.expense-form-actions{border-top:1px solid #f1f5f9;display:flex;justify-content:flex-end;margin-top:4px;padding-top:4px}@media (max-width:600px){.expense-form-row{grid-template-columns:1fr}}.receipt-link{align-items:center;color:#6366f1;cursor:pointer;display:inline-flex;font-size:.8rem;font-weight:500;gap:4px;text-decoration:none}.receipt-link:hover{text-decoration:underline}.expense-error{background:#fee2e2;color:#991b1b}.expense-error,.expense-message{border-radius:10px;font-size:.85rem;margin-bottom:16px;padding:10px 16px}.expense-message{background:#d1fae5;color:#065f46}.expense-section-heading{color:#0f172a;font-size:1.125rem;font-weight:700;letter-spacing:-.01em;margin:8px 0 14px}.category-breakdown{display:flex;flex-direction:column;gap:0}.category-item{align-items:center;border-bottom:1px solid #f1f5f9;display:flex;gap:12px;justify-content:space-between;padding:12px 0}.category-item:last-child{border-bottom:none;padding-bottom:0}.category-name{color:#334155;font-size:.875rem;font-weight:600}.category-amount{color:#1a1a2e;font-size:.85rem;font-weight:600}.category-count{color:#9ca3af;font-size:.75rem;margin-left:6px}.expense-role-banner{align-items:center;border-radius:10px;display:flex;font-size:.85rem;font-weight:500;gap:10px;margin-bottom:20px;padding:12px 18px}.expense-role-banner.manager{background:linear-gradient(135deg,#eff6ff,#f8fafc);border:1px solid #bfdbfe;color:#1d4ed8}.expense-self-section{border-bottom:1px solid #e5e7eb;margin-bottom:28px;padding-bottom:28px}.reject-modal-overlay{align-items:center;background:#0006;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.reject-modal{background:#fff;border-radius:16px;box-shadow:0 20px 60px #00000026;max-width:420px;padding:28px;width:90%}.reject-modal h3{font-size:1.05rem;font-weight:600;margin:0 0 16px}.reject-modal textarea{border:1px solid #e5e7eb;border-radius:10px;box-sizing:border-box;font-family:inherit;font-size:.85rem;margin-bottom:14px;min-height:80px;outline:none;padding:10px 12px;resize:vertical;width:100%}.reject-modal-actions{display:flex;gap:10px;justify-content:flex-end}.reject-modal-actions button{border:none;border-radius:8px;cursor:pointer;font-size:.85rem;font-weight:500;padding:8px 18px}.reject-modal-actions .confirm-reject{background:#fee2e2;color:#991b1b}.reject-modal-actions .cancel-reject{background:#f3f4f6;color:#6b7280}.amount-cell{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}:root{--primary-color:#2563eb;--primary-hover:#1d4ed8;--secondary-color:#64748b;--bg-card:#fff;--border-color:#e2e8f0;--text-main:#1e293b;--text-muted:#64748b;--danger-color:#ef4444;--success-color:#22c55e;--success-bg:#dcfce7;--warning-color:#f59e0b;--overlay-bg:#0f172a99;--radius-md:8px;--radius-lg:12px;--transition:all 0.2s ease-in-out}.exit-mgmt-container{color:#1e293b;color:var(--text-main);font-family:system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;padding:2rem}.exit-mgmt-header-row{align-items:center;display:flex;justify-content:space-between;margin-bottom:1rem}.exit-mgmt-header-block{margin:2rem 0 1rem}.exit-mgmt-title{color:#1e293b;font-size:1.5rem;font-weight:700;margin:0}.exit-mgmt-subtitle{color:#64748b;color:var(--text-muted);font-size:.875rem;margin-top:4px}.exit-mgmt-card{background:#fff;background:var(--bg-card);border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:12px;border-radius:var(--radius-lg);box-shadow:0 4px 6px -1px #0000000d,0 2px 4px -2px #0000000d;overflow:hidden}.exit-mgmt-card--mb-large{margin-bottom:2.5rem}.exit-mgmt-card--empty-state{color:#64748b;color:var(--text-muted);padding:2rem;text-align:center}.exit-mgmt-toolbar{align-items:center;display:flex;gap:1rem;margin-bottom:1.5rem}.exit-mgmt-search{align-items:center;display:flex;flex:1 1;max-width:400px;position:relative}.exit-mgmt-search svg{color:#64748b;color:var(--text-muted);left:12px;pointer-events:none;position:absolute}.exit-mgmt-search input{border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:8px;border-radius:var(--radius-md);font-size:.875rem;outline:none;padding:.625rem .75rem .625rem 2.5rem;transition:all .2s ease-in-out;transition:var(--transition);width:100%}.exit-mgmt-search input:focus{border-color:#2563eb;border-color:var(--primary-color);box-shadow:0 0 0 3px #2563eb26}.exit-mgmt-scrollable{overflow-x:auto;width:100%}.exit-mgmt-table{border-collapse:collapse;font-size:.875rem;text-align:left;width:100%}.exit-mgmt-table th{background-color:#f8fafc;color:#64748b;color:var(--text-muted);font-size:.75rem;font-weight:600;letter-spacing:.05em;padding:.875rem 1.25rem;text-transform:uppercase}.exit-mgmt-table td,.exit-mgmt-table th{border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border-color)}.exit-mgmt-table td{padding:1rem 1.25rem;vertical-align:middle}.exit-mgmt-table tr:last-child td{border-bottom:none}.exit-mgmt-table tr:hover td{background-color:#f8fafc}.exit-mgmt-employee-name{font-weight:600}.exit-mgmt-truncated-cell{max-width:280px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.exit-mgmt-empty{color:#64748b;color:var(--text-muted);font-style:italic;padding:3rem 1.25rem!important;text-align:center}.exit-mgmt-add-trigger{align-items:center;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border:none;border-radius:8px;border-radius:var(--radius-md);color:#fff;cursor:pointer;display:inline-flex;font-size:.875rem;font-weight:500;gap:8px;padding:.625rem 1.25rem;transition:all .2s ease-in-out;transition:var(--transition)}.exit-mgmt-add-trigger:hover{background-color:#1d4ed8;background-color:var(--primary-hover)}.exit-mgmt-row-buttons{align-items:center;display:flex;gap:8px}.exit-mgmt-btn-approve,.exit-mgmt-btn-reject,.exit-mgmt-btn-view{align-items:center;background:#fff;border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:6px;cursor:pointer;display:inline-flex;height:32px;justify-content:center;transition:all .2s ease-in-out;transition:var(--transition);width:32px}.exit-mgmt-btn-view{color:#2563eb;color:var(--primary-color)}.exit-mgmt-btn-view:hover{background:#eff6ff;border-color:#2563eb;border-color:var(--primary-color)}.exit-mgmt-btn-approve{color:#22c55e;color:var(--success-color)}.exit-mgmt-btn-approve:hover{background:#f0fdf4;border-color:#22c55e;border-color:var(--success-color)}.exit-mgmt-btn-reject{color:#ef4444;color:var(--danger-color)}.exit-mgmt-btn-reject:hover{background:#fef2f2;border-color:#ef4444;border-color:var(--danger-color)}.exit-badge{align-items:center;border-radius:50px;display:inline-flex;font-size:.75rem;font-weight:600;padding:.25rem .625rem;text-transform:capitalize}.badge--pending{background-color:#fef3c7;color:#d97706}.badge--verified{background-color:#ffedd5;color:#ea580c}.badge--approved{background-color:#dcfce7;background-color:var(--success-bg);color:#15803d}.badge--rejected{background-color:#fee2e2;color:#b91c1c}.exit-mgmt-overlay{align-items:center;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background-color:#0f172a99;background-color:var(--overlay-bg);display:flex;inset:0;justify-content:center;padding:1.5rem;position:fixed;z-index:1000}.exit-mgmt-modal{background:#fff;background:var(--bg-card);border-radius:12px;border-radius:var(--radius-lg);box-shadow:0 20px 25px -5px #0000001a;display:flex;flex-direction:column;max-height:calc(100vh - 3rem);width:100%}.exit-mgmt-modal--md{max-width:560px}.exit-mgmt-modal--lg{max-width:800px}.exit-mgmt-modal__header{align-items:center;border-bottom:1px solid #e2e8f0;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;padding:1.25rem 1.5rem}.exit-mgmt-modal__header h3{font-size:1.125rem;font-weight:600;margin:0}.exit-mgmt-modal__close{align-items:center;background:#0000;border:none;border-radius:6px;color:#64748b;color:var(--text-muted);cursor:pointer;display:flex;padding:4px}.exit-mgmt-modal__close:hover{background-color:#f1f5f9;color:#1e293b;color:var(--text-main)}.exit-mgmt-modal-actions{display:flex;gap:10px;justify-content:flex-end;width:100%}.exit-mgmt-modal__body{flex:1 1;overflow-y:auto;padding:1.5rem}.exit-mgmt-modal__footer{background-color:#f8fafc;border-top:1px solid #e2e8f0;border-top:1px solid var(--border-color);display:flex;gap:.75rem;justify-content:flex-end;padding:1rem 1.5rem}.exit-mgmt-section{margin-bottom:2rem}.exit-mgmt-section__head{border-bottom:1px dashed #e2e8f0;border-bottom:1px dashed var(--border-color);margin-bottom:1rem;padding-bottom:.5rem}.exit-mgmt-section__head h4{font-size:.95rem;font-weight:600;margin:0}.exit-mgmt-section__head p{color:#64748b;color:var(--text-muted);font-size:.8rem;margin:4px 0 0}.exit-mgmt-grid{grid-gap:1.25rem;display:grid;gap:1.25rem;grid-template-columns:repeat(2,1fr)}.exit-mgmt-field{display:flex;flex-direction:column;gap:6px}.exit-mgmt-field--full{grid-column:span 2}.exit-mgmt-field label{color:#334155;font-size:.815rem;font-weight:500}.exit-mgmt-required{color:#ef4444;color:var(--danger-color);margin-left:3px}.exit-mgmt-field input[type=date],.exit-mgmt-field input[type=number],.exit-mgmt-field input[type=text],.exit-mgmt-field textarea{background-color:#fff;border:1px solid #e2e8f0;border:1px solid var(--border-color);border-radius:8px;border-radius:var(--radius-md);box-sizing:border-box;font-size:.875rem;outline:none;padding:.625rem .75rem;transition:all .2s ease-in-out;transition:var(--transition);width:100%}.exit-mgmt-checkbox-list{display:flex;flex-direction:column;gap:12px;grid-column:span 2}.exit-mgmt-checkbox-label{align-items:center;cursor:pointer;display:flex;gap:10px}.exit-mgmt-checkbox-label--mt{margin-top:8px}.exit-mgmt-checkbox-group{display:flex;gap:20px;grid-column:span 2;margin-top:10px}.exit-mgmt-schedule-box{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;grid-column:span 2;overflow:hidden}.exit-mgmt-schedule-row{align-items:center;border-bottom:1px solid #edf2f7;display:flex;font-size:13px;gap:12px;justify-content:space-between;padding:10px 14px}.exit-mgmt-schedule-row:last-child{border-bottom:none}.exit-mgmt-schedule-row span{color:#475569}.exit-mgmt-schedule-row strong{color:#1a7f37;font-size:12px;text-align:right}.file-upload-zone{background-color:#f8fafc;border:2px dashed #e2e8f0;border:2px dashed var(--border-color);border-radius:12px;border-radius:var(--radius-lg);padding:1.5rem;position:relative;text-align:center}.file-upload-zone input[type=file]{cursor:pointer;inset:0;opacity:0;position:absolute}.exit-mgmt-control-btn{border:none;border-radius:8px;border-radius:var(--radius-md);cursor:pointer;font-size:.875rem;font-weight:500;padding:.625rem 1.25rem}.exit-mgmt-control-btn--primary{background-color:#2563eb;background-color:var(--primary-color);color:#fff}.exit-mgmt-control-btn--primary:hover{background-color:#1d4ed8;background-color:var(--primary-hover)}.exit-mgmt-control-btn--secondary{background-color:#fff;border:1px solid #e2e8f0;border:1px solid var(--border-color);color:#1e293b;color:var(--text-main)}.exit-mgmt-control-btn--secondary:hover{background-color:#f1f5f9}.exit-mgmt-control-btn--verify{background-color:#f59e0b;background-color:var(--warning-color);color:#fff}.exit-mgmt-control-btn--verify:hover{background-color:#d97706}.document-download-link--btn{align-items:center;background:none;border:none;color:#2563eb;color:var(--primary-color);cursor:pointer;display:inline-flex;gap:8px;padding:0}.exit-mgmt-container svg,.exit-mgmt-modal svg{display:inline-block;flex-shrink:0;height:18px;vertical-align:middle;width:18px}.exit-mgmt-search svg{height:18px;width:18px}.exit-mgmt-row-buttons svg{height:15px;width:15px}.exit-mgmt-modal__close svg{height:22px;width:22px}@media (max-width:640px){.exit-mgmt-container{padding:1rem}.exit-mgmt-grid{grid-template-columns:1fr}.exit-mgmt-field--full{grid-column:span 1}.exit-mgmt-toolbar{align-items:stretch;flex-direction:column}.exit-mgmt-search{max-width:100%}}.leave-policy-page{background:#f8fafc;display:flex;flex:1 1;flex-direction:column;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;gap:20px;min-height:100%;overflow-y:auto;padding:20px 24px}.leave-policy-page-header{align-items:flex-start;display:flex;gap:14px}.leave-policy-page-header h1{color:#0f172a;font-size:1.5rem;font-weight:800;letter-spacing:-.4px;margin:0 0 4px}.leave-policy-page-header p{color:#64748b;font-size:.92rem;margin:0}@media (max-width:640px){.leave-policy-page{padding:16px}}.not-found-page{align-items:center;background:radial-gradient(circle at 20% 20%,#6366f114,#0000 30%),radial-gradient(circle at 80% 80%,#3b82f614,#0000 30%),#f8fafc;display:flex;justify-content:center;min-height:100vh;overflow:hidden;padding:40px 20px;position:relative;width:100%}.not-found-bg-circle{border-radius:50%;filter:blur(2px);pointer-events:none;position:absolute}.not-found-bg-circle--one{background:#6366f114;height:300px;left:-100px;top:-120px;width:300px}.not-found-bg-circle--two{background:#3b82f614;bottom:-180px;height:400px;right:-180px;width:400px}.not-found-content{max-width:650px;position:relative;text-align:center;width:100%;z-index:2}.not-found-number{align-items:center;color:#111827;display:flex;font-size:clamp(110px,20vw,190px);font-weight:800;gap:12px;justify-content:center;letter-spacing:-10px;line-height:.9;-webkit-user-select:none;user-select:none}.not-found-zero{background:linear-gradient(135deg,#6366f1,#3b82f6);box-shadow:0 20px 50px #3b82f640,inset 0 0 0 12px #ffffff26;height:clamp(100px,18vw,175px);transform:rotate(-8deg);width:clamp(100px,18vw,175px)}.not-found-zero,.not-found-zero-inner{align-items:center;border-radius:50%;display:flex;justify-content:center}.not-found-zero-inner{background:#f8fafc;box-shadow:inset 0 0 20px #0000000f;color:#6366f1;font-size:clamp(40px,8vw,75px);font-weight:800;height:55%;transform:rotate(8deg);width:55%}.not-found-text{margin-top:45px}.not-found-text h1{color:#111827;font-size:clamp(28px,5vw,42px);font-weight:700;letter-spacing:-1px;line-height:1.2;margin:0}.not-found-text p{color:#6b7280;font-size:16px;line-height:1.7;margin:14px auto 0;max-width:500px}.dashboard-btn{align-items:center;background:linear-gradient(135deg,#6366f1,#3b82f6);border-radius:10px;box-shadow:0 10px 25px #3b82f640;color:#fff;display:inline-flex;font-size:15px;font-weight:600;gap:10px;justify-content:center;margin-top:30px;min-height:48px;padding:0 24px;text-decoration:none;transition:transform .2s ease,box-shadow .2s ease,opacity .2s ease}.dashboard-btn span{font-size:20px;line-height:1;transition:transform .2s ease}.dashboard-btn:hover{box-shadow:0 15px 30px #3b82f64d;transform:translateY(-2px)}.dashboard-btn:hover span{transform:translateX(-3px)}.dashboard-btn:active{transform:translateY(0)}@media (max-width:768px){.not-found-page{padding:30px 20px}.not-found-number{gap:8px;letter-spacing:-6px}.not-found-text{margin-top:35px}}@media (max-width:480px){.not-found-page{min-height:100svh;padding:24px 16px}.not-found-content{max-width:100%}.not-found-number{gap:5px;letter-spacing:-4px}.not-found-text{margin-top:28px}.not-found-text h1{font-size:28px}.not-found-text p{font-size:14px;line-height:1.6;margin-top:10px;padding:0 10px}.dashboard-btn{margin-top:24px;max-width:240px;width:100%}.not-found-bg-circle--one{height:200px;width:200px}.not-found-bg-circle--two{height:250px;width:250px}}.landing-page .visually-hidden{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.landing-page{--lp-blue:#1755a6;--lp-teal:#12a697;--lp-text:#565f78;--lp-dark:#0f1d3a;--lp-bg:#f4f7fa;--lp-white:#fff;--lp-border:#e2e8f0;--lp-shadow:0 4px 24px #0f1d3a14;--lp-ease:cubic-bezier(0.22,1,0.36,1);background:var(--lp-white);color:var(--lp-text);font-family:Sora,Poppins,sans-serif;overflow:clip}@supports not (overflow:clip){.landing-demo,.landing-features,.landing-hero,.landing-page{overflow:visible}}.landing-page *,.landing-page :after,.landing-page :before{box-sizing:border-box}.landing-page h1,.landing-page h2,.landing-page h3{color:var(--lp-dark);font-weight:600;line-height:1.2;margin:0}.landing-page p{line-height:1.6;margin:0}.landing-page ul{list-style:none;margin:0;padding:0}.landing-page button{background:none;border:none;cursor:pointer;font-family:inherit}.landing-page img{display:block;max-width:100%}body:has(.landing-page),html:has(.landing-page){overflow-x:clip;scroll-behavior:auto}.lp-hero-item{animation:lp-rise-in .8s var(--lp-ease) both;animation-delay:0ms;animation-delay:var(--lp-d,0ms)}.lp-reveal.lp-wait{opacity:0;transform:translateY(18px);transition:opacity .7s var(--lp-ease) 0ms,transform .7s var(--lp-ease) 0ms;transition:opacity .7s var(--lp-ease) var(--lp-d,0ms),transform .7s var(--lp-ease) var(--lp-d,0ms)}.lp-reveal.is-in{opacity:1;transform:none}@keyframes lp-rise-in{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes lp-soft-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:none}}@keyframes lp-nav-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}@keyframes lp-icon-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.08)}}.landing-nav{grid-column-gap:16px;align-items:center;animation:lp-nav-in .55s var(--lp-ease) both;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);background:#ffffffeb;border-bottom:1px solid #eef2f7;column-gap:16px;display:grid;grid-template-areas:"logo links actions";grid-template-columns:minmax(140px,auto) 1fr auto;min-height:72px;padding:12px 32px;position:-webkit-sticky;position:sticky;top:0;z-index:100}.landing-logo{align-items:center;display:inline-flex;flex-shrink:0;grid-area:logo;text-decoration:none;z-index:2}.landing-logo img{display:block;height:44px;max-width:260px;object-fit:contain;width:auto}.landing-logo--sm img{height:32px}.landing-nav-links{align-items:center;display:flex;flex-wrap:nowrap;gap:28px;grid-area:links;justify-content:center;min-width:0}.landing-nav-links button{color:#1755a6;font-size:14px;font-weight:600;line-height:22px;transition:opacity .15s;white-space:nowrap}.landing-nav-links button:hover{opacity:.75}.landing-nav-actions{align-items:center;display:flex;flex-shrink:0;gap:8px;grid-area:actions;z-index:2}.landing-nav-toggle{align-items:center;background:#f4f7fa;border-radius:10px;display:none;flex-direction:column;flex-shrink:0;gap:5px;grid-area:toggle;height:40px;justify-content:center;padding:0;width:40px}.landing-nav-toggle:focus-visible,.landing-nav-toggle:hover{background:#eef2f7}.landing-nav-toggle:focus-visible{outline:2px solid #1755a6;outline-offset:2px}.landing-nav-toggle span{background:#1755a6;border-radius:2px;display:block;height:2px;transition:transform .2s,opacity .2s;width:18px}.landing-nav.is-open .landing-nav-toggle span:first-child{transform:translateY(7px) rotate(45deg)}.landing-nav.is-open .landing-nav-toggle span:nth-child(2){opacity:0}.landing-nav.is-open .landing-nav-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.landing-btn{align-items:center;border-radius:8px;display:inline-flex;font-size:14px;font-weight:600;gap:.5rem;justify-content:center;line-height:22px;padding:10px 18px;text-decoration:none;transition:background .15s,color .15s,opacity .15s;white-space:nowrap}.landing-btn--text{background:#0000;color:#1755a6;padding:10px 12px}.landing-btn--text:hover{opacity:.75}.landing-btn--ghost{background:var(--lp-white);border:1px solid var(--lp-border);color:var(--lp-blue)}.landing-btn--ghost:hover{background:var(--lp-bg)}.landing-btn--primary{background:#1755a6!important;border:none;box-shadow:none;color:#fff!important}.landing-btn--primary:hover{background:#134a8f!important}.landing-btn--block{font-size:1rem;padding:.875rem;width:100%}.landing-hero{background:#f4f7fa;overflow:clip;padding:48px 40px 0;position:relative}.landing-hero-inner{grid-gap:32px;align-items:center;display:grid;gap:32px;grid-template-columns:1.05fr .95fr;margin:0 auto;max-width:1200px;min-width:0}.landing-hero-copy{display:flex;flex-direction:column;gap:20px;max-width:560px;min-width:0}.landing-hero-copy h1{font-size:clamp(2.25rem,4vw,52px);font-weight:800;line-height:1.2;margin:0;text-transform:capitalize}.landing-hero-line{display:block}.landing-hero-line--blue{color:#1755a6}.landing-hero-line--teal{color:#12a697}.landing-hero-dot{background:currentColor;border-radius:2px;display:inline-block;height:.18em;margin-left:.08em;vertical-align:.16em;width:.18em}.landing-hero-sub{color:#565f78;font-size:17px;line-height:1.65;margin:0;max-width:520px}.landing-checklist{display:flex;flex-direction:column;gap:10px;margin:0}.landing-checklist li{align-items:center;color:#565f78;display:flex;font-size:14px;gap:10px;line-height:21px}.landing-checklist li img{flex-shrink:0;height:18px;margin-top:0;width:18px}.landing-checklist--dark li{color:var(--lp-text)}.landing-hero-cta{align-items:center;align-self:flex-start;background:#fff!important;border:1px solid #e7eaf6!important;border-radius:12px;box-shadow:none;color:#0d1330!important;display:inline-flex;font-size:15px;font-weight:400;gap:8px;line-height:22.5px;margin-top:8px;padding:14px 28px;transition:background .25s var(--lp-ease),border-color .25s var(--lp-ease),transform .25s var(--lp-ease),box-shadow .25s var(--lp-ease)}.landing-hero-cta:hover{background:#f8fafc!important;border-color:#d5dbeb!important;box-shadow:0 8px 20px #0f1d3a14;transform:translateY(-2px)}.landing-hero-cta-icon{animation:lp-icon-pulse 2.6s ease-in-out infinite;display:inline-flex;flex-shrink:0;height:16px;width:16px}.landing-hero-cta-icon img{display:block;height:16px;width:16px}.landing-hero-visual{align-items:center;animation:lp-soft-in 1.05s .12s var(--lp-ease) both;display:flex;justify-content:center;min-width:0;padding:clamp(12px,4vw,48px) clamp(8px,2vw,24px);width:100%}.landing-orbit{--orbit-sun:30%;--orbit-1:52%;--orbit-2:68%;--orbit-3:84%;--orbit-4:100%;aspect-ratio:1;flex-shrink:1;isolation:isolate;position:relative;width:min(520px,100%)}.landing-orbit-ring{border:1.5px dotted #1755a647;border-radius:50%;inset:0;margin:auto;pointer-events:none;position:absolute}.landing-orbit-ring--1{height:var(--orbit-1);width:var(--orbit-1)}.landing-orbit-ring--2{height:var(--orbit-2);width:var(--orbit-2)}.landing-orbit-ring--3{height:var(--orbit-3);width:var(--orbit-3)}.landing-orbit-ring--4{height:var(--orbit-4);width:var(--orbit-4)}.landing-orbit-sun{background:#fff;border-radius:50%;box-shadow:0 12px 36px #1755a624;height:var(--orbit-sun);inset:0;margin:auto;overflow:hidden;position:absolute;width:var(--orbit-sun);z-index:2}.landing-orbit-sun img{height:134%;left:50%;max-width:none;object-fit:cover;position:absolute;top:50%;transform:translate(-50%,-46.8%);width:134%}.landing-orbit-slot{height:var(--track);inset:0;margin:auto;pointer-events:none;position:absolute;width:var(--track);z-index:3}.landing-orbit-track{animation:landing-orbit-spin var(--duration) linear infinite;animation-delay:calc(var(--start)*var(--duration)/-360);height:100%;transform-origin:50% 50%;width:100%;will-change:transform}.landing-orbit-planet{animation:landing-orbit-counter var(--duration) linear infinite;animation-delay:calc(var(--start)*var(--duration)/-360);left:50%;pointer-events:auto;position:absolute;top:0;transform:translate(-50%,-50%);will-change:transform}.landing-orbit-badge{align-items:center;background:#fff;border-radius:999px;box-shadow:0 8px 22px #1755a624;color:#1755a6;display:inline-flex;font-family:Sora,sans-serif;font-size:13px;font-weight:600;gap:6px;line-height:1;padding:8px 14px 8px 10px;white-space:nowrap}.landing-orbit-badge img{flex-shrink:0;height:16px;max-width:none;width:16px}.landing-orbit:hover .landing-orbit-planet,.landing-orbit:hover .landing-orbit-track{animation-play-state:paused}@keyframes landing-orbit-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes landing-orbit-counter{0%{transform:translate(-50%,-50%) rotate(0deg)}to{transform:translate(-50%,-50%) rotate(-1turn)}}@media (prefers-reduced-motion:reduce){.landing-hero-cta-icon,.landing-hero-visual,.landing-logos-track,.landing-nav,.landing-orbit-planet,.landing-orbit-track,.landing-who-copy,.landing-who-shot,.lp-hero-item{animation:none!important}.landing-orbit-track{transform:rotate(calc(var(--start)*1deg))}.landing-orbit-planet{transform:translate(-50%,-50%) rotate(calc(var(--start)*-1deg))}.landing-hero-visual,.landing-nav,.lp-hero-item,.lp-reveal,.lp-reveal.lp-wait{opacity:1!important;transform:none!important;transition:none!important}.landing-feature-card:hover,.landing-hero-cta:hover{transform:none}}.landing-hero-wave{line-height:0;margin:40px -40px 0;width:calc(100% + 80px)}.landing-hero-wave svg{display:block;height:120px;width:100%}.landing-stats-section{background:#fff;flex-direction:column;gap:56px;padding:60px 40px}.landing-stats-inner,.landing-stats-section{align-items:center;display:flex;justify-content:center}.landing-stats-inner{gap:60px;margin:0 auto;max-width:1440px;text-align:center;width:100%}.landing-stat{align-items:center;display:flex;flex-direction:column;flex-shrink:0;gap:6px;justify-content:center;overflow:hidden;width:300px}.landing-stat strong{font-feature-settings:"tnum";color:#1755a6;display:block;font-family:Sora,sans-serif;font-size:48px;font-variant-numeric:tabular-nums;font-weight:700;letter-spacing:-1.8px;line-height:58px;margin:0;width:100%}.landing-stat span{color:#565f78;display:block;font-family:Sora,sans-serif;font-size:17px;font-weight:400;letter-spacing:-.2px;line-height:29px;margin:0;opacity:.7;white-space:nowrap}.landing-trust{align-items:stretch;display:flex;flex-direction:column;gap:12px;margin:0;text-align:center;width:100%}.landing-trust-title{align-items:center;display:flex;gap:8px;justify-content:center;margin:0;width:100%}.landing-trust-rule{background:#12a697;border-radius:2px;flex-shrink:0;height:2px;width:20px}.landing-trust-title p{color:#12a697;font-family:Sora,sans-serif;font-size:11px;font-weight:700;letter-spacing:1.1px;line-height:17.6px;margin:0;text-transform:uppercase;white-space:nowrap}.landing-logos{--logo-gap:100px;margin:0 auto;-webkit-mask-image:linear-gradient(90deg,#0000,#000 8%,#000 92%,#0000);mask-image:linear-gradient(90deg,#0000,#000 8%,#000 92%,#0000);overflow:clip;padding:12px 0;width:100%}.landing-logos-track{animation:landing-logos-marquee 32s linear infinite;display:flex;width:-webkit-max-content;width:max-content}.landing-logos-set{align-items:center;display:flex;flex-shrink:0;gap:var(--logo-gap);padding-right:var(--logo-gap)}.landing-logos:hover .landing-logos-track{animation-play-state:paused}@keyframes landing-logos-marquee{0%{transform:translateX(-50%)}to{transform:translateX(0)}}.landing-logo-item{align-items:center;display:flex;flex-shrink:0;opacity:.8}.landing-logo-frame{display:block;flex-shrink:0;overflow:hidden;position:relative}.landing-logo-frame img{display:block;max-width:none;position:absolute}.landing-logo-item--blinkit .landing-logo-frame{height:35px;width:140px}.landing-logo-item--blinkit .landing-logo-frame img{height:247.11%;left:0;top:-72.18%;width:100%}.landing-logo-item--zepto .landing-logo-frame{height:47px;width:148px}.landing-logo-item--zepto .landing-logo-frame img{height:182.76%;left:-.34%;top:-45.74%;width:100%}.landing-logo-item--meesho .landing-logo-frame{height:38px;width:147px}.landing-logo-item--meesho .landing-logo-frame img{height:100%;inset:0;object-fit:cover;position:absolute;width:100%}.landing-logo-item--holisol .landing-logo-frame{height:34px;width:92px}.landing-logo-item--holisol .landing-logo-frame img{height:100%;inset:0;object-fit:contain;position:absolute;width:100%}.landing-logo-item--genex .landing-logo-frame{height:34px;width:92px}.landing-logo-item--genex .landing-logo-frame img{height:100%;inset:0;object-fit:contain;position:absolute;width:100%}.landing-logo-item--threye{gap:0}.landing-logo-item--threye .landing-logo-frame{height:30px;width:43px}.landing-logo-item--threye .landing-logo-frame img{height:100%;inset:0;object-fit:contain;position:absolute;width:100%}.landing-logo-text-label{color:#393939;font-family:Sora,sans-serif;font-size:20px;font-weight:700;letter-spacing:-.2px;line-height:29px;opacity:.7;white-space:nowrap}.landing-eyebrow{color:var(--lp-teal);font-size:.75rem;font-weight:600;letter-spacing:.12em;margin-bottom:1.25rem;text-transform:uppercase}.landing-who{background:#f4f7fa;gap:56px;padding:60px 40px;text-align:center}.landing-who,.landing-who-header{align-items:center;display:flex;flex-direction:column;justify-content:center}.landing-who-header{gap:12px;overflow:hidden;width:100%}.landing-who-kicker{align-items:center;display:flex;gap:8px;justify-content:center;width:100%}.landing-who-rule{background:#12a697;border-radius:2px;flex-shrink:0;height:2px;width:20px}.landing-who-kicker p{color:#12a697;font-family:Sora,sans-serif;font-size:11px;font-weight:700;letter-spacing:1.1px;line-height:17.6px;margin:0;text-transform:uppercase;white-space:nowrap}.landing-who-header h2{font-size:36px;font-weight:700;letter-spacing:-1.2px;line-height:48px;max-width:769px}.landing-who-header h2,.landing-who-sub{color:#161c2d;font-family:Sora,sans-serif;margin:0;text-align:center}.landing-who-sub{font-size:18px;font-weight:400;letter-spacing:-.2px;line-height:32px;max-width:820px;opacity:.7}.landing-tabs{align-items:flex-start;background:#fff;border:1.5px solid #e2e8f0;border-radius:99px;box-shadow:none;display:inline-flex;gap:4px;margin:0;padding:6px}.landing-tabs button{background:#0000;border:none;border-radius:99px;color:#475569;font-family:Sora,sans-serif;font-size:14px;font-weight:400;line-height:normal;padding:12px 24px;transition:background .3s var(--lp-ease),color .3s var(--lp-ease);white-space:nowrap}.landing-tabs button.is-active{background:#1755a6;color:#fff}.landing-who-body{gap:99px;margin:0 auto;max-width:1200px;min-height:400px;text-align:left;width:100%}.landing-who-body,.landing-who-visual{align-items:center;display:flex;justify-content:center}.landing-who-visual{flex-shrink:0;height:400px;position:relative;width:500px}.landing-who-visual--shot{height:420px}.landing-who-shot{animation:landing-who-fade .45s var(--lp-ease);display:block;filter:drop-shadow(0 18px 40px rgba(15,29,58,.12));height:100%;object-fit:contain;object-position:center;width:100%}.landing-who-copy{align-items:flex-start;animation:landing-who-fade .4s ease;display:flex;flex-direction:column;flex-shrink:0;gap:22px;justify-content:center;overflow:hidden;width:500px}@keyframes landing-who-fade{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.landing-who-copy h3{font-size:36px;font-weight:600;letter-spacing:-1.2px;line-height:48px}.landing-who-copy h3,.landing-who-copy>p{color:#161c2d;font-family:Sora,sans-serif;margin:0;width:100%}.landing-who-copy>p{font-size:19px;font-weight:400;letter-spacing:-.2px;line-height:32px;opacity:.7}.landing-who-bullets{align-items:flex-start;display:flex;flex-direction:column;gap:10px;list-style:none;margin:0;padding:0;width:100%}.landing-who-bullets li{align-items:center;display:flex;gap:10px;width:100%}.landing-who-bullets li img{flex-shrink:0;height:18px;width:18px}.landing-who-bullets li span{color:#565f78;font-family:Sora,sans-serif;font-size:16px;font-weight:400;line-height:21px}.landing-section-sub{font-size:1rem;margin:0 auto 2rem;max-width:560px}.landing-features{background:#fff;overflow:clip;padding:0 0 80px;position:relative}.landing-features-wave{line-height:0;margin:0;width:100%}.landing-features-wave img{display:block;height:49px;max-width:none;object-fit:cover;width:100%}.landing-features-inner{gap:56px;margin:52px auto 0;text-align:center;width:min(1320px,calc(100% - 80px))}.landing-features-header,.landing-features-inner{align-items:center;display:flex;flex-direction:column}.landing-features-header{gap:12px;width:min(771px,100%)}.landing-features-kicker{align-items:center;display:flex;gap:8px;justify-content:center;width:100%}.landing-features-rule{background:#12a697;border-radius:2px;flex-shrink:0;height:2px;width:20px}.landing-features-kicker p{color:#12a697;font-family:Sora,sans-serif;font-size:11px;font-weight:600;letter-spacing:1.1px;line-height:17.6px;margin:0;text-transform:uppercase;white-space:nowrap}.landing-features-header h2{color:#0f1d3a;font-family:Sora,sans-serif;font-size:40px;font-weight:800;line-height:46px;margin:0;text-align:center}.landing-features-header>p{color:#5a6580;font-family:Sora,sans-serif;font-size:16px;font-weight:400;line-height:26.4px;margin:0;text-align:center}.landing-features-row{align-items:center;display:flex;gap:60px;justify-content:center}.landing-features-row--3{max-width:100%;width:auto}.landing-features-row--2{width:100%}.landing-feature-card{align-items:flex-start;background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 8px 12px #0b1a4b0d;box-sizing:border-box;display:flex;flex-direction:column;flex-shrink:0;gap:20px;height:205px;padding:32px;text-align:left;transition:box-shadow .4s var(--lp-ease),transform .4s var(--lp-ease),border-color .4s var(--lp-ease);width:400px}.landing-feature-card:hover{border-color:#c9d7ea;box-shadow:0 16px 28px #0b1a4b1a;transform:translateY(-6px)}.landing-feature-icon{align-items:center;background:#12a69726;border-radius:12px;display:flex;flex-shrink:0;height:48px;justify-content:center;width:48px}.landing-feature-icon img{display:block;height:24px;width:24px}.landing-feature-text{align-items:flex-start;display:flex;flex-direction:column;gap:8px;width:100%}.landing-feature-card h3{color:#0f172a;font-family:Sora,sans-serif;font-size:18px;font-weight:600;line-height:normal;margin:0;width:100%}.landing-feature-card p{color:#475569;font-family:Sora,sans-serif;font-size:14px;font-weight:400;line-height:1.5;margin:0;width:100%}.landing-steps{background:#fff;padding:80px 40px}.landing-steps-inner{gap:56px;margin:0 auto;width:min(1200px,100%)}.landing-steps-header,.landing-steps-inner{align-items:center;display:flex;flex-direction:column}.landing-steps-header{gap:12px;text-align:center}.landing-steps-kicker{align-items:center;display:flex;gap:8px;justify-content:center}.landing-steps-rule{background:#12a697;border-radius:2px;flex-shrink:0;height:2px;width:20px}.landing-steps-kicker p{color:#12a697;font-family:Sora,sans-serif;font-size:11px;font-weight:600;letter-spacing:1.1px;line-height:17.6px;margin:0;text-transform:uppercase;white-space:nowrap}.landing-steps-header h2{color:#0f1d3a;font-family:Sora,sans-serif;font-size:40px;font-weight:800;line-height:46px;margin:0;text-align:center}.landing-steps-grid{grid-gap:48px;display:grid;gap:48px;grid-template-columns:repeat(3,1fr);text-align:left;width:100%}.landing-step{align-items:flex-start;display:flex;flex-direction:column;gap:12px;min-width:0}.landing-step-num{align-items:center;display:flex;gap:8px}.landing-step-num-rule{background:#12a697;border-radius:2px;flex-shrink:0;height:2px;width:20px}.landing-step-num span:last-child{color:#12a697;font-family:Sora,sans-serif;font-size:14px;font-weight:700;letter-spacing:.04em;line-height:1}.landing-step h3{color:#0f1d3a;font-size:22px;font-weight:700;line-height:30px}.landing-step h3,.landing-step p{font-family:Sora,sans-serif;margin:0}.landing-step p{color:#5a6580;font-size:15px;font-weight:400;line-height:24px}.landing-demo{background:#1755a6;color:#fff;overflow:visible;padding:84px 0 0;position:relative}.landing-demo-bg{inset:0;overflow:hidden;pointer-events:none;position:absolute;z-index:0}.landing-demo-bg img{display:block;height:100%;inset:0;object-fit:cover;object-position:left top;position:absolute;width:100%}.landing-demo-bg:after,.landing-demo-bg:before{border:solid #ffffff12;border-radius:50%;content:"";pointer-events:none;position:absolute}.landing-demo-bg:before{border-width:90px;box-shadow:0 0 0 160px #ffffff0a;height:1044px;left:-870px;top:-665px;width:1150px}.landing-demo-bg:after{border-width:110px;height:1492px;left:-1137px;opacity:.85;top:-907px;width:1645px}.landing-demo-inner{gap:56px;margin:0 auto;padding-bottom:36px;position:relative;width:min(700px,calc(100% - 80px));z-index:1}.landing-demo-heading,.landing-demo-inner{align-items:center;display:flex;flex-direction:column}.landing-demo-heading{gap:12px;text-align:center;width:100%}.landing-demo-heading h2{color:#fff;font-family:Sora,sans-serif;font-size:48px;font-weight:700;letter-spacing:-1.8px;line-height:58px;margin:0;width:100%}.landing-demo-heading p{color:#fff;font-family:Sora,sans-serif;font-size:19px;font-weight:400;letter-spacing:-.2px;line-height:32px;margin:0;max-width:700px;opacity:.7}.landing-demo-form{background:#fff;border-radius:16px;box-shadow:0 12px 32px #0b1a4b1f;box-sizing:border-box;color:#0f1d3a;display:flex;flex-direction:column;gap:20px;overflow:visible;padding:36px;width:100%}.landing-form-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:1fr 1fr;margin:0;overflow:visible;position:relative;z-index:1}.landing-form-grid:has(.landing-dd.is-open){z-index:40}.landing-demo-form:has(.landing-dd.is-open)>.landing-btn,.landing-demo-form:has(.landing-dd.is-open)>.landing-form-note,.landing-demo-form:has(.landing-dd.is-open)>.landing-form-status{position:relative;z-index:0}.landing-field{display:flex;flex-direction:column;gap:5px;min-width:0;overflow:visible;position:relative;text-align:left;z-index:0}.landing-field:has(.landing-dd.is-open){z-index:30}.landing-field label{color:#0f1d3a;font-family:Sora,sans-serif;font-size:12px;font-weight:600;line-height:19.2px}.landing-form-grid input,.landing-form-grid textarea{background:#f6f8f780;border:1px solid #dde2f0;border-radius:8px;box-sizing:border-box;color:#0f1d3a;font-family:Inter,Sora,sans-serif;font-size:14px;font-weight:400;line-height:22px;outline:none;padding:13px;transition:border-color .15s,background .15s;width:100%}.landing-form-grid input{min-height:48px}.landing-form-grid input::placeholder,.landing-form-grid textarea::placeholder{color:#0f1d3a80}.landing-form-grid input:focus,.landing-form-grid textarea:focus{background:#fff;border-color:#1755a6}.landing-form-grid input.is-invalid,.landing-form-grid textarea.is-invalid{border-color:#dc2626}.landing-form-grid textarea{line-height:22.4px;min-height:80px;padding-top:10px;resize:vertical}.landing-form-full{grid-column:1/-1}.landing-field-error{color:#dc2626;font-family:Inter,sans-serif;font-size:11px;font-weight:400;line-height:14px}.landing-dd{position:relative;width:100%;z-index:1}.landing-dd.is-open{z-index:40}.landing-page .landing-dd-trigger{align-items:center;appearance:none;-webkit-appearance:none;background:#f6f8f780;border:1px solid #dde2f0;border-radius:8px;box-sizing:border-box;color:#0f1d3a;cursor:pointer;display:flex;font-family:Inter,Sora,sans-serif;font-size:14px;font-weight:400;gap:10px;justify-content:space-between;line-height:22px;min-height:48px;padding:12px 14px 12px 13px;text-align:left;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease;width:100%}.landing-dd-placeholder,.landing-dd-value{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.landing-dd-placeholder{color:#0f1d3a80}.landing-dd-value{color:#0f1d3a;font-weight:500}.landing-dd-chevron{align-items:center;color:#6b7794;display:inline-flex;flex-shrink:0;height:20px;justify-content:center;transition:transform .2s ease,color .15s ease;width:20px}.landing-dd.is-open .landing-dd-chevron{color:#1755a6;transform:rotate(180deg)}.landing-page .landing-dd-trigger:hover{background:#fff;border-color:#c5cee3}.landing-page .landing-dd-trigger:focus,.landing-page .landing-dd-trigger:focus-visible{background:#fff;border-color:#1755a6;box-shadow:0 0 0 3px #1755a61f;outline:none}.landing-page .landing-dd.is-open .landing-dd-trigger{background:#fff;border-color:#1755a6;box-shadow:0 0 0 3px #1755a61f}.landing-page .landing-dd.is-invalid .landing-dd-trigger{border-color:#dc2626}.landing-page .landing-dd.is-invalid .landing-dd-trigger:focus,.landing-page .landing-dd.is-invalid.is-open .landing-dd-trigger{box-shadow:0 0 0 3px #dc26261f}.landing-dd-menu{animation:landing-dd-in .16s ease both;background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 6px #0f1d3a0a,0 16px 40px #0f1d3a24;isolation:isolate;left:0;list-style:none;margin:0;max-height:240px;overflow-y:auto;padding:6px;position:absolute;right:0;top:calc(100% + 6px);z-index:50}@keyframes landing-dd-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}.landing-dd-option{align-items:center;border-radius:8px;color:#0f1d3a;cursor:pointer;display:flex;font-family:Inter,Sora,sans-serif;font-size:14px;font-weight:400;gap:10px;justify-content:space-between;line-height:20px;min-height:42px;padding:10px 12px;transition:background .12s ease,color .12s ease}.landing-dd-option.is-active{background:#f3f7fc}.landing-dd-option.is-selected{background:#eef4fb;color:#1755a6;font-weight:600}.landing-dd-option.is-selected.is-active{background:#e4eefb}.landing-dd-check{align-items:center;background:#1755a61a;border-radius:999px;color:#1755a6;display:inline-flex;flex-shrink:0;height:18px;justify-content:center;width:18px}@media (prefers-reduced-motion:reduce){.landing-dd-chevron,.landing-dd-menu{animation:none!important;transition:none!important}}.landing-demo-form .landing-btn--block{background:#1755a6!important;border-radius:10px;font-family:Sora,sans-serif;font-size:15px;font-weight:700;height:auto;line-height:24px;min-height:50px;padding:13px;width:100%}.landing-demo-form .landing-btn--block:hover{background:#134a8f!important}.landing-demo-form .landing-btn--block:disabled{cursor:not-allowed;opacity:.7}.landing-form-status{font-family:Inter,sans-serif;font-size:13px;font-weight:500;line-height:18px;margin:0;text-align:center}.landing-form-status--success{color:#0f7b5a}.landing-form-status--error{color:#dc2626}.landing-demo-form .landing-form-note{color:#8896bf;font-family:Inter,sans-serif;font-size:11px;font-weight:400;line-height:16.5px;margin:0;text-align:center}.landing-demo-wave{display:block;line-height:0;margin:0;pointer-events:none;position:relative;width:100%;z-index:1}.landing-demo-wave img,.landing-demo-wave svg{display:block;height:140px;max-width:none;width:100%}.landing-footer{align-items:center;background:#fff;border-top:1px solid #dde2f0;display:flex;flex-wrap:wrap;gap:24px;justify-content:space-between;padding:25px 40px 24px}.landing-footer-brand{align-items:center;display:inline-flex;flex-shrink:0;text-decoration:none}.landing-footer-brand img{display:block;height:48px;max-width:280px;object-fit:contain;width:auto}.landing-footer-links{align-items:center;display:flex;flex:1 1 auto;flex-wrap:wrap;gap:28px;justify-content:center;min-width:0}.landing-footer-links button{background:none;border:none;color:#5a6580;cursor:pointer;font-family:Sora,sans-serif;font-size:13px;font-weight:600;line-height:20.8px;padding:0;white-space:nowrap}.landing-footer-links button:hover{color:#1755a6}.landing-footer-copy{color:#8896bf;flex-shrink:0;font-family:Sora,sans-serif;font-size:12px;font-weight:600;line-height:19.2px;margin:0;white-space:nowrap}@media (max-width:1400px){.landing-features-inner{gap:40px;margin-top:40px;width:min(100%,calc(100% - 48px))}.landing-features-row{flex-wrap:wrap;gap:24px;justify-content:center}.landing-feature-card{height:auto;min-height:205px;width:min(400px,calc(50% - 12px))}.landing-features-header h2{font-size:clamp(28px,3.5vw,40px);line-height:1.15}}@media (max-width:1100px){.landing-nav{column-gap:12px;padding:12px 20px}.landing-nav-links{gap:16px}.landing-hero{padding:36px 24px 0}.landing-hero-inner{gap:12px;grid-template-columns:1fr}.landing-hero-copy{align-items:flex-start;margin:0;text-align:left}.landing-orbit{width:min(520px,96vw)}.landing-hero-wave{margin:28px -24px 0;width:calc(100% + 48px)}.landing-hero-wave svg{height:96px}.landing-stats-section{gap:40px;padding:48px 24px}.landing-stats-inner{flex-wrap:wrap;gap:40px 32px}.landing-stat{max-width:320px;min-width:0;width:calc(50% - 16px)}.landing-stat strong{font-size:40px;line-height:48px}.landing-stat span{white-space:normal}.landing-logos{--logo-gap:64px}.landing-who{gap:40px;padding:48px 24px}.landing-who-header h2{font-size:clamp(26px,4vw,30px);line-height:1.25}.landing-who-sub{max-width:640px;white-space:normal}.landing-who-body{flex-direction:column;gap:40px;min-height:0}.landing-who-visual{height:360px;width:min(100%,500px)}.landing-who-visual--shot{height:380px}.landing-who-copy{width:min(100%,560px)}.landing-who-copy h3{font-size:28px;line-height:38px}.landing-steps-grid{gap:28px}}@media (max-width:1024px){.landing-demo{padding:64px 0 0}.landing-demo-heading h2{font-size:clamp(28px,5vw,36px);letter-spacing:-1.2px;line-height:1.25}.landing-demo-heading p{font-size:16px;line-height:26px}.landing-demo-inner{gap:40px;width:min(700px,calc(100% - 48px))}.landing-demo-form{padding:28px 24px 24px}.landing-demo-wave{margin:0}.landing-demo-wave img,.landing-demo-wave svg{height:96px}.landing-footer{gap:16px;padding:24px 28px}.landing-footer-brand img{height:40px;max-width:220px}.landing-steps{padding:64px 24px}.landing-steps-inner{gap:40px}.landing-steps-header h2{font-size:clamp(26px,4vw,30px);line-height:1.3}.landing-steps-grid{gap:32px;grid-template-columns:1fr}.landing-step h3{font-size:20px;line-height:28px}}@media (max-width:900px){.landing-nav{align-items:center;grid-template-areas:"logo toggle";grid-template-columns:minmax(0,1fr) auto;justify-content:space-between;row-gap:0}.landing-nav-toggle{display:inline-flex}.landing-nav-actions,.landing-nav-links{display:none}.landing-nav.is-open{grid-template-areas:"logo toggle" "links links" "actions actions";row-gap:0}.landing-nav.is-open .landing-nav-actions,.landing-nav.is-open .landing-nav-links{display:flex}.landing-nav.is-open .landing-nav-links{align-items:stretch;border-top:1px solid #eef2f7;flex-direction:column;gap:0;margin-top:8px;padding:12px 0 8px}.landing-nav-links button{font-size:16px;font-weight:600;padding:14px 4px;text-align:left;width:100%}.landing-nav.is-open .landing-nav-actions{align-items:stretch;flex-direction:column;gap:10px;padding:4px 0 12px;width:100%}.landing-nav.is-open .landing-nav-actions .landing-btn--primary{font-size:15px;order:1;padding:12px 16px;width:100%}.landing-nav.is-open .landing-nav-actions .landing-btn--text{font-size:15px;order:2;padding:10px 12px;width:100%}.landing-logo img{height:38px;max-width:min(220px,70vw)}}@media (max-width:768px){.landing-nav{padding:10px 16px}.landing-btn--primary{font-size:13px;padding:8px 12px}.landing-btn--text{font-size:13px;padding:8px}.landing-hero{overflow:visible;padding:24px 16px 0}.landing-hero-copy{gap:16px}.landing-hero-copy h1{font-size:clamp(1.75rem,8vw,2.25rem)}.landing-hero-sub{font-size:15px;line-height:1.55}.landing-hero-visual{display:flex;padding:28px 0 20px}.landing-orbit{width:min(480px,calc(100vw - 120px))}.landing-orbit-badge{font-size:12px;gap:5px;padding:7px 11px 7px 9px}.landing-orbit-badge img{height:14px;width:14px}.landing-checklist li{align-items:flex-start;font-size:13px}.landing-hero-wave{margin:20px -16px 0;width:calc(100% + 32px)}.landing-hero-wave svg{height:72px}.landing-stats-section{gap:36px;padding:40px 16px}.landing-stats-inner{flex-direction:column;gap:28px}.landing-stat{max-width:300px;width:100%}.landing-stat strong{font-size:36px;line-height:44px}.landing-trust{gap:12px}.landing-logos{--logo-gap:48px}.landing-logo-item--blinkit .landing-logo-frame{height:28px;width:110px}.landing-logo-item--zepto .landing-logo-frame{height:37px;width:116px}.landing-logo-item--meesho .landing-logo-frame{height:30px;width:116px}.landing-who{gap:32px;padding:40px 16px}.landing-who-header h2{font-size:26px;letter-spacing:-.8px;line-height:34px}.landing-who-sub{font-size:16px;line-height:26px}.landing-tabs{border-radius:99px;display:flex;flex-wrap:nowrap;justify-content:center;max-width:100%;overflow-x:auto;scrollbar-width:none;width:100%}.landing-tabs::-webkit-scrollbar{display:none}.landing-tabs button{flex:1 1;font-size:13px;min-width:0;padding:9px 10px}.landing-who-visual{height:360px;margin:0 auto;width:min(100%,460px)}.landing-who-visual--shot{height:300px}.landing-who-copy{gap:16px;width:100%}.landing-who-copy h3{font-size:24px;line-height:32px}.landing-who-copy>p{font-size:16px;line-height:26px}.landing-features{padding-bottom:56px}.landing-features-inner{gap:32px;margin-top:28px;width:calc(100% - 32px)}.landing-features-wave img{height:32px}.landing-features-header h2{font-size:26px;line-height:34px}.landing-features-header>p{font-size:14px;line-height:22px}.landing-features-row{align-items:stretch;flex-direction:column;gap:16px}.landing-feature-card{height:auto;min-height:0;width:100%}.landing-steps{padding:56px 20px}.landing-steps-header h2{font-size:26px;line-height:34px}.landing-demo{padding:48px 0 0}.landing-demo-inner{gap:28px;width:min(700px,calc(100% - 32px))}.landing-demo-heading h2{font-size:clamp(22px,7vw,28px);letter-spacing:-.8px;line-height:1.25}.landing-demo-heading p{font-size:15px;line-height:24px;opacity:.75}.landing-demo-form{border-radius:16px;gap:16px;padding:24px 16px 20px}.landing-form-grid{gap:14px;grid-template-columns:1fr}.landing-demo-bg:after,.landing-demo-bg:before{border-width:56px;height:640px;left:-380px;top:-280px;width:700px}.landing-demo-wave{margin:0}.landing-demo-wave img,.landing-demo-wave svg{height:72px}.landing-footer{flex-direction:column;gap:20px;padding:24px 20px 32px;text-align:center}.landing-footer-links{flex-wrap:wrap;gap:16px 20px;justify-content:center}.landing-footer-copy{white-space:normal}}@media (max-width:480px){.landing-nav{padding:8px 12px}.landing-logo img{height:34px;max-width:180px}.landing-btn--primary{font-size:12px;padding:8px 10px}.landing-hero{overflow:visible;padding:20px 12px 0}.landing-hero-visual{padding:24px 0 16px}.landing-orbit{width:min(300px,calc(100vw - 96px))}.landing-orbit-badge{font-size:10px;gap:4px;padding:5px 8px 5px 6px}.landing-orbit-badge img{height:11px;width:11px}.landing-hero-cta{align-self:flex-start;justify-content:flex-start;width:auto}.landing-tabs{width:100%}.landing-tabs button{flex:1 1;font-size:12px;min-width:0;padding:8px 6px}.landing-who-visual{height:320px;max-width:none;width:100%}.landing-who-visual--shot{height:260px}.landing-demo-inner{width:calc(100% - 24px)}.landing-footer-brand img{height:36px;max-width:200px}}.advance-page{background:linear-gradient(135deg,#f8fafc,#f1f5f9);display:flex;flex:1 1;flex-direction:column;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;gap:20px;min-height:100vh}.advance-tabs{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000000f;display:flex;gap:4px;padding:4px;width:-webkit-fit-content;width:fit-content}.advance-tab{align-items:center;background:#0000;border:none;border-radius:8px;color:#64748b;cursor:pointer;display:inline-flex;font-family:inherit;font-size:.875rem;font-weight:600;gap:8px;padding:10px 20px;transition:all .2s}.advance-tab:hover{background:#f1f5f9;color:#334155}.advance-tab.active{background:linear-gradient(135deg,#2563eb,#1d4ed8);box-shadow:0 2px 8px #2563eb4d;color:#fff}.advance-tab svg{height:16px;width:16px}.advance-context-line{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#ffffffb3;border-radius:8px;color:#64748b;font-size:.875rem;line-height:1.5;margin:-4px 0 0;max-width:60ch;padding:12px 16px}.advance-page-header{align-items:center;background:#fff;border-radius:16px;box-shadow:0 1px 3px #0000000f;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:8px;padding:20px 24px}.advance-header-left{display:flex;flex-direction:column;gap:6px}.advance-page-title{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#0f172a,#334155);-webkit-background-clip:text;background-clip:text;color:#0f172a;font-size:1.5rem;font-weight:700;letter-spacing:-.02em;margin:0}.advance-page-subtitle{color:#64748b;font-size:.9rem;margin:0}.advance-header-actions{display:flex;flex-wrap:wrap;gap:12px}.btn-primary{overflow:hidden;position:relative;transition:all .2s cubic-bezier(.4,0,.2,1)}.btn-primary:before{background:linear-gradient(90deg,#0000,#fff3,#0000);content:"";height:100%;left:-100%;position:absolute;top:0;transition:left .5s;width:100%}.btn-primary:hover:before{left:100%}.btn-primary:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af)}.btn-primary:active{box-shadow:0 2px 8px #2563eb4d;transform:translateY(0)}.btn-secondary{transition:all .2s cubic-bezier(.4,0,.2,1)}.btn-secondary:hover{box-shadow:0 2px 8px #00000014;transform:translateY(-1px)}.advance-summary-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:8px}@media (max-width:1200px){.advance-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:640px){.advance-summary-grid{grid-template-columns:1fr}}.advance-summary-grid--admin{grid-template-columns:repeat(4,minmax(0,1fr))}@media (max-width:1400px){.advance-summary-grid--admin{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (max-width:900px){.advance-summary-grid--admin{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:480px){.advance-summary-grid--admin{grid-template-columns:1fr}}.admin-tile-sub{color:#64748b;font-size:.72rem;font-weight:500;margin-top:6px}.advance-stats-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:20px}.stat-card{background:#fff;border:1px solid #e8edf3;border-radius:14px;box-shadow:0 2px 8px #0f172a0f;overflow:hidden;padding:20px;position:relative;transition:all .2s ease}.stat-card:before{background:linear-gradient(90deg,#2563eb,#7c3aed);content:"";height:3px;left:0;opacity:0;position:absolute;right:0;top:0;transition:opacity .2s}.stat-card:hover{box-shadow:0 4px 16px #0f172a1a;transform:translateY(-2px)}.stat-card:hover:before{opacity:1}.stat-item{display:flex;flex-direction:column;gap:8px}.stat-label{color:#64748b;font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.stat-value{color:#0f172a;font-size:1.75rem;font-weight:700;line-height:1}.advance-filter-bar{background:#fff;border:1px solid #e8edf3;border-radius:14px;box-shadow:0 2px 8px #0f172a0a;display:flex;flex-wrap:wrap;gap:20px;margin-bottom:12px;padding:20px 24px}.filter-group{display:flex;flex:1 1;flex-direction:column;gap:6px;min-width:180px}.filter-select{-webkit-appearance:none;appearance:none;background:#fff;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%2364748b' d='M6 8 1 3h10z'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;border:1px solid #d1d9e6;border-radius:8px;color:#0f172a;cursor:pointer;font-family:inherit;font-size:.875rem;outline:none;padding:10px 14px;transition:all .2s}.filter-select:hover{border-color:#94a3b8}.filter-select:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.advance-card{background:#fff;border:1px solid #e8edf3;border-radius:16px;box-shadow:0 2px 12px #0f172a0f;padding:24px;transition:all .2s ease}.advance-card:hover{box-shadow:0 4px 20px #0f172a14}.advance-card h3{align-items:center;border-bottom:2px solid #f1f5f9;color:#0f172a;display:flex;font-size:1.125rem;font-weight:700;gap:10px;margin:0 0 20px;padding-bottom:12px}.advance-table{border-collapse:initial;border-spacing:0;font-size:.875rem;width:100%}.advance-table th{background:#f8fafc;border-bottom:2px solid #e2e8f0;color:#64748b;font-size:.75rem;font-weight:600;letter-spacing:.05em;padding:14px 12px;text-align:left;text-transform:uppercase;white-space:nowrap}.advance-table td{border-bottom:1px solid #f1f5f9;color:#334155;padding:16px 12px;text-align:left;vertical-align:middle}.advance-table tbody tr{transition:all .2s ease}.advance-table tbody tr:hover{background:#f8fafc;box-shadow:0 2px 8px #0000000a}.advance-modal-overlay{align-items:center;animation:fadeIn .2s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0009;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.advance-modal{animation:modalSlideIn .3s cubic-bezier(.4,0,.2,1);background:#fff;border-radius:20px;box-shadow:0 25px 50px #00000040;max-height:90vh;max-width:600px;overflow-y:auto;width:100%}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.advance-modal-header{align-items:center;background:#fff;border-bottom:2px solid #f1f5f9;border-radius:20px 20px 0 0;display:flex;justify-content:space-between;padding:24px;position:-webkit-sticky;position:sticky;top:0;z-index:10}.advance-modal-header h3{align-items:center;color:#0f172a;display:flex;font-size:1.25rem;font-weight:700;gap:12px;margin:0}.advance-modal-close{align-items:center;background:#f1f5f9;border:none;border-radius:8px;color:#64748b;cursor:pointer;display:flex;height:36px;justify-content:center;padding:8px;transition:all .2s;width:36px}.advance-modal-close:hover{background:#e2e8f0;color:#0f172a;transform:rotate(90deg)}.advance-modal-body{padding:24px}.advance-modal-footer{background:#fff;border-radius:0 0 20px 20px;border-top:2px solid #f1f5f9;bottom:0;box-shadow:0 -4px 12px #0000000a;display:flex;gap:12px;justify-content:flex-end;padding:20px 24px;position:-webkit-sticky;position:sticky}.form-group{display:flex;flex-direction:column;gap:8px;margin-bottom:20px}.form-group label{color:#334155;font-size:.875rem;font-weight:600}.form-control{background:#fff;border:1.5px solid #d1d9e6;border-radius:10px;box-sizing:border-box;color:#0f172a;font-family:inherit;font-size:.875rem;min-height:44px;outline:none;padding:10px 14px;transition:all .2s cubic-bezier(.4,0,.2,1);width:100%}.form-control:hover{border-color:#94a3b8}.form-control:focus{border-color:#2563eb;box-shadow:0 0 0 4px #2563eb1a;transform:translateY(-1px)}.form-control--textarea{line-height:1.6;min-height:100px;resize:vertical}.advance-status{align-items:center;border-radius:999px;display:inline-flex;font-size:.75rem;font-weight:600;gap:4px;letter-spacing:.02em;padding:6px 12px;text-transform:capitalize}.advance-status.pending{background:linear-gradient(135deg,#fef3c7,#fde68a);box-shadow:0 2px 4px #f59e0b33;color:#92400e}.advance-status.approved{background:linear-gradient(135deg,#d1fae5,#a7f3d0);box-shadow:0 2px 4px #10b98133;color:#065f46}.advance-status.rejected{background:linear-gradient(135deg,#fee2e2,#fecaca);box-shadow:0 2px 4px #ef444433;color:#991b1b}.advance-status.partially-paid{background:linear-gradient(135deg,#dbeafe,#bfdbfe);box-shadow:0 2px 4px #3b82f633;color:#1e40af}.advance-status.fully-paid{background:linear-gradient(135deg,#dcfce7,#bbf7d0);box-shadow:0 2px 4px #22c55e33;color:#14532d}.advance-status.cancelled{background:linear-gradient(135deg,#f1f5f9,#e2e8f0);box-shadow:0 2px 4px #64748b33;color:#475569}.action-btn{font-size:.8rem;gap:7px;letter-spacing:.02em;min-height:40px;min-width:100px;padding:10px 16px}.action-btn:hover{box-shadow:0 5px 14px #0000002e;transform:translateY(-2px)}.action-btn:active{box-shadow:none;transform:translateY(0)}.approve-btn{background:linear-gradient(135deg,#10b981,#059669);color:#fff}.reject-btn{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff}.payment-btn{align-items:center;background:linear-gradient(135deg,#3b82f6,#2563eb);border:none;border-radius:8px;box-sizing:border-box;color:#fff;cursor:pointer;display:inline-flex;flex-shrink:0;font-size:.85rem;font-weight:600;gap:8px;justify-content:center;min-height:46px;min-width:130px;padding:12px 22px;white-space:nowrap}.cancel-btn{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff}.action-btn svg{flex-shrink:0;height:16px;width:16px}@media (max-width:768px){.advance-page{gap:16px;padding:16px}.advance-page-header{align-items:stretch;flex-direction:column;padding:16px}.advance-header-actions{width:100%}.advance-header-actions .btn-primary,.advance-header-actions .btn-secondary{flex:1 1;justify-content:center}.advance-card{border-radius:12px;padding:16px}.advance-modal{border-radius:16px;margin:10px;max-height:95vh;max-width:100%}.advance-modal-body{padding:16px}.advance-filter-bar{flex-direction:column;padding:16px}.filter-group{min-width:100%}.advance-table{font-size:.8rem}.advance-table td,.advance-table th{padding:10px 8px}}@media (max-width:480px){.advance-stats-grid{grid-template-columns:1fr}.advance-modal-footer{flex-direction:column}.advance-modal-footer .btn-primary,.advance-modal-footer .btn-secondary{justify-content:center;width:100%}.stat-value{font-size:1.5rem}}.advance-modal::-webkit-scrollbar{width:8px}.advance-modal::-webkit-scrollbar-track{background:#f1f5f9;border-radius:4px}.advance-modal::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px;-webkit-transition:background .2s;transition:background .2s}.advance-modal::-webkit-scrollbar-thumb:hover{background:#94a3b8}.priority-urgent{animation:pulse-urgent 2s ease-in-out infinite;box-shadow:0 0 0 #ef444466}@keyframes pulse-urgent{0%,to{box-shadow:0 0 0 0 #ef444466;opacity:1}50%{box-shadow:0 0 0 10px #ef444400;opacity:.8}}.advance-loading{align-items:center;color:#64748b;display:flex;font-size:.875rem;justify-content:center;padding:40px}.advance-loading:after{animation:spin .8s linear infinite;border:2px solid #e2e8f0;border-radius:50%;border-top-color:#2563eb;content:"";height:20px;margin-left:12px;width:20px}@keyframes spin{to{transform:rotate(1turn)}}.alf-modal-overlay{align-items:center;animation:alfFadeIn .2s ease;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#0009;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1000}@keyframes alfFadeIn{0%{opacity:0}to{opacity:1}}.alf-modal{animation:alfSlideIn .3s cubic-bezier(.4,0,.2,1);background:#fff;border-radius:20px;box-shadow:0 25px 50px #00000040;max-height:90vh;max-width:600px;overflow-y:auto;width:100%}@keyframes alfSlideIn{0%{opacity:0;transform:translateY(30px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.alf-modal-header{align-items:center;background:linear-gradient(135deg,#2563eb,#1d4ed8);border-radius:20px 20px 0 0;display:flex;justify-content:space-between;padding:24px;position:-webkit-sticky;position:sticky;top:0;z-index:10}.alf-header-content{align-items:center;display:flex;gap:16px}.alf-header-icon{background:#fff3;border-radius:12px;height:48px;justify-content:center;width:48px}.alf-header-icon,.alf-title{align-items:center;color:#fff;display:flex}.alf-title{flex-wrap:wrap;font-size:1.25rem;font-weight:700;gap:12px;margin:0}.alf-subtitle{color:#ffffffe6;font-size:.875rem;margin:4px 0 0}.alf-emergency-badge,.emergency-badge{align-items:center;animation:alfPulse 2s ease-in-out infinite;background:#ef4444e6;border-radius:999px;color:#fff;display:inline-flex;font-size:.7rem;font-weight:600;gap:4px;letter-spacing:.04em;padding:4px 10px;text-transform:uppercase}@keyframes alfPulse{0%,to{opacity:1}50%{opacity:.8}}.alf-close-btn{align-items:center;background:#fff3;border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;height:36px;justify-content:center;padding:8px;transition:all .2s;width:36px}.alf-close-btn:hover{background:#ffffff4d;transform:rotate(90deg)}.alf-modal-body{padding:24px}.alf-form{gap:20px}.alf-form,.alf-form-group{display:flex;flex-direction:column}.alf-form-group{gap:8px}.alf-label{color:#334155;font-size:.875rem;font-weight:600}.alf-input{background:#fff;border:1.5px solid #d1d9e6;border-radius:10px;box-sizing:border-box;color:#0f172a;font-family:inherit;font-size:.875rem;min-height:44px;outline:none;padding:10px 14px;transition:all .2s cubic-bezier(.4,0,.2,1);width:100%}.alf-input:hover{border-color:#94a3b8}.alf-input:focus{border-color:#2563eb;box-shadow:0 0 0 4px #2563eb1a;transform:translateY(-1px)}.alf-input.alf-error{border-color:#ef4444}.alf-input.alf-error:focus{box-shadow:0 0 0 4px #ef44441a}.alf-textarea{font-family:inherit;line-height:1.6;min-height:100px;resize:vertical}.alf-input-wrapper{position:relative}.alf-input-prefix{color:#64748b;font-weight:600;left:14px;pointer-events:none;position:absolute;top:50%;transform:translateY(-50%)}.alf-input-with-prefix{padding-left:32px}.alf-error-text{color:#ef4444;font-size:.75rem;font-weight:500}.alf-radio-cards{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.alf-radio-card{cursor:pointer;position:relative}.alf-radio-card input[type=radio]{cursor:pointer;height:100%;opacity:0;position:absolute;width:100%}.alf-radio-card-content{border:2px solid #e2e8f0;border-radius:12px;display:flex;flex-direction:column;gap:4px;padding:16px;transition:all .2s}.alf-radio-card-content strong{color:#0f172a;font-size:.875rem}.alf-radio-card-content small{color:#64748b;font-size:.75rem}.alf-radio-card.active .alf-radio-card-content{background:#eff6ff;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a}.alf-radio-card.active .alf-radio-card-content strong{color:#2563eb}.alf-radio-options{display:flex;flex-direction:column;gap:12px;padding:4px 0}.alf-radio-option{align-items:center;border:1.5px solid #e2e8f0;border-radius:8px;cursor:pointer;display:flex;gap:10px;padding:12px;transition:all .2s}.alf-radio-option:hover{background:#f8fafc;border-color:#94a3b8}.alf-radio-option input[type=radio]{accent-color:#2563eb;cursor:pointer;height:18px;width:18px}.alf-radio-option span{color:#334155;font-size:.875rem}.alf-radio-option.disabled{cursor:not-allowed;opacity:.5}.alf-checkbox{align-items:center;border:1.5px solid #e2e8f0;border-radius:8px;cursor:pointer;display:flex;gap:10px;padding:12px;transition:all .2s}.alf-checkbox:hover{background:#f8fafc;border-color:#94a3b8}.alf-checkbox input[type=checkbox]{accent-color:#2563eb;cursor:pointer;height:18px;width:18px}.alf-checkbox-text{color:#334155;font-size:.875rem}.alf-modal-footer{background:#fff;border-radius:0 0 20px 20px;border-top:2px solid #f1f5f9;bottom:0;box-shadow:0 -4px 12px #0000000a;display:flex;gap:12px;justify-content:flex-end;padding:20px 24px;position:-webkit-sticky;position:sticky}.alf-btn-primary,.alf-btn-secondary{align-items:center;border-radius:10px;cursor:pointer;display:inline-flex;font-family:inherit;font-size:.875rem;font-weight:600;gap:8px;justify-content:center;line-height:1;min-height:44px;padding:10px 20px;transition:all .25s cubic-bezier(.4,0,.2,1)}.alf-btn-primary{background:linear-gradient(135deg,#2563eb,#1d4ed8);border:2px solid #2563eb;box-shadow:0 4px 12px #2563eb4d;color:#fff}.alf-btn-primary:hover{background:linear-gradient(135deg,#1d4ed8,#1e40af);border-color:#1e40af;box-shadow:0 6px 20px #2563eb66;transform:translateY(-2px)}.alf-btn-secondary{background:#fff;border:2px solid #e2e8f0;color:#334155}.alf-btn-secondary:hover{background:#f8fafc;border-color:#cbd5e1;box-shadow:0 4px 12px #00000014;transform:translateY(-2px)}@media (max-width:768px){.alf-modal{border-radius:16px;margin:10px;max-height:95vh;max-width:100%}.alf-modal-body,.alf-modal-header{padding:16px}.alf-modal-footer{flex-direction:column;padding:16px}.alf-btn-primary,.alf-btn-secondary{justify-content:center;width:100%}.alf-radio-cards{grid-template-columns:1fr}}.alf-modal::-webkit-scrollbar{width:8px}.alf-modal::-webkit-scrollbar-track{background:#f1f5f9;border-radius:4px}.alf-modal::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}.alf-modal::-webkit-scrollbar-thumb:hover{background:#94a3b8}.detail-modal{max-width:800px}.detail-summary-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(3,1fr);margin-bottom:24px}.detail-summary-card{background:linear-gradient(135deg,#f8fafc,#f1f5f9);border:1px solid #e2e8f0;border-radius:12px;padding:16px;text-align:center}.detail-summary-label{color:#64748b;font-size:.75rem;font-weight:600;letter-spacing:.05em;margin-bottom:8px;text-transform:uppercase}.detail-summary-value{color:#0f172a;font-size:1.25rem;font-weight:700}.detail-summary-value.highlight{color:#2563eb}.detail-summary-value.paid{color:#059669}.detail-summary-value.remaining{color:#dc2626}.detail-section{border-bottom:1px solid #f1f5f9;margin-bottom:24px;padding-bottom:24px}.detail-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.detail-section h4{align-items:center;color:#334155;display:flex;font-size:.875rem;font-weight:700;gap:8px;margin:0 0 16px}.detail-info-grid{grid-gap:12px 24px;display:grid;gap:12px 24px;grid-template-columns:repeat(2,1fr)}.detail-info-row{display:flex;flex-direction:column;gap:4px}.detail-info-label{color:#64748b;font-size:.7rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.detail-info-value{color:#0f172a;font-size:.875rem;font-weight:500}.detail-payment-table-wrapper{overflow-x:auto}.detail-payment-table{border-collapse:initial;border-spacing:0;font-size:.8rem;width:100%}.detail-payment-table th{background:#f8fafc;border-bottom:2px solid #e2e8f0;color:#64748b;font-size:.7rem;font-weight:600;letter-spacing:.05em;padding:12px 10px;text-align:left;text-transform:uppercase;white-space:nowrap}.detail-payment-table td{border-bottom:1px solid #f1f5f9;color:#334155;padding:12px 10px;vertical-align:middle}.detail-payment-table tbody tr:hover{background:#f8fafc}.amount-cell{font-family:SF Mono,Fira Code,monospace;font-weight:600}.method-badge{background:#e0e7ff;color:#3730a3;letter-spacing:.02em;text-transform:uppercase}.method-badge,.schedule-status{align-items:center;border-radius:6px;display:inline-flex;font-size:.7rem;font-weight:600;padding:4px 8px}.schedule-status{text-transform:capitalize}.schedule-status.pending{background:#fef3c7;color:#92400e}.schedule-status.paid{background:#d1fae5;color:#065f46}.schedule-status.partially_paid{background:#dbeafe;color:#1e40af}.detail-empty{color:#64748b;font-size:.875rem;padding:32px;text-align:center}.detail-comments{display:flex;flex-direction:column;gap:12px}.detail-comment{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:16px}.detail-comment-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.detail-comment-author{color:#334155;font-size:.75rem;font-weight:600}.detail-comment-date{color:#94a3b8;font-size:.7rem}.detail-comment-text{color:#0f172a;font-size:.875rem;line-height:1.6}.view-btn{font-size:.85rem;gap:8px;min-height:46px;min-width:130px;padding:12px 22px}.view-btn:hover{background:linear-gradient(135deg,#4f46e5,#4338ca);box-shadow:0 5px 14px #4f46e540;transform:translateY(-2px)}.advance-error,.loan-config-error{align-items:center;background:linear-gradient(135deg,#fef2f2,#fee2e2);border:1px solid #fecaca;border-left:4px solid #dc2626;border-radius:12px;color:#dc2626;display:flex;font-size:.875rem;font-weight:600;gap:10px;padding:14px 20px}.loan-config-error{margin-bottom:16px}.form-error{color:#dc2626;display:block;font-size:.75rem;font-weight:500;margin-top:4px}.advance-payroll-warning{align-items:center;background:linear-gradient(135deg,#fef2f2,#fee2e2);border:1px solid #ef4444;border-radius:12px;color:#991b1b;display:flex;font-size:.875rem;font-weight:500;gap:12px;padding:14px 20px}.form-hint{color:#64748b;font-size:.7rem;margin-top:2px}.form-interest-alert{align-items:center;background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #f59e0b;border-radius:10px;color:#92400e;display:flex;font-size:.8rem;font-weight:600;gap:8px;padding:10px 14px}.awaiting-text{background:#fffbeb;border-radius:999px;color:#f59e0b;font-size:.7rem;font-weight:600;padding:4px 10px;white-space:nowrap}.view-breakup-btn-inline{background:none;border:none;border-bottom:1px dashed #06c;color:#06c;cursor:pointer;display:inline;font-size:inherit;font-weight:700;margin-left:4px;padding:0;transition:color .15s;vertical-align:initial}.view-breakup-btn-inline:hover{border-bottom-color:#0052a3;color:#0052a3}.breakdown-preview{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;margin-top:8px;padding:16px}.breakdown-preview h4{color:#334155;font-size:.875rem;font-weight:700;margin:0 0 12px}.breakdown-table{overflow-x:auto}.breakdown-table table{border-collapse:initial;border-spacing:0;font-size:.8rem;width:100%}.breakdown-table th{background:#e2e8f0;border-bottom:2px solid #cbd5e1;color:#64748b;font-size:.7rem;font-weight:600;letter-spacing:.05em;padding:8px 10px;text-align:left;text-transform:uppercase}.breakdown-table td{border-bottom:1px solid #f1f5f9;color:#334155;padding:8px 10px}.breakdown-total{border-top:2px solid #e2e8f0;color:#0f172a;font-size:.9rem;margin-top:12px;padding-top:12px;text-align:right}.loan-config-page{background:linear-gradient(135deg,#f8fafc,#f1f5f9);display:flex;flex:1 1;flex-direction:column;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;gap:20px;min-height:100vh;padding:20px}.loan-config-header{align-items:center;background:#fff;border-radius:16px;box-shadow:0 1px 3px #0000000f;display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;padding:20px 24px}.loan-config-title{color:#0f172a;font-size:1.5rem;font-weight:700;margin:0}.loan-config-subtitle{color:#64748b;font-size:.9rem;margin:4px 0 0}.loan-config-header-actions{display:flex;flex-wrap:wrap;gap:12px}.loan-config-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(380px,1fr))}.lcfg-card{background:#fff;border:1px solid #e8edf3;border-radius:16px;box-shadow:0 1px 3px #0f172a0f;display:flex;flex-direction:column;overflow:hidden;transition:box-shadow .2s ease,transform .2s ease}.lcfg-card:hover{box-shadow:0 8px 24px #0f172a14}.lcfg-card-head{align-items:center;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-bottom:1px solid #f1f5f9;display:flex;gap:14px;padding:18px 20px}.lcfg-card-icon{align-items:center;border-radius:12px;box-shadow:0 4px 10px #0f172a1f;color:#fff;display:flex;flex-shrink:0;height:44px;justify-content:center;width:44px}.lcfg-card-icon.blue{background:linear-gradient(135deg,#3b82f6,#1d4ed8)}.lcfg-card-icon.green{background:linear-gradient(135deg,#10b981,#059669)}.lcfg-card-icon.orange{background:linear-gradient(135deg,#f59e0b,#d97706)}.lcfg-card-head-text{display:flex;flex-direction:column;gap:2px}.lcfg-card-title{color:#0f172a;font-size:1.05rem;font-weight:700;margin:0}.lcfg-card-sub{color:#64748b;font-size:.8rem;margin:0}.lcfg-card-body{flex:1 1;padding:20px}.loan-config-section{display:flex;flex-direction:column;gap:16px}.loan-config-group{display:flex;flex-direction:column;gap:6px}.loan-config-group+.loan-config-group{border-top:1px dashed #e2e8f0;padding-top:16px}.loan-config-group label{color:#334155;font-size:.875rem;font-weight:600}.loan-input{background:#fff;border:1.5px solid #d1d9e6;border-radius:10px;box-sizing:border-box;color:#0f172a;font-family:inherit;font-size:.875rem;min-height:44px;outline:none;padding:10px 14px;transition:all .2s;width:100%}.loan-input:focus{border-color:#2563eb;box-shadow:0 0 0 4px #2563eb1a}.loan-input:disabled{background:#f1f5f9;color:#94a3b8;cursor:not-allowed}.loan-input-wrapper{align-items:center;display:flex;position:relative}.loan-input-wrapper .loan-input{padding-right:60px}.loan-input-suffix{align-items:center;color:#64748b;display:flex;font-weight:600;pointer-events:none;position:absolute;right:14px}.loan-hint{color:#94a3b8;font-size:.7rem}.loan-checkbox{align-items:center;border:1.5px solid #e2e8f0;border-radius:8px;color:#334155;cursor:pointer;display:flex;font-size:.875rem;gap:10px;min-height:44px;padding:8px 12px;transition:all .2s}.loan-checkbox:hover{background:#f8fafc;border-color:#94a3b8}.loan-checkbox input[type=checkbox]{accent-color:#2563eb;cursor:pointer;height:18px;width:18px}.loan-config-loading{align-items:center;color:#64748b;display:flex;flex-direction:column;font-size:1rem;gap:16px;justify-content:center;padding:80px 20px}.loan-config-spinner{animation:loanConfigSpin .8s linear infinite;border:4px solid #e2e8f0;border-radius:50%;border-top-color:#2563eb;height:40px;width:40px}@keyframes loanConfigSpin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.btn-secondary{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:10px;color:#334155;cursor:pointer;display:inline-flex;font-family:inherit;font-size:.875rem;font-weight:600;gap:8px;padding:10px 20px;transition:all .2s}.btn-secondary:hover{background:#f8fafc;border-color:#cbd5e1}.btn-secondary:disabled{cursor:not-allowed;opacity:.6}.loan-save-btn{justify-content:center;min-width:190px}.loan-save-spinner{animation:loanConfigSpin .7s linear infinite;border:2px solid #cbd5e1;border-radius:50%;border-top-color:#2563eb;height:16px;width:16px}.loan-config-success{background:linear-gradient(135deg,#ecfdf5,#d1fae5);border:1px solid #6ee7b7;border-left:4px solid #059669;border-radius:12px;box-shadow:0 2px 8px #05966914;color:#047857;display:flex;gap:10px;padding:14px 20px}.btn-primary,.loan-config-success{align-items:center;font-size:.875rem;font-weight:600}.btn-primary{background:linear-gradient(135deg,#2563eb,#1d4ed8);border:none;border-radius:10px;box-shadow:0 4px 12px #2563eb4d;color:#fff;cursor:pointer;display:inline-flex;font-family:inherit;gap:8px;padding:10px 20px;transition:all .2s}.btn-primary:hover{box-shadow:0 6px 20px #2563eb66;transform:translateY(-2px)}.btn-primary:disabled{cursor:not-allowed;opacity:.6;transform:none}.advance-actions{align-items:center;display:flex;flex-wrap:wrap;gap:8px;row-gap:10px}.advance-actions-cell{align-items:center;display:flex;gap:10px}.advance-menu-wrap{display:inline-flex;position:relative;z-index:10}.advance-menu-wrap.open{z-index:100}.advance-menu-trigger{align-items:center;background:#0000;border:none;border-radius:8px;color:#64748b;cursor:pointer;display:inline-flex;height:34px;justify-content:center;transition:all .15s ease;width:34px}.advance-menu-trigger:hover{background:#f1f5f9;border:1px solid #e2e8f0;color:#0f172a}.advance-dropdown{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 8px 24px #0f172a24;display:flex;flex-direction:column;gap:2px;min-width:190px;padding:6px;position:absolute;right:0;top:calc(100% + 6px);z-index:9999}.advance-dropdown-item{align-items:center;background:#0000;border:none;border-radius:8px;color:#334155;cursor:pointer;display:flex;font-family:inherit;font-size:.85rem;font-weight:500;gap:10px;padding:9px 12px;text-align:left;transition:background .12s ease;width:100%}.advance-dropdown-item:hover{background:#f8fafc}.advance-dropdown-item svg{flex-shrink:0}.advance-dropdown-item.menu-approve{color:#059669}.advance-dropdown-item.menu-approve:hover{background:#ecfdf5}.advance-dropdown-item.menu-reject{color:#dc2626}.advance-dropdown-item.menu-reject:hover{background:#fef2f2}.advance-dropdown-item.menu-cancel{color:#d97706}.advance-dropdown-item.menu-cancel:hover{background:#fffbeb}.advance-dropdown-item.menu-view{color:#4f46e5}.advance-dropdown-item.menu-view:hover{background:#eef2ff}.action-btn{align-items:center;border:none;border-radius:8px;box-sizing:border-box;cursor:pointer;display:inline-flex;flex-shrink:0;font-family:inherit;font-size:.78rem;font-weight:600;gap:6px;justify-content:center;line-height:1.2;min-height:36px;min-width:96px;padding:8px 14px;transition:transform .2s ease,box-shadow .2s ease,opacity .2s ease;white-space:nowrap}.action-btn:disabled{box-shadow:none;cursor:not-allowed;opacity:.6;transform:none}.view-btn{align-items:center;background:linear-gradient(135deg,#6366f1,#4f46e5);border:none;border-radius:8px;box-sizing:border-box;color:#fff;cursor:pointer;display:inline-flex;flex-shrink:0;font-family:inherit;font-size:.8rem;font-weight:600;gap:6px;justify-content:center;min-height:36px;min-width:90px;padding:8px 14px;transition:all .2s ease;white-space:nowrap}.alf-hint-text{color:#64748b;font-size:.7rem;margin-top:2px}.alf-interest-info{background:linear-gradient(135deg,#fef3c7,#fde68a);border:1px solid #f59e0b;border-radius:10px;margin-top:4px;padding:12px 16px}.alf-interest-badge{color:#92400e;font-size:.8rem;font-weight:600}.alf-breakdown-preview{background:#f8fafc;border:1px solid #e2e8f0;border-radius:12px;margin-top:8px;padding:16px}.alf-breakdown-preview h4{color:#334155;font-size:.875rem;font-weight:700;margin:0 0 12px}.alf-breakdown-table{overflow-x:auto}.alf-breakdown-table table{border-collapse:initial;border-spacing:0;font-size:.8rem;width:100%}.alf-breakdown-table th{background:#e2e8f0;border-bottom:2px solid #cbd5e1;color:#64748b;font-size:.7rem;font-weight:600;letter-spacing:.05em;padding:8px 10px;text-align:left;text-transform:uppercase}.alf-breakdown-table td{border-bottom:1px solid #f1f5f9;color:#334155;padding:8px 10px}.alf-breakdown-total{border-top:2px solid #e2e8f0;color:#0f172a;font-size:.9rem;margin-top:12px;padding-top:12px;text-align:right}.modal-message-text{color:#334155;line-height:1.5;margin:0 0 12px}.request-summary-block{background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;display:flex;flex-direction:column;gap:6px;margin:0 0 14px;padding:12px 14px}.request-summary-row{grid-gap:10px;align-items:baseline;display:grid;font-size:.85rem;gap:10px;grid-template-columns:140px 1fr}.request-summary-row--highlight{background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;margin-top:2px;padding:6px 8px}.request-summary-row--highlight .rs-value{color:#1d4ed8;font-weight:700}.rs-label{color:#64748b;font-weight:600}.rs-value{color:#0f172a;font-weight:500;word-break:break-word}.repayment-btn{background:#eff6ff!important;border:1px solid #bfdbfe!important;color:#1d4ed8!important}.repayment-btn:hover{background:#dbeafe!important}.payment-request-info{grid-gap:12px;background:linear-gradient(135deg,#f8fafc,#eff6ff);border:1px solid #e2e8f0;border-radius:12px;display:grid;gap:12px;grid-template-columns:repeat(2,1fr);margin-bottom:18px;padding:16px}.info-item{background:#fff;border:1px solid #e8edf3;border-radius:10px;box-shadow:0 1px 2px #0f172a0a;display:flex;flex-direction:column;gap:4px;padding:10px 12px}.info-label{color:#64748b;font-size:.7rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.info-value{color:#0f172a;font-size:.95rem;font-weight:700;word-break:break-word}.info-item-remaining{background:linear-gradient(135deg,#eff6ff,#dbeafe);border-color:#bfdbfe}.info-item-remaining .info-value{color:#1d4ed8}.info-value.highlight{font-size:1.05rem}@media (max-width:520px){.payment-request-info{gap:8px;grid-template-columns:1fr}}.emi-list{display:flex;flex-direction:column;gap:8px;margin-top:4px}.emi-item{align-items:center;background:#fff;border:1.5px solid #e5e7eb;border-radius:8px;color:#111827;cursor:pointer;display:flex;font-family:inherit;font-size:.875rem;justify-content:space-between;padding:10px 12px;transition:all .15s ease;width:100%}.emi-item:hover{background:#f8fafc;border-color:#93c5fd}.emi-item.selected{background:#eff6ff;border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1f}.emi-month{color:#374151;font-weight:600}.emi-amount{color:#2563eb;font-weight:700}.rejection-reason{background:#fee2e2;border:1px solid #fecaca;border-radius:6px;color:#b91c1c;display:block;font-size:.75rem;margin-top:4px;max-width:220px;padding:3px 6px;white-space:normal}
/*# sourceMappingURL=main.ae797288.css.map*/