@import "https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap";:root{--font-sans:"Plus Jakarta Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--bg-app:#f8fafc;--bg-surface:#fff;--bg-surface-hover:#f1f5f9;--bg-sidebar:#0f172a;--bg-sidebar-hover:#1e293b;--bg-sidebar-active:#312e81;--border-subtle:#f1f5f9;--border-default:#e2e8f0;--border-strong:#cbd5e1;--text-primary:#0f172a;--text-secondary:#475569;--text-muted:#94a3b8;--text-inverse:#fff;--primary:#4f46e5;--primary-hover:#4338ca;--primary-light:#e0e7ff;--primary-text:#3730a3;--success:#10b981;--success-hover:#059669;--success-light:#d1fae5;--success-text:#065f46;--warning:#f59e0b;--warning-hover:#d97706;--warning-light:#fef3c7;--warning-text:#92400e;--danger:#ef4444;--danger-hover:#dc2626;--danger-light:#fee2e2;--danger-text:#991b1b;--info:#0ea5e9;--info-light:#e0f2fe;--info-text:#0369a1;--shadow-sm:0 1px 2px 0 #0000000d;--shadow-md:0 4px 6px -1px #00000012, 0 2px 4px -2px #0000000d;--shadow-lg:0 10px 15px -3px #00000014, 0 4px 6px -4px #00000008;--shadow-xl:0 20px 25px -5px #0000001a, 0 8px 10px -6px #0000000d;--radius-sm:6px;--radius-md:10px;--radius-lg:16px;--radius-full:9999px;--transition:all .2s cubic-bezier(.4, 0, .2, 1)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background-color:var(--bg-app);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;line-height:1.5}#root{flex-direction:column;min-height:100vh;display:flex}a{color:inherit;text-decoration:none}button{cursor:pointer;background:0 0;border:none;font-family:inherit}input,select,textarea{font-family:inherit;font-size:14px}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}.admin-security-container{max-width:900px;margin:0 auto;padding:2rem 0}.admin-security-card{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #0000001a}.card-header{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);padding:2rem}.card-header h2{margin:0 0 .5rem;font-size:1.75rem}.card-subtitle{opacity:.95;margin:0;font-size:.95rem}.alert{border-radius:8px;align-items:center;gap:1rem;margin:1.5rem;padding:1rem 1.5rem;font-size:.95rem;display:flex}.alert-error{color:#c33;background-color:#fee;border:1px solid #fcc}.status-section{border-bottom:1px solid #eee;padding:2rem}.status-display{background:#f9f9f9;border-radius:8px;align-items:center;gap:1.5rem;margin-bottom:1.5rem;padding:1.5rem;display:flex}.status-icon{width:48px;min-width:48px;height:48px}.status-icon.active{color:#22c55e}.status-icon.revoked{color:#ef4444}.status-icon.rotating{color:#f59e0b;animation:2s linear infinite spin}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.status-info h3{color:#666;text-transform:uppercase;letter-spacing:.5px;margin:0 0 .25rem;font-size:.9rem}.status-value{margin:0;font-size:1.3rem;font-weight:600}.status-value.status-active{color:#22c55e}.status-value.status-revoked{color:#ef4444}.status-value.status-rotating{color:#f59e0b}.status-value.status-not_initialized{color:#9ca3af}.status-details{grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1rem;display:grid}.detail-row{background:#fff;border-left:3px solid #667eea;border-radius:6px;justify-content:space-between;padding:.75rem 1rem;display:flex}.detail-row .label{color:#666;min-width:150px;font-weight:600}.detail-row .value{color:#333}.actions-section{border-bottom:1px solid #eee;padding:2rem}.actions-section h3{color:#333;margin:0 0 1rem}.actions-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;display:grid}.btn{cursor:pointer;white-space:nowrap;border:none;border-radius:6px;justify-content:center;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-size:.95rem;font-weight:600;transition:all .3s;display:flex}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%)}.btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-secondary{color:#333;background:#e5e7eb;border:1px solid #d1d5db}.btn-secondary:hover:not(:disabled){background:#d1d5db;transform:translateY(-2px)}.btn-danger{color:#c33;background:#fee;border:1px solid #fcc}.btn-danger:hover:not(:disabled){background:#fdd;transform:translateY(-2px)}.btn-block{width:100%}.info-section{background:#f9f9f9;padding:2rem}.info-section h3{color:#333;margin:0 0 1rem}.security-notes{margin:0;padding-left:1.5rem;list-style:none}.security-notes li{color:#666;padding:.5rem 0 .5rem 1.5rem;position:relative}.security-notes li:before{content:"✓";color:#667eea;font-weight:700;position:absolute;left:0}.modal-overlay{z-index:1000;background:#0009;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.modal-content{background:#fff;border-radius:12px;width:90%;max-width:600px;max-height:80vh;overflow-y:auto;box-shadow:0 10px 40px #0000004d}.modal-header{color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-bottom:1px solid #eee;justify-content:space-between;align-items:center;padding:1.5rem 2rem;display:flex}.modal-header h2{margin:0;font-size:1.5rem}.modal-close{color:#fff;cursor:pointer;background:#fff3;border:none;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:1.5rem;transition:all .2s;display:flex}.modal-close:hover{background:#ffffff4d}.modal-body{padding:2rem}.key-display{gap:1rem;margin-bottom:1.5rem;display:flex}.key-box{background:#f5f5f5;border:1px solid #ddd;border-radius:8px;flex:1;padding:1rem;overflow-x:auto}.key-box code{color:#333;word-break:break-all;font-family:Monaco,Menlo,Ubuntu Mono,monospace;font-size:.85rem}.copy-btn{color:#fff;cursor:pointer;white-space:nowrap;background:#667eea;border:none;border-radius:6px;justify-content:center;align-items:center;gap:.5rem;min-width:100px;padding:.75rem 1rem;font-weight:600;transition:all .2s;display:flex}.copy-btn:hover{background:#764ba2;transform:translateY(-2px)}.copy-btn.copied{background:#22c55e}.warning-box{color:#92400e;background:#fef3c7;border:1px solid #fcd34d;border-radius:8px;gap:1rem;margin-bottom:1.5rem;padding:1rem;display:flex}.warning-box strong{margin-bottom:.25rem;display:block}.warning-box p{margin:0;font-size:.9rem}@media (width<=768px){.admin-security-container{padding:1rem 0}.card-header{padding:1.5rem}.card-header h2{font-size:1.3rem}.status-display{text-align:center;flex-direction:column}.status-details,.actions-grid{grid-template-columns:1fr}.key-display{flex-direction:column}.copy-btn{width:100%}.modal-content{width:95%}}.crm-app-shell{background-color:var(--bg-app);min-height:100vh;display:flex}.crm-sidebar{background-color:var(--bg-sidebar);color:#94a3b8;width:260px;transition:var(--transition);z-index:40;flex-direction:column;flex-shrink:0;height:100vh;display:flex;position:sticky;top:0}.crm-sidebar-brand{border-bottom:1px solid #ffffff14;align-items:center;gap:12px;padding:24px 20px;display:flex}.crm-brand-logo{border-radius:var(--radius-md);color:#fff;background:linear-gradient(135deg,#4f46e5 0%,#7c3aed 100%);justify-content:center;align-items:center;width:36px;height:36px;font-size:18px;font-weight:800;display:flex;box-shadow:0 4px 12px #4f46e566}.crm-brand-title{color:#fff;letter-spacing:-.3px;font-size:16px;font-weight:700}.crm-brand-subtitle{color:#64748b;text-transform:uppercase;letter-spacing:.5px;font-size:11px}.crm-sidebar-nav{flex-direction:column;flex:1;gap:4px;padding:16px 12px;display:flex;overflow-y:auto}.crm-nav-section-title{color:#475569;text-transform:uppercase;letter-spacing:.8px;padding:12px 12px 6px;font-size:11px;font-weight:700}.crm-nav-item{border-radius:var(--radius-md);color:#94a3b8;transition:var(--transition);align-items:center;gap:12px;padding:10px 14px;font-size:14px;font-weight:500;text-decoration:none;display:flex}.crm-nav-item:hover{background-color:var(--bg-sidebar-hover);color:#fff}.crm-nav-item.active{background-color:var(--primary);color:#fff;font-weight:600;box-shadow:0 4px 12px #4f46e559}.crm-nav-badge{color:#fff;border-radius:var(--radius-full);background-color:#ef4444;margin-left:auto;padding:2px 7px;font-size:11px;font-weight:700}.crm-sidebar-footer{border-top:1px solid #ffffff14;align-items:center;gap:12px;padding:16px;display:flex}.crm-user-mini-avatar{border-radius:var(--radius-full);color:#f8fafc;background:#334155;justify-content:center;align-items:center;width:38px;height:38px;font-size:14px;font-weight:600;display:flex}.crm-user-mini-info{flex:1;min-width:0}.crm-user-mini-name{color:#fff;white-space:nowrap;text-overflow:ellipsis;font-size:13px;font-weight:600;overflow:hidden}.crm-user-mini-role{color:#94a3b8;font-size:11px}.crm-shell-content{flex-direction:column;flex:1;min-width:0;display:flex;overflow-x:hidden}.crm-header{background-color:var(--bg-surface);border-bottom:1px solid var(--border-default);z-index:30;justify-content:space-between;align-items:center;height:64px;padding:0 28px;display:flex;position:sticky;top:0}.crm-header-left,.crm-header-right{align-items:center;gap:16px;display:flex}.crm-menu-toggle{color:var(--text-secondary);border-radius:var(--radius-sm);background:0 0;border:none;padding:6px;display:none}.crm-breadcrumb{color:var(--text-secondary);align-items:center;gap:8px;font-size:14px;display:flex}.crm-breadcrumb-current{color:var(--text-primary);font-weight:600}.crm-live-clock{color:var(--text-secondary);background:var(--bg-app);border-radius:var(--radius-full);border:1px solid var(--border-default);align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:500;display:flex}.crm-icon-btn{border-radius:var(--radius-full);width:38px;height:38px;color:var(--text-secondary);background:var(--bg-app);border:1px solid var(--border-default);transition:var(--transition);justify-content:center;align-items:center;display:flex;position:relative}.crm-icon-btn:hover{background:var(--bg-surface-hover);color:var(--primary);border-color:var(--border-strong)}.crm-badge-dot{background-color:var(--danger);border:2px solid #fff;border-radius:50%;width:8px;height:8px;position:absolute;top:6px;right:6px}.crm-main{flex:1;width:100%;max-width:1440px;margin:0 auto;padding:28px}.crm-page-header{flex-wrap:wrap;justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.crm-page-title{color:var(--text-primary);letter-spacing:-.5px;font-size:24px;font-weight:700}.crm-page-subtitle{color:var(--text-secondary);margin-top:4px;font-size:14px}.crm-btn{border-radius:var(--radius-md);transition:var(--transition);cursor:pointer;white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;padding:9px 16px;font-size:14px;font-weight:600;display:inline-flex}.crm-btn-primary{background-color:var(--primary);color:#fff;box-shadow:0 2px 4px #4f46e533}.crm-btn-primary:hover{background-color:var(--primary-hover);box-shadow:0 4px 10px #4f46e559}.crm-btn-secondary{background-color:var(--bg-surface);color:var(--text-primary);border-color:var(--border-default)}.crm-btn-secondary:hover{background-color:var(--bg-surface-hover);border-color:var(--border-strong)}.crm-btn-success{background-color:var(--success);color:#fff}.crm-btn-success:hover{background-color:var(--success-hover)}.crm-btn-danger{background-color:var(--danger);color:#fff}.crm-btn-danger:hover{background-color:var(--danger-hover)}.crm-btn-sm{border-radius:var(--radius-sm);padding:6px 12px;font-size:13px}.crm-btn-lg{border-radius:var(--radius-md);padding:14px 28px;font-size:16px}.crm-card{background:var(--bg-surface);border-radius:var(--radius-lg);border:1px solid var(--border-default);box-shadow:var(--shadow-sm);transition:var(--transition);padding:24px}.crm-card-header{border-bottom:1px solid var(--border-subtle);justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:14px;display:flex}.crm-card-title{color:var(--text-primary);font-size:16px;font-weight:700}.crm-stats-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px;margin-bottom:28px;display:grid}.crm-stat-card{background:var(--bg-surface);border-radius:var(--radius-lg);border:1px solid var(--border-default);box-shadow:var(--shadow-sm);transition:var(--transition);justify-content:space-between;align-items:flex-start;padding:20px;display:flex}.crm-stat-card:hover{box-shadow:var(--shadow-md);border-color:var(--border-strong);transform:translateY(-2px)}.crm-stat-title{color:var(--text-secondary);margin-bottom:8px;font-size:13px;font-weight:600}.crm-stat-value{color:var(--text-primary);font-size:28px;font-weight:800;line-height:1.1}.crm-stat-subtitle{color:var(--text-muted);margin-top:6px;font-size:12px}.crm-stat-icon{border-radius:var(--radius-md);flex-shrink:0;justify-content:center;align-items:center;width:46px;height:46px;display:flex}.crm-stat-icon.indigo{background:var(--primary-light);color:var(--primary-text)}.crm-stat-icon.green{background:var(--success-light);color:var(--success-text)}.crm-stat-icon.amber{background:var(--warning-light);color:var(--warning-text)}.crm-stat-icon.red{background:var(--danger-light);color:var(--danger-text)}.crm-stat-icon.blue{background:var(--info-light);color:var(--info-text)}.crm-table-container{background:var(--bg-surface);border-radius:var(--radius-lg);border:1px solid var(--border-default);box-shadow:var(--shadow-sm);overflow:hidden}.crm-table-controls{border-bottom:1px solid var(--border-default);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:16px 20px;display:flex}.crm-search-box{background:var(--bg-app);border:1px solid var(--border-default);border-radius:var(--radius-md);align-items:center;gap:10px;width:280px;max-width:100%;padding:8px 14px;display:flex}.crm-search-box input{width:100%;color:var(--text-primary);background:0 0;border:none;outline:none}.crm-filter-group{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.crm-select{border-radius:var(--radius-md);border:1px solid var(--border-default);background:var(--bg-surface);color:var(--text-primary);outline:none;padding:8px 12px;font-size:13px;font-weight:500}.crm-table{border-collapse:collapse;text-align:left;width:100%;font-size:14px}.crm-table th{color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;border-bottom:1px solid var(--border-default);background:#f8fafc;padding:14px 20px;font-size:12px;font-weight:600}.crm-table td{border-bottom:1px solid var(--border-subtle);color:var(--text-primary);vertical-align:middle;padding:16px 20px}.crm-table tr:hover td{background:var(--bg-surface-hover)}.crm-table tr:last-child td{border-bottom:none}.crm-badge{border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.3px;align-items:center;gap:6px;padding:4px 10px;font-size:12px;font-weight:600;display:inline-flex}.crm-badge.active,.crm-badge.approved,.crm-badge.present{background:var(--success-light);color:var(--success-text)}.crm-badge.pending{background:var(--warning-light);color:var(--warning-text)}.crm-badge.inactive,.crm-badge.rejected,.crm-badge.absent{background:var(--danger-light);color:var(--danger-text)}.crm-badge.on_leave,.crm-badge.half_day{background:var(--info-light);color:var(--info-text)}.crm-badge.suspended{color:#475569;background:#f1f5f9}.crm-attendance-hero{color:#fff;border-radius:var(--radius-lg);background:linear-gradient(135deg,#1e1b4b 0%,#312e81 60%,#4338ca 100%);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:24px;margin-bottom:28px;padding:32px;display:flex;box-shadow:0 10px 25px -5px #312e8166}.crm-att-hero-time{letter-spacing:-1px;font-size:40px;font-weight:800}.crm-att-hero-date{color:#c7d2fe;margin-top:4px;font-size:15px}.crm-att-hero-status{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:var(--radius-full);background:#ffffff26;align-items:center;gap:8px;margin-top:14px;padding:6px 14px;font-size:13px;font-weight:600;display:inline-flex}.crm-att-btn-checkin{color:#fff;border-radius:var(--radius-md);transition:var(--transition);background:#10b981;align-items:center;gap:10px;padding:16px 36px;font-size:17px;font-weight:700;display:inline-flex;box-shadow:0 4px 14px #10b98166}.crm-att-btn-checkin:hover{background:#059669;transform:translateY(-2px);box-shadow:0 6px 20px #10b98180}.crm-att-btn-checkout{color:#fff;border-radius:var(--radius-md);transition:var(--transition);background:#ef4444;align-items:center;gap:10px;padding:16px 36px;font-size:17px;font-weight:700;display:inline-flex;box-shadow:0 4px 14px #ef444466}.crm-att-btn-checkout:hover{background:#dc2626;transform:translateY(-2px);box-shadow:0 6px 20px #ef444480}.crm-modal-backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:50;background-color:#0f172a99;justify-content:center;align-items:center;padding:20px;animation:.15s ease-out fadeIn;display:flex;position:fixed;inset:0}.crm-modal{background:var(--bg-surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-xl);border:1px solid var(--border-default);width:100%;max-width:560px;max-height:90vh;animation:.2s cubic-bezier(.16,1,.3,1) slideUp;overflow-y:auto}.crm-modal-header{border-bottom:1px solid var(--border-default);justify-content:space-between;align-items:center;padding:20px 24px;display:flex}.crm-modal-title{color:var(--text-primary);font-size:18px;font-weight:700}.crm-modal-body{padding:24px}.crm-modal-footer{border-top:1px solid var(--border-default);border-bottom-left-radius:var(--radius-lg);border-bottom-right-radius:var(--radius-lg);background:#f8fafc;justify-content:flex-end;align-items:center;gap:12px;padding:16px 24px;display:flex}.crm-form-group{margin-bottom:18px}.crm-form-label{color:var(--text-primary);margin-bottom:6px;font-size:13px;font-weight:600;display:block}.crm-input,.crm-textarea{border-radius:var(--radius-md);border:1px solid var(--border-default);width:100%;color:var(--text-primary);transition:var(--transition);background:#fff;outline:none;padding:10px 14px}.crm-input:focus,.crm-textarea:focus,.crm-select:focus{border-color:var(--primary);box-shadow:0 0 0 3px #4f46e526}.crm-form-row{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;display:grid}.crm-toast-container{z-index:100;flex-direction:column;gap:10px;display:flex;position:fixed;bottom:24px;right:24px}.crm-toast{border-radius:var(--radius-md);min-width:300px;max-width:420px;box-shadow:var(--shadow-lg);border-left:4px solid var(--primary);background:#fff;align-items:flex-start;gap:12px;padding:14px 18px;animation:.25s cubic-bezier(.16,1,.3,1) slideInRight;display:flex}.crm-toast.success{border-left-color:var(--success)}.crm-toast.error{border-left-color:var(--danger)}.crm-toast.warning{border-left-color:var(--warning)}.crm-toast.info{border-left-color:var(--info)}.crm-toast-title{color:var(--text-primary);font-size:14px;font-weight:600}.crm-toast-msg{color:var(--text-secondary);margin-top:2px;font-size:13px}.crm-auth-page{background:linear-gradient(135deg,#0f172a 0%,#1e1b4b 100%);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.crm-auth-card{border-radius:var(--radius-lg);background:#fff;border:1px solid #ffffff1a;width:100%;max-width:440px;padding:36px;box-shadow:0 25px 50px -12px #00000040}.crm-auth-logo-center{text-align:center;flex-direction:column;align-items:center;margin-bottom:28px;display:flex}.crm-auth-logo-icon{color:#fff;background:linear-gradient(135deg,#4f46e5 0%,#7c3aed 100%);border-radius:12px;justify-content:center;align-items:center;width:48px;height:48px;margin-bottom:12px;font-size:24px;font-weight:800;display:flex;box-shadow:0 8px 16px #4f46e54d}.crm-auth-heading{color:#0f172a;letter-spacing:-.5px;font-size:22px;font-weight:800}.crm-auth-subheading{color:#64748b;margin-top:4px;font-size:14px}.crm-empty-state{text-align:center;color:var(--text-muted);flex-direction:column;justify-content:center;align-items:center;padding:48px 24px;display:flex}.crm-empty-icon{border-radius:var(--radius-full);background:var(--bg-app);width:56px;height:56px;color:var(--text-secondary);justify-content:center;align-items:center;margin-bottom:16px;display:flex}.crm-empty-title{color:var(--text-primary);margin-bottom:4px;font-size:16px;font-weight:600}.crm-empty-desc{color:var(--text-secondary);max-width:320px;font-size:13px}.crm-summary-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px;display:grid}.crm-summary-card{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);padding:18px 20px}.crm-summary-title{text-transform:uppercase;letter-spacing:.4px;color:var(--text-secondary);margin-bottom:8px;font-size:12px;font-weight:700}.crm-summary-value{color:var(--text-primary);letter-spacing:-.6px;font-size:28px;font-weight:800}.crm-summary-meta{color:var(--text-muted);margin-top:6px;font-size:12px}.crm-alert{border-radius:var(--radius-md);border:1px solid #0000;padding:12px 14px;font-size:13px;line-height:1.5}.crm-alert-error{background:var(--danger-light);color:var(--danger-text);border-color:#fecaca}.crm-alert-success{background:var(--success-light);color:var(--success-text);border-color:#bbf7d0}.crm-state-panel{background:var(--bg-surface);border:1px solid var(--border-default);border-radius:var(--radius-lg);text-align:center;box-shadow:var(--shadow-sm);padding:42px 24px}.crm-state-icon{border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;margin-bottom:18px;display:inline-flex}.crm-state-icon.error{background:var(--danger-light);color:var(--danger-text)}.crm-state-icon.permission{color:#92400e;background:#fef3c7}.crm-state-icon.empty{color:var(--primary-text);background:#eef2ff}.crm-state-title{color:var(--text-primary);margin-bottom:8px;font-size:22px;font-weight:700}.crm-state-description{color:var(--text-secondary);max-width:520px;margin:0 auto 18px;font-size:14px;line-height:1.6}.crm-notification-list{flex-direction:column;gap:12px;display:flex}.crm-notification-item{border:1px solid var(--border-default);border-radius:var(--radius-lg);background:var(--bg-surface);align-items:flex-start;gap:14px;padding:16px 18px;display:flex}.crm-notification-item.unread{background:#f8fafc;border-color:#dfe7ff}.crm-notification-icon{background:var(--primary-light);width:38px;height:38px;color:var(--primary-text);border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.crm-notification-copy{flex:1}.crm-notification-copy strong{color:var(--text-primary);margin-bottom:4px;font-size:14px;display:block}.crm-notification-copy p{color:var(--text-secondary);margin-bottom:6px;font-size:13px;line-height:1.5}.crm-notification-copy small{color:var(--text-muted);font-size:12px}.crm-notification-meta-row{align-items:center;gap:8px;display:flex}.crm-dot{background:var(--primary);border-radius:50%;width:8px;height:8px;display:inline-block}.crm-profile-header{align-items:center;gap:18px;margin-bottom:26px;display:flex}.crm-profile-avatar{color:#fff;background:linear-gradient(135deg,#4f46e5 0%,#7c3aed 100%);border-radius:50%;justify-content:center;align-items:center;width:72px;height:72px;font-size:22px;font-weight:800;display:flex}.crm-profile-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;display:grid}.crm-profile-item{border:1px solid var(--border-default);border-radius:var(--radius-lg);background:#f8fafc;align-items:center;gap:14px;padding:18px;display:flex}.crm-profile-icon{background:var(--primary-light);width:40px;height:40px;color:var(--primary-text);border-radius:10px;justify-content:center;align-items:center;display:flex}.crm-profile-label{text-transform:uppercase;letter-spacing:.4px;color:var(--text-secondary);margin-bottom:4px;font-size:12px;font-weight:700}.crm-profile-value{color:var(--text-primary);font-size:15px;font-weight:600}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@media (width<=900px){.crm-sidebar{position:fixed;left:-260px}.crm-sidebar.open{left:0;box-shadow:0 0 50px #00000080}.crm-sidebar-overlay{z-index:35;background:#00000080;position:fixed;inset:0}.crm-menu-toggle{display:flex}.crm-header{padding:0 16px}.crm-main{padding:16px}.crm-attendance-hero{padding:20px}}
