.layout{display:flex;min-height:100vh;background-color:var(--gray-50)}.sidebar{width:var(--sidebar-width);background:linear-gradient(180deg,var(--primary-blue) 0%,#1e40af 100%);color:var(--white);display:flex;flex-direction:column;position:fixed;height:100vh;z-index:100;transition:width var(--transition-base)}.sidebar-header{padding:var(--spacing-6);border-bottom:1px solid rgba(255,255,255,.1);display:flex;align-items:center;justify-content:space-between}.logo{display:flex;align-items:center;gap:var(--spacing-3)}.logo-icon{width:48px;height:48px;background:var(--accent-yellow);border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center;color:var(--primary-blue)}.logo-text{display:flex;flex-direction:column}.logo-title{font-size:var(--font-size-xl);font-weight:700;line-height:1}.logo-subtitle{font-size:var(--font-size-xs);opacity:.8;text-transform:uppercase;letter-spacing:.1em}.sidebar-toggle{background:none;border:none;color:var(--white);cursor:pointer;padding:var(--spacing-2);border-radius:var(--radius-md);transition:background var(--transition-fast)}.sidebar-toggle:hover{background:#ffffff1a}.sidebar-nav{flex:1;padding:var(--spacing-4);overflow-y:auto}.nav-link{display:flex;align-items:center;gap:var(--spacing-3);padding:var(--spacing-3) var(--spacing-4);color:#fffc;text-decoration:none;border-radius:var(--radius-lg);margin-bottom:var(--spacing-1);transition:all var(--transition-fast)}.nav-link:hover{background:#ffffff1a;color:var(--white)}.nav-link.active{background:var(--accent-yellow);color:var(--primary-blue);font-weight:600}.sidebar-footer{padding:var(--spacing-4);border-top:1px solid rgba(255,255,255,.1)}.user-info{display:flex;align-items:center;gap:var(--spacing-3)}.user-avatar{width:40px;height:40px;background:#fff3;border-radius:50%;display:flex;align-items:center;justify-content:center}.user-details{display:flex;flex-direction:column}.user-name{font-weight:600;font-size:var(--font-size-sm)}.user-role{font-size:var(--font-size-xs);opacity:.7;text-transform:capitalize}.main-content{flex:1;margin-left:var(--sidebar-width);display:flex;flex-direction:column;transition:margin-left var(--transition-base)}.header{background:var(--white);border-bottom:1px solid var(--gray-200);padding:var(--spacing-4) var(--spacing-6);display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:50}.header-left{display:flex;align-items:center;gap:var(--spacing-4)}.menu-btn{display:none;background:none;border:none;cursor:pointer;padding:var(--spacing-2);border-radius:var(--radius-md)}.menu-btn:hover{background:var(--gray-100)}.page-title{font-size:var(--font-size-xl);font-weight:600;color:var(--gray-900)}.header-right{display:flex;align-items:center;gap:var(--spacing-4)}.notification-btn{position:relative;background:none;border:none;cursor:pointer;padding:var(--spacing-2);border-radius:var(--radius-md);color:var(--gray-600)}.notification-btn:hover{background:var(--gray-100)}.notification-badge{position:absolute;top:0;right:0;width:18px;height:18px;background:var(--error);color:var(--white);font-size:10px;font-weight:600;border-radius:50%;display:flex;align-items:center;justify-content:center}.profile-dropdown{position:relative}.profile-btn{display:flex;align-items:center;gap:var(--spacing-2);background:none;border:none;cursor:pointer;padding:var(--spacing-2);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:500;color:var(--gray-700)}.profile-btn:hover{background:var(--gray-100)}.profile-avatar{width:32px;height:32px;background:var(--primary-blue);color:var(--white);border-radius:50%;display:flex;align-items:center;justify-content:center}.dropdown-menu{position:absolute;top:100%;right:0;margin-top:var(--spacing-2);background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);min-width:180px;overflow:hidden}.dropdown-item{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-3) var(--spacing-4);color:var(--gray-700);text-decoration:none;font-size:var(--font-size-sm);transition:background var(--transition-fast);width:100%;background:none;border:none;cursor:pointer;text-align:left}.dropdown-item:hover{background:var(--gray-50)}.dropdown-item.logout{color:var(--error)}.page-content{flex:1;padding:var(--spacing-6);overflow-y:auto}@media (max-width: 1024px){.sidebar{transform:translate(-100%)}.sidebar-open .sidebar{transform:translate(0)}.main-content{margin-left:0}.menu-btn{display:block}.sidebar-toggle{display:none}}@media (max-width: 640px){.page-content{padding:var(--spacing-4)}.header{padding:var(--spacing-3) var(--spacing-4)}.page-title{font-size:var(--font-size-lg)}}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--primary-blue) 0%,#1e40af 50%,var(--primary-blue-dark) 100%);padding:var(--spacing-4)}.login-container{display:grid;grid-template-columns:1fr 1fr;max-width:1200px;width:100%;min-height:600px;background:var(--white);border-radius:var(--radius-xl);overflow:hidden;box-shadow:var(--shadow-xl)}.login-branding{background:linear-gradient(135deg,var(--primary-blue) 0%,#1e40af 100%);color:var(--white);padding:var(--spacing-10);display:flex;flex-direction:column;justify-content:space-between;position:relative;overflow:hidden}.login-branding:before{content:"";position:absolute;top:-50%;right:-50%;width:100%;height:100%;background:radial-gradient(circle,rgba(251,191,36,.1) 0%,transparent 70%);pointer-events:none}.branding-content{position:relative;z-index:1}.branding-logo{margin-bottom:var(--spacing-10)}.logo-circle{width:100px;height:100px;background:var(--accent-yellow);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--primary-blue);margin-bottom:var(--spacing-4);box-shadow:0 10px 30px #fbbf244d}.branding-logo h1{font-size:var(--font-size-4xl);font-weight:800;color:var(--white);margin-bottom:var(--spacing-2)}.branding-logo p{font-size:var(--font-size-lg);opacity:.9;margin:0}.branding-features{display:flex;flex-direction:column;gap:var(--spacing-4)}.feature{display:flex;align-items:center;gap:var(--spacing-3);font-size:var(--font-size-base)}.feature-icon{width:24px;height:24px;background:#fff3;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:var(--font-size-sm);font-weight:700}.branding-footer{position:relative;z-index:1;font-size:var(--font-size-sm);opacity:.7}.login-form-section{padding:var(--spacing-10);display:flex;align-items:center;justify-content:center;background:var(--white)}.form-container{width:100%;max-width:400px}.form-header{text-align:center;margin-bottom:var(--spacing-8)}.form-header h2{font-size:var(--font-size-3xl);font-weight:700;color:var(--gray-900);margin-bottom:var(--spacing-2)}.form-header p{color:var(--gray-500);margin:0}.login-form{display:flex;flex-direction:column;gap:var(--spacing-5)}.form-group{display:flex;flex-direction:column;gap:var(--spacing-2)}.form-group label{font-size:var(--font-size-sm);font-weight:600;color:var(--gray-700)}.input-wrapper{position:relative;display:flex;align-items:center}.input-icon{position:absolute;left:var(--spacing-3);color:var(--gray-400)}.input-wrapper input{width:100%;padding:var(--spacing-3) var(--spacing-3) var(--spacing-3) var(--spacing-10);border:2px solid var(--gray-200);border-radius:var(--radius-lg);font-size:var(--font-size-base);transition:all var(--transition-fast);background:var(--white)}.input-wrapper input:focus{outline:none;border-color:var(--primary-blue);box-shadow:0 0 0 4px #1e3a8a1a}.input-wrapper input::placeholder{color:var(--gray-400)}.password-toggle{position:absolute;right:var(--spacing-3);background:none;border:none;color:var(--gray-400);cursor:pointer;padding:var(--spacing-1);border-radius:var(--radius-sm);transition:color var(--transition-fast)}.password-toggle:hover{color:var(--gray-600)}.form-options{display:flex;align-items:center;justify-content:space-between;font-size:var(--font-size-sm)}.remember-me{display:flex;align-items:center;gap:var(--spacing-2);cursor:pointer;color:var(--gray-600)}.remember-me input[type=checkbox]{width:16px;height:16px;accent-color:var(--primary-blue);cursor:pointer}.forgot-password{color:var(--primary-blue);text-decoration:none;font-weight:500;transition:color var(--transition-fast)}.forgot-password:hover{color:var(--primary-blue-dark);text-decoration:underline}.login-btn{width:100%;padding:var(--spacing-4);background:linear-gradient(135deg,var(--primary-blue) 0%,var(--primary-blue-dark) 100%);color:var(--white);border:none;border-radius:var(--radius-lg);font-size:var(--font-size-base);font-weight:600;cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center;gap:var(--spacing-2)}.login-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 10px 20px #1e3a8a4d}.login-btn:disabled{opacity:.7;cursor:not-allowed}.spinner{animation:spin 1s linear infinite}.demo-credentials{margin-top:var(--spacing-8);padding-top:var(--spacing-6);border-top:1px solid var(--gray-200)}.demo-credentials p{font-size:var(--font-size-sm);font-weight:600;color:var(--gray-700);margin-bottom:var(--spacing-3);text-align:center}.credentials-grid{display:flex;flex-direction:column;gap:var(--spacing-2)}.credential{font-size:var(--font-size-xs);color:var(--gray-600);background:var(--gray-50);padding:var(--spacing-2) var(--spacing-3);border-radius:var(--radius-md);font-family:monospace}.credential strong{color:var(--gray-800)}@media (max-width: 968px){.login-container{grid-template-columns:1fr;max-width:500px}.login-branding{display:none}.login-form-section{padding:var(--spacing-8)}}@media (max-width: 480px){.login-page{padding:0}.login-container{border-radius:0;min-height:100vh}.login-form-section{padding:var(--spacing-6)}.form-header h2{font-size:var(--font-size-2xl)}}.dashboard{display:flex;flex-direction:column;gap:var(--spacing-6)}.welcome-section{display:flex;align-items:center;justify-content:space-between;background:linear-gradient(135deg,var(--primary-blue) 0%,var(--primary-blue-dark) 100%);color:var(--white);padding:var(--spacing-8);border-radius:var(--radius-xl)}.welcome-text h1{font-size:var(--font-size-2xl);font-weight:700;color:var(--white);margin-bottom:var(--spacing-2)}.welcome-text p{opacity:.9;margin:0}.welcome-actions .btn-primary{background:var(--accent-yellow);color:var(--primary-blue);border:none}.welcome-actions .btn-primary:hover{background:var(--accent-yellow-dark)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-4)}.stat-card{background:var(--white);border-radius:var(--radius-lg);padding:var(--spacing-5);display:flex;align-items:flex-start;gap:var(--spacing-4);box-shadow:var(--shadow-sm);border:1px solid var(--gray-200);transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.stat-icon{width:48px;height:48px;border-radius:var(--radius-lg);display:flex;align-items:center;justify-content:center}.stat-card.blue .stat-icon{background:#dbeafe;color:#1e40af}.stat-card.green .stat-icon{background:#d1fae5;color:#065f46}.stat-card.yellow .stat-icon{background:#fef3c7;color:#92400e}.stat-card.red .stat-icon{background:#fee2e2;color:#991b1b}.stat-card.purple .stat-icon{background:#e9d5ff;color:#6b21a8}.stat-card.orange .stat-icon{background:#ffedd5;color:#9a3412}.stat-content h3{font-size:var(--font-size-2xl);font-weight:700;color:var(--gray-900);margin-bottom:var(--spacing-1)}.stat-content p{font-size:var(--font-size-sm);color:var(--gray-600);margin:0}.stat-subtext{font-size:var(--font-size-xs);color:var(--gray-500)}.dashboard-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(400px,1fr));gap:var(--spacing-6)}.dashboard-card{background:var(--white);border-radius:var(--radius-lg);border:1px solid var(--gray-200);overflow:hidden}.card-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-4) var(--spacing-6);border-bottom:1px solid var(--gray-200);background:var(--gray-50)}.card-header h3{font-size:var(--font-size-lg);font-weight:600;color:var(--gray-900)}.card-body{padding:var(--spacing-4)}.incidents-list{display:flex;flex-direction:column;gap:var(--spacing-3)}.incident-item{display:flex;align-items:center;gap:var(--spacing-3);padding:var(--spacing-3);background:var(--gray-50);border-radius:var(--radius-md);border-left:4px solid transparent}.incident-item:hover{background:var(--gray-100)}.severity-badge{padding:var(--spacing-1) var(--spacing-2);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase}.severity-badge.critical{background:#fee2e2;color:#991b1b}.severity-badge.high{background:#ffedd5;color:#9a3412}.severity-badge.medium{background:#fef3c7;color:#92400e}.severity-badge.low{background:#d1fae5;color:#065f46}.incident-info{flex:1}.incident-info h4{font-size:var(--font-size-sm);font-weight:600;color:var(--gray-900);margin-bottom:var(--spacing-1)}.incident-info p{font-size:var(--font-size-xs);color:var(--gray-600);margin:0}.incident-info span{font-size:var(--font-size-xs);color:var(--gray-400)}.status-badge{padding:var(--spacing-1) var(--spacing-2);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:500;text-transform:capitalize}.status-badge.reported{background:#dbeafe;color:#1e40af}.status-badge.investigating{background:#fef3c7;color:#92400e}.status-badge.resolved{background:#d1fae5;color:#065f46}.status-badge.closed{background:#f3f4f6;color:#6b7280}.shifts-list{display:flex;flex-direction:column;gap:var(--spacing-3)}.shift-item{display:grid;grid-template-columns:1fr 1fr 1fr auto;align-items:center;gap:var(--spacing-3);padding:var(--spacing-3);background:var(--gray-50);border-radius:var(--radius-md)}.shift-time,.shift-site,.shift-guards{display:flex;align-items:center;gap:var(--spacing-2);font-size:var(--font-size-sm);color:var(--gray-700)}.shift-status{padding:var(--spacing-1) var(--spacing-2);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:500;text-transform:capitalize}.shift-status.scheduled{background:#dbeafe;color:#1e40af}.shift-status.active{background:#d1fae5;color:#065f46}.shift-status.completed{background:#f3f4f6;color:#6b7280}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--spacing-10);color:var(--gray-400);text-align:center}.empty-state p{margin-top:var(--spacing-3);font-size:var(--font-size-sm)}.quick-actions{margin-top:var(--spacing-4)}.quick-actions h3{font-size:var(--font-size-lg);font-weight:600;color:var(--gray-900);margin-bottom:var(--spacing-4)}.actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--spacing-4)}.action-card{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-3);padding:var(--spacing-6);background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius-lg);cursor:pointer;transition:all var(--transition-fast)}.action-card:hover{border-color:var(--primary-blue);box-shadow:var(--shadow-md);transform:translateY(-2px)}.action-card svg{color:var(--primary-blue)}.action-card span{font-size:var(--font-size-sm);font-weight:500;color:var(--gray-700)}@media (max-width: 768px){.welcome-section{flex-direction:column;text-align:center;gap:var(--spacing-4)}.dashboard-grid{grid-template-columns:1fr}.shift-item{grid-template-columns:1fr;gap:var(--spacing-2)}.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 480px){.stats-grid{grid-template-columns:1fr}.actions-grid{grid-template-columns:repeat(2,1fr)}}.performance-module{padding:20px}.section-toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:15px}.search-box{display:flex;align-items:center;gap:10px;background:#f5f5f5;padding:10px 15px;border-radius:8px;flex:1;max-width:400px}.search-box input{border:none;background:transparent;outline:none;flex:1}.metrics-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:20px}.score-badge{display:inline-flex;align-items:center;padding:5px 12px;border-radius:20px;color:#fff;font-weight:600;font-size:.9rem}.status-badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:4px;font-size:.85rem;font-weight:500}.status-badge.pending{background:#fff3e0;color:#e65100}.status-badge.reviewed{background:#e3f2fd;color:#1565c0}.status-badge.approved{background:#e8f5e9;color:#2e7d32}.status-badge.rejected{background:#ffebee;color:#c62828}.personnel-info{display:flex;flex-direction:column}.personnel-info strong{font-weight:600}.text-muted{color:#666;font-size:.85rem}.btn-icon{padding:6px;border:none;background:#f5f5f5;border-radius:4px;cursor:pointer;display:flex;align-items:center;justify-content:center}.btn-icon:hover{background:#e0e0e0}.btn-icon.btn-danger{background:#ffebee;color:#c62828}.btn-icon.btn-danger:hover{background:#ffcdd2}.modal-lg{max-width:900px;max-height:90vh;overflow-y:auto}.section-title{margin:20px 0 15px;padding-bottom:10px;border-bottom:1px solid #e0e0e0;font-size:1.1rem;font-weight:600}.form-group-full{grid-column:1 / -1}.loading,.text-center{text-align:center;padding:40px;color:#666}.disciplinary-module{padding:20px}.severity-badge{display:inline-flex;align-items:center;padding:5px 12px;border-radius:20px;color:#fff;font-weight:600;font-size:.85rem}.status-badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:4px;font-size:.85rem;font-weight:500;color:#fff}.form-group input[type=checkbox]{width:20px;height:20px;cursor:pointer}.personnel{color:#1a1a2e!important}.personnel h1,.personnel h2,.personnel h3,.personnel p,.personnel span,.personnel div,.personnel td,.personnel th{color:inherit}.personnel .data-table thead th{font-size:13px!important;font-weight:800!important;color:#111827!important;background:#f3f4f6!important;border-bottom:2px solid #d1d5db!important;padding:12px 16px!important;text-transform:uppercase!important;letter-spacing:.05em!important}.personnel .data-table tbody td{font-size:14px!important;font-weight:600!important;color:#1f2937!important;padding:12px 16px!important;border-bottom:1px solid #e5e7eb!important}.personnel .data-table .font-mono{font-size:14px!important;font-weight:800!important;color:#2563eb!important;font-family:Courier New,monospace!important}.personnel .data-table .cell-primary{font-size:15px!important;font-weight:700!important;color:#111827!important;line-height:1.4!important}.personnel .data-table .cell-secondary{font-size:12px!important;font-weight:500!important;color:#6b7280!important;margin-top:4px!important}.personnel .data-table .cell-details{font-size:12px!important;font-weight:500!important;color:#4b5563!important;margin-top:8px!important;padding:8px!important;background:#f9fafb!important;border-radius:6px!important}.personnel .data-table td:nth-child(4){font-size:14px!important;font-weight:600!important;color:#374151!important}.personnel .data-table .badge-info{font-size:12px!important;font-weight:700!important;color:#1e40af!important;background:#dbeafe!important;padding:4px 12px!important;border-radius:9999px!important}.personnel .data-table .badge-success{font-size:12px!important;font-weight:700!important;color:#065f46!important;background:#d1fae5!important;padding:4px 12px!important;border-radius:9999px!important}.personnel .data-table .badge-warning{font-size:12px!important;font-weight:700!important;color:#92400e!important;background:#fef3c7!important;padding:4px 12px!important;border-radius:9999px!important}.personnel .data-table .btn-sm{font-size:12px!important;font-weight:600!important}.personnel .text-center{font-size:14px!important;font-weight:600!important;color:#6b7280!important}.personnel .stat-card{background:#fff!important;border:2px solid #e5e7eb!important}.personnel .stat-card h3{font-size:12px!important;font-weight:700!important;color:#6b7280!important}.personnel .stat-card .stat-value{font-size:28px!important;font-weight:800!important;color:#2563eb!important}.personnel input[type=text],.personnel select{font-size:14px!important;font-weight:500!important;color:#111827!important;border:2px solid #d1d5db!important}.personnel .tab{font-size:14px!important;font-weight:600!important}.personnel .tab.active{background:#2563eb!important;color:#fff!important;font-weight:700!important}.personnel .page-header h1{font-size:24px!important;font-weight:800!important;color:#111827!important}.personnel .page-header p{font-size:14px!important;font-weight:500!important;color:#6b7280!important}.personnel .btn-primary{font-size:14px!important;font-weight:600!important}.personnel{display:flex;flex-direction:column;gap:var(--spacing-6)}.status-badge{padding:var(--spacing-1) var(--spacing-2);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:600;text-transform:capitalize}.status-badge.active{background:#d1fae5;color:#065f46}.status-badge.on_leave{background:#fef3c7;color:#92400e}.status-badge.inactive{background:#f3f4f6;color:#6b7280}.applicants-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:var(--spacing-4)}.applicant-card{background:var(--white);border-radius:var(--radius-lg);padding:var(--spacing-5);border:1px solid var(--gray-200)}.applicant-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-2)}.applicant-header h4{font-size:var(--font-size-base);font-weight:600;color:var(--gray-900)}.status-pill{padding:var(--spacing-1) var(--spacing-2);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:600;text-transform:capitalize}.status-pill.new{background:#dbeafe;color:#1e40af}.status-pill.screening{background:#fef3c7;color:#92400e}.status-pill.interview{background:#e9d5ff;color:#6b21a8}.status-pill.hired{background:#d1fae5;color:#065f46}.status-pill.rejected{background:#fee2e2;color:#991b1b}.applicant-position{color:var(--primary-blue);font-weight:500;font-size:var(--font-size-sm);margin-bottom:var(--spacing-3)}.applicant-info{display:flex;flex-direction:column;gap:var(--spacing-1);font-size:var(--font-size-sm);color:var(--gray-600);margin-bottom:var(--spacing-4)}.applicant-actions{display:flex;gap:var(--spacing-2)}.training-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--spacing-4)}.training-card{background:var(--white);border-radius:var(--radius-lg);padding:var(--spacing-5);border:1px solid var(--gray-200)}.training-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-2)}.training-header h4{font-size:var(--font-size-base);font-weight:600;color:var(--gray-900)}.training-status{padding:var(--spacing-1) var(--spacing-2);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:600;text-transform:capitalize}.training-status.scheduled{background:#dbeafe;color:#1e40af}.training-status.ongoing{background:#fef3c7;color:#92400e}.training-status.completed{background:#d1fae5;color:#065f46}.training-type{color:var(--gray-500);font-size:var(--font-size-sm);text-transform:capitalize;margin-bottom:var(--spacing-3)}.training-details{display:flex;flex-direction:column;gap:var(--spacing-2);margin-bottom:var(--spacing-4)}.detail{display:flex;align-items:center;gap:var(--spacing-2);font-size:var(--font-size-sm);color:var(--gray-600)}.training-actions{display:flex;gap:var(--spacing-2)}.leave-list{display:flex;flex-direction:column;gap:var(--spacing-3)}.leave-item{display:grid;grid-template-columns:2fr 2fr 1fr 1.5fr;align-items:center;gap:var(--spacing-4);padding:var(--spacing-4);background:var(--white);border-radius:var(--radius-lg);border:1px solid var(--gray-200)}.leave-item.pending{border-left:4px solid var(--warning)}.leave-item.approved{border-left:4px solid var(--success)}.leave-item.rejected{border-left:4px solid var(--error)}.leave-guard{display:flex;align-items:center;gap:var(--spacing-3)}.guard-avatar-small{width:40px;height:40px;background:var(--gray-100);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--primary-blue)}.leave-guard h4{font-size:var(--font-size-sm);font-weight:600;color:var(--gray-900)}.leave-guard p{font-size:var(--font-size-xs);color:var(--gray-500);margin:0}.leave-details{display:flex;flex-direction:column;gap:var(--spacing-1)}.leave-type{font-weight:600;color:var(--gray-900);text-transform:capitalize}.leave-dates{font-size:var(--font-size-sm);color:var(--gray-600)}.leave-days{font-size:var(--font-size-xs);color:var(--gray-500)}.leave-status{display:flex;align-items:center;gap:var(--spacing-2)}.status-text{font-size:var(--font-size-sm);font-weight:600;text-transform:capitalize}.status-text.pending{color:var(--warning)}.status-text.approved{color:var(--success)}.status-text.rejected{color:var(--error)}.leave-actions{display:flex;gap:var(--spacing-2)}.btn-success{background:var(--success);color:var(--white)}.btn-danger{background:var(--error);color:var(--white)}@media (max-width: 968px){.leave-item{grid-template-columns:1fr;gap:var(--spacing-3)}.applicants-grid,.training-grid{grid-template-columns:1fr}}@media (max-width: 640px){.section-toolbar{flex-direction:column;gap:var(--spacing-3);align-items:stretch}.search-box{min-width:auto}}.modal-content{background:#fff;border-radius:12px;width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.modal-header h3{margin:0;font-size:1.25rem;font-weight:600;color:#111827}.btn-close{background:none;border:none;cursor:pointer;padding:4px;color:#6b7280;border-radius:6px;transition:all .2s}.modal-content form{padding:24px}.form-group{margin-bottom:16px}.form-group label{display:block;margin-bottom:6px;font-weight:500;color:#374151;font-size:.875rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:.875rem;transition:border-color .2s;box-sizing:border-box}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid #e5e7eb}.alert{display:flex;align-items:center;gap:8px;padding:12px 16px;border-radius:8px;margin:16px 24px;font-size:.875rem}.mb-3{margin-bottom:16px}.actions-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;gap:12px}.badge{display:inline-flex;align-items:center;padding:4px 10px;border-radius:9999px;font-size:.75rem;font-weight:500;text-transform:capitalize}.badge-success{background:#d1fae5;color:#065f46}.badge-warning{background:#fef3c7;color:#92400e}.badge-danger{background:#fee2e2;color:#991b1b}.badge-info{background:#dbeafe;color:#1e40af}.btn-sm{padding:6px 12px;font-size:.75rem;gap:4px}.btn-sm svg{width:14px;height:14px}.data-table td{vertical-align:middle}.data-table td .btn{margin-right:4px}.text-center{text-align:center;color:#6b7280;padding:40px}@media (max-width: 640px){.form-row{grid-template-columns:1fr}.modal-content{margin:10px;max-height:95vh}.actions-bar{flex-direction:column;align-items:stretch}}.guard-operations{color:#1a1a2e!important}.guard-operations h1,.guard-operations h2,.guard-operations h3,.guard-operations p,.guard-operations span,.guard-operations div,.guard-operations td,.guard-operations th{color:inherit}.guard-operations .data-table thead th,.guard-operations table thead th{font-size:13px!important;font-weight:800!important;color:#111827!important;background:#f3f4f6!important;border-bottom:2px solid #d1d5db!important;padding:12px 16px!important;text-transform:uppercase!important;letter-spacing:.05em!important}.guard-operations .data-table tbody td,.guard-operations table tbody td{font-size:14px!important;font-weight:600!important;color:#1f2937!important;padding:12px 16px!important;border-bottom:1px solid #e5e7eb!important}.guard-operations .cell-primary,.guard-operations .font-bold{font-size:15px!important;font-weight:700!important;color:#111827!important;line-height:1.4!important}.guard-operations .font-mono{font-size:14px!important;font-weight:800!important;color:#2563eb!important;font-family:Courier New,monospace!important}.guard-operations .cell-secondary{font-size:12px!important;font-weight:500!important;color:#6b7280!important;margin-top:4px!important}.guard-operations .badge-success{font-size:12px!important;font-weight:700!important;color:#065f46!important;background:#d1fae5!important;padding:4px 12px!important;border-radius:9999px!important}.guard-operations .badge-warning{font-size:12px!important;font-weight:700!important;color:#92400e!important;background:#fef3c7!important;padding:4px 12px!important;border-radius:9999px!important}.guard-operations .badge-danger{font-size:12px!important;font-weight:700!important;color:#991b1b!important;background:#fee2e2!important;padding:4px 12px!important;border-radius:9999px!important}.guard-operations .badge-info{font-size:12px!important;font-weight:700!important;color:#1e40af!important;background:#dbeafe!important;padding:4px 12px!important;border-radius:9999px!important}.guard-operations .btn-sm{font-size:12px!important;font-weight:600!important}.guard-operations .stat-card,.guard-operations .stats-card{background:#fff!important;border:2px solid #e5e7eb!important}.guard-operations .stat-card h3,.guard-operations .stats-card h3{font-size:12px!important;font-weight:700!important;color:#6b7280!important}.guard-operations .stat-card .stat-value,.guard-operations .stats-card .stat-value{font-size:28px!important;font-weight:800!important;color:#2563eb!important}.guard-operations input[type=text],.guard-operations select{font-size:14px!important;font-weight:500!important;color:#111827!important;border:2px solid #d1d5db!important}.guard-operations .tab{font-size:14px!important;font-weight:600!important}.guard-operations .tab.active{background:#2563eb!important;color:#fff!important;font-weight:700!important}.guard-operations .page-header h1,.guard-operations h1{font-size:24px!important;font-weight:800!important;color:#111827!important}.guard-operations .page-header p{font-size:14px!important;font-weight:500!important;color:#6b7280!important}.guard-operations .btn-primary{font-size:14px!important;font-weight:600!important}.guard-operations .card-title{font-size:16px!important;font-weight:700!important;color:#111827!important}.guard-operations .shift-info{font-size:13px!important;font-weight:600!important;color:#4b5563!important}.guard-operations{display:flex;flex-direction:column;gap:var(--spacing-6)}.tab-content{min-height:400px}.monitoring-grid{display:grid;grid-template-columns:2fr 1fr;gap:var(--spacing-6)}.monitoring-card{background:var(--white);border-radius:var(--radius-lg);padding:var(--spacing-6);border:1px solid var(--gray-200)}.monitoring-card.alert{border-left:4px solid var(--error)}.monitoring-card h3{font-size:var(--font-size-lg);font-weight:600;margin-bottom:var(--spacing-4);color:var(--gray-900)}.shift-monitor-item{padding:var(--spacing-4);background:var(--gray-50);border-radius:var(--radius-md);margin-bottom:var(--spacing-3)}.shift-info{display:flex;align-items:center;gap:var(--spacing-2);font-weight:600;color:var(--gray-900);margin-bottom:var(--spacing-2)}.guards-on-duty{display:flex;flex-wrap:wrap;gap:var(--spacing-2);margin-bottom:var(--spacing-2)}.guard-badge{padding:var(--spacing-1) var(--spacing-2);background:var(--primary-blue);color:var(--white);border-radius:var(--radius-sm);font-size:var(--font-size-xs)}.shift-time{display:flex;align-items:center;gap:var(--spacing-1);font-size:var(--font-size-sm);color:var(--gray-600)}.uncovered-list{display:flex;flex-direction:column;gap:var(--spacing-2)}.uncovered-item{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-3);background:#fee2e2;color:#991b1b;border-radius:var(--radius-md);font-size:var(--font-size-sm)}.all-covered{color:var(--success);font-weight:500}.incidents-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:var(--spacing-4)}.incident-card{background:var(--white);border-radius:var(--radius-lg);padding:var(--spacing-5);border:1px solid var(--gray-200);border-left:4px solid var(--gray-300)}.incident-card.critical{border-left-color:var(--error)}.incident-card.high{border-left-color:var(--warning)}.incident-card.medium{border-left-color:var(--accent-yellow)}.incident-card.low{border-left-color:var(--success)}.incident-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-3)}.incident-id{font-size:var(--font-size-xs);color:var(--gray-500);font-family:monospace}.incident-card h4{font-size:var(--font-size-base);font-weight:600;margin-bottom:var(--spacing-2);color:var(--gray-900)}.incident-card p{font-size:var(--font-size-sm);color:var(--gray-600);margin-bottom:var(--spacing-3)}.incident-meta{display:flex;flex-direction:column;gap:var(--spacing-1);font-size:var(--font-size-xs);color:var(--gray-500);margin-bottom:var(--spacing-3)}.incident-meta span{display:flex;align-items:center;gap:var(--spacing-1)}.incident-actions{display:flex;gap:var(--spacing-2)}.guards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:var(--spacing-4)}.guard-card{background:var(--white);border-radius:var(--radius-lg);padding:var(--spacing-5);border:1px solid var(--gray-200);display:flex;flex-direction:column;align-items:center;text-align:center;position:relative}.guard-avatar{width:64px;height:64px;background:var(--gray-100);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--primary-blue);margin-bottom:var(--spacing-3)}.guard-info h4{font-size:var(--font-size-base);font-weight:600;color:var(--gray-900);margin-bottom:var(--spacing-1)}.guard-id{font-size:var(--font-size-xs);color:var(--gray-500);font-family:monospace;margin-bottom:var(--spacing-2)}.guard-site{display:flex;align-items:center;justify-content:center;gap:var(--spacing-1);font-size:var(--font-size-sm);color:var(--gray-600)}.guard-status{margin-top:var(--spacing-3);padding:var(--spacing-1) var(--spacing-3);border-radius:var(--radius-full);font-size:var(--font-size-xs);font-weight:600;text-transform:capitalize}.guard-status.active{background:#d1fae5;color:#065f46}.guard-status.on_leave{background:#fef3c7;color:#92400e}.guard-status.inactive{background:#f3f4f6;color:#6b7280}.guard-actions{position:absolute;top:var(--spacing-3);right:var(--spacing-3);display:flex;gap:var(--spacing-1)}.btn-icon{background:none;border:none;padding:var(--spacing-1);cursor:pointer;color:var(--gray-400);border-radius:var(--radius-sm);transition:all var(--transition-fast)}.btn-icon:hover{background:var(--gray-100);color:var(--gray-700)}@media (max-width: 968px){.monitoring-grid{grid-template-columns:1fr}.tabs{overflow-x:auto;flex-wrap:nowrap}}@media (max-width: 640px){.page-header{flex-direction:column;gap:var(--spacing-3);align-items:flex-start}.incidents-grid,.guards-grid{grid-template-columns:1fr}}.modal-container{background:#fff;border-radius:12px;box-shadow:0 20px 25px -5px #0000001a;max-height:90vh;overflow:hidden;display:flex;flex-direction:column}.modal-small{width:100%;max-width:400px}.modal-medium{width:100%;max-width:600px}.modal-large{width:100%;max-width:800px}.modal-header h3{margin:0;font-size:18px;font-weight:600;color:#111827}.modal-close{background:none;border:none;cursor:pointer;padding:4px;color:#6b7280;border-radius:4px;transition:all .2s}.modal-close:hover{background:#f3f4f6;color:#111827}.modal-body{padding:24px;overflow-y:auto;flex:1}.modal-form{display:flex;flex-direction:column;gap:16px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px}.required{color:#ef4444;margin-left:4px}.form-control{padding:10px 12px;border:1px solid #d1d5db;border-radius:6px;font-size:14px;transition:border-color .2s,box-shadow .2s;background:#fff}.form-control:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}select.form-control{cursor:pointer}textarea.form-control{resize:vertical;min-height:80px}.form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:20px;padding-top:20px;border-top:1px solid #e5e7eb}@media (max-width: 768px){.form-row{grid-template-columns:1fr}}.invoice-module{padding:20px}.module-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.module-header h2{margin:0;color:#2c3e50}.table-container{background:#fff;border-radius:8px;box-shadow:0 2px 4px #0000001a;overflow:hidden}.data-table{width:100%;border-collapse:collapse}.data-table th{background:#667eea;color:#fff;padding:12px;text-align:left}.data-table td{padding:12px;border-bottom:1px solid #eee}.status-select{padding:4px 8px;border-radius:4px;border:none;font-size:12px}.status-draft{background:#e9ecef}.status-sent{background:#cce5ff}.status-paid{background:#d4edda}.status-overdue{background:#f8d7da}.btn-icon{background:none;border:none;cursor:pointer;font-size:16px}.btn{padding:10px 20px;border:none;border-radius:4px;cursor:pointer}.btn-primary{background:#667eea;color:#fff}.btn-secondary{background:#6c757d;color:#fff}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.modal-content{background:#fff;border-radius:8px;width:90%;max-width:700px;max-height:90vh;overflow-y:auto}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid #eee}.btn-close{background:none;border:none;font-size:24px;cursor:pointer}.invoice-form{padding:20px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-bottom:15px}.form-group label{font-weight:600;margin-bottom:5px}.form-group input{padding:8px;border:1px solid #ddd;border-radius:4px}.items-section{background:#f8f9fa;padding:15px;border-radius:4px;margin-bottom:15px}.item-row{display:grid;grid-template-columns:2fr .5fr 1fr auto auto;gap:8px;margin-bottom:8px}.item-row input{padding:6px;border:1px solid #ddd;border-radius:4px}.btn-remove{background:#dc3545;color:#fff;border:none;width:24px;height:24px;border-radius:50%;cursor:pointer}.btn-add-item{background:#28a745;color:#fff;border:none;padding:8px 16px;border-radius:4px;cursor:pointer;margin-top:8px}.totals-section{background:#e9ecef;padding:15px;border-radius:4px;margin-bottom:15px}.total-row{display:flex;justify-content:space-between;margin-bottom:8px}.grand-total{font-weight:700;font-size:18px;border-top:2px solid #ddd;padding-top:8px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;padding-top:15px;border-top:1px solid #eee}.text-center{text-align:center;padding:40px}@media print{@page{size:A4;margin:15mm}body{margin:0;padding:0;-webkit-print-color-adjust:exact;print-color-adjust:exact}.no-print{display:none!important}}.print-template-modern{width:794px;min-height:1123px;max-height:1123px;margin:0 auto;background:#fff;padding:40px;box-sizing:border-box;font-family:Segoe UI,Helvetica Neue,Arial,sans-serif;font-size:13px;line-height:1.5;color:#333;position:relative;overflow:hidden;box-shadow:0 0 20px #0000001a}.gismac-logo-modern{display:flex;flex-direction:column;align-items:center;justify-content:center}.gismac-logo-circle{width:100%;height:70%;background:linear-gradient(135deg,#1a237e,#283593,#1a237e);border-radius:50%;border:3px solid #ffd700;display:flex;align-items:center;justify-content:center;gap:2px;box-shadow:0 2px 8px #1a237e33}.gismac-logo-g,.gismac-logo-s{font-weight:900;color:gold;text-shadow:1px 1px 2px rgba(0,0,0,.3);line-height:1}.gismac-logo-g,.gismac-logo-s{font-size:28px}.gismac-logo-shield{font-size:20px;line-height:1}.gismac-logo-line{width:70%;height:2px;background:gold;margin:3px 0}.gismac-logo-text{font-weight:700;color:#1a237e;letter-spacing:2px;text-align:center;line-height:1}.print-header-modern{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:30px;padding-bottom:20px;border-bottom:3px solid #1a237e}.print-header-left{display:flex;align-items:center;gap:20px}.print-company-info h1{margin:0;font-size:22px;font-weight:700;color:#1a237e;letter-spacing:.5px}.print-company-info p{margin:4px 0;font-size:12px;color:#666;line-height:1.4}.print-header-right{text-align:right}.print-doc-type{display:inline-block;background:#1a237e;color:gold;padding:8px 24px;font-size:18px;font-weight:700;letter-spacing:2px;text-transform:uppercase;border-radius:4px;margin-bottom:10px}.print-doc-id{font-size:14px;font-weight:600;color:#333;margin-bottom:6px}.print-doc-id:before{content:"No. ";color:#666;font-weight:400}.print-doc-date{font-size:13px;color:#666}.print-content-modern{min-height:750px;max-height:750px;overflow:hidden}.print-footer-modern{margin-top:20px;padding-top:15px;border-top:2px solid #e0e0e0}.print-footer-line{width:100%;height:3px;background:linear-gradient(90deg,#1a237e,gold,#1a237e);margin-bottom:15px}.print-footer-content{font-size:11px;color:#666;line-height:1.6}.print-footer-content p{margin:4px 0}.print-footer-thanks{font-size:14px;font-weight:600;color:#1a237e;text-align:center;margin:15px 0 10px;font-style:italic}.print-footer-system{text-align:center;font-size:10px;color:#999;margin-top:10px;padding-top:10px;border-top:1px solid #eee}.print-parties{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-bottom:30px}.print-party-box{background:#f8f9fa;padding:15px 20px;border-radius:8px;border-left:4px solid #1a237e}.print-party-box h4{margin:0 0 10px;font-size:12px;font-weight:700;color:#1a237e;text-transform:uppercase;letter-spacing:1px}.print-party-box p{margin:4px 0;font-size:13px;color:#333}.print-party-box .party-name{font-size:15px;font-weight:600;color:#1a237e}.print-items-table{width:100%;border-collapse:collapse;margin:20px 0;font-size:12px}.print-items-table thead th{background:#1a237e;color:#fff;padding:10px 12px;text-align:left;font-weight:600;font-size:11px;text-transform:uppercase;letter-spacing:.5px}.print-items-table thead th:last-child,.print-items-table tbody td:last-child,.print-items-table tfoot td:last-child{text-align:right}.print-items-table tbody td{padding:10px 12px;border-bottom:1px solid #eee;vertical-align:top}.print-items-table tbody tr:nth-child(2n){background:#fafafa}.print-items-table tfoot{border-top:2px solid #1a237e}.print-items-table tfoot td{padding:8px 12px;font-weight:600}.print-items-table .total-row{font-size:16px;font-weight:700;color:#1a237e;background:#e8eaf6}.print-items-table .total-row td{padding:12px;border-top:3px solid #1a237e}.print-summary{display:flex;justify-content:flex-end;margin:20px 0}.print-summary-box{width:300px}.print-summary-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #eee;font-size:13px}.print-summary-row.total{font-size:18px;font-weight:700;color:#1a237e;border-top:2px solid #1a237e;border-bottom:none;margin-top:5px;padding-top:10px}.print-signature-area{display:grid;grid-template-columns:1fr 1fr 1fr;gap:30px;margin-top:30px;padding-top:20px}.print-signature-box{text-align:center}.print-signature-line{width:100%;height:1px;background:#333;margin:40px 0 10px}.print-signature-label{font-size:11px;color:#666;font-weight:600}.print-receipt-header{text-align:center;margin-bottom:20px}.print-receipt-header .gismac-logo-modern{margin:0 auto 15px}.print-receipt-title{font-size:24px;font-weight:700;color:#1a237e;margin:10px 0;letter-spacing:3px}.print-receipt-details{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin:20px 0;padding:15px;background:#f8f9fa;border-radius:8px}.print-receipt-details p{margin:4px 0;font-size:13px}.print-receipt-details strong{color:#1a237e}.print-validity{background:#fff3e0;border-left:4px solid #ff9800;padding:12px 16px;margin:15px 0;border-radius:4px;font-size:13px}.print-validity strong{color:#e65100}.print-status{display:inline-block;padding:6px 16px;border-radius:20px;font-size:12px;font-weight:700;text-transform:uppercase}.print-status.paid{background:#e8f5e9;color:#2e7d32}.print-status.pending{background:#fff3e0;color:#ef6c00}.print-status.overdue{background:#ffebee;color:#c62828}@media screen and (max-width: 850px){.print-template-modern{width:100%;padding:20px}}.print-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#0f172a99;z-index:9999;display:flex;justify-content:center;align-items:center;padding:20px;overflow-y:auto;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.print-modal{background:#fff;width:100%;max-width:850px;max-height:90vh;overflow-y:auto;border-radius:16px;box-shadow:0 25px 50px -12px #00000040}.print-actions{display:flex;justify-content:space-between;padding:16px 24px;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-bottom:1px solid #e2e8f0;position:sticky;top:0;z-index:10}.print-actions .btn{padding:10px 24px;border:none;border-radius:8px;cursor:pointer;font-weight:600;font-size:14px}.print-actions .btn-secondary{background:#f1f5f9;color:#475569;border:1px solid #e2e8f0}.print-actions .btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 6px #667eea4d}.invoice-print-content{padding:48px;font-family:Segoe UI,Helvetica Neue,Arial,sans-serif;color:#1e293b;line-height:1.6;background:#fff}.invoice-header-modern{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:36px;padding-bottom:24px;border-bottom:3px solid #667eea}.invoice-header-left{display:flex;align-items:flex-start;gap:20px}.gismac-logo-real{display:flex;flex-direction:column;align-items:center;justify-content:center;width:110px;height:110px;border-radius:50%;background:linear-gradient(135deg,#1e3a5f,#0f172a);border:4px solid #fbbf24;box-shadow:0 4px 15px #0003;padding:6px}.gismac-letters{display:flex;align-items:center;justify-content:center;gap:3px}.gismac-g,.gismac-s{font-size:28px;font-weight:900;color:#fbbf24;font-family:Arial Black,Impact,sans-serif;text-shadow:1px 1px 2px rgba(0,0,0,.3)}.gismac-shield{width:32px;height:36px;display:flex;align-items:center;justify-content:center}.shield-bg{width:28px;height:32px;background:linear-gradient(135deg,#fbbf24,#f59e0b);border-radius:3px 3px 10px 10px;display:flex;align-items:center;justify-content:center;position:relative;border:2px solid #fbbf24}.shield-bg:before{content:"";position:absolute;top:-7px;left:50%;transform:translate(-50%);width:0;height:0;border-left:14px solid transparent;border-right:14px solid transparent;border-bottom:8px solid #fbbf24}.lion{font-size:18px;z-index:2}.gismac-divider{width:70px;height:2px;background:linear-gradient(90deg,transparent 0%,#fbbf24 50%,transparent 100%);margin:5px 0}.gismac-text{font-size:14px;font-weight:800;color:#fbbf24;letter-spacing:5px;font-family:Arial Black,Impact,sans-serif;text-shadow:1px 1px 2px rgba(0,0,0,.3)}.gismac-url{font-size:8px;color:#94a3b8;letter-spacing:1px;margin-top:1px}.invoice-company-details h2{margin:0 0 4px;color:#0f172a;font-size:22px;font-weight:700;letter-spacing:-.5px}.company-tagline{margin:0 0 12px;color:#64748b;font-size:13px;font-style:italic}.company-contact p{margin:3px 0;color:#475569;font-size:12px}.company-pin{margin:8px 0 0;padding:4px 10px;background:#f1f5f9;border-radius:6px;font-size:12px;color:#334155;display:inline-block}.invoice-header-right{text-align:right}.invoice-doc-badge{display:flex;flex-direction:column;align-items:flex-end;gap:4px;margin-bottom:16px}.doc-type{font-size:28px;font-weight:800;color:#667eea;letter-spacing:4px}.doc-number{font-size:14px;color:#64748b;font-weight:600}.invoice-meta{background:#f8fafc;border-radius:10px;padding:16px;border:1px solid #f1f5f9}.meta-row{display:flex;justify-content:space-between;gap:20px;padding:6px 0;border-bottom:1px solid #e2e8f0}.meta-row:last-child{border-bottom:none}.meta-label{font-size:12px;color:#64748b;font-weight:500}.meta-value{font-size:12px;color:#334155;font-weight:600}.meta-status{padding:3px 10px;border-radius:12px;font-size:11px;font-weight:700;text-transform:uppercase}.meta-status.paid{background:#d1fae5;color:#065f46}.meta-status.unpaid{background:#fef3c7;color:#92400e}.meta-status.overdue{background:#fee2e2;color:#991b1b}.meta-status.draft{background:#f1f5f9;color:#475569}.meta-status.sent{background:#dbeafe;color:#1d4ed8}.invoice-details-modern{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:32px}.detail-card{background:#fff;border-radius:12px;border:1px solid #e2e8f0;overflow:hidden;box-shadow:0 1px 3px #0000000a}.card-header{display:flex;align-items:center;gap:8px;padding:14px 18px;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-bottom:1px solid #e2e8f0}.card-header h4{margin:0;color:#334155;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.5px}.card-icon{font-size:16px}.card-body{padding:18px}.client-name{font-weight:700;font-size:16px;color:#0f172a;margin:0 0 8px}.client-pin,.client-contact,.client-address{font-size:12px;color:#64748b;margin:3px 0}.info-row{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px solid #f1f5f9}.info-row:last-child{border-bottom:none}.info-label{font-size:12px;color:#64748b;font-weight:500}.info-value{font-size:12px;color:#334155;font-weight:600}.invoice-table-section{margin-bottom:32px}.section-title{font-size:14px;font-weight:700;color:#334155;text-transform:uppercase;letter-spacing:1px;margin:0 0 16px;padding-bottom:8px;border-bottom:2px solid #667eea}.invoice-table-modern{width:100%;border-collapse:separate;border-spacing:0;font-size:14px}.invoice-table-modern thead{background:linear-gradient(135deg,#667eea,#764ba2)}.invoice-table-modern th{color:#fff;padding:14px 16px;text-align:left;font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.5px}.invoice-table-modern th:first-child{border-radius:8px 0 0}.invoice-table-modern th:last-child{border-radius:0 8px 0 0}.invoice-table-modern td{padding:14px 16px;border-bottom:1px solid #f1f5f9;color:#334155}.invoice-table-modern tbody tr:hover{background:#f8fafc}.invoice-table-modern tbody tr:last-child td:first-child{border-radius:0 0 0 8px}.invoice-table-modern tbody tr:last-child td:last-child{border-radius:0 0 8px}.col-num{width:40px;text-align:center;color:#64748b}.col-desc{min-width:200px}.col-qty{width:60px;text-align:center}.col-rate,.col-amount{width:120px;text-align:right;font-family:SF Mono,Courier New,monospace}.invoice-summary-modern{display:flex;justify-content:flex-end;margin-bottom:32px}.summary-box{width:320px;background:#f8fafc;border-radius:12px;padding:24px;border:1px solid #e2e8f0}.summary-line{display:flex;justify-content:space-between;padding:10px 0;border-bottom:1px solid #e2e8f0;font-size:14px}.summary-line.discount{color:#dc2626}.summary-line.total{border-top:2px solid #334155;border-bottom:2px solid #334155;margin-top:8px;font-size:16px;font-weight:700;color:#0f172a}.summary-line.paid{color:#059669}.summary-line.balance{font-size:16px;font-weight:700;color:#dc2626;margin-top:4px;border-bottom:none}.summary-label{color:#475569}.summary-value{font-weight:600;color:#0f172a;font-family:SF Mono,Courier New,monospace}.invoice-notes-modern{margin:24px 0;padding:20px;background:linear-gradient(135deg,#fefce8,#fef9c3);border-left:4px solid #eab308;border-radius:8px}.invoice-notes-modern h4{margin:0 0 10px;color:#854d0e;font-size:14px}.invoice-notes-modern p{margin:0;color:#854d0e;font-size:13px;line-height:1.7}.invoice-footer-modern{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-top:40px;padding-top:24px;border-top:2px solid #e2e8f0}.footer-left h4{color:#334155;font-size:14px;margin:0 0 12px;font-weight:700}.footer-left p{margin:4px 0;font-size:12px;color:#64748b}.footer-right{display:flex;flex-direction:column;align-items:flex-end;gap:20px}.sig-line{font-size:13px;color:#475569;margin:0 0 8px}.sig-underline{width:200px;height:1px;background:#94a3b8;margin-left:auto;margin-bottom:8px}.sig-date{font-size:12px;color:#64748b;margin:0}.stamp-placeholder{width:100px;height:100px;border:2px dashed #dc2626;border-radius:50%;display:flex;align-items:center;justify-content:center;transform:rotate(-15deg);opacity:.6}.stamp-placeholder span{color:#dc2626;font-size:10px;font-weight:700;text-align:center;text-transform:uppercase}.invoice-bottom-bar{margin-top:32px;padding:16px;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-radius:8px;text-align:center;border:1px solid #e2e8f0}.invoice-bottom-bar p{margin:0;font-size:12px;color:#64748b;letter-spacing:.3px}@media print{@page{size:A4;margin:12mm}.no-print{display:none!important}.print-overlay{position:absolute;left:0;top:0;width:100%;background:#fff!important}.print-modal{max-width:100%;max-height:none;box-shadow:none;border-radius:0}.invoice-print-content{padding:0}body{background:#fff!important;-webkit-print-color-adjust:exact;print-color-adjust:exact}}.finance-module{padding:24px;max-width:1400px;margin:0 auto;background:#f8fafc;min-height:100vh}.module-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:28px;padding:20px 24px;background:#fff;border-radius:12px;box-shadow:0 1px 3px #00000014;border-left:4px solid #667eea}.module-header h2{margin:0;color:#1e293b;font-size:22px;font-weight:700;display:flex;align-items:center;gap:12px}.module-header h2 svg{color:#667eea}.module-subtitle{margin:6px 0 0;color:#64748b;font-size:13px;font-weight:400}.stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:28px}.stat-box{background:#fff;border-radius:12px;padding:24px 20px;display:flex;align-items:center;gap:16px;box-shadow:0 1px 3px #0000000f;border-left:4px solid;transition:all .25s ease}.stat-box:hover{transform:translateY(-3px);box-shadow:0 8px 25px #0000001a}.stat-box.blue{border-left-color:#3b82f6}.stat-box.teal{border-left-color:#14b8a6}.stat-box.slate{border-left-color:#64748b}.stat-box.indigo{border-left-color:#6366f1}.stat-box.amber{border-left-color:#f59e0b}.stat-box.rose{border-left-color:#f43f5e}.stat-box .stat-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.stat-box.blue .stat-icon{background:#eff6ff;color:#3b82f6}.stat-box.teal .stat-icon{background:#f0fdfa;color:#14b8a6}.stat-box.slate .stat-icon{background:#f8fafc;color:#64748b}.stat-box.indigo .stat-icon{background:#eef2ff;color:#6366f1}.stat-box.amber .stat-icon{background:#fffbeb;color:#f59e0b}.stat-box.rose .stat-icon{background:#fff1f2;color:#f43f5e}.stat-info{display:flex;flex-direction:column;min-width:0}.stat-value{font-size:22px;font-weight:700;color:#0f172a;line-height:1.2;letter-spacing:-.5px}.stat-label{font-size:12px;color:#64748b;margin-top:4px;text-transform:uppercase;letter-spacing:.8px;font-weight:500}.toolbar{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;gap:16px}.search-box{display:flex;align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:10px;padding:10px 16px;gap:10px;flex:1;max-width:380px;box-shadow:0 1px 2px #0000000a;transition:all .2s}.search-box:focus-within{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.search-box svg{color:#94a3b8;flex-shrink:0}.search-box input{border:none;outline:none;background:transparent;font-size:14px;width:100%;color:#334155}.search-box input::placeholder{color:#94a3b8}.filter-select{padding:10px 16px;border:1px solid #e2e8f0;border-radius:10px;background:#fff;color:#334155;font-size:14px;cursor:pointer;box-shadow:0 1px 2px #0000000a;transition:all .2s}.filter-select:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.table-container{background:#fff;border-radius:14px;box-shadow:0 1px 3px #00000014;overflow:hidden;margin-bottom:24px;border:1px solid #f1f5f9}.data-table{width:100%;border-collapse:separate;border-spacing:0;font-size:14px}.data-table thead{background:linear-gradient(135deg,#667eea,#764ba2)}.data-table th{color:#fff;padding:14px 18px;text-align:left;font-weight:600;font-size:12px;text-transform:uppercase;letter-spacing:.8px;border:none}.data-table th:first-child{border-radius:14px 0 0}.data-table th:last-child{border-radius:0 14px 0 0}.data-table td{padding:14px 18px;border-bottom:1px solid #f1f5f9;color:#334155;vertical-align:middle;font-weight:400}.data-table tbody tr{transition:background .15s}.data-table tbody tr:hover{background:#f8fafc}.data-table tbody tr:last-child td{border-bottom:none}.data-table tbody tr:last-child td:first-child{border-radius:0 0 0 14px}.data-table tbody tr:last-child td:last-child{border-radius:0 0 14px}.status-pill{display:inline-flex;align-items:center;padding:5px 14px;border-radius:20px;font-size:12px;font-weight:600;text-transform:capitalize;letter-spacing:.3px}.status-draft{background:#f1f5f9;color:#475569}.status-pending{background:#fef3c7;color:#92400e}.status-approved{background:#d1fae5;color:#065f46}.status-rejected{background:#fee2e2;color:#991b1b}.status-active{background:#dbeafe;color:#1d4ed8}.status-cancelled{background:#f3f4f6;color:#4b5563}.status-refunded{background:#fce7f3;color:#9d174d}.status-sent{background:#e0e7ff;color:#3730a3}.status-overdue{background:#fee2e2;color:#991b1b}.status-paid{background:#d1fae5;color:#065f46}.status-expired{background:#f3f4f6;color:#6b7280}.category-tag{display:inline-flex;align-items:center;padding:4px 12px;border-radius:8px;font-size:12px;font-weight:500;background:#f1f5f9;color:#475569;text-transform:capitalize;border:1px solid #e2e8f0}.year-badge,.receipt-badge,.quote-badge{display:inline-flex;align-items:center;padding:5px 12px;border-radius:8px;font-size:13px;font-weight:600;background:#eef2ff;color:#4338ca;border:1px solid #e0e7ff}.payment-badge{display:inline-flex;align-items:center;padding:4px 12px;border-radius:8px;font-size:12px;font-weight:500;background:#f0fdfa;color:#0f766e;text-transform:capitalize;border:1px solid #ccfbf1}.amount-cell{font-weight:600;color:#0f172a;font-family:SF Mono,Courier New,monospace;font-size:14px}.progress-bar-sm{width:100px;height:6px;background:#e2e8f0;border-radius:3px;overflow:hidden;display:inline-block;vertical-align:middle;margin-right:10px}.progress-fill-sm{height:100%;border-radius:3px;transition:width .4s ease}.progress-text{font-size:11px;color:#64748b;font-weight:600}.actions{display:flex;gap:8px}.btn-icon{width:34px;height:34px;border-radius:8px;border:none;background:#f8fafc;color:#64748b;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s;border:1px solid #e2e8f0}.btn-icon:hover{background:#f1f5f9;color:#334155;border-color:#cbd5e1;transform:translateY(-1px)}.btn{padding:10px 20px;border:none;border-radius:10px;cursor:pointer;font-size:14px;font-weight:600;display:inline-flex;align-items:center;gap:8px;transition:all .2s}.btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 4px 6px #667eea40}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 12px #667eea59}.btn-secondary{background:#f1f5f9;color:#475569;border:1px solid #e2e8f0}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0f172a8c;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding:20px}.modal-content{background:#fff;border-radius:16px;width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:0 25px 50px -12px #00000026;border:1px solid #f1f5f9}.modal-content.wide-modal{max-width:800px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px 28px;border-bottom:1px solid #f1f5f9;background:linear-gradient(135deg,#f8fafc,#fff);border-radius:16px 16px 0 0}.modal-header h3{margin:0;color:#1e293b;font-size:18px;font-weight:700}.btn-close{background:#f1f5f9;border:none;color:#64748b;cursor:pointer;padding:8px;border-radius:8px;transition:all .2s;display:flex;align-items:center;justify-content:center}.btn-close:hover{background:#e2e8f0;color:#334155}.module-form{padding:28px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.form-group{display:flex;flex-direction:column}.form-group label{font-weight:600;margin-bottom:8px;color:#334155;font-size:13px}.form-group input,.form-group select,.form-group textarea{padding:11px 14px;border:1px solid #e2e8f0;border-radius:10px;font-size:14px;color:#334155;background:#fff;transition:all .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group input::placeholder{color:#94a3b8}.items-section{background:#f8fafc;padding:24px;border-radius:12px;margin-bottom:24px;border:1px solid #f1f5f9}.items-section h4{margin:0 0 16px;color:#1e293b;font-size:14px;font-weight:600}.item-row{display:grid;grid-template-columns:2fr .5fr 1fr auto auto;gap:12px;margin-bottom:12px;align-items:center}.item-row input{padding:8px 12px;border:1px solid #e2e8f0;border-radius:8px;font-size:13px}.item-amount{font-weight:600;color:#0f172a;font-size:13px;font-family:SF Mono,Courier New,monospace}.btn-remove{width:28px;height:28px;border-radius:50%;border:none;background:#fee2e2;color:#ef4444;cursor:pointer;font-size:16px;display:flex;align-items:center;justify-content:center;transition:all .2s}.btn-remove:hover{background:#fecaca}.btn-add-item{background:#dbeafe;color:#1d4ed8;border:none;padding:10px 18px;border-radius:8px;cursor:pointer;font-size:13px;font-weight:600;margin-top:12px;transition:all .2s}.btn-add-item:hover{background:#bfdbfe}.totals-section{background:#f8fafc;padding:20px 24px;border-radius:12px;margin-bottom:24px;border:1px solid #f1f5f9}.total-row{display:flex;justify-content:space-between;margin-bottom:10px;font-size:14px;color:#475569}.total-row.grand-total{font-weight:700;font-size:17px;color:#0f172a;border-top:2px solid #e2e8f0;padding-top:12px;margin-top:10px}.modal-actions{display:flex;justify-content:flex-end;gap:14px;padding-top:24px;border-top:1px solid #f1f5f9;margin-top:24px}.text-center{text-align:center;padding:48px;color:#94a3b8;font-size:14px}.text-success{color:#059669}.text-danger{color:#dc2626}.status-select{padding:6px 30px 6px 14px;border-radius:20px;border:none;font-size:12px;font-weight:600;cursor:pointer;-moz-appearance:none;appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center}@media (max-width: 1024px){.stats-row{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.stats-row,.form-row{grid-template-columns:1fr}.toolbar{flex-direction:column;align-items:stretch}.search-box{max-width:none}.module-header{flex-direction:column;gap:16px;align-items:flex-start}}.report-center{padding:24px;max-width:1400px;margin:0 auto;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.rc-header{margin-bottom:24px}.rc-header h1{display:flex;align-items:center;gap:12px;font-size:28px;font-weight:700;color:#1a237e;margin:0}.rc-header p{color:#666;margin:8px 0 0;font-size:15px}.rc-alert{display:flex;align-items:center;gap:10px;padding:14px 18px;border-radius:10px;margin-bottom:20px;font-size:14px;font-weight:500}.rc-alert-success{background:#e8f5e9;color:#2e7d32;border:1px solid #c8e6c9}.rc-alert-error{background:#ffebee;color:#c62828;border:1px solid #ffcdd2}.rc-dropdown-container{margin-bottom:24px}.rc-label{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:#555;margin-bottom:10px}.rc-dropdown{position:relative;max-width:400px}.rc-dropdown-toggle{display:flex;align-items:center;gap:12px;width:100%;padding:14px 18px;background:#fff;border:2px solid #e0e0e0;border-radius:12px;font-size:15px;font-weight:500;color:#333;cursor:pointer;transition:all .2s}.rc-dropdown-toggle:hover{border-color:#1a237e;box-shadow:0 2px 8px #1a237e1a}.rc-dropdown-toggle svg:last-child{margin-left:auto;transition:transform .2s}.rc-dropdown-toggle svg:last-child.open{transform:rotate(180deg)}.rc-dropdown-menu{position:absolute;top:calc(100% + 8px);left:0;right:0;background:#fff;border:1px solid #e0e0e0;border-radius:12px;box-shadow:0 8px 24px #0000001f;z-index:100;max-height:400px;overflow-y:auto;padding:8px}.rc-dropdown-item{display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px;border:none;background:none;border-radius:8px;font-size:14px;font-weight:500;color:#333;cursor:pointer;transition:all .15s;text-align:left}.rc-dropdown-item:hover{background:#f5f5f5}.rc-dropdown-item.active{background:#e8eaf6;color:#1a237e}.rc-dropdown-item svg:last-child{margin-left:auto}.rc-filters{background:#f8f9fa;border-radius:16px;padding:20px;margin-bottom:24px}.rc-filter-row{display:flex;flex-wrap:wrap;gap:14px;align-items:flex-end}.rc-search-box{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #ddd;border-radius:10px;padding:10px 14px;flex:1;min-width:200px}.rc-search-box input{border:none;outline:none;font-size:14px;width:100%;background:transparent}.rc-filter-group{display:flex;flex-direction:column;gap:6px}.rc-filter-group label{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px}.rc-filter-group select,.rc-filter-group input{padding:10px 12px;border:1px solid #ddd;border-radius:10px;font-size:14px;background:#fff;min-width:140px}.rc-btn-apply{display:flex;align-items:center;gap:8px;padding:11px 18px;background:#1a237e;color:#fff;border:none;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.rc-btn-apply:hover{background:#283593}.rc-actions{display:flex;align-items:center;justify-content:space-between;margin-top:16px;padding-top:16px;border-top:1px solid #e0e0e0}.rc-btn-excel{display:flex;align-items:center;gap:10px;padding:12px 20px;background:#1a237e;color:#fff;border:none;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.rc-btn-excel:hover:not(:disabled){background:#283593;transform:translateY(-1px);box-shadow:0 4px 12px #1a237e40}.rc-btn-print{display:flex;align-items:center;gap:10px;padding:12px 20px;background:#4caf50;color:#fff;border:none;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;margin-left:12px}.rc-btn-print:hover:not(:disabled){background:#388e3c;transform:translateY(-1px);box-shadow:0 4px 12px #4caf5040}.rc-btn-excel:disabled,.rc-btn-print:disabled{opacity:.5;cursor:not-allowed}.rc-filter-summary{font-size:13px;color:#666;margin-left:auto}.rc-table-container{background:#fff;border-radius:14px;box-shadow:0 2px 8px #0000000f;overflow:hidden;overflow-x:auto}.rc-table{width:100%;border-collapse:collapse;font-size:13px}.rc-table th{background:#1a237e;color:#fff;padding:14px 16px;text-align:left;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;white-space:nowrap}.rc-table td{padding:12px 16px;border-top:1px solid #f0f0f0;font-size:13px;color:#333}.rc-table tr:hover{background:#f8f9fa}.rc-action-view{padding:8px;border:none;border-radius:6px;background:#e3f2fd;color:#1565c0;cursor:pointer;transition:all .2s}.rc-action-view:hover{background:#1565c0;color:#fff}.rc-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px;color:#999}.rc-spin{animation:spin 1s linear infinite;margin-bottom:16px}.rc-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;color:#999;text-align:center}.rc-empty p{margin:16px 0 8px;font-size:16px;font-weight:500}.rc-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px}.rc-modal{background:#fff;border-radius:16px;max-width:700px;width:100%;max-height:90vh;overflow:hidden;box-shadow:0 20px 60px #0000004d}.rc-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #eee}.rc-modal-header h3{display:flex;align-items:center;gap:10px;margin:0;font-size:18px;color:#1a237e}.rc-btn-close{background:none;border:none;cursor:pointer;padding:8px;border-radius:8px;color:#999}.rc-modal-body{padding:24px;overflow-y:auto;max-height:60vh}.rc-detail-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.rc-detail-item{display:flex;flex-direction:column;gap:6px}.rc-detail-item label{font-size:12px;font-weight:600;color:#888;text-transform:uppercase;letter-spacing:.5px}.rc-detail-item span{font-size:14px;color:#333;word-break:break-word}.rc-modal-footer{display:flex;gap:12px;justify-content:flex-end;padding:16px 24px;border-top:1px solid #eee;background:#f8f9fa}.rc-btn-secondary{padding:10px 18px;background:#f5f5f5;color:#666;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer}@media (max-width: 768px){.rc-filter-row{flex-direction:column}.rc-filter-group,.rc-search-box{width:100%}.rc-actions{flex-direction:column;gap:10px;align-items:stretch}.rc-btn-print{margin-left:0}.rc-table-container{overflow-x:auto}.rc-table{min-width:800px}}.print-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px}.print-modal{background:#fff;border-radius:16px;width:90%;max-width:900px;max-height:90vh;overflow:hidden;box-shadow:0 20px 60px #0000004d}.print-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #eee}.print-modal-header h3{margin:0;font-size:18px;color:#1a237e}.print-modal-header button{background:none;border:none;cursor:pointer;padding:8px;border-radius:8px;color:#999}.print-modal-body{padding:0;overflow:hidden}.print-modal-footer{display:flex;gap:12px;justify-content:flex-end;padding:16px 24px;border-top:1px solid #eee;background:#f8f9fa}.btn-secondary{padding:10px 18px;background:#f5f5f5;color:#666;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer}.btn-primary{display:flex;align-items:center;gap:8px;padding:10px 18px;background:#1a237e;color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer}.btn-primary:hover{background:#283593}.finance{padding:24px;max-width:1400px;margin:0 auto;font-family:Segoe UI,Helvetica Neue,Arial,sans-serif;color:#1e293b;background:#f8fafc;min-height:100vh}.finance .module-nav{display:flex;gap:8px;margin-bottom:24px;padding:16px;background:#fff;border-radius:16px;box-shadow:0 1px 3px #00000014;flex-wrap:wrap;border:1px solid #e2e8f0}.finance .module-nav button{padding:10px 20px;background:#f1f5f9;color:#475569;border:none;border-radius:10px;cursor:pointer;font-weight:600;font-size:14px;transition:all .2s;display:flex;align-items:center;gap:8px}.finance .module-nav button:hover{background:#e2e8f0;color:#1e293b;transform:translateY(-1px)}.finance .module-nav button.active{background:#1e293b;color:#fff;box-shadow:0 4px 12px #1e293b33}.finance .page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding:0 4px}.finance .page-header h1{font-size:28px;font-weight:700;color:#1e293b;margin:0;letter-spacing:-.5px}.finance .page-header p{color:#64748b;margin:6px 0 0;font-size:15px}.finance .tabs{display:flex;gap:4px;margin-bottom:24px;background:#f1f5f9;padding:6px;border-radius:12px;width:fit-content}.finance .tab{padding:10px 20px;background:transparent;color:#64748b;border:none;border-radius:10px;cursor:pointer;font-weight:600;font-size:14px;transition:all .2s}.finance .tab:hover{color:#1e293b}.finance .tab.active{background:#fff;color:#1e293b;box-shadow:0 1px 3px #0000001a}.finance .stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;margin-bottom:24px}.finance .stat-card{background:#fff;border-radius:16px;padding:24px;box-shadow:0 1px 3px #00000014;border:1px solid #e2e8f0;transition:all .2s;position:relative;overflow:hidden}.finance .stat-card:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;border-radius:4px 0 0 4px}.finance .stat-card:hover{transform:translateY(-2px);box-shadow:0 8px 25px #0000001a}.finance .stat-card.primary:before{background:#3b82f6}.finance .stat-card.success:before{background:#10b981}.finance .stat-card.warning:before{background:#f59e0b}.finance .stat-card.danger:before{background:#ef4444}.finance .stat-card.info:before{background:#06b6d4}.finance .stat-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;margin-bottom:16px;font-size:24px}.finance .stat-card.primary .stat-icon{background:#eff6ff;color:#3b82f6}.finance .stat-card.success .stat-icon{background:#ecfdf5;color:#10b981}.finance .stat-card.warning .stat-icon{background:#fffbeb;color:#f59e0b}.finance .stat-card.danger .stat-icon{background:#fef2f2;color:#ef4444}.finance .stat-card.info .stat-icon{background:#ecfeff;color:#06b6d4}.finance .stat-value{font-size:32px;font-weight:700;color:#1e293b;margin-bottom:4px;letter-spacing:-.5px}.finance .stat-label{font-size:14px;color:#64748b;font-weight:500}.finance .stat-change{font-size:13px;font-weight:600;margin-top:8px;display:flex;align-items:center;gap:4px}.finance .stat-change.up{color:#10b981}.finance .stat-change.down{color:#ef4444}.finance .dashboard-section{background:#fff;border-radius:16px;padding:24px;margin-bottom:24px;box-shadow:0 1px 3px #00000014;border:1px solid #e2e8f0}.finance .section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid #f1f5f9}.finance .section-header h3{font-size:18px;font-weight:700;color:#1e293b;margin:0}.finance .section-header p{font-size:13px;color:#64748b;margin:4px 0 0}.finance .data-table{width:100%;border-collapse:separate;border-spacing:0;font-size:14px}.finance .data-table thead th{font-size:12px;font-weight:700;color:#64748b;background:#f8fafc;padding:14px 16px;text-transform:uppercase;letter-spacing:.05em;border-bottom:2px solid #e2e8f0;text-align:left}.finance .data-table tbody td{padding:14px 16px;border-bottom:1px solid #f1f5f9;color:#334155;font-weight:500}.finance .data-table tbody tr:hover{background:#f8fafc}.finance .data-table tbody tr:last-child td{border-bottom:none}.finance .badge{display:inline-flex;align-items:center;padding:6px 14px;border-radius:20px;font-size:12px;font-weight:600;letter-spacing:.3px}.finance .badge-success{background:#ecfdf5;color:#059669}.finance .badge-warning{background:#fffbeb;color:#d97706}.finance .badge-danger{background:#fef2f2;color:#dc2626}.finance .badge-info{background:#ecfeff;color:#0891b2}.finance .badge-secondary{background:#f1f5f9;color:#475569}.finance .btn{display:inline-flex;align-items:center;gap:8px;padding:10px 18px;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;border:none}.finance .btn-primary{background:#1e293b;color:#fff}.finance .btn-primary:hover{background:#334155;transform:translateY(-1px);box-shadow:0 4px 12px #1e293b40}.finance .btn-secondary{background:#f1f5f9;color:#475569}.finance .btn-secondary:hover{background:#e2e8f0}.finance .btn-danger{background:#fef2f2;color:#dc2626}.finance .btn-danger:hover{background:#fee2e2}.finance .amount{font-weight:700;color:#1e293b;font-size:15px}.finance .amount-positive{color:#059669}.finance .amount-negative{color:#dc2626}.finance .cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:20px}.finance .info-card{background:#fff;border-radius:16px;padding:24px;box-shadow:0 1px 3px #00000014;border:1px solid #e2e8f0}.finance .info-card h4{font-size:16px;font-weight:700;color:#1e293b;margin:0 0 16px}.finance .progress-bar{width:100%;height:8px;background:#f1f5f9;border-radius:4px;overflow:hidden;margin:8px 0}.finance .progress-fill{height:100%;border-radius:4px;transition:width .3s}.finance .loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px;color:#94a3b8}.finance .empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;color:#94a3b8;text-align:center}.finance .empty-state p{margin:16px 0 0;font-size:16px;font-weight:500}@media (max-width: 768px){.finance{padding:16px}.finance .stats-grid{grid-template-columns:1fr}.finance .module-nav{flex-direction:column}.finance .page-header{flex-direction:column;gap:16px;align-items:flex-start}}.btn-icon{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;border:none;background:#edf2f7;color:#4a5568;cursor:pointer;transition:all .2s;margin:0 2px}.btn-icon:hover{background:#e2e8f0;color:#2d3748;transform:scale(1.1)}.btn-danger{background:#fed7d7;color:#c53030}.btn-danger:hover{background:#feb2b2;color:#9b2c2c}.budget-indicator{display:flex;align-items:center;gap:8px}.progress-bar{width:80px;height:8px;background:#e2e8f0;border-radius:4px;overflow:hidden}.progress-fill{height:100%;border-radius:4px;transition:width .3s ease}.status-badge.healthy{background:#e8f5e9;color:#4caf50}.status-badge.caution{background:#f1f8e9;color:#8bc34a}.status-badge.warning{background:#fff3e0;color:#ff9800}.status-badge.critical{background:#fbe9e7;color:#ff5722}.status-badge.over-budget{background:#ffebee;color:#f44336}table .btn-icon{width:36px!important;height:36px!important;border-radius:8px!important;border:2px solid #94a3b8!important;background:#fff!important;color:#334155!important;box-shadow:0 2px 4px #00000026!important;font-weight:700!important}table .btn-icon:hover{background:#f1f5f9!important;transform:translateY(-2px)!important;box-shadow:0 4px 8px #0003!important}table .btn-danger{background:#fef2f2!important;border-color:#f87171!important;color:#dc2626!important}table .btn-danger:hover{background:#fee2e2!important;border-color:#dc2626!important}.attachment-links{display:flex;flex-direction:column;gap:4px}.attachment-link{font-size:12px;color:#2196f3;text-decoration:none;display:flex;align-items:center;gap:4px}.attachment-link:hover{text-decoration:underline}.no-attachment{color:#ccc;font-size:12px}.existing-attachments{margin-bottom:8px;padding:8px;background:#f5f5f5;border-radius:4px}.existing-attachments small{display:block;color:#666;margin-bottom:4px}.existing-attachment-link{display:block;font-size:12px;color:#2196f3;text-decoration:none;margin:2px 0}.existing-attachment-link:hover{text-decoration:underline}.attachment-item{display:flex;align-items:center;gap:6px}.btn-delete-attachment{background:none;border:none;cursor:pointer;font-size:12px;padding:2px;opacity:.6}.btn-delete-attachment:hover{opacity:1}.guard-tracking-container{padding:24px;max-width:1400px;margin:0 auto}.tracking-header{margin-bottom:24px}.tracking-header h2{display:flex;align-items:center;gap:12px;font-size:1.5rem;font-weight:700;color:#111827;margin:0 0 8px}.tracking-header p{color:#6b7280;margin:0}.tracking-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.stat-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px;display:flex;align-items:center;gap:16px}.stat-card.alert svg{color:#dc2626}.stat-card h3{font-size:1.5rem;font-weight:700;margin:0;color:#111827}.tracking-filters{display:flex;gap:16px;margin-bottom:20px}.search-box input{border:none;outline:none;font-size:.875rem;width:100%}.guards-table{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.guards-table table{width:100%;border-collapse:collapse;font-size:.875rem}.guards-table th{padding:12px 16px;text-align:left;font-weight:600;color:#374151;background:#f9fafb;border-bottom:1px solid #e5e7eb}.guards-table td{padding:14px 16px;border-bottom:1px solid #f3f4f6}.guards-table tr:hover{background:#f9fafb}.guards-table tr.has-alert{background:#fef2f2}.guard-cell{display:flex;align-items:center;gap:12px}.guard-avatar{width:36px;height:36px;border-radius:50%;background:linear-gradient(135deg,#1e40af,#3b82f6);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.875rem}.guard-name{font-weight:600;color:#111827}.guard-site{color:#6b7280;font-size:.75rem}.badge{padding:4px 10px;border-radius:20px;font-size:.75rem;font-weight:600}.badge.uniform{background:#eff6ff;color:#2563eb}.badge.asset{background:#ecfdf5;color:#059669}.alert-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:20px;font-size:.75rem;font-weight:600}.alert-badge.high{background:#fef2f2;color:#dc2626}.alert-badge.medium{background:#fef3c7;color:#92400e}.clean-badge{display:inline-flex;align-items:center;gap:6px;color:#059669;font-size:.75rem;font-weight:600}.btn-view{padding:6px 14px;border-radius:6px;border:none;background:#2563eb;color:#fff;font-size:.875rem;cursor:pointer}.btn-view:hover{background:#1d4ed8}.modal-content{background:#fff;border-radius:16px;width:100%;max-width:800px;max-height:90vh;overflow-y:auto}.modal-header h3{margin:0;font-size:1.125rem}.btn-close{background:none;border:none;cursor:pointer;font-size:1.25rem;color:#6b7280}.alerts-section{background:#fef2f2;border:1px solid #fecaca;border-radius:10px;padding:16px;margin-bottom:20px}.alerts-section h4{display:flex;align-items:center;gap:8px;margin:0 0 12px;color:#dc2626}.alert-item{padding:8px 12px;border-radius:6px;margin-bottom:8px;font-size:.875rem}.alert-item.high{background:#fee2e2;color:#991b1b}.alert-item.medium{background:#fef3c7;color:#92400e}.frequency-section{margin-bottom:20px}.frequency-section h4{display:flex;align-items:center;gap:8px;margin:0 0 12px;color:#374151}.freq-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:10px}.freq-item{display:flex;justify-content:space-between;align-items:center;padding:10px 14px;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb}.freq-item.high-freq{background:#fef2f2;border-color:#fecaca;color:#dc2626}.items-list h4{margin:0 0 12px;color:#374151}.items-table{width:100%;border-collapse:collapse;font-size:.875rem}.items-table th{padding:10px 12px;text-align:left;background:#f9fafb;font-weight:600;color:#374151}.items-table td{padding:10px 12px;border-bottom:1px solid #f3f4f6}.type-badge{padding:2px 8px;border-radius:4px;font-size:.75rem;font-weight:600}.type-badge.uniform{background:#eff6ff;color:#2563eb}.type-badge.asset{background:#ecfdf5;color:#059669}.empty{color:#6b7280;font-style:italic}.loading{text-align:center;padding:40px;color:#6b7280}@media (max-width: 768px){.tracking-stats{grid-template-columns:repeat(2,1fr)}.tracking-filters{flex-direction:column}}.records{display:flex;flex-direction:column;gap:var(--spacing-6)}.page-header{display:flex;align-items:center;justify-content:space-between}.page-header h1{font-size:var(--font-size-2xl);font-weight:700;color:var(--gray-900);margin-bottom:var(--spacing-1)}.page-header p{color:var(--gray-500);margin:0}.tabs{display:flex;gap:var(--spacing-2);border-bottom:2px solid var(--gray-200);padding-bottom:var(--spacing-2)}.tab{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-3) var(--spacing-4);background:none;border:none;color:var(--gray-600);font-size:var(--font-size-sm);font-weight:500;cursor:pointer;border-radius:var(--radius-md);transition:all var(--transition-fast)}.tab:hover{background:var(--gray-100);color:var(--gray-900)}.tab.active{background:var(--primary-blue);color:var(--white)}.section-toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-4)}.search-box{display:flex;align-items:center;gap:var(--spacing-2);background:var(--white);border:1px solid var(--gray-200);border-radius:var(--radius-lg);padding:var(--spacing-2) var(--spacing-4);min-width:300px}.search-box input{border:none;background:none;outline:none;font-size:var(--font-size-sm);width:100%}.filter-buttons{display:flex;gap:var(--spacing-2)}.assets-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--spacing-4)}.asset-card{background:var(--white);border-radius:var(--radius-lg);padding:var(--spacing-5);border:1px solid var(--gray-200);position:relative}.asset-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-3)}.asset-id{font-size:var(--font-size-xs);color:var(--gray-500);font-family:monospace}.asset-status{padding:var(--spacing-1) var(--spacing-2);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:600;text-transform:capitalize}.asset-status.available{background:#d1fae5;color:#065f46}.asset-status.assigned{background:#dbeafe;color:#1e40af}.asset-status.maintenance{background:#fef3c7;color:#92400e}.asset-card h4{font-size:var(--font-size-base);font-weight:600;color:var(--gray-900);margin-bottom:var(--spacing-1)}.asset-category{font-size:var(--font-size-sm);color:var(--primary-blue);text-transform:capitalize;margin-bottom:var(--spacing-3)}.asset-details{display:flex;flex-direction:column;gap:var(--spacing-1);font-size:var(--font-size-sm);color:var(--gray-600);margin-bottom:var(--spacing-3)}.asset-actions{position:absolute;top:var(--spacing-3);right:var(--spacing-3);display:flex;gap:var(--spacing-1)}.uniforms-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--spacing-4);margin-bottom:var(--spacing-6)}.uniform-stat{background:var(--white);border-radius:var(--radius-lg);padding:var(--spacing-4);text-align:center;border:1px solid var(--gray-200)}.uniform-stat h3{font-size:var(--font-size-xs);color:var(--gray-500);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--spacing-2)}.stat-value{font-size:var(--font-size-2xl);font-weight:700;color:var(--gray-900)}.audit-list{display:flex;flex-direction:column;gap:var(--spacing-4)}.audit-card{background:var(--white);border-radius:var(--radius-lg);padding:var(--spacing-5);border:1px solid var(--gray-200)}.audit-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-2)}.audit-header h4{font-size:var(--font-size-base);font-weight:600;color:var(--gray-900)}.audit-date{font-size:var(--font-size-sm);color:var(--gray-500)}.audit-card p{color:var(--gray-600);margin-bottom:var(--spacing-3)}.audit-meta{display:flex;align-items:center;gap:var(--spacing-3);margin-bottom:var(--spacing-3);font-size:var(--font-size-sm);color:var(--gray-500)}.audit-actions{display:flex;gap:var(--spacing-2)}.policies-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:var(--spacing-4)}.policy-card{background:var(--white);border-radius:var(--radius-lg);padding:var(--spacing-6);border:1px solid var(--gray-200);text-align:center;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-3)}.policy-card svg{color:var(--primary-blue)}.policy-card h4{font-size:var(--font-size-base);font-weight:600;color:var(--gray-900)}.policy-card p{font-size:var(--font-size-sm);color:var(--gray-500);margin:0}@media (max-width: 768px){.assets-grid,.policies-grid{grid-template-columns:1fr}.uniforms-stats{grid-template-columns:repeat(2,1fr)}}.uniforms-section{background:var(--white);border-radius:var(--radius-lg);padding:var(--spacing-4);border:1px solid var(--gray-200)}.uniforms-table thead th{font-size:var(--font-size-sm);font-weight:700;color:var(--gray-900);text-transform:uppercase;letter-spacing:.05em;padding:var(--spacing-3) var(--spacing-4);background:var(--gray-50);border-bottom:2px solid var(--gray-300)}.uniforms-table tbody tr{border-bottom:1px solid var(--gray-200)}.uniforms-table tbody tr:hover{background:var(--gray-50)}.uniforms-table .cell-primary{font-size:var(--font-size-base);font-weight:700;color:var(--gray-900);margin-bottom:var(--spacing-1)}.uniforms-table .cell-secondary{font-size:var(--font-size-xs);font-weight:500;color:var(--gray-600)}.uniforms-table td:nth-child(2){font-size:var(--font-size-sm);font-weight:600;color:var(--primary-blue);text-transform:capitalize}.uniforms-table td:nth-child(3){font-size:var(--font-size-sm);font-weight:600;color:var(--gray-800);font-family:monospace}.uniforms-table td:nth-child(4){font-size:var(--font-size-sm);font-weight:500;color:var(--gray-700)}.uniforms-table .badge{font-size:var(--font-size-xs);font-weight:700;padding:var(--spacing-1) var(--spacing-3);border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.05em}.uniforms-table .badge-success{background:#d1fae5;color:#065f46}.uniforms-table .badge-warning{background:#fef3c7;color:#92400e}.uniforms-table .badge-danger{background:#fee2e2;color:#991b1b}.uniforms-table .btn-sm{font-size:var(--font-size-xs);font-weight:600;padding:var(--spacing-1) var(--spacing-3)}.uniforms-stats .uniform-stat{background:var(--white);border:2px solid var(--gray-200);box-shadow:0 1px 3px #0000001a}.uniforms-stats .uniform-stat h3{font-size:var(--font-size-xs);font-weight:700;color:var(--gray-600)}.uniforms-stats .stat-value{font-size:var(--font-size-3xl);font-weight:800;color:var(--primary-blue)}.uniforms-section .section-toolbar h2{font-size:var(--font-size-xl);font-weight:700;color:var(--gray-900)}.inventory-module{padding:24px;max-width:1400px;margin:0 auto;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.inv-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.inv-header h1{display:flex;align-items:center;gap:12px;font-size:28px;font-weight:700;color:#1a237e;margin:0}.inv-header p{color:#666;margin:8px 0 0;font-size:15px}.inv-btn-primary{display:flex;align-items:center;gap:8px;padding:12px 20px;background:#1a237e;color:#fff;border:none;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.inv-btn-primary:hover{background:#283593;transform:translateY(-1px);box-shadow:0 4px 12px #1a237e40}.inv-btn-secondary{padding:10px 18px;background:#f5f5f5;color:#666;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer}.inv-alert{display:flex;align-items:center;gap:10px;padding:14px 18px;border-radius:10px;margin-bottom:20px;font-size:14px;font-weight:500}.inv-alert-success{background:#e8f5e9;color:#2e7d32;border:1px solid #c8e6c9}.inv-alert-error{background:#ffebee;color:#c62828;border:1px solid #ffcdd2}.inv-tabs{display:flex;gap:8px;margin-bottom:24px;flex-wrap:wrap}.inv-tab{display:flex;align-items:center;gap:8px;padding:12px 20px;background:#fff;border:2px solid #e0e0e0;border-radius:12px;font-size:14px;font-weight:600;color:#666;cursor:pointer;transition:all .2s}.inv-tab:hover{border-color:#bbb}.inv-tab.active{border-color:#1a237e;color:#1a237e;background:#e8eaf6}.inv-tab-count{background:#1a237e;color:#fff;padding:2px 8px;border-radius:10px;font-size:11px}.inv-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;margin-bottom:24px}.inv-stat-card{background:#fff;border-radius:12px;padding:18px;border-left:4px solid;box-shadow:0 2px 8px #0000000f}.inv-stat-number{display:block;font-size:28px;font-weight:700;color:#1a237e}.inv-stat-label{font-size:13px;color:#888}.inv-search-bar{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #ddd;border-radius:10px;padding:12px 16px;margin-bottom:24px;max-width:400px}.inv-search-bar input{border:none;outline:none;font-size:14px;width:100%;background:transparent}.inv-items-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:20px}.inv-item-card{background:#fff;border-radius:14px;padding:20px;box-shadow:0 2px 8px #0000000f;transition:all .2s;border:2px solid transparent}.inv-item-card:hover{box-shadow:0 4px 16px #0000001a;transform:translateY(-2px)}.inv-item-card.low-stock{border-color:#f44336}.inv-item-header{display:flex;align-items:flex-start;gap:12px;margin-bottom:14px}.inv-item-icon{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:10px;flex-shrink:0}.inv-item-title h4{margin:0;font-size:15px;font-weight:600;color:#1a237e}.inv-item-code{font-size:12px;color:#888}.inv-stock-badge{margin-left:auto;padding:6px 12px;border-radius:20px;font-size:12px;font-weight:600}.inv-stock-badge.good{background:#e8f5e9;color:#2e7d32}.inv-stock-badge.warning{background:#ffebee;color:#c62828}.inv-item-details{margin-bottom:14px}.inv-detail-row{display:flex;justify-content:space-between;font-size:13px;color:#666;margin-bottom:6px}.inv-detail-row span{display:flex;align-items:center;gap:6px}.inv-stock-bar{height:6px;background:#f0f0f0;border-radius:3px;margin-bottom:14px;overflow:hidden}.inv-stock-fill{height:100%;border-radius:3px;transition:width .3s}.inv-item-actions{display:flex;gap:8px}.inv-action-btn{flex:1;display:flex;align-items:center;justify-content:center;padding:10px;border:none;border-radius:8px;cursor:pointer;transition:all .2s;color:#fff}.inv-action-btn:hover{opacity:.9;transform:scale(1.05)}.inv-action-btn.purchase{background:#4caf50}.inv-action-btn.distribute{background:#2196f3}.inv-action-btn.delete{background:#f44336}.inv-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px}.inv-modal{background:#fff;border-radius:16px;max-width:600px;width:100%;max-height:90vh;overflow:hidden;box-shadow:0 20px 60px #0000004d}.inv-modal-large{max-width:900px}.inv-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #eee}.inv-modal-header h3{display:flex;align-items:center;gap:10px;margin:0;font-size:18px;color:#1a237e}.inv-modal-header button{background:none;border:none;cursor:pointer;padding:8px;border-radius:8px;color:#999}.inv-form{padding:24px;overflow-y:auto;max-height:70vh}.inv-form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.inv-form-group{display:flex;flex-direction:column;gap:6px}.inv-form-group label{font-size:13px;font-weight:600;color:#555}.inv-form-group input,.inv-form-group select,.inv-form-group textarea{padding:10px 14px;border:1px solid #ddd;border-radius:10px;font-size:14px;background:#fff}.inv-form-group input:focus,.inv-form-group select:focus,.inv-form-group textarea:focus{outline:none;border-color:#1a237e}.inv-form-group input.readonly{background:#f5f5f5;color:#666}.inv-form-full{grid-column:1 / -1}.inv-modal-footer{display:flex;gap:12px;justify-content:flex-end;padding:16px 24px;border-top:1px solid #eee;background:#f8f9fa}.inv-detail-body{padding:24px;overflow-y:auto;max-height:70vh}.inv-detail-section{margin-bottom:24px}.inv-detail-section h4{display:flex;align-items:center;gap:8px;margin:0 0 16px;font-size:14px;font-weight:600;color:#1a237e;text-transform:uppercase;letter-spacing:1px}.inv-detail-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:16px}.inv-detail-grid div{display:flex;flex-direction:column;gap:4px}.inv-detail-grid label{font-size:12px;font-weight:600;color:#888;text-transform:uppercase}.inv-detail-grid span{font-size:14px;color:#333;font-weight:500}.inv-stock-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.inv-stock-box{background:#f8f9fa;border-radius:12px;padding:20px;text-align:center}.inv-stock-box.highlight{background:#e8eaf6}.inv-stock-number{display:block;font-size:32px;font-weight:700;color:#1a237e}.inv-stock-box span:last-child{font-size:13px;color:#888}.inv-log-table{width:100%;border-collapse:collapse;font-size:13px}.inv-log-table th{background:#f8f9fa;padding:10px 12px;text-align:left;font-size:11px;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px}.inv-log-table td{padding:10px 12px;border-top:1px solid #f0f0f0}.inv-loading,.inv-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;color:#999;text-align:center}.inv-empty p{margin:16px 0 12px;font-size:16px}@media (max-width: 768px){.inv-header{flex-direction:column;gap:16px;align-items:flex-start}.inv-form-row,.inv-items-grid,.inv-stock-summary{grid-template-columns:1fr}}.record-pull{padding:24px;max-width:1400px;margin:0 auto;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.rp-header{margin-bottom:24px}.rp-header h1{display:flex;align-items:center;gap:12px;font-size:28px;font-weight:700;color:#1a237e;margin:0}.rp-header p{color:#666;margin:8px 0 0;font-size:15px}.rp-alert{display:flex;align-items:center;gap:10px;padding:14px 18px;border-radius:10px;margin-bottom:20px;font-size:14px;font-weight:500}.rp-alert-success{background:#e8f5e9;color:#2e7d32;border:1px solid #c8e6c9}.rp-alert-error{background:#ffebee;color:#c62828;border:1px solid #ffcdd2}.rp-dropdown-container{margin-bottom:24px}.rp-label{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600;color:#555;margin-bottom:10px}.rp-dropdown{position:relative;max-width:400px}.rp-dropdown-toggle{display:flex;align-items:center;gap:12px;width:100%;padding:14px 18px;background:#fff;border:2px solid #e0e0e0;border-radius:12px;font-size:15px;font-weight:500;color:#333;cursor:pointer;transition:all .2s}.rp-dropdown-toggle:hover{border-color:#1a237e;box-shadow:0 2px 8px #1a237e1a}.rp-dropdown-toggle svg:last-child{margin-left:auto;transition:transform .2s}.rp-dropdown-toggle svg:last-child.open{transform:rotate(180deg)}.rp-dropdown-menu{position:absolute;top:calc(100% + 8px);left:0;right:0;background:#fff;border:1px solid #e0e0e0;border-radius:12px;box-shadow:0 8px 24px #0000001f;z-index:100;max-height:400px;overflow-y:auto;padding:8px}.rp-dropdown-item{display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px;border:none;background:none;border-radius:8px;font-size:14px;font-weight:500;color:#333;cursor:pointer;transition:all .15s;text-align:left}.rp-dropdown-item:hover{background:#f5f5f5}.rp-dropdown-item.active{background:#e8eaf6;color:#1a237e}.rp-dropdown-item svg:last-child{margin-left:auto}.rp-advanced-filters{background:#f8f9fa;border-radius:16px;padding:20px;margin-bottom:24px}.rp-filter-row{display:flex;flex-wrap:wrap;gap:14px;align-items:flex-end}.rp-search-box{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #ddd;border-radius:10px;padding:10px 14px;flex:1;min-width:200px}.rp-search-box input{border:none;outline:none;font-size:14px;width:100%;background:transparent}.rp-filter-group{display:flex;flex-direction:column;gap:6px}.rp-filter-group label{display:flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px}.rp-filter-group select,.rp-filter-group input{padding:10px 12px;border:1px solid #ddd;border-radius:10px;font-size:14px;background:#fff;min-width:140px}.rp-filter-group select:focus,.rp-filter-group input:focus{outline:none;border-color:#1a237e}.rp-btn-apply{display:flex;align-items:center;gap:8px;padding:11px 18px;background:#1a237e;color:#fff;border:none;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.rp-btn-apply:hover{background:#283593}.rp-bulk-actions{display:flex;align-items:center;justify-content:space-between;margin-top:16px;padding-top:16px;border-top:1px solid #e0e0e0}.rp-btn-bulk-excel{display:flex;align-items:center;gap:10px;padding:12px 20px;background:#1a237e;color:#fff;border:none;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.rp-btn-bulk-excel:hover:not(:disabled){background:#283593;transform:translateY(-1px);box-shadow:0 4px 12px #1a237e40}.rp-btn-bulk-excel:disabled{opacity:.5;cursor:not-allowed}.rp-filter-summary{font-size:13px;color:#666}.rp-modern-cards{display:flex;flex-direction:column;gap:14px}.rp-modern-card{display:flex;align-items:center;justify-content:space-between;background:#fff;border-radius:14px;padding:18px 22px;border-left:4px solid;box-shadow:0 2px 8px #0000000f;transition:all .2s}.rp-modern-card:hover{box-shadow:0 4px 16px #0000001a;transform:translateY(-1px)}.rp-card-main{display:flex;align-items:flex-start;gap:16px;flex:1}.rp-card-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:12px;flex-shrink:0}.rp-card-info{flex:1;min-width:0}.rp-card-info h4{margin:0 0 8px;font-size:16px;font-weight:600;color:#1a237e}.rp-card-tags{display:flex;gap:8px;margin-bottom:10px;flex-wrap:wrap}.rp-status-badge{display:inline-flex;align-items:center;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600}.status-success{background:#e8f5e9;color:#2e7d32}.status-warning{background:#fff3e0;color:#ef6c00}.status-danger{background:#ffebee;color:#c62828}.status-default{background:#f5f5f5;color:#666}.rp-type-badge{display:inline-flex;align-items:center;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:500;background:#e3f2fd;color:#1565c0}.rp-card-meta{display:flex;gap:16px;flex-wrap:wrap;font-size:13px;color:#888;margin-bottom:8px}.rp-card-meta span{display:flex;align-items:center;gap:6px}.rp-card-desc{margin:0;font-size:13px;color:#666;line-height:1.5}.rp-card-actions-modern{display:flex;gap:8px;margin-left:16px}.rp-action-btn{display:flex;flex-direction:column;align-items:center;gap:4px;padding:10px 14px;border:none;border-radius:10px;font-size:11px;font-weight:600;cursor:pointer;transition:all .2s;min-width:64px}.rp-action-btn span{font-size:10px}.rp-action-view{background:#e3f2fd;color:#1565c0}.rp-action-view:hover{background:#1565c0;color:#fff}.rp-action-print{background:#f3e5f5;color:#7b1fa2}.rp-action-print:hover{background:#7b1fa2;color:#fff}.rp-action-download{background:#e8f5e9;color:#2e7d32}.rp-action-download:hover{background:#2e7d32;color:#fff}.rp-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px;color:#999}.rp-spin{animation:spin 1s linear infinite;margin-bottom:16px}.rp-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 20px;color:#999;text-align:center}.rp-empty p{margin:16px 0 8px;font-size:16px;font-weight:500}.rp-empty span{font-size:14px}.rp-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px}.rp-modal{background:#fff;border-radius:16px;max-width:700px;width:100%;max-height:90vh;overflow:hidden;box-shadow:0 20px 60px #0000004d}.rp-modal-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;border-bottom:1px solid #eee}.rp-modal-header h3{display:flex;align-items:center;gap:10px;margin:0;font-size:18px;color:#1a237e}.rp-btn-close{background:none;border:none;cursor:pointer;padding:8px;border-radius:8px;color:#999;transition:all .2s}.rp-btn-close:hover{background:#f5f5f5;color:#333}.rp-modal-body{padding:24px;overflow-y:auto;max-height:60vh}.rp-detail-section h4{margin:0 0 16px;font-size:14px;font-weight:600;color:#1a237e;text-transform:uppercase;letter-spacing:1px}.rp-detail-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.rp-detail-item{display:flex;flex-direction:column;gap:6px}.rp-detail-item label{font-size:12px;font-weight:600;color:#888;text-transform:uppercase;letter-spacing:.5px}.rp-detail-item span{font-size:14px;color:#333;word-break:break-word}.rp-modal-footer{display:flex;gap:12px;justify-content:flex-end;padding:16px 24px;border-top:1px solid #eee;background:#f8f9fa}.rp-btn{display:flex;align-items:center;gap:8px;padding:10px 18px;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s}.rp-btn-secondary{background:#f5f5f5;color:#666}.rp-btn-secondary:hover{background:#e0e0e0}.rp-btn-print{background:#f3e5f5;color:#7b1fa2}.rp-btn-print:hover{background:#7b1fa2;color:#fff}.rp-btn-download{background:#e8f5e9;color:#2e7d32}.rp-btn-download:hover{background:#2e7d32;color:#fff}@media (max-width: 768px){.record-pull{padding:16px}.rp-filter-row{flex-direction:column}.rp-filter-group,.rp-search-box{width:100%}.rp-modern-card{flex-direction:column;align-items:flex-start}.rp-card-actions-modern{margin-left:0;margin-top:14px;width:100%;justify-content:stretch}.rp-action-btn{flex:1}.rp-bulk-actions{flex-direction:column;gap:10px;align-items:stretch}.rp-detail-grid{grid-template-columns:1fr}}.client-area{padding:24px;max-width:1400px;margin:0 auto;background:#f8fafc;min-height:100vh}.ca-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid #e2e8f0}.ca-header-left{display:flex;align-items:center;gap:12px}.ca-icon{color:#1976d2;width:32px;height:32px}.ca-title{font-size:24px;font-weight:700;color:#1e293b;margin:0}.ca-subtitle{font-size:14px;color:#64748b;margin:4px 0 0}.ca-btn-primary{display:inline-flex;align-items:center;gap:8px;background:#1976d2;color:#fff;border:none;padding:10px 20px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.ca-btn-primary:hover{background:#1565c0;transform:translateY(-1px);box-shadow:0 4px 12px #1976d24d}.ca-btn-secondary{display:inline-flex;align-items:center;gap:8px;background:#f1f5f9;color:#475569;border:1px solid #e2e8f0;padding:10px 20px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer}.ca-btn-secondary:hover{background:#e2e8f0}.ca-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.ca-stat-card{background:#fff;border-radius:12px;padding:20px;display:flex;align-items:center;gap:16px;box-shadow:0 1px 3px #0000001a;border:1px solid #e2e8f0}.ca-stat-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center}.ca-stat-value{font-size:24px;font-weight:700;color:#1e293b;display:block}.ca-stat-label{font-size:13px;color:#64748b}.ca-message{display:flex;align-items:center;gap:8px;padding:12px 16px;border-radius:8px;margin-bottom:16px;font-size:14px}.ca-message-success{background:#e8f5e9;color:#2e7d32;border:1px solid #a5d6a7}.ca-message-error{background:#ffebee;color:#c62828;border:1px solid #ef9a9a}.ca-filters{display:flex;gap:12px;margin-bottom:20px;align-items:center}.ca-search-box{flex:1;display:flex;align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:0 12px;max-width:400px}.ca-search-icon{color:#94a3b8;margin-right:8px}.ca-search-box input{flex:1;border:none;outline:none;padding:10px 0;font-size:14px;background:transparent}.ca-search-btn{background:#1976d2;color:#fff;border:none;padding:8px 16px;border-radius:6px;font-size:13px;cursor:pointer;margin-left:8px}.ca-filter-group{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;padding:0 12px;color:#64748b}.ca-filter-group select{border:none;outline:none;padding:10px 8px;font-size:14px;background:transparent;color:#475569;cursor:pointer}.ca-table-container{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;border:1px solid #e2e8f0;overflow:hidden}.ca-table{width:100%;border-collapse:collapse}.ca-table th{background:#f8fafc;padding:14px 16px;text-align:left;font-size:12px;font-weight:600;color:#64748b;text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid #e2e8f0}.ca-table td{padding:14px 16px;border-bottom:1px solid #f1f5f9;font-size:14px;color:#334155}.ca-table tbody tr:hover{background:#f8fafc}.ca-client-id{font-family:monospace;font-size:12px;color:#64748b;background:#f1f5f9;padding:4px 8px;border-radius:4px}.ca-company-name{font-weight:600;color:#1e293b;display:block}.ca-company-city{font-size:12px;color:#64748b}.ca-contact{display:flex;flex-direction:column;gap:4px;font-size:13px;color:#64748b}.ca-contact span{display:flex;align-items:center;gap:4px}.ca-guards-badge{display:inline-flex;align-items:center;gap:4px;background:#e3f2fd;color:#1976d2;padding:4px 10px;border-radius:20px;font-size:13px;font-weight:600}.ca-status-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600}.ca-payment-badge{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:600}.ca-actions{display:flex;gap:6px}.ca-action-btn{width:32px;height:32px;border-radius:6px;border:none;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .2s}.ca-view{background:#e3f2fd;color:#1976d2}.ca-view:hover{background:#1976d2;color:#fff}.ca-edit{background:#fff8e1;color:#f9a825}.ca-edit:hover{background:#f9a825;color:#fff}.ca-delete{background:#ffebee;color:#e53935}.ca-delete:hover{background:#e53935;color:#fff}.ca-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px;color:#64748b}.ca-spinner{width:32px;height:32px;border:3px solid #e2e8f0;border-top-color:#1976d2;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:12px}.ca-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px;color:#64748b}.ca-empty-icon{color:#cbd5e1;margin-bottom:16px}.ca-empty h3{margin:0 0 8px;color:#475569}.ca-empty p{margin:0 0 20px}.ca-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.ca-modal{background:#fff;border-radius:16px;width:100%;max-width:700px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.ca-modal-view{max-width:600px}.ca-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e2e8f0}.ca-modal-header h2{margin:0;font-size:18px;color:#1e293b}.ca-modal-close{background:none;border:none;color:#64748b;cursor:pointer;padding:4px;border-radius:6px}.ca-modal-close:hover{background:#f1f5f9;color:#1e293b}.ca-form{padding:24px}.ca-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.ca-form-full{grid-column:1 / -1}.ca-form-group{display:flex;flex-direction:column;gap:6px}.ca-form-group label{font-size:13px;font-weight:600;color:#475569}.ca-form-group input,.ca-form-group select,.ca-form-group textarea{padding:10px 12px;border:1px solid #e2e8f0;border-radius:8px;font-size:14px;color:#334155;background:#fff;transition:all .2s}.ca-form-group input:focus,.ca-form-group select:focus,.ca-form-group textarea:focus{outline:none;border-color:#1976d2;box-shadow:0 0 0 3px #1976d21a}.ca-form-group textarea{resize:vertical;min-height:80px}.ca-form-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:20px;border-top:1px solid #e2e8f0}.ca-view-content{padding:24px}.ca-view-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:1px solid #e2e8f0}.ca-view-company{display:flex;align-items:center;gap:12px}.ca-view-company h3{margin:0;font-size:18px;color:#1e293b}.ca-view-id{font-size:12px;color:#64748b;font-family:monospace}.ca-view-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.ca-view-section{background:#f8fafc;border-radius:8px;padding:16px}.ca-view-section h4{display:flex;align-items:center;gap:6px;margin:0 0 12px;font-size:13px;color:#64748b;text-transform:uppercase;letter-spacing:.5px}.ca-view-section p{margin:6px 0;font-size:14px;color:#334155}.ca-view-notes{margin-top:16px;background:#f8fafc;border-radius:8px;padding:16px}.ca-view-notes h4{margin:0 0 8px;font-size:13px;color:#64748b}.ca-view-notes p{margin:0;font-size:14px;color:#334155;line-height:1.6}@media (max-width: 1024px){.ca-stats{grid-template-columns:repeat(2,1fr)}.ca-form-grid,.ca-view-grid{grid-template-columns:1fr}}@media (max-width: 768px){.ca-stats{grid-template-columns:1fr}.ca-header{flex-direction:column;gap:12px;align-items:flex-start}.ca-filters{flex-direction:column;align-items:stretch}.ca-search-box{max-width:none}.ca-table-container{overflow-x:auto}}.ca-referral{display:flex;flex-direction:column;gap:4px}.ca-referrer{font-weight:600;color:#1a237e;font-size:13px}.off-days-module{padding:24px;max-width:1400px;margin:0 auto;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.od-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.od-header h1{display:flex;align-items:center;gap:12px;font-size:28px;font-weight:700;color:#1a237e;margin:0}.od-header p{color:#666;margin:8px 0 0;font-size:15px}.od-btn-primary{display:flex;align-items:center;gap:8px;padding:12px 20px;background:#1a237e;color:#fff;border:none;border-radius:10px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.od-btn-primary:hover{background:#283593;transform:translateY(-1px);box-shadow:0 4px 12px #1a237e40}.od-btn-secondary{padding:10px 18px;background:#f5f5f5;color:#666;border:none;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer}.od-btn-secondary:hover{background:#e0e0e0}.od-alert{display:flex;align-items:center;gap:10px;padding:14px 18px;border-radius:10px;margin-bottom:20px;font-size:14px;font-weight:500}.od-alert-success{background:#e8f5e9;color:#2e7d32;border:1px solid #c8e6c9}.od-alert-error{background:#ffebee;color:#c62828;border:1px solid #ffcdd2}.od-filters{display:flex;gap:14px;margin-bottom:20px;flex-wrap:wrap}.od-search-box{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #ddd;border-radius:10px;padding:10px 14px;flex:1;min-width:250px}.od-search-box input{border:none;outline:none;font-size:14px;width:100%;background:transparent}.od-filter-group select{padding:10px 14px;border:1px solid #ddd;border-radius:10px;font-size:14px;background:#fff;min-width:160px;cursor:pointer}.od-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;margin-bottom:24px}.od-stat-card{background:#fff;border-radius:12px;padding:18px;border-left:4px solid;box-shadow:0 2px 8px #0000000f}.od-stat-number{display:block;font-size:28px;font-weight:700;color:#1a237e}.od-stat-label{font-size:13px;color:#888}.od-table-container{background:#fff;border-radius:14px;box-shadow:0 2px 8px #0000000f;overflow:hidden}.od-table{width:100%;border-collapse:collapse}.od-table th{background:#f8f9fa;padding:14px 16px;text-align:left;font-size:12px;font-weight:600;color:#666;text-transform:uppercase;letter-spacing:.5px}.od-table td{padding:14px 16px;border-top:1px solid #f0f0f0;font-size:14px}.od-guard-info strong{display:block;color:#1a237e;font-weight:600}.od-guard-info span{font-size:12px;color:#888}.od-type-badge,.od-status-badge{display:inline-flex;align-items:center;padding:6px 12px;border-radius:20px;font-size:12px;font-weight:600}.od-replacement{color:#4caf50;font-weight:500}.od-no-replacement{color:#999;font-style:italic}.od-actions{display:flex;gap:6px}.od-action-btn{padding:8px;border:none;border-radius:8px;cursor:pointer;transition:all .2s;color:#fff}.od-view{background:#2196f3}.od-view:hover{background:#1976d2}.od-approve{background:#4caf50}.od-approve:hover{background:#388e3c}.od-cancel{background:#ff9800}.od-cancel:hover{background:#f57c00}.od-delete{background:#f44336}.od-delete:hover{background:#d32f2f}.od-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;z-index:1000;display:flex;align-items:center;justify-content:center;padding:20px}.od-modal{background:#fff;border-radius:16px;max-width:600px;width:100%;max-height:90vh;overflow:hidden;box-shadow:0 20px 60px #0000004d}.od-modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #eee}.od-modal-header h3{margin:0;font-size:18px;color:#1a237e}.od-modal-header button{background:none;border:none;cursor:pointer;padding:8px;border-radius:8px;color:#999}.od-form{padding:24px;overflow-y:auto;max-height:70vh}.od-form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.od-form-group{display:flex;flex-direction:column;gap:6px}.od-form-group label{font-size:13px;font-weight:600;color:#555}.od-form-group input,.od-form-group select,.od-form-group textarea{padding:10px 14px;border:1px solid #ddd;border-radius:10px;font-size:14px;background:#fff}.od-form-group input:focus,.od-form-group select:focus,.od-form-group textarea:focus{outline:none;border-color:#1a237e}.od-form-full{grid-column:1 / -1}.od-modal-footer{display:flex;gap:12px;justify-content:flex-end;padding:16px 24px;border-top:1px solid #eee;background:#f8f9fa}.od-loading,.od-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px;color:#999;text-align:center}.od-empty p{margin:16px 0 0;font-size:16px}@media (max-width: 768px){.od-header{flex-direction:column;gap:16px;align-items:flex-start}.od-form-row{grid-template-columns:1fr}.od-table-container{overflow-x:auto}.od-table{min-width:800px}}.od-remaining-section{margin:20px 0;padding:16px;background:#fff;border-radius:8px;box-shadow:0 1px 3px #0000001a}.od-remaining-section h3{margin:0 0 16px;font-size:16px;color:#333;display:flex;align-items:center;gap:8px}.od-remaining-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}.od-remaining-card{padding:14px;border:1px solid #e0e0e0;border-radius:6px;background:#fafafa}.od-remaining-guard{margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid #eee}.od-remaining-guard strong{display:block;font-size:14px;color:#333}.od-remaining-guard span{font-size:12px;color:#888}.od-remaining-stats{display:flex;justify-content:space-around;text-align:center}.od-remaining-item{display:flex;flex-direction:column;align-items:center}.od-remaining-item span{font-size:20px;font-weight:700}.od-remaining-item label{font-size:11px;color:#888;margin-top:2px;text-transform:uppercase}.od-remaining-used{color:#2196f3}.od-remaining-scheduled{color:#ff9800}.od-remaining-left{color:#4caf50}.od-remaining-empty{grid-column:1 / -1;text-align:center;padding:20px;color:#888;font-style:italic}.advance-payment-module{padding:20px;max-width:1400px;margin:0 auto}.ap-stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-bottom:24px}.ap-stat-card{background:#fff;border-radius:16px;padding:24px;box-shadow:0 4px 20px #00000014;display:flex;flex-direction:column;gap:8px;transition:transform .2s}.ap-stat-card:hover{transform:translateY(-4px)}.ap-stat-card.primary{border-left:4px solid #667eea}.ap-stat-card.success{border-left:4px solid #4caf50}.ap-stat-card.warning{border-left:4px solid #ff9800}.ap-stat-card.info{border-left:4px solid #2196f3}.ap-stat-icon{width:48px;height:48px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.ap-stat-value{font-size:28px;font-weight:700;color:#1a202c}.ap-stat-label{font-size:14px;color:#718096}.ap-toolbar{display:flex;gap:16px;margin-bottom:20px;align-items:center;flex-wrap:wrap}.ap-search-box{flex:1;min-width:250px;display:flex;align-items:center;background:#fff;border-radius:12px;padding:12px 16px;box-shadow:0 2px 8px #0000000f;gap:12px}.ap-search-box input{flex:1;border:none;outline:none;font-size:14px;color:#4a5568}.ap-filter-box{display:flex;align-items:center;background:#fff;border-radius:12px;padding:12px 16px;box-shadow:0 2px 8px #0000000f;gap:12px}.ap-filter-box select{border:none;outline:none;font-size:14px;color:#4a5568;background:transparent;cursor:pointer}.ap-btn-primary{display:flex;align-items:center;gap:8px;padding:12px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:12px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 4px 12px #667eea4d}.ap-btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #667eea66}.ap-alert{display:flex;align-items:center;gap:8px;padding:12px 16px;border-radius:12px;margin-bottom:16px;font-size:14px}.ap-alert-success{background:#f0fff4;color:#22543d;border:1px solid #9ae6b4}.ap-alert-error{background:#fff5f5;color:#742a2a;border:1px solid #feb2b2}.ap-table-container{background:#fff;border-radius:16px;box-shadow:0 4px 20px #00000014;overflow:hidden}.ap-table{width:100%;border-collapse:collapse}.ap-table thead{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.ap-table th{padding:16px;text-align:left;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.ap-table td{padding:16px;border-bottom:1px solid #e2e8f0;font-size:14px;color:#4a5568}.ap-table tbody tr:hover{background:#f7fafc}.ap-employee{display:flex;align-items:center;gap:8px;font-weight:600;color:#2d3748}.ap-badge{padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600;background:#edf2f7;color:#4a5568}.ap-amount-requested{color:#ff9800;font-weight:600}.ap-amount-issued{color:#4caf50;font-weight:600}.ap-amount-remaining{color:#2196f3;font-weight:600}.ap-status-badge{padding:6px 14px;border-radius:20px;font-size:12px;font-weight:600}.ap-btn-icon{padding:8px;border-radius:8px;border:none;background:transparent;cursor:pointer;color:#718096;transition:all .2s}.ap-btn-icon:hover{background:#edf2f7;color:#667eea}.ap-btn-danger:hover{background:#fff5f5;color:#f44336}.ap-loading,.ap-empty{text-align:center;padding:40px;color:#718096}.ap-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.ap-modal-content{background:#fff;border-radius:20px;width:100%;max-width:700px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0003}.ap-modal-header{display:flex;justify-content:space-between;align-items:center;padding:24px;border-bottom:1px solid #e2e8f0}.ap-modal-header h3{font-size:20px;font-weight:700;color:#1a202c}.ap-modal-header button{background:none;border:none;cursor:pointer;color:#718096;padding:8px;border-radius:8px;transition:all .2s}.ap-modal-header button:hover{background:#f7fafc;color:#1a202c}.ap-form{padding:24px}.ap-form-row{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:16px}.ap-form-group{display:flex;flex-direction:column;gap:6px}.ap-form-full{grid-column:1 / -1}.ap-form-group label{font-size:13px;font-weight:600;color:#4a5568;text-transform:uppercase;letter-spacing:.5px}.ap-form-group input,.ap-form-group select,.ap-form-group textarea{padding:12px 16px;border:2px solid #e2e8f0;border-radius:12px;font-size:14px;color:#2d3748;background:#fff;transition:all .2s;outline:none}.ap-form-group input:focus,.ap-form-group select:focus,.ap-form-group textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.ap-form-group input:read-only{background:#f7fafc;color:#718096}.ap-calculation-card{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;padding:24px;margin:24px 0;color:#fff}.ap-calc-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;font-size:14px}.ap-calc-row strong{font-size:16px;font-weight:700}.ap-calc-requested{color:gold}.ap-calc-issued{color:#90ee90}.ap-calc-divider{height:1px;background:#fff3;margin:12px 0}.ap-calc-total{font-size:18px}.ap-calc-total strong{font-size:24px}.ap-modal-actions{display:flex;justify-content:flex-end;gap:12px;padding-top:16px;border-top:1px solid #e2e8f0}.ap-btn-outline{padding:12px 24px;border:2px solid #e2e8f0;background:#fff;color:#4a5568;border-radius:12px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s}.ap-btn-outline:hover{border-color:#667eea;color:#667eea}@media (max-width: 768px){.ap-stats-grid{grid-template-columns:repeat(2,1fr)}.ap-form-row{grid-template-columns:1fr}.ap-toolbar{flex-direction:column;align-items:stretch}}.payroll-container{padding:20px;max-width:1400px;margin:0 auto}.payroll-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid #e2e8f0}.payroll-header h1{display:flex;align-items:center;gap:12px;font-size:24px;color:#1e3a8a;margin:0}.payroll-header p{color:#64748b;margin:4px 0 0}.payroll-actions{display:flex;gap:12px;align-items:center}.month-select,.year-select{padding:8px 12px;border:1px solid #d1d5db;border-radius:6px;background:#fff;font-size:14px}.payroll-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-bottom:24px}.stat-card{background:#fff;border-radius:12px;padding:20px;display:flex;align-items:center;gap:16px;box-shadow:0 1px 3px #0000001a;border-left:4px solid #3b82f6}.stat-card.highlight{border-left-color:#8b5cf6;background:linear-gradient(135deg,#f5f3ff,#fff)}.stat-card.success{border-left-color:#10b981}.stat-card.warning{border-left-color:#f59e0b}.stat-card h3{font-size:24px;font-weight:700;color:#1e293b;margin:0}.stat-card p{color:#64748b;margin:4px 0 0;font-size:14px}.payroll-filters{display:flex;gap:16px;margin-bottom:20px}.search-box{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #d1d5db;border-radius:8px;padding:8px 12px;flex:1;max-width:400px}.search-box input{border:none;outline:none;flex:1;font-size:14px}.payroll-table-container{background:#fff;border-radius:12px;box-shadow:0 1px 3px #0000001a;overflow:hidden}.payroll-table{width:100%;border-collapse:collapse}.payroll-table th{background:#f8fafc;padding:12px 16px;text-align:left;font-size:12px;text-transform:uppercase;color:#64748b;font-weight:600;border-bottom:1px solid #e2e8f0}.payroll-table td{padding:16px;border-bottom:1px solid #f1f5f9;font-size:14px}.employee-info{display:flex;flex-direction:column}.employee-info strong{color:#1e293b;font-weight:600}.employee-info span{color:#64748b;font-size:12px}.gross{color:#059669;font-weight:600}.deductions{color:#dc2626;font-weight:600}.net{color:#1e3a8a;font-weight:700;font-size:16px}.status-badge{padding:4px 12px;border-radius:20px;font-size:12px;font-weight:600}.action-buttons{display:flex;gap:8px}.btn-icon{padding:6px;border:none;border-radius:6px;background:#f1f5f9;cursor:pointer;transition:all .2s}.btn-icon:hover{background:#e2e8f0}.btn-icon.danger:hover{background:#fee2e2;color:#dc2626}.empty-state{text-align:center;padding:60px 20px;color:#94a3b8}.empty-state p{margin:16px 0;font-size:16px}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px}.modal{background:#fff;border-radius:16px;width:100%;max-width:800px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000001a}.modal-large{max-width:900px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e2e8f0}.modal-header h2{display:flex;align-items:center;gap:8px;margin:0;font-size:20px;color:#1e293b}.btn-close{background:none;border:none;cursor:pointer;color:#64748b}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #e2e8f0}.form-section h3{font-size:16px;color:#1e3a8a;margin-bottom:16px;padding-bottom:8px;border-bottom:2px solid #e2e8f0}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px;margin-bottom:16px}.form-group label{font-size:14px;font-weight:500;color:#374151}.form-group input,.form-group select{padding:10px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:14px;transition:border-color .2s}.calculation-preview{background:#f8fafc;border-radius:12px;padding:20px;margin-top:20px}.calculation-preview h3{margin-bottom:16px;color:#1e293b}.calc-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #e2e8f0}.calc-row.deduction{color:#dc2626}.calc-row.total-deduction{color:#dc2626;font-weight:600;border-top:2px solid #e2e8f0;margin-top:8px;padding-top:12px}.calc-row.net-pay{font-size:18px;color:#059669;font-weight:700;border-top:2px solid #059669;margin-top:8px;padding-top:12px}.payslip{background:#fff;border-radius:8px;padding:32px;border:1px solid #e2e8f0}.payslip-header{text-align:center;margin-bottom:24px;padding-bottom:16px;border-bottom:2px solid #1e3a8a}.payslip-header h2{color:#1e3a8a;margin:0}.payslip-employee{margin-bottom:24px;padding:16px;background:#f8fafc;border-radius:8px}.payslip-employee p{margin:4px 0}.payslip-body{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-bottom:24px}.payslip-section h4{color:#1e3a8a;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid #e2e8f0}.payslip-row{display:flex;justify-content:space-between;padding:6px 0}.payslip-row.gross{margin-top:12px;padding-top:12px;border-top:2px solid #059669;color:#059669}.payslip-row.total{margin-top:12px;padding-top:12px;border-top:2px solid #dc2626;color:#dc2626}.payslip-footer{border-top:2px solid #1e3a8a;padding-top:16px}.payslip-row.net{font-size:20px;color:#1e3a8a;font-weight:700}.payment-method{margin-top:12px;color:#64748b}.alert{padding:12px 16px;border-radius:8px;margin-bottom:16px}.alert-success{background:#d1fae5;color:#065f46;border:1px solid #a7f3d0}.alert-error{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}.btn{padding:10px 20px;border-radius:8px;font-size:14px;font-weight:500;cursor:pointer;display:inline-flex;align-items:center;gap:8px;transition:all .2s;border:none}.btn-primary{background:#1e3a8a;color:#fff}.btn-primary:hover{background:#1e40af}.btn-secondary{background:#f1f5f9;color:#374151}.btn-secondary:hover{background:#e2e8f0}@media print{.payroll-header,.payroll-actions,.payroll-filters,.payroll-stats,.action-buttons,.modal-footer{display:none!important}.payslip{border:none;box-shadow:none}}@media (max-width: 768px){.payroll-header{flex-direction:column;gap:16px}.payroll-stats{grid-template-columns:1fr}.payroll-table-container{overflow-x:auto}.payslip-body{grid-template-columns:1fr}}.admin-container{padding:24px;max-width:1400px;margin:0 auto}.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid #e5e7eb}.header-left{display:flex;align-items:center;gap:16px}.header-icon{color:#1e40af;background:#dbeafe;padding:8px;border-radius:12px}.header-left h1{font-size:1.5rem;font-weight:700;color:#111827;margin:0}.header-left p{color:#6b7280;margin:4px 0 0;font-size:.875rem}.btn-create{display:flex;align-items:center;gap:8px;padding:10px 20px;font-size:.875rem}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}.stat-card{background:#fff;border:1px solid #e5e7eb;border-radius:12px;padding:20px;display:flex;align-items:center;gap:16px;transition:all .2s}.stat-card:hover{box-shadow:0 4px 12px #00000014;transform:translateY(-1px)}.stat-card svg{color:#6b7280}.stat-card.active svg{color:#059669}.stat-card.inactive svg{color:#dc2626}.stat-card.admin svg{color:#7c3aed}.stat-card h3{font-size:1.5rem;font-weight:700;color:#111827;margin:0}.stat-card p{color:#6b7280;margin:2px 0 0;font-size:.875rem}.alert{display:flex;align-items:center;gap:10px;padding:12px 16px;border-radius:8px;margin-bottom:20px;font-size:.875rem}.alert-success{background:#ecfdf5;color:#059669;border:1px solid #a7f3d0}.alert-error{background:#fef2f2;color:#dc2626;border:1px solid #fecaca}.filters-bar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px}.search-box{display:flex;align-items:center;gap:10px;background:#fff;border:1px solid #d1d5db;border-radius:8px;padding:8px 14px;flex:1;max-width:400px}.search-box svg{color:#9ca3af}.search-box input{border:none;outline:none;font-size:.875rem;width:100%;color:#374151}.search-box input::placeholder{color:#9ca3af}.filter-group{display:flex;align-items:center;gap:10px}.filter-group svg{color:#6b7280}.filter-group select{padding:8px 12px;border:1px solid #d1d5db;border-radius:8px;font-size:.875rem;color:#374151;background:#fff;cursor:pointer}.table-container{background:#fff;border:1px solid #e5e7eb;border-radius:12px;overflow:hidden}.users-table{width:100%;border-collapse:collapse;font-size:.875rem}.users-table thead{background:#f9fafb}.users-table th{padding:12px 16px;text-align:left;font-weight:600;color:#374151;border-bottom:1px solid #e5e7eb;cursor:pointer;-webkit-user-select:none;user-select:none;white-space:nowrap}.users-table th:hover{background:#f3f4f6}.users-table td{padding:14px 16px;border-bottom:1px solid #f3f4f6;vertical-align:middle}.users-table tbody tr:hover{background:#f9fafb}.users-table tbody tr.row-inactive{opacity:.6;background:#f9fafb}.users-table tbody tr.row-inactive td{text-decoration:line-through;text-decoration-color:#d1d5db}.users-table tbody tr.row-inactive .user-name,.users-table tbody tr.row-inactive .email-cell{text-decoration:line-through}.user-cell{display:flex;align-items:center;gap:12px}.user-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#1e40af,#3b82f6);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:600;font-size:.875rem;text-transform:uppercase}.user-name{font-weight:600;color:#111827}.user-phone{display:flex;align-items:center;gap:4px;color:#6b7280;font-size:.75rem;margin-top:2px}.email-cell{display:flex;align-items:center;gap:6px;color:#374151}.email-cell svg{color:#9ca3af;flex-shrink:0}.role-badge{display:inline-flex;align-items:center;padding:4px 12px;border-radius:20px;font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.025em}.permissions-cell{display:flex;align-items:center;gap:8px}.perm-count{font-size:.75rem;color:#6b7280;background:#f3f4f6;padding:2px 8px;border-radius:4px}.status-toggle{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:20px;font-size:.75rem;font-weight:600;border:none;cursor:pointer;transition:all .2s}.status-toggle.active{background:#ecfdf5;color:#059669}.status-toggle.inactive{background:#fef2f2;color:#dc2626}.status-toggle:hover{opacity:.8}.last-login{color:#6b7280;font-size:.875rem}.action-buttons{display:flex;gap:6px}.btn-icon{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;border:none;cursor:pointer;transition:all .2s;background:transparent}.btn-icon:hover{background:#f3f4f6}.btn-edit{color:#2563eb}.btn-edit:hover{background:#eff6ff}.btn-password{color:#7c3aed}.btn-password:hover{background:#f5f3ff}.btn-delete{color:#dc2626}.btn-delete:hover{background:#fef2f2}.btn-perm{color:#059669}.btn-perm:hover{background:#ecfdf5}.btn-icon:disabled{opacity:.4;cursor:not-allowed}.loading-cell,.empty-cell{text-align:center;padding:48px!important;color:#6b7280}.empty-cell{display:flex;flex-direction:column;align-items:center;gap:12px}.empty-cell svg{color:#d1d5db}.spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal-content{background:#fff;border-radius:16px;width:100%;max-width:520px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0003}.modal-content.modal-lg{max-width:800px}.modal-content.modal-sm{max-width:420px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;border-bottom:1px solid #e5e7eb}.modal-header h3{display:flex;align-items:center;gap:10px;margin:0;font-size:1.125rem;font-weight:600;color:#111827}.btn-close{background:none;border:none;cursor:pointer;color:#6b7280;padding:4px;border-radius:6px;transition:all .2s}.btn-close:hover{background:#f3f4f6;color:#111827}.modal-body{padding:24px}.modal-footer{display:flex;justify-content:flex-end;gap:12px;padding:16px 24px;border-top:1px solid #e5e7eb;background:#f9fafb;border-radius:0 0 16px 16px}.form-section{margin-bottom:24px}.form-section:last-child{margin-bottom:0}.form-section h4{font-size:.875rem;font-weight:600;color:#374151;margin:0 0 16px;padding-bottom:8px;border-bottom:1px solid #e5e7eb;text-transform:uppercase;letter-spacing:.025em}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.form-group{display:flex;flex-direction:column;gap:6px}.form-group label{font-size:.875rem;font-weight:500;color:#374151}.form-group input,.form-group select{padding:10px 14px;border:1px solid #d1d5db;border-radius:8px;font-size:.875rem;color:#111827;background:#fff;transition:all .2s}.form-group input:focus,.form-group select:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-group input.error{border-color:#dc2626;background:#fef2f2}.error-text{font-size:.75rem;color:#dc2626}.password-input{display:flex;align-items:center;gap:8px}.password-input input{flex:1}.btn-eye{background:none;border:none;cursor:pointer;color:#6b7280;padding:8px;border-radius:6px;transition:all .2s}.btn-eye:hover{background:#f3f4f6;color:#374151}.role-description{display:flex;align-items:center;gap:8px;padding:10px 14px;background:#eff6ff;border-radius:8px;margin-top:12px;font-size:.875rem;color:#1e40af}.role-description svg{flex-shrink:0}.section-desc{color:#6b7280;font-size:.875rem;margin:-8px 0 16px}.permissions-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.perm-category{background:#f9fafb;border-radius:10px;padding:16px}.perm-category h5{font-size:.75rem;font-weight:700;color:#6b7280;text-transform:uppercase;letter-spacing:.05em;margin:0 0 12px}.perm-checkbox{display:flex;align-items:center;gap:8px;padding:6px 0;cursor:pointer;font-size:.875rem;color:#374151;transition:all .15s}.perm-checkbox:hover{color:#111827}.perm-checkbox input[type=checkbox]{width:16px;height:16px;accent-color:#2563eb;cursor:pointer}.perm-user-info{margin:0 0 20px;padding:12px 16px;background:#eff6ff;border-radius:8px;font-size:.875rem;color:#374151}.delete-warning{text-align:center;padding:20px 0}.delete-warning svg{color:#dc2626;margin-bottom:16px}.delete-warning p{color:#374151;margin:0 0 8px}.delete-hint{color:#6b7280;font-size:.875rem}.reset-info{margin:0 0 20px;padding:12px 16px;background:#fef3c7;border-radius:8px;font-size:.875rem;color:#92400e}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;border-radius:8px;font-size:.875rem;font-weight:500;cursor:pointer;transition:all .2s;border:none}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-primary{background:#2563eb;color:#fff}.btn-primary:hover:not(:disabled){background:#1d4ed8}.btn-outline{background:#fff;color:#374151;border:1px solid #d1d5db}.btn-outline:hover:not(:disabled){background:#f9fafb;border-color:#9ca3af}.btn-danger{background:#dc2626;color:#fff}.btn-danger:hover:not(:disabled){background:#b91c1c}@media (max-width: 1024px){.stats-grid,.permissions-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.admin-container{padding:16px}.stats-grid{grid-template-columns:1fr}.filters-bar{flex-direction:column;align-items:stretch}.search-box{max-width:none}.form-grid,.permissions-grid{grid-template-columns:1fr}.users-table{font-size:.75rem}.users-table th,.users-table td{padding:10px 8px}.user-avatar{width:32px;height:32px;font-size:.75rem}}.not-found{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--gray-50);padding:var(--spacing-4)}.not-found-content{text-align:center;max-width:400px}.error-icon{width:100px;height:100px;background:#fee2e2;color:#991b1b;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto var(--spacing-6)}.not-found-content h1{font-size:6rem;font-weight:800;color:var(--primary-blue);line-height:1;margin-bottom:var(--spacing-2)}.not-found-content h2{font-size:var(--font-size-2xl);color:var(--gray-900);margin-bottom:var(--spacing-3)}.not-found-content p{color:var(--gray-500);margin-bottom:var(--spacing-6)}.not-found-content .btn{display:inline-flex;align-items:center;gap:var(--spacing-2)}:root{--primary-blue: #1e3a8a;--primary-blue-dark: #1e40af;--primary-blue-light: #3b82f6;--accent-yellow: #fbbf24;--accent-yellow-dark: #f59e0b;--accent-yellow-light: #fcd34d;--white: #ffffff;--gray-50: #f9fafb;--gray-100: #f3f4f6;--gray-200: #e5e7eb;--gray-300: #d1d5db;--gray-400: #9ca3af;--gray-500: #6b7280;--gray-600: #4b5563;--gray-700: #374151;--gray-800: #1f2937;--gray-900: #111827;--success: #10b981;--warning: #f59e0b;--error: #ef4444;--info: #3b82f6;--font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-size-4xl: 2.25rem;--spacing-1: .25rem;--spacing-2: .5rem;--spacing-3: .75rem;--spacing-4: 1rem;--spacing-5: 1.25rem;--spacing-6: 1.5rem;--spacing-8: 2rem;--spacing-10: 2.5rem;--spacing-12: 3rem;--radius-sm: .375rem;--radius-md: .5rem;--radius-lg: .75rem;--radius-xl: 1rem;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--transition-fast: .15s ease-in-out;--transition-base: .2s ease-in-out;--transition-slow: .3s ease-in-out;--sidebar-width: 280px;--sidebar-collapsed: 80px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-family);font-size:var(--font-size-base);line-height:1.5;color:var(--gray-800);background-color:var(--gray-50);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.25;color:var(--gray-900)}h1{font-size:var(--font-size-4xl)}h2{font-size:var(--font-size-3xl)}h3{font-size:var(--font-size-2xl)}h4{font-size:var(--font-size-xl)}h5{font-size:var(--font-size-lg)}h6{font-size:var(--font-size-base)}p{margin-bottom:var(--spacing-4)}a{color:var(--primary-blue);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--primary-blue-dark)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-2);padding:var(--spacing-2) var(--spacing-4);font-size:var(--font-size-sm);font-weight:500;border-radius:var(--radius-md);border:none;cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.btn:focus{outline:2px solid var(--primary-blue-light);outline-offset:2px}.btn-primary{background-color:var(--primary-blue);color:var(--white)}.btn-primary:hover{background-color:var(--primary-blue-dark);color:var(--white)}.btn-secondary{background-color:var(--accent-yellow);color:var(--gray-900)}.btn-secondary:hover{background-color:var(--accent-yellow-dark)}.btn-outline{background-color:transparent;border:1px solid var(--gray-300);color:var(--gray-700)}.btn-outline:hover{background-color:var(--gray-100);border-color:var(--gray-400)}.btn-danger{background-color:var(--error);color:var(--white)}.btn-danger:hover{background-color:#dc2626}.btn-sm{padding:var(--spacing-1) var(--spacing-3);font-size:var(--font-size-xs)}.btn-lg{padding:var(--spacing-3) var(--spacing-6);font-size:var(--font-size-base)}.btn:disabled{opacity:.5;cursor:not-allowed}.form-group{margin-bottom:var(--spacing-4)}.form-label{display:block;margin-bottom:var(--spacing-2);font-size:var(--font-size-sm);font-weight:500;color:var(--gray-700)}.form-input,.form-select,.form-textarea{width:100%;padding:var(--spacing-2) var(--spacing-3);font-size:var(--font-size-sm);border:1px solid var(--gray-300);border-radius:var(--radius-md);background-color:var(--white);color:var(--gray-900);transition:border-color var(--transition-fast),box-shadow var(--transition-fast)}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--primary-blue-light);box-shadow:0 0 0 3px #3b82f61a}.form-input::placeholder{color:var(--gray-400)}.form-textarea{min-height:100px;resize:vertical}.card{background-color:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--gray-200);overflow:hidden}.card-header{padding:var(--spacing-4) var(--spacing-6);border-bottom:1px solid var(--gray-200);background-color:var(--gray-50)}.card-body{padding:var(--spacing-6)}.card-footer{padding:var(--spacing-4) var(--spacing-6);border-top:1px solid var(--gray-200);background-color:var(--gray-50)}.table-container{overflow-x:auto}.table{width:100%;border-collapse:collapse}.table th,.table td{padding:var(--spacing-3) var(--spacing-4);text-align:left;border-bottom:1px solid var(--gray-200)}.table th{font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--gray-500);background-color:var(--gray-50)}.table tbody tr:hover{background-color:var(--gray-50)}.badge{display:inline-flex;align-items:center;padding:var(--spacing-1) var(--spacing-2);font-size:var(--font-size-xs);font-weight:600;border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.025em}.badge-success{background-color:#d1fae5;color:#065f46}.badge-warning{background-color:#fef3c7;color:#92400e}.badge-error{background-color:#fee2e2;color:#991b1b}.badge-info{background-color:#dbeafe;color:#1e40af}.status-dot{width:8px;height:8px;border-radius:50%;display:inline-block}.status-dot.active{background-color:var(--success)}.status-dot.inactive{background-color:var(--gray-400)}.status-dot.warning{background-color:var(--warning)}.status-dot.error{background-color:var(--error)}.grid{display:grid;gap:var(--spacing-6)}.grid-cols-1{grid-template-columns:repeat(1,1fr)}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}@media (max-width: 1024px){.grid-cols-4{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.grid-cols-2,.grid-cols-3,.grid-cols-4{grid-template-columns:1fr}}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.justify-center{justify-content:center}.gap-2{gap:var(--spacing-2)}.gap-4{gap:var(--spacing-4)}.gap-6{gap:var(--spacing-6)}.mt-2{margin-top:var(--spacing-2)}.mt-4{margin-top:var(--spacing-4)}.mb-4{margin-bottom:var(--spacing-4)}.p-4{padding:var(--spacing-4)}.p-6{padding:var(--spacing-6)}.text-center{text-align:center}.text-sm{font-size:var(--font-size-sm)}.text-lg{font-size:var(--font-size-lg)}.text-xl{font-size:var(--font-size-xl)}.font-medium{font-weight:500}.font-semibold{font-weight:600}.text-gray-500{color:var(--gray-500)}.text-gray-600{color:var(--gray-600)}.spinner{width:24px;height:24px;border:3px solid var(--gray-200);border-top-color:var(--primary-blue);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fadeIn var(--transition-base)}.animate-slide-in{animation:slideIn var(--transition-base)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--gray-100)}::-webkit-scrollbar-thumb{background:var(--gray-400);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--gray-500)}@media print{.no-print{display:none!important}}@media screen{body{background-color:#0f0f23!important;color:#e0e0e0!important}#root{background-color:#0f0f23!important;min-height:100vh}}
