.password-change-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000bf;display:flex;justify-content:center;align-items:center;z-index:10000}.password-change-modal{background:var(--bg-primary, #ffffff);border-radius:var(--radius-xl, 8px);box-shadow:0 10px 40px #0000004d;max-width:500px;width:90%;max-height:90vh;overflow-y:auto}.password-change-modal .modal-header{padding:var(--spacing-xl, 1.5rem);border-bottom:1px solid var(--border-light, #e0e0e0);text-align:center}.password-change-modal .modal-header h2{margin:0;color:var(--text-primary, #333);font-size:var(--text-2xl, 1.5rem)}.password-change-modal .modal-body{padding:var(--spacing-xl, 1.5rem)}.password-change-message{margin-bottom:var(--spacing-lg, 1rem);padding:var(--spacing-md, .75rem);background:var(--color-warning-light, #fff3cd);border:1px solid var(--color-warning, #ffc107);border-radius:var(--radius-md, 4px);color:var(--color-warning-dark, #856404);font-size:var(--text-sm, .875rem);text-align:center}.password-change-form{display:flex;flex-direction:column;gap:var(--spacing-lg, 1rem)}.password-change-form .form-group{display:flex;flex-direction:column;gap:var(--spacing-xs, .25rem)}.password-change-form label{font-weight:var(--font-medium, 500);color:var(--text-primary, #333);font-size:var(--text-sm, .875rem)}.password-change-form input{padding:var(--spacing-sm, .5rem) var(--spacing-md, .75rem);border:1px solid var(--border-medium, #ccc);border-radius:var(--radius-md, 4px);font-size:var(--text-base, 1rem);transition:border-color .2s}.password-change-form input:focus{outline:none;border-color:var(--color-primary, #007bff);box-shadow:0 0 0 3px var(--color-primary-light, rgba(0, 123, 255, .1))}.password-change-form input:disabled{opacity:.6;cursor:not-allowed}.form-help{font-size:var(--text-xs, .75rem);color:var(--text-secondary, #666);margin-top:var(--spacing-xs, .25rem)}.error-message{padding:var(--spacing-sm, .5rem) var(--spacing-md, .75rem);background:var(--color-error-light, #f8d7da);border:1px solid var(--color-error, #dc3545);border-radius:var(--radius-md, 4px);color:var(--color-error-dark, #721c24);font-size:var(--text-sm, .875rem)}.form-actions{margin-top:var(--spacing-md, .75rem)}.password-change-modal .btn-primary{width:100%;padding:var(--spacing-sm, .5rem) var(--spacing-md, .75rem);background:var(--color-primary, #007bff);color:#fff;border:none;border-radius:var(--radius-md, 4px);font-size:var(--text-base, 1rem);font-weight:var(--font-semibold, 600);cursor:pointer;transition:background .2s}.password-change-modal .btn-primary:hover:not(:disabled){background:var(--color-primary-hover, #0056b3)}.password-change-modal .btn-primary:disabled{opacity:.6;cursor:not-allowed}.login-container{width:100%;max-width:1200px;margin:0 auto;padding:var(--spacing-xl);display:flex;flex-direction:column;align-items:center;min-height:calc(100vh - 4rem);justify-content:center}.login-container h1{text-align:center;margin-bottom:var(--spacing-2xl);color:var(--text-primary);font-size:var(--text-4xl)}.login-box{background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-xl);padding:var(--spacing-2xl);min-width:350px;max-width:450px;box-shadow:var(--shadow-lg);width:100%}.login-box.single{max-width:500px}.login-box h2{margin-top:0;margin-bottom:var(--spacing-lg);text-align:center;font-size:var(--text-2xl);color:var(--text-primary)}.login-subtitle{text-align:center;margin-top:calc(-1 * var(--spacing-sm));margin-bottom:var(--spacing-xl);color:var(--text-secondary);font-size:var(--text-base)}.form-group label{display:block;margin-bottom:var(--spacing-sm);font-weight:var(--font-medium);color:var(--text-primary)}.form-group input{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-medium);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--text-primary);font-size:var(--text-base);box-sizing:border-box;transition:all var(--transition-fast)}.form-group input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.form-group input:disabled{opacity:.5;background:var(--bg-disabled);cursor:not-allowed}.message{margin:var(--spacing-md) 0;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);text-align:center;font-size:var(--text-sm)}.message.error{background:var(--color-error-light);border:1px solid var(--color-error);color:var(--color-error-dark)}.message.error.rate-limited{background:var(--color-warning-light);border:2px solid var(--color-warning);color:var(--color-warning-dark);font-weight:var(--font-semibold);padding:var(--spacing-md)}.message.success{background:var(--color-success-light);border:1px solid var(--color-success);color:var(--color-success-dark)}button[type=submit]{width:100%;margin-top:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);font-size:var(--text-base);font-weight:var(--font-semibold);border-radius:var(--radius-md);border:1px solid transparent;background-color:var(--color-primary);color:var(--text-inverse);cursor:pointer;transition:all var(--transition-fast)}button[type=submit]:hover:not(:disabled){background-color:var(--color-primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}button[type=submit]:disabled{opacity:.5;cursor:not-allowed;transform:none}.ai-chat-sidebar{position:fixed;top:0;right:0;width:33.333%;height:100vh;background:rgba(var(--bg-primary-rgb, 255, 255, 255),.92);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:-8px 0 32px #0000001f,-2px 0 8px #00000014,inset 1px 0 #ffffff1a;display:flex;flex-direction:column;z-index:var(--z-modal);border-radius:var(--radius-xl) 0 0 var(--radius-xl);overflow:hidden;transform-origin:right center;will-change:transform;border-left:1px solid rgba(255,255,255,.15)}[data-theme=dark] .ai-chat-sidebar{background:rgba(var(--bg-primary-rgb, 30, 30, 30),.88);box-shadow:-8px 0 32px #0006,-2px 0 8px #0000004d,inset 1px 0 #ffffff0d;border-left:1px solid rgba(255,255,255,.08)}.sidebar-header{background:linear-gradient(135deg,var(--color-secondary) 0%,var(--color-secondary-hover) 100%);color:var(--text-inverse);padding:var(--spacing-md) var(--spacing-lg);display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.header-title h3{margin:0;font-size:var(--text-lg);font-weight:var(--font-semibold)}.header-subtitle{font-size:var(--text-xs);opacity:.9}.header-actions{display:flex;gap:var(--spacing-sm)}.icon-btn{background:#fff3;border:1px solid rgba(255,255,255,.3);color:var(--text-inverse);width:32px;height:32px;border-radius:var(--radius-md);cursor:pointer;font-size:var(--text-base);display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast)}.icon-btn:hover{background:#ffffff4d;border-color:#ffffff80}.context-bar{padding:var(--spacing-md) var(--spacing-md);background:var(--bg-secondary);border-bottom:1px solid var(--border-light);display:flex;flex-wrap:wrap;gap:var(--spacing-sm);flex-shrink:0}.context-tag{font-size:var(--text-xs);padding:var(--spacing-xs) var(--spacing-sm);background:var(--bg-primary);border:1px solid var(--border-medium);border-radius:var(--radius-full);color:var(--text-secondary);white-space:nowrap;display:inline-flex;align-items:center;gap:6px}.history-dropdown{position:absolute;top:70px;right:var(--spacing-md);width:360px;max-height:400px;background:var(--bg-primary);border:1px solid var(--border-medium);border-radius:var(--radius-lg);box-shadow:0 8px 24px #00000026;z-index:calc(var(--z-modal) + 1);overflow:hidden;display:flex;flex-direction:column}.history-dropdown-header{padding:var(--spacing-md);background:var(--bg-secondary);border-bottom:1px solid var(--border-light);font-weight:var(--font-semibold);font-size:var(--text-sm);color:var(--text-primary)}.history-items{flex:1;overflow-y:auto;max-height:320px}.history-item{padding:var(--spacing-md);border-bottom:1px solid var(--border-light);cursor:pointer;transition:background-color var(--transition-fast),transform var(--transition-fast)}.history-item:hover{background:var(--bg-secondary);transform:translateY(-1px)}.history-item:last-child{border-bottom:none}.history-query{font-size:var(--text-sm);color:var(--text-primary);margin-bottom:var(--spacing-xs);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;align-items:center;gap:var(--spacing-xs)}.history-meta{font-size:var(--text-xs);color:var(--text-secondary);display:flex;align-items:center;gap:var(--spacing-xs);flex-wrap:wrap}.history-icon{color:var(--text-tertiary);font-size:.8rem}.history-divider{color:var(--text-tertiary);font-size:.7rem}.clear-history-btn{padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-secondary);border:none;border-top:1px solid var(--border-light);color:var(--text-secondary);font-size:var(--text-sm);cursor:pointer;transition:all var(--transition-fast);width:100%;text-align:center}.clear-history-btn:hover{background:var(--color-danger-bg);color:var(--color-danger)}.icon-btn:disabled{opacity:.4;cursor:not-allowed}.icon-btn:disabled:hover{background:#fff3;border-color:#ffffff4d}.messages-area{flex:1;overflow-y:auto;padding:var(--spacing-md);background:var(--bg-secondary)}.message{margin-bottom:2px!important;max-width:85%;animation:slideIn var(--transition-fast) ease-out}.message.ai{width:85%;max-width:85%}.message .seizure-stats-inline,.message .k9-stats-inline,.message .shift-comparison-inline,.message .incident-stats-inline,.message .analytics-content,.message .stat-type-options{width:100%;max-width:100%;box-sizing:border-box;overflow:hidden}.message .seizure-summary-card,.message .seizure-ranking-card,.message .drug-breakdown-card,.message .k9-ranking-card,.message .k9-comparison-card,.message .k9-summary-inline,.message .incident-ranking-card,.message .incident-summary-card{width:100%;max-width:100%;box-sizing:border-box}@keyframes slideIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.message.user{margin-left:auto}.message.user .message-text{background:linear-gradient(135deg,var(--color-secondary) 0%,var(--color-secondary-hover) 100%);color:var(--text-inverse);border-radius:var(--radius-xl) var(--radius-xl) var(--radius-sm) var(--radius-xl)}.message.ai .message-text{background:var(--bg-primary);color:var(--text-primary);border-radius:var(--radius-xl) var(--radius-xl) var(--radius-xl) var(--radius-sm);border:1px solid var(--border-medium)}.message-text{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--text-sm);line-height:1.4;word-wrap:break-word}.loading-dots{display:flex;gap:var(--spacing-xs);padding:var(--spacing-sm) 0}.loading-dots span{width:6px;height:6px;background:var(--gray-600);border-radius:var(--radius-full);animation:bounce 1.4s infinite ease-in-out both}.loading-dots span:nth-child(1){animation-delay:-.32s}.loading-dots span:nth-child(2){animation-delay:-.16s}@keyframes bounce{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}.action-bar{padding:var(--spacing-md) var(--spacing-md);background:var(--bg-primary);border-top:1px solid var(--border-light);display:flex;gap:var(--spacing-sm);justify-content:center;flex-shrink:0}.ai-chat-sidebar .btn-sm{padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--text-xs);border-radius:var(--radius-md);cursor:pointer;border:none;font-weight:var(--font-medium);transition:all var(--transition-fast)}.ai-chat-sidebar .btn-primary{background:linear-gradient(135deg,var(--color-secondary) 0%,var(--color-secondary-hover) 100%);color:var(--text-inverse)}.ai-chat-sidebar .btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px #60a5fa66}.ai-chat-sidebar .btn-secondary{background:var(--gray-600);color:var(--text-inverse)}.ai-chat-sidebar .btn-secondary:hover{background:var(--gray-700)}.input-area{padding:var(--spacing-md);background:var(--bg-primary);border-top:1px solid var(--border-light);display:flex;gap:var(--spacing-sm);flex-shrink:0}.input-area input{flex:1;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-medium);border-radius:var(--radius-full);font-size:var(--text-sm);background:var(--bg-primary);color:var(--text-primary);outline:none;transition:border-color var(--transition-fast)}.input-area input:focus{border-color:var(--color-secondary);box-shadow:0 0 0 3px var(--color-secondary-light)}.input-area input:disabled{background:var(--bg-disabled);cursor:not-allowed}.send-btn{width:40px;height:40px;border-radius:var(--radius-full);border:none;background:linear-gradient(135deg,var(--color-secondary) 0%,var(--color-secondary-hover) 100%);color:var(--text-inverse);font-size:var(--text-lg);cursor:pointer;transition:all var(--transition-fast);display:flex;align-items:center;justify-content:center}.send-btn:hover:not(:disabled){transform:scale(1.1);box-shadow:0 4px 12px #60a5fa66}.send-btn:disabled{opacity:.5;cursor:not-allowed}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:var(--z-modal-backdrop);animation:fadeIn var(--transition-fast) ease-out}.modal-content{background:var(--bg-primary);border-radius:var(--radius-xl);width:90%;max-width:900px;max-height:85vh;display:flex;flex-direction:column;box-shadow:var(--shadow-2xl);animation:slideUp var(--transition-slow) ease-out}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.modal-header{padding:var(--spacing-lg) var(--spacing-xl);border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;align-items:center;flex-shrink:0}.modal-header h3{margin:0;font-size:var(--text-xl);color:var(--text-primary)}.close-btn{background:none;border:none;font-size:var(--text-2xl);color:var(--text-muted);cursor:pointer;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);transition:all var(--transition-fast)}.modal-body{padding:var(--spacing-xl);overflow-y:auto;flex:1}.results-table-container{overflow-x:auto}.results-table th{background:var(--bg-tertiary);padding:var(--spacing-md);text-align:left;font-weight:var(--font-semibold);color:var(--text-primary);border-bottom:2px solid var(--border-medium);position:sticky;top:0}.results-table td{padding:var(--spacing-md);border-bottom:1px solid var(--border-light);color:var(--text-primary)}.results-table tr:hover{background:var(--bg-hover)}.report-text{white-space:pre-wrap;line-height:1.7;color:var(--text-primary);font-size:var(--text-sm)}.messages-area::-webkit-scrollbar,.modal-body::-webkit-scrollbar{width:8px}.messages-area::-webkit-scrollbar-track,.modal-body::-webkit-scrollbar-track{background:var(--gray-100)}.messages-area::-webkit-scrollbar-thumb,.modal-body::-webkit-scrollbar-thumb{background:var(--gray-400);border-radius:var(--radius-sm)}.messages-area::-webkit-scrollbar-thumb:hover,.modal-body::-webkit-scrollbar-thumb:hover{background:var(--gray-500)}.smart-shortcuts{padding:var(--spacing-md) var(--spacing-md);background:linear-gradient(135deg,var(--bg-secondary) 0%,var(--bg-tertiary) 100%);border-top:1px solid var(--border-medium);display:flex;flex-wrap:wrap;gap:var(--spacing-sm);flex-shrink:0;animation:slideDown var(--transition-slow) ease-out}@keyframes slideDown{0%{opacity:0;max-height:0;padding-top:0;padding-bottom:0}to{opacity:1;max-height:100px;padding-top:var(--spacing-md);padding-bottom:var(--spacing-md)}}.shortcut-btn{padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-primary);border:2px solid var(--color-secondary);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-medium);color:var(--color-secondary);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;box-shadow:var(--shadow-sm)}.shortcut-btn:hover{background:linear-gradient(135deg,var(--color-secondary) 0%,var(--color-secondary-hover) 100%);color:var(--text-inverse);transform:translateY(-2px);box-shadow:0 4px 12px #60a5fa4d}.shortcut-btn:active{transform:translateY(0);box-shadow:var(--shadow-sm)}.analytics-action-buttons{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-md);padding:var(--spacing-sm) 0}.btn-full-analytics,.btn-quick-analytics{flex:1;padding:var(--spacing-sm) var(--spacing-md);border:none;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--font-medium);cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:var(--spacing-xs)}.btn-full-analytics{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-hover) 100%);color:var(--text-inverse);box-shadow:var(--shadow-sm)}.btn-full-analytics:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-quick-analytics{background:linear-gradient(135deg,var(--color-secondary) 0%,var(--color-secondary-hover) 100%);color:var(--text-inverse);box-shadow:var(--shadow-sm)}.btn-quick-analytics:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.btn-full-analytics:active,.btn-quick-analytics:active{transform:translateY(0);box-shadow:var(--shadow-sm)}.crystal-ball-btn{font-size:20px;animation:float 3s ease-in-out infinite}.crystal-ball-btn:hover{transform:scale(1.2)!important;filter:drop-shadow(0 0 8px rgba(139,92,246,.6))}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-3px)}}.crystal-ball-modal{max-width:1200px;max-height:90vh;overflow-y:auto;background:var(--bg-primary);border-radius:16px;padding:0}.crystal-ball-modal .modal-header{position:sticky;top:0;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:20px 24px;border-radius:16px 16px 0 0;display:flex;justify-content:space-between;align-items:center;z-index:10;box-shadow:0 2px 8px #0000001a}.crystal-ball-modal .modal-header h2{margin:0;font-size:24px;font-weight:700}.crystal-ball-modal .modal-close{background:#fff3;border:none;color:#fff;font-size:28px;cursor:pointer;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:all .2s}.crystal-ball-modal .modal-close:hover{background:#ffffff4d;transform:rotate(90deg)}.crystal-ball-modal .modal-body{padding:24px}.crystal-ball-section{margin-bottom:32px}.crystal-ball-section h3{font-size:20px;font-weight:600;color:#111827;margin:0 0 16px;padding-bottom:12px;border-bottom:2px solid #e5e7eb}.shift-comparison-inline{margin-top:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-md)}.shift-comparison-inline .shift-comparison-card{box-shadow:0 2px 6px #0000001a;font-size:.9rem}.shift-comparison-inline .shift-comparison-card .comparison-header h3{font-size:1rem}.shift-comparison-inline .shift-comparison-card .comparison-table{font-size:.85rem}@media (max-width: 1400px){.shift-comparison-inline .shift-comparison-card{font-size:.85rem}.shift-comparison-inline .comparison-table th,.shift-comparison-inline .comparison-table td{padding:8px 6px}}.shift-action-buttons{display:flex;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid var(--border-light, #e0e0e0)}.btn-shift-analytics{flex:1;padding:10px 16px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;border:none;border-radius:8px;font-weight:600;font-size:14px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:8px}.btn-shift-analytics:hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.btn-shift-analytics:active{transform:translateY(0)}.k9-action-buttons{display:flex;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid var(--border-light, #e0e0e0)}.btn-k9-analytics{flex:1;padding:10px 16px;background:linear-gradient(135deg,#1e3a5f,#2d5a87);color:#fff;border:none;border-radius:8px;font-weight:600;font-size:14px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:8px}.btn-k9-analytics:hover{transform:translateY(-2px);box-shadow:0 4px 12px #1e3a5f66}.btn-k9-analytics:active{transform:translateY(0)}.seizure-action-buttons{display:flex;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid var(--border-light, #e0e0e0)}.btn-seizure-analytics{flex:1;padding:10px 16px;background:linear-gradient(135deg,#065f46,#047857);color:#fff;border:none;border-radius:8px;font-weight:600;font-size:14px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:8px}.btn-seizure-analytics:hover{transform:translateY(-2px);box-shadow:0 4px 12px #065f4666}.btn-seizure-analytics:active{transform:translateY(0)}.incident-stats-inline{margin-top:12px;max-width:100%;overflow:hidden}.incident-ranking-card,.incident-summary-card{display:flex!important;flex-direction:column!important;background:linear-gradient(145deg,#f0f4ff,#e8eeff);border-radius:10px;padding:12px;margin-top:8px;border:1px solid rgba(99,102,241,.15);box-shadow:0 2px 8px #6366f11a;max-width:100%;overflow:hidden;box-sizing:border-box}.incident-header{font-size:13px;font-weight:600;color:#4f46e5;display:flex;align-items:center;gap:8px;padding-bottom:10px;border-bottom:1px solid rgba(99,102,241,.12);margin-bottom:10px}.incident-header .header-icon{font-size:18px;flex-shrink:0}.incident-main-stat{display:flex;flex-direction:column;align-items:center;padding:16px 0;text-align:center}.incident-main-stat .main-count{font-size:2.5rem;font-weight:700;color:#4f46e5;line-height:1}.incident-main-stat .main-label{font-size:.85rem;color:#6b7280;margin-top:6px}.incident-quick-stats{display:flex;justify-content:center;gap:20px;margin:12px 0;padding:10px;background:#6366f10f;border-radius:8px}.incident-quick-stats .quick-stat{display:flex;flex-direction:column;align-items:center;gap:2px}.incident-quick-stats .quick-icon{font-size:1rem}.incident-quick-stats .quick-value{font-size:1.25rem;font-weight:700}.incident-quick-stats .quick-stat.pending .quick-value{color:#f59e0b}.incident-quick-stats .quick-stat.resolved .quick-value{color:#10b981}.incident-quick-stats .quick-label{font-size:.7rem;color:#6b7280;text-transform:uppercase}.incident-status-breakdown{margin:10px 0}.incident-status-breakdown .breakdown-header,.incident-categories .breakdown-header,.incident-resolution .breakdown-header{font-size:.75rem;color:#6b7280;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.status-bar-container{display:flex;height:8px;border-radius:4px;overflow:hidden;background:#6366f11a}.status-segment{transition:width .3s ease}.status-legend{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.legend-item{display:flex;align-items:center;gap:4px;font-size:.7rem;color:#4b5563}.legend-dot{width:8px;height:8px;border-radius:50%;flex-shrink:0}.legend-count{font-weight:600}.incident-categories{margin:10px 0}.category-list{display:flex;flex-wrap:wrap;gap:6px}.category-tag{background:#6366f11a;color:#4f46e5;padding:4px 8px;border-radius:12px;font-size:.75rem;font-weight:500}.incident-resolution{margin:10px 0}.resolution-stats{display:flex;justify-content:space-around;gap:8px}.resolution-stat{display:flex;flex-direction:column;align-items:center;gap:2px}.resolution-stat .res-label{font-size:.7rem;color:#6b7280;text-transform:uppercase}.resolution-stat .res-value{font-size:.9rem;font-weight:600;color:#374151}.incident-ranking-list{display:flex;flex-direction:column;gap:6px}.incident-ranking-row{display:flex;align-items:center;gap:8px;padding:6px 8px;background:#6366f10a;border-radius:6px;transition:background .2s}.incident-ranking-row:hover{background:#6366f114}.incident-ranking-row.top-three{background:#6366f11a}.incident-rank{min-width:32px;font-size:14px;font-weight:600;color:#4f46e5}.incident-ranking-row .officer-info{flex:1;min-width:0}.incident-ranking-row .officer-name{font-size:13px;font-weight:500;color:#1f2937;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.incident-ranking-row .officer-meta{font-size:11px;color:#6b7280}.incident-ranking-row .ranking-bar-container{flex:1;height:8px;background:#6366f11a;border-radius:4px;overflow:hidden;min-width:60px}.incident-bar{height:100%;background:linear-gradient(90deg,#6366f1,#8b5cf6);border-radius:4px;transition:width .3s ease}.incident-value{min-width:32px;text-align:right;font-weight:600;font-size:13px;color:#4f46e5}.incident-no-data{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:20px;color:#6b7280;font-size:.9rem}.incident-no-data .no-data-icon{font-size:1.5rem}.incident-action-buttons{display:flex;gap:8px;margin-top:12px;padding-top:12px;border-top:1px solid var(--border-light, #e0e0e0)}.btn-incident-analytics{flex:1;padding:10px 16px;background:linear-gradient(135deg,#4f46e5,#6366f1);color:#fff;border:none;border-radius:8px;font-weight:600;font-size:14px;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;gap:8px}.btn-incident-analytics:hover{transform:translateY(-2px);box-shadow:0 4px 12px #4f46e566}.btn-incident-analytics:active{transform:translateY(0)}.shift-rankings-inline{margin-top:12px;padding:12px;background:var(--bg-primary, #f8f9fa);border-radius:8px;border:1px solid var(--border-light, #e0e0e0)}.shift-rankings-inline .analytics-header{font-weight:600;margin-bottom:8px;color:var(--text-primary, #333);font-size:14px}.shift-ranking-list{display:flex;flex-direction:column;gap:6px}.shift-ranking-row{display:flex;align-items:center;gap:8px;padding:6px 8px;background:var(--bg-secondary, #ffffff);border-radius:6px;border:1px solid var(--border-light, #e0e0e0)}.shift-ranking-row .rank-badge{font-size:14px;font-weight:700;min-width:28px;color:var(--color-primary, #667eea)}.shift-ranking-row .shift-name{flex:1;font-weight:500;color:var(--text-primary, #333);font-size:13px}.shift-ranking-row .shift-value{font-weight:600;color:var(--color-primary, #667eea);font-size:13px}.shift-trend-inline{margin-top:12px;padding:12px;background:var(--bg-primary, #f8f9fa);border-radius:8px;border:1px solid var(--border-light, #e0e0e0)}.shift-trend-inline .analytics-header{font-weight:600;margin-bottom:8px;color:var(--text-primary, #333);font-size:14px}.shift-trend-inline .trend-summary{display:flex;align-items:center;gap:12px;font-size:16px;font-weight:500}.shift-trend-inline .trend-change{font-weight:600;color:var(--color-primary, #667eea)}.shift-stats-inline{margin-top:12px;padding:12px;background:var(--bg-primary, #f8f9fa);border-radius:8px;border:1px solid var(--border-light, #e0e0e0)}.shift-stats-inline .shift-stats-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid var(--border-light, #e0e0e0)}.shift-stats-inline .shift-stats-header .shift-name{font-weight:600;color:var(--text-primary, #333);font-size:14px}.shift-stats-inline .shift-stats-header .officer-count{font-size:12px;color:var(--text-secondary, #666);background:var(--bg-secondary, #fff);padding:4px 8px;border-radius:12px;border:1px solid var(--border-light, #e0e0e0)}.shift-stats-inline .shift-stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.shift-stats-inline .stat-item{background:var(--bg-secondary, #ffffff);border-radius:6px;padding:8px 10px;border:1px solid var(--border-light, #e0e0e0);display:flex;flex-direction:column;gap:2px}.shift-stats-inline .stat-item .stat-label{font-size:11px;color:var(--text-secondary, #666);text-transform:capitalize}.shift-stats-inline .stat-item .stat-value{font-size:16px;font-weight:700;color:var(--color-primary, #667eea)}@media (max-width: 400px){.shift-stats-inline .shift-stats-grid{grid-template-columns:1fr}}.shift-ranking-table{background:var(--bg-primary, #f8f9fa);border-radius:12px;padding:16px;border:1px solid var(--border-light, #e0e0e0);margin-top:12px}.shift-ranking-table.compact{padding:12px}.shift-ranking-table .analytics-header{font-size:14px;font-weight:600;color:var(--text-primary, #333);margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid var(--border-light, #e0e0e0)}.shift-ranking-table .shift-ranking-list{display:flex;flex-direction:column;gap:8px}.shift-ranking-table .shift-ranking-row{display:flex;align-items:center;gap:10px;padding:10px 12px;background:var(--bg-secondary, #ffffff);border-radius:8px;border:1px solid var(--border-light, #e0e0e0);transition:all .2s ease}.shift-ranking-table .shift-ranking-row:hover{background:var(--bg-hover, #f0f0f0)}.shift-ranking-table .shift-ranking-row.top-three{background:linear-gradient(135deg,var(--bg-secondary, #ffffff) 0%,var(--bg-hover, #f0f0f0) 100%)}.shift-ranking-table .rank-badge{font-size:14px;font-weight:700;min-width:32px;text-align:center;color:var(--color-primary, #667eea)}.shift-ranking-table .shift-indicator{width:4px;height:32px;border-radius:2px;flex-shrink:0}.shift-ranking-table .shift-info{flex:1;min-width:0}.shift-ranking-table .shift-name{font-weight:600;color:var(--text-primary, #333);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:13px}.shift-ranking-table .shift-meta{font-size:11px;color:var(--text-muted, #888);margin-top:2px}.shift-ranking-table .ranking-bar-container{flex:1;height:8px;background:var(--bg-tertiary, #eee);border-radius:4px;overflow:hidden;min-width:60px;max-width:100px}.shift-ranking-table .ranking-bar{height:100%;border-radius:4px;transition:width .3s ease}.shift-ranking-table .value-badge{font-weight:700;font-size:13px;color:var(--text-primary, #333);min-width:45px;text-align:right}.shift-ranking-table .show-more-indicator{text-align:center;font-size:12px;color:var(--text-muted, #888);margin-top:8px;padding-top:8px;border-top:1px dashed var(--border-light, #e0e0e0)}.shift-ranking-table.compact .shift-ranking-row{padding:8px 10px;gap:8px}.shift-ranking-table.compact .rank-badge{font-size:12px;min-width:24px}.shift-ranking-table.compact .shift-indicator{height:24px}.shift-ranking-table.compact .ranking-bar-container{max-width:70px}.analytics-empty{padding:16px;text-align:center;color:var(--text-muted, #888);font-style:italic}.shift-trend-chart{background:var(--bg-primary, #f8f9fa);border-radius:12px;padding:16px;border:1px solid var(--border-light, #e0e0e0);margin-top:12px}.shift-trend-chart.compact{padding:12px}.shift-trend-chart .analytics-header{font-size:14px;font-weight:600;color:var(--text-primary, #333);margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid var(--border-light, #e0e0e0)}.shift-trend-chart .trend-summary-box{display:flex;align-items:stretch;gap:12px;padding:12px;background:var(--bg-secondary, #ffffff);border-radius:8px;border:1px solid var(--border-light, #e0e0e0)}.shift-trend-chart .shift-color-bar{width:4px;border-radius:2px;flex-shrink:0}.shift-trend-chart .trend-details{flex:1;display:flex;flex-direction:column;gap:6px}.shift-trend-chart .trend-direction{display:flex;align-items:center;gap:8px;font-size:14px;font-weight:600}.shift-trend-chart .trend-direction.trend-positive{color:#10b981}.shift-trend-chart .trend-direction.trend-negative{color:#ef4444}.shift-trend-chart .trend-direction.trend-neutral{color:#6b7280}.shift-trend-chart .trend-arrow{font-weight:700;min-width:40px}.shift-trend-chart .trend-label{flex:1}.shift-trend-chart .trend-percent{font-weight:700;font-size:15px}.shift-trend-chart .trend-comparison{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--text-muted, #888)}.shift-trend-chart .period-value{font-weight:500}.shift-trend-chart .period-arrow{color:var(--text-muted, #888)}.shift-trend-chart .trend-totals{display:flex;flex-direction:column;gap:4px;padding-left:12px;border-left:1px solid var(--border-light, #e0e0e0)}.shift-trend-chart .total-box{display:flex;flex-direction:column;align-items:center;padding:4px 12px}.shift-trend-chart .total-label{font-size:10px;color:var(--text-muted, #888);text-transform:uppercase;font-weight:500}.shift-trend-chart .total-value{font-size:14px;font-weight:700;color:var(--text-primary, #333)}.shift-trend-chart .mini-trend-chart{margin-top:12px;padding-top:12px;border-top:1px solid var(--border-light, #e0e0e0)}.shift-trend-chart .chart-bars{display:flex;align-items:flex-end;justify-content:space-around;height:60px;gap:4px}.shift-trend-chart .chart-bar-wrapper{flex:1;display:flex;flex-direction:column;align-items:center;height:100%}.shift-trend-chart .chart-bar{width:100%;max-width:24px;border-radius:3px 3px 0 0;transition:height .3s ease,opacity .3s ease;margin-top:auto}.shift-trend-chart .chart-bar:hover{opacity:1!important}.shift-trend-chart .chart-label{font-size:9px;color:var(--text-muted, #888);margin-top:4px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.shift-trend-chart.compact .trend-summary-box{padding:8px;gap:8px}.shift-trend-chart.compact .trend-direction{font-size:12px}.shift-trend-chart.compact .trend-totals{padding-left:8px}.shift-trend-chart.compact .total-box{padding:2px 8px}.shift-trend-chart.compact .total-value{font-size:12px}.shift-trend-chart.compact .mini-trend-chart{margin-top:8px;padding-top:8px}.shift-trend-chart.compact .chart-bars{height:40px}.k9-stats-inline{margin-top:12px;max-width:100%;overflow:hidden}.k9-ranking-card,.k9-comparison-card{display:flex!important;flex-direction:column!important;background:linear-gradient(145deg,#faf8f5,#f5f0ea);border-radius:10px;padding:12px;margin-top:8px;border:1px solid rgba(139,69,19,.15);box-shadow:0 2px 8px #8b451314;max-width:100%;overflow:hidden;box-sizing:border-box}.k9-header{color:#6b4423;display:flex;align-items:center;gap:8px;font-weight:600;font-size:13px;padding-bottom:10px;border-bottom:2px solid rgba(139,69,19,.15);margin-bottom:10px}.k9-header .header-icon{font-size:16px;color:#8b4513;background:linear-gradient(135deg,#8b451326,#d2691e1a);padding:5px;border-radius:6px;flex-shrink:0}.k9-header .rank-by-label{font-size:11px;opacity:.7;margin-left:auto;background:#8b45131a;padding:3px 8px;border-radius:4px}.k9-ranking-list{margin-top:6px;display:flex;flex-direction:column;gap:4px}.k9-ranking-row{display:flex;align-items:center;gap:6px;padding:8px 10px;background:#fff;border-radius:8px;transition:all .2s ease;border:1px solid rgba(139,69,19,.08)}.k9-ranking-row:hover{background:#fffaf5;transform:translate(1px);box-shadow:0 2px 6px #8b45131a}.k9-ranking-row.top-three{background:linear-gradient(135deg,#fff9f0,#fff);border-left:3px solid #D2691E}.k9-rank{min-width:26px;font-size:14px;text-align:center}.k9-ranking-row .officer-info{flex:1;min-width:0}.k9-ranking-row .officer-name{font-weight:600;font-size:12px;color:#4a3728;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.k9-ranking-row .officer-meta{font-size:10px;color:#9c8577;margin-top:1px}.k9-ranking-row .ranking-bar-container{flex:1;min-width:40px;height:8px;background:linear-gradient(90deg,#f5ebe0,#ede4d9);border-radius:4px;overflow:hidden}.k9-ranking-row .ranking-bar.k9-bar{height:100%;background:linear-gradient(90deg,#8b4513,peru,#d2691e);border-radius:4px;transition:width .4s ease;box-shadow:0 0 4px #8b45134d}.k9-ranking-row .value-badge.k9-value{font-weight:700;font-size:12px;color:#8b4513;text-align:right;background:#8b451314;padding:3px 6px;border-radius:5px;white-space:nowrap}.k9-value .value-unit{font-size:10px;font-weight:500;opacity:.7;margin-left:2px}.comparison-bars{margin-top:8px}.comparison-row{display:flex;flex-direction:column;padding:8px;background:var(--bg-secondary, #ffffff);border-radius:6px;margin-bottom:6px}.comparison-row.leader{background:linear-gradient(135deg,#fff8e1,#fff);border:1px solid #FFD700}.comparison-row .group-label{display:flex;align-items:center;gap:6px;font-weight:500;margin-bottom:6px}.group-label .group-icon{font-size:14px}.group-label .group-name{font-size:13px;color:var(--text-primary, #333)}.group-label .leader-badge{margin-left:auto;font-size:12px}.comparison-bar-container{height:12px;background:var(--bg-tertiary, #e9ecef);border-radius:6px;overflow:hidden;margin-bottom:4px}.comparison-bar{height:100%;border-radius:6px;transition:width .3s ease}.comparison-row .comparison-stats{display:flex;justify-content:space-between;align-items:center}.comparison-stats .stat-total{font-weight:600;font-size:14px;color:var(--text-primary, #333)}.comparison-stats .stat-meta{font-size:11px;color:var(--text-muted, #888)}.comparison-summary{margin-top:8px;padding:8px;background:var(--bg-tertiary, #e9ecef);border-radius:6px;font-size:12px;text-align:center;color:var(--text-secondary, #666)}.comparison-summary .diff-value{font-weight:600;color:#4caf50}.comparison-summary .diff-percent{color:#4caf50;font-size:11px;margin-left:4px}.k9-summary-inline{display:flex!important;flex-direction:column!important;background:linear-gradient(145deg,#faf8f5,#f5f0ea);border-radius:12px;padding:16px;margin-top:10px;border:1px solid rgba(139,69,19,.15);box-shadow:0 2px 8px #8b451314;max-width:100%;overflow:hidden;box-sizing:border-box}.k9-summary-inline .analytics-header.k9-header{font-size:14px;font-weight:600;color:#8b4513;display:flex;align-items:center;gap:8px;padding-bottom:12px;border-bottom:1px solid rgba(139,69,19,.12);margin-bottom:12px}.k9-summary-inline .analytics-header.k9-header .header-icon{background:linear-gradient(135deg,#8b4513,#d2691e);color:#fff;width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:14px;box-shadow:0 2px 6px #8b451340}.k9-summary-grid{display:flex;flex-direction:column;gap:6px;margin-top:8px;width:100%;box-sizing:border-box}.k9-stat-item{display:flex;flex-direction:row;align-items:center;justify-content:space-between;padding:8px 10px;background:linear-gradient(145deg,#fff,#fdfcfb);border-radius:8px;border:1px solid rgba(139,69,19,.08);box-shadow:0 1px 4px #8b45130f;transition:all .2s ease;width:100%;box-sizing:border-box}.k9-stat-item:hover{transform:translate(2px);box-shadow:0 2px 6px #8b45131a}.k9-stat-item .stat-label{font-size:11px;font-weight:500;color:#8d6e4a;text-transform:uppercase;letter-spacing:.2px}.k9-stat-item .stat-value{font-size:16px;font-weight:700;color:#8b4513;background:linear-gradient(135deg,#8b4513,peru);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.seizure-stats-inline{margin-top:12px;max-width:100%;overflow:hidden}.seizure-ranking-card,.seizure-summary-card,.drug-breakdown-card{display:flex!important;flex-direction:column!important;background:linear-gradient(145deg,#faf8fc,#f5f0f8);border-radius:10px;padding:12px;margin-top:8px;border:1px solid rgba(103,58,183,.12);box-shadow:0 2px 8px #673ab714;max-width:100%;overflow:hidden;box-sizing:border-box}.seizure-header{font-size:13px;font-weight:600;color:#673ab7;display:flex;align-items:center;gap:8px;padding-bottom:10px;border-bottom:1px solid rgba(103,58,183,.1);margin-bottom:10px}.drug-header{color:#9c27b0}.seizure-header .header-icon{background:linear-gradient(135deg,#673ab7,#9575cd);color:#fff;width:26px;height:26px;border-radius:6px;display:flex;align-items:center;justify-content:center;font-size:12px;box-shadow:0 2px 6px #673ab74d;flex-shrink:0}.drug-header .header-icon{background:linear-gradient(135deg,#9c27b0,#ba68c8);box-shadow:0 2px 6px #9c27b04d}.seizure-ranking-list{margin-top:6px}.seizure-ranking-row{display:flex;align-items:center;gap:6px;padding:8px 10px;background:linear-gradient(145deg,#fff,#fdfbfe);border-radius:8px;margin-bottom:4px;border:1px solid rgba(103,58,183,.06);box-shadow:0 1px 3px #673ab70d;transition:all .2s ease}.seizure-ranking-row:hover{transform:translate(1px);box-shadow:0 2px 6px #673ab71a;border-color:#673ab726}.seizure-ranking-row.top-three{background:linear-gradient(145deg,#f3e5f5,#fdfbfe);border-color:#673ab726}.seizure-ranking-row.top-three:first-child{background:linear-gradient(145deg,#ede7f6,#f5f0f8);border-color:#673ab733;box-shadow:0 2px 6px #673ab71a}.seizure-rank{min-width:26px;font-size:12px;font-weight:600;text-align:center}.seizure-ranking-row .officer-info{flex:1;min-width:0}.seizure-ranking-row .officer-name{font-weight:600;font-size:12px;color:#4a3f5c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.seizure-ranking-row .officer-meta{font-size:10px;color:#8c7fa3;margin-top:1px}.seizure-ranking-row .ranking-bar-container{flex:1;min-width:40px;height:8px;background:linear-gradient(90deg,#f5f0f8,#ede7f6);border-radius:4px;overflow:hidden}.seizure-ranking-row .ranking-bar.seizure-bar{height:100%;background:linear-gradient(90deg,#673ab7,#9575cd,#ba68c8);border-radius:4px;transition:width .4s ease;box-shadow:0 0 4px #673ab74d}.seizure-ranking-row .ranking-bar.currency-bar{background:linear-gradient(90deg,#4caf50,#66bb6a,#81c784);box-shadow:0 0 4px #4caf504d}.value-badge.currency-value{font-weight:700;font-size:11px;color:#047857;text-align:right;background:#04785714;padding:3px 6px;border-radius:5px;white-space:nowrap}.value-badge.drugs-value{font-weight:700;font-size:11px;color:#6d28d9;text-align:right;background:#6d28d914;padding:3px 6px;border-radius:5px;white-space:nowrap}.summary-stats-grid{display:flex;flex-direction:column;gap:8px;margin-top:10px;width:100%;box-sizing:border-box}.stat-box{display:flex;align-items:center;gap:10px;padding:10px 12px;background:linear-gradient(145deg,#fff,#fdfbfe);border-radius:10px;border-left:3px solid transparent;box-shadow:0 2px 6px #673ab70f;transition:all .2s ease;width:100%;box-sizing:border-box}.stat-box:hover{transform:translateY(-1px);box-shadow:0 3px 10px #673ab71a}.stat-box.currency{border-left-color:#047857;background:linear-gradient(145deg,#fff,#f0fdf4)}.stat-box.currency:hover{box-shadow:0 3px 10px #0478571f}.stat-box.drugs{border-left-color:#6d28d9}.stat-box .stat-icon{font-size:22px;filter:drop-shadow(0 1px 2px rgba(0,0,0,.1))}.stat-box .stat-content{display:flex;flex-direction:column;flex:1;min-width:0}.stat-box .stat-label{font-size:10px;font-weight:500;color:#7a6b8a;text-transform:uppercase;letter-spacing:.2px;margin-bottom:1px;white-space:nowrap}.stat-box .stat-value{font-size:18px;font-weight:700}.stat-box .stat-value.currency-value{color:#047857;background:linear-gradient(135deg,#047857,#059669);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.stat-box .stat-value.drugs-value{color:#6d28d9;background:linear-gradient(135deg,#6d28d9,#8b5cf6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.summary-meta{display:flex;gap:12px;margin-top:10px;padding:8px 10px;background:linear-gradient(145deg,#f5f0f8,#ede7f6);border-radius:8px;border:1px solid rgba(103,58,183,.08);flex-wrap:wrap}.summary-meta .meta-item{display:flex;align-items:center;gap:4px;font-size:11px;font-weight:500;color:#5c4a6e}.meta-item .meta-icon{font-size:14px;opacity:.8}.drug-breakdown{margin-top:12px;padding-top:12px;border-top:1px solid rgba(103,58,183,.1)}.drug-breakdown .breakdown-header{font-size:11px;font-weight:600;color:#5c4a6e;margin-bottom:8px;display:flex;align-items:center;gap:5px}.drug-breakdown .breakdown-header:before{content:"💊";font-size:12px}.drug-row{display:flex;align-items:center;gap:6px;padding:6px 8px;background:linear-gradient(145deg,#fff,#fdfbfe);border-radius:6px;margin-bottom:4px;border:1px solid rgba(103,58,183,.05);transition:all .2s ease}.drug-row:hover{transform:translate(1px);box-shadow:0 2px 6px #673ab714}.drug-row .drug-indicator{width:10px;height:10px;border-radius:3px;flex-shrink:0;box-shadow:0 1px 3px #00000026}.drug-row .drug-name{flex:1;min-width:0;font-size:11px;font-weight:600;color:#4a3f5c;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.drug-row .drug-bar-container{flex:2;min-width:40px;height:8px;background:linear-gradient(90deg,#f5f0f8,#ede7f6);border-radius:4px;overflow:hidden}.drug-row .drug-bar{height:100%;border-radius:4px;transition:width .4s ease;box-shadow:0 0 4px #673ab733}.drug-row .drug-amount{font-size:11px;font-weight:700;text-align:right;color:#673ab7;background:#673ab70f;padding:2px 5px;border-radius:4px;white-space:nowrap}.drug-row .drug-percent{min-width:30px;font-size:10px;color:#8c7fa3;text-align:right;font-weight:500}.drug-breakdown-card .total-badge{margin-left:auto;font-size:11px;font-weight:700;color:#7b1fa2;background:linear-gradient(135deg,#9c27b01f,#ba68c81f);padding:4px 10px;border-radius:6px;box-shadow:0 1px 3px #9c27b026}.drug-breakdown-list{margin-top:10px}.drug-breakdown-row{display:flex;align-items:center;gap:10px;padding:10px 12px;background:linear-gradient(145deg,#fff,#fdfbfe);border-radius:10px;margin-bottom:6px;border:1px solid rgba(103,58,183,.06);box-shadow:0 1px 3px #673ab70d;transition:all .2s ease}.drug-breakdown-row:hover{transform:translate(2px);box-shadow:0 2px 8px #673ab71a}.drug-breakdown-row.top-drug{background:linear-gradient(145deg,#f3e5f5,#fdfbfe);border-color:#9c27b026;box-shadow:0 2px 6px #9c27b014}.drug-breakdown-row .drug-info{display:flex;align-items:center;gap:8px;width:130px}.drug-info .drug-icon{font-size:16px;filter:drop-shadow(0 1px 2px rgba(0,0,0,.1))}.drug-info .drug-name{font-size:12px;font-weight:600;color:#4a3f5c}.drug-breakdown-row .drug-bar-wrapper{flex:1;height:10px;background:linear-gradient(90deg,#f5f0f8,#ede7f6);border-radius:5px;overflow:hidden}.drug-bar-wrapper .drug-bar-fill{height:100%;border-radius:5px;transition:width .4s ease;box-shadow:0 0 4px #9c27b040}.drug-breakdown-row .drug-values{display:flex;flex-direction:column;align-items:flex-end;min-width:65px}.drug-values .drug-amount{font-size:12px;font-weight:700;color:#673ab7;background:#673ab70f;padding:2px 6px;border-radius:4px}.drug-values .drug-percent{font-size:10px;font-weight:500;color:#8c7fa3;margin-top:2px}.seizure-trend-inline{display:flex!important;flex-direction:column!important;background:linear-gradient(145deg,#faf8fc,#f5f0f8);border-radius:12px;padding:16px;border:1px solid rgba(103,58,183,.12);box-shadow:0 2px 8px #673ab714;max-width:100%;overflow:hidden;box-sizing:border-box}.seizure-trend-inline .analytics-header.seizure-header{font-size:14px;font-weight:600;color:#673ab7;display:flex;align-items:center;gap:10px;padding-bottom:12px;border-bottom:1px solid rgba(103,58,183,.1);margin-bottom:12px}.seizure-trend-inline .analytics-header.seizure-header .header-icon{background:linear-gradient(135deg,#673ab7,#9575cd);color:#fff;width:28px;height:28px;border-radius:8px;display:flex;align-items:center;justify-content:center;font-size:14px;box-shadow:0 2px 6px #673ab74d}.seizure-trend-inline .trend-summary{display:flex;justify-content:space-between;align-items:center;margin-top:10px;padding:12px;background:linear-gradient(145deg,#fff,#fdfbfe);border-radius:10px;border:1px solid rgba(103,58,183,.08);box-shadow:0 1px 4px #673ab70f}.trend-summary .trend-label{font-size:13px;font-weight:600;color:#4a3f5c}.trend-summary .trend-periods{font-size:11px;font-weight:500;color:#8c7fa3;background:#673ab714;padding:3px 8px;border-radius:4px}.date-range-footer{margin-top:10px;padding-top:10px;border-top:1px solid rgba(103,58,183,.08);font-size:11px;font-weight:500;color:#8c7fa3;text-align:center}.k9-ranking-card .date-range-footer,.k9-comparison-card .date-range-footer,.k9-summary-inline .date-range-footer{border-top-color:#8b45131a;color:#a08060}.show-more-indicator{margin-top:10px;text-align:center;font-size:11px;font-weight:500;color:#8c7fa3;padding:6px;background:#673ab70a;border-radius:6px}.k9-ranking-card .show-more-indicator,.k9-comparison-card .show-more-indicator,.k9-summary-inline .show-more-indicator{color:#a08060;background:#8b45130a}.stat-type-options{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px;padding:8px 0}.stat-type-option-btn{padding:10px 16px;border:2px solid transparent;border-radius:var(--radius-md, 8px);font-size:var(--text-sm, 14px);font-weight:500;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;gap:6px}.stat-type-option-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.stat-type-option-btn:active{transform:translateY(0)}.stat-type-option-btn.patrol-stats{background:linear-gradient(135deg,var(--color-primary, #667eea) 0%,var(--color-primary-hover, #5a67d8) 100%);color:var(--text-inverse, #ffffff);box-shadow:0 2px 8px #667eea4d}.stat-type-option-btn.patrol-stats:hover{box-shadow:0 4px 14px #667eea66}.stat-type-option-btn.k9-stats{background:linear-gradient(135deg,#8b4513,#d2691e);color:#fff;box-shadow:0 2px 8px #8b45134d}.stat-type-option-btn.k9-stats:hover{box-shadow:0 4px 14px #8b451366}.stat-type-option-btn.seizure-stats{background:linear-gradient(135deg,#673ab7,#9575cd);color:#fff;box-shadow:0 2px 8px #673ab74d}.stat-type-option-btn.seizure-stats:hover{box-shadow:0 4px 14px #673ab766}[data-theme=dark] .stat-type-option-btn.k9-stats{background:linear-gradient(135deg,#d2691e,#e07b3d)}[data-theme=dark] .stat-type-option-btn.seizure-stats{background:linear-gradient(135deg,#9575cd,#b39ddb)}[data-theme=dark] .k9-ranking-card,[data-theme=dark] .k9-comparison-card{background:linear-gradient(145deg,#2d2520,#362e28);border-color:#d2691e33;box-shadow:0 2px 8px #0000004d}[data-theme=dark] .k9-header{color:#e8a86a;border-bottom-color:#d2691e33}[data-theme=dark] .k9-header .header-icon{background:linear-gradient(135deg,#d2691e,#e8a86a);box-shadow:0 2px 6px #d2691e66}[data-theme=dark] .k9-ranking-row{background:linear-gradient(145deg,#3a322c,#322a25);border-color:#d2691e1a}[data-theme=dark] .k9-ranking-row:hover{box-shadow:0 2px 8px #d2691e33;border-color:#d2691e40}[data-theme=dark] .k9-ranking-row.top-three{background:linear-gradient(145deg,#3d3228,#36302a);border-color:#d2691e33}[data-theme=dark] .k9-ranking-row .officer-name{color:#f0e6dc}[data-theme=dark] .k9-ranking-row .officer-meta{color:#a89080}[data-theme=dark] .k9-ranking-row .ranking-bar-container{background:linear-gradient(90deg,#3d352f,#45392f)}[data-theme=dark] .k9-ranking-row .ranking-bar.k9-bar{background:linear-gradient(90deg,#d2691e,#e8a86a,#f0c090);box-shadow:0 0 6px #d2691e80}[data-theme=dark] .k9-ranking-row .value-badge.k9-value{color:#e8a86a;background:#d2691e26}[data-theme=dark] .k9-summary-inline{background:linear-gradient(145deg,#2d2520,#362e28);border-color:#d2691e33}[data-theme=dark] .k9-summary-inline .analytics-header.k9-header{color:#e8a86a;border-bottom-color:#d2691e33}[data-theme=dark] .k9-stat-item{background:linear-gradient(145deg,#3a322c,#322a25);border-color:#d2691e1a}[data-theme=dark] .k9-stat-item:hover{box-shadow:0 3px 8px #d2691e33}[data-theme=dark] .k9-stat-item .stat-label{color:#a89080}[data-theme=dark] .k9-stat-item .stat-value{background:linear-gradient(135deg,#e8a86a,#f0c090);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}[data-theme=dark] .k9-ranking-card .date-range-footer,[data-theme=dark] .k9-comparison-card .date-range-footer,[data-theme=dark] .k9-summary-inline .date-range-footer{border-top-color:#d2691e26;color:#a89080}[data-theme=dark] .seizure-ranking-card,[data-theme=dark] .seizure-summary-card,[data-theme=dark] .drug-breakdown-card{background:linear-gradient(145deg,#282030,#302838);border-color:#9575cd33;box-shadow:0 2px 8px #0000004d}[data-theme=dark] .seizure-header{color:#b8a8d8;border-bottom-color:#9575cd33}[data-theme=dark] .seizure-header .header-icon{background:linear-gradient(135deg,#9575cd,#b8a8d8);box-shadow:0 2px 6px #9575cd66}[data-theme=dark] .drug-header{color:#ce93d8}[data-theme=dark] .drug-header .header-icon{background:linear-gradient(135deg,#ba68c8,#ce93d8);box-shadow:0 2px 6px #ba68c866}[data-theme=dark] .seizure-ranking-row{background:linear-gradient(145deg,#352d40,#2e2638);border-color:#9575cd1a}[data-theme=dark] .seizure-ranking-row:hover{box-shadow:0 2px 8px #9575cd33;border-color:#9575cd40}[data-theme=dark] .seizure-ranking-row.top-three{background:linear-gradient(145deg,#3a3048,#332840);border-color:#9575cd33}[data-theme=dark] .seizure-ranking-row .officer-name{color:#e8e0f0}[data-theme=dark] .seizure-ranking-row .officer-meta{color:#9888a8}[data-theme=dark] .seizure-ranking-row .ranking-bar-container{background:linear-gradient(90deg,#3a3048,#453858)}[data-theme=dark] .seizure-ranking-row .ranking-bar.seizure-bar{background:linear-gradient(90deg,#9575cd,#b8a8d8,#ce93d8);box-shadow:0 0 6px #9575cd80}[data-theme=dark] .seizure-ranking-row .ranking-bar.currency-bar{background:linear-gradient(90deg,#66bb6a,#81c784,#a5d6a7);box-shadow:0 0 6px #66bb6a80}[data-theme=dark] .value-badge.currency-value{color:#6ee7b7;background:#6ee7b726}[data-theme=dark] .value-badge.drugs-value{color:#c4b5fd;background:#c4b5fd26}[data-theme=dark] .stat-box{background:linear-gradient(145deg,#352d40,#2e2638)}[data-theme=dark] .stat-box:hover{box-shadow:0 4px 12px #9575cd33}[data-theme=dark] .stat-box.currency{background:linear-gradient(145deg,#2d352d,#253828)}[data-theme=dark] .stat-box.currency:hover{box-shadow:0 4px 12px #66bb6a33}[data-theme=dark] .stat-box .stat-label{color:#9888a8}[data-theme=dark] .stat-box .stat-value.currency-value{background:linear-gradient(135deg,#6ee7b7,#a7f3d0);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}[data-theme=dark] .stat-box .stat-value.drugs-value{background:linear-gradient(135deg,#c4b5fd,#ddd6fe);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}[data-theme=dark] .summary-meta{background:linear-gradient(145deg,#3a3048,#332840);border-color:#9575cd1a}[data-theme=dark] .summary-meta .meta-item{color:#b0a0c0}[data-theme=dark] .drug-breakdown{border-top-color:#9575cd26}[data-theme=dark] .drug-breakdown .breakdown-header{color:#b0a0c0}[data-theme=dark] .drug-row{background:linear-gradient(145deg,#352d40,#2e2638);border-color:#9575cd14}[data-theme=dark] .drug-row:hover{box-shadow:0 2px 6px #9575cd26}[data-theme=dark] .drug-row .drug-name{color:#e8e0f0}[data-theme=dark] .drug-row .drug-bar-container{background:linear-gradient(90deg,#3a3048,#453858)}[data-theme=dark] .drug-row .drug-bar{box-shadow:0 0 4px #9575cd4d}[data-theme=dark] .drug-row .drug-amount{color:#b8a8d8;background:#9575cd1f}[data-theme=dark] .drug-row .drug-percent{color:#9888a8}[data-theme=dark] .drug-breakdown-card .total-badge{color:#ce93d8;background:linear-gradient(135deg,#ba68c833,#ce93d833)}[data-theme=dark] .drug-breakdown-row{background:linear-gradient(145deg,#352d40,#2e2638);border-color:#9575cd14}[data-theme=dark] .drug-breakdown-row:hover{box-shadow:0 2px 8px #9575cd26}[data-theme=dark] .drug-breakdown-row.top-drug{background:linear-gradient(145deg,#3a3048,#332840);border-color:#ba68c833}[data-theme=dark] .drug-info .drug-name{color:#e8e0f0}[data-theme=dark] .drug-bar-wrapper{background:linear-gradient(90deg,#3a3048,#453858)}[data-theme=dark] .drug-bar-wrapper .drug-bar-fill{box-shadow:0 0 4px #ba68c859}[data-theme=dark] .drug-values .drug-amount{color:#b8a8d8;background:#9575cd1f}[data-theme=dark] .drug-values .drug-percent{color:#9888a8}[data-theme=dark] .seizure-trend-inline{background:linear-gradient(145deg,#282030,#302838);border-color:#9575cd33}[data-theme=dark] .seizure-trend-inline .analytics-header.seizure-header{color:#b8a8d8;border-bottom-color:#9575cd33}[data-theme=dark] .seizure-trend-inline .trend-summary{background:linear-gradient(145deg,#352d40,#2e2638);border-color:#9575cd1a}[data-theme=dark] .trend-summary .trend-label{color:#e8e0f0}[data-theme=dark] .trend-summary .trend-periods{color:#b0a0c0;background:#9575cd1f}[data-theme=dark] .date-range-footer{border-top-color:#9575cd1a;color:#9888a8}[data-theme=dark] .show-more-indicator{color:#9888a8;background:#9575cd14}[data-theme=dark] .k9-ranking-card .show-more-indicator,[data-theme=dark] .k9-comparison-card .show-more-indicator,[data-theme=dark] .k9-summary-inline .show-more-indicator{color:#a89080;background:#d2691e14}.analytics-container{background:var(--bg-primary, #ffffff);border:1px solid var(--border-medium, #ddd);border-radius:8px;padding:16px;margin:12px 0}.analytics-header{font-size:16px;font-weight:600;color:var(--text-primary, #333);margin-bottom:16px;padding-bottom:8px;border-bottom:2px solid var(--border-light, #eee)}.analytics-empty{padding:20px;text-align:center;color:var(--text-secondary, #666);font-style:italic}.ranking-list{display:flex;flex-direction:column;gap:12px}.ranking-row{display:grid;grid-template-columns:50px 1fr 150px 60px;align-items:center;gap:12px;padding:12px;background:var(--bg-secondary, #f9f9f9);border-radius:6px;transition:all .2s;border:1px solid transparent}.ranking-row:hover{background:var(--bg-hover, #f0f0f0);transform:translate(4px)}[data-theme=dark] .ranking-row{background:var(--bg-secondary, #2d2d2d);border-color:var(--border-medium, #444)}[data-theme=dark] .ranking-row:hover{background:var(--bg-hover, #3a3a3a)}.ranking-row.top-three{background:linear-gradient(135deg,#fff9e6,#fff);border:1px solid #ffd700}[data-theme=dark] .ranking-row.top-three{background:linear-gradient(135deg,#3a3420,#2d2d2d);border:1px solid #b8860b}.rank-badge{font-size:18px;font-weight:700;text-align:center}.officer-info{display:flex;flex-direction:column;gap:4px}.officer-name{font-weight:600;color:var(--text-primary, #333)}.officer-stats{font-size:12px;color:var(--text-secondary, #666)}.ranking-bar-container{position:relative;height:20px;background:var(--bg-tertiary, #e0e0e0);border-radius:10px;overflow:hidden}.ranking-bar{height:100%;background:linear-gradient(90deg,#4caf50,#8bc34a);border-radius:10px;transition:width .5s ease}.total-badge{font-size:18px;font-weight:700;color:var(--text-primary, #333);text-align:right}.trend-list{display:flex;flex-direction:column;gap:10px}.trend-row{display:flex;justify-content:space-between;align-items:center;padding:12px;background:var(--bg-secondary, #f9f9f9);border-radius:6px;transition:all .2s}.trend-row:hover{background:var(--bg-hover, #f0f0f0)}.trend-officer{flex:1}.trend-details{font-size:13px;color:var(--text-secondary, #666);margin-top:4px}.record-count{margin-left:8px;font-size:11px;opacity:.7}.trend-change{font-size:20px;font-weight:700;padding:8px 16px;border-radius:20px;min-width:80px;text-align:center}.trend-change.trend-declining{color:#d32f2f;background:#ffebee}.trend-change.trend-increasing{color:#388e3c;background:#e8f5e9}.comparison-container{display:grid;grid-template-columns:1fr auto 1fr;gap:20px;align-items:center}.period-stat{text-align:center;padding:16px;background:var(--bg-secondary, #f9f9f9);border-radius:6px}.period-label{font-size:12px;color:var(--text-secondary, #666);margin-bottom:8px}.period-value{font-size:28px;font-weight:700;color:var(--text-primary, #333)}.comparison-arrow{font-size:40px}.comparison-arrow.increase{color:#4caf50}.comparison-arrow.decrease{color:#f44336}.comparison-change{text-align:center;margin-top:12px;font-size:16px;font-weight:600}.slider-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;z-index:9999;opacity:0;animation:fadeIn .2s forwards}@keyframes fadeIn{to{opacity:1}}.quick-analytics-slider{position:fixed;right:-400px;top:0;bottom:0;width:400px;background:var(--bg-primary, #ffffff);box-shadow:-2px 0 8px #00000026;z-index:10000;transition:right .3s ease;display:flex;flex-direction:column}.quick-analytics-slider.open{right:0}.slider-header{padding:16px 20px;border-bottom:2px solid var(--border-light, #eee);display:flex;justify-content:space-between;align-items:center}.slider-header h3{margin:0;font-size:18px;color:var(--text-primary, #333)}.slider-close-btn{background:none;border:none;font-size:24px;cursor:pointer;color:var(--text-secondary, #666);padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px}.slider-close-btn:hover{background:var(--bg-hover, #f0f0f0)}.slider-content{flex:1;overflow-y:auto;padding:20px}.quick-stat-card{display:flex;gap:12px;padding:16px;background:var(--bg-secondary, #f9f9f9);border-radius:8px;margin-bottom:16px}.quick-stat-card.highlight{background:linear-gradient(135deg,#fff9e6,#fff);border:1px solid #ffd700}.quick-stat-card.warning{background:linear-gradient(135deg,#ffebee,#fff);border:1px solid #ff9800}.stat-icon{font-size:32px}.stat-content{display:flex;flex-direction:column;gap:4px}.stat-label{font-size:12px;color:var(--text-secondary, #666);text-transform:uppercase}.stat-value{font-size:18px;font-weight:600;color:var(--text-primary, #333)}.stat-detail{font-size:14px;color:var(--text-secondary, #666)}.quick-chart{margin-bottom:16px}.quick-chart h4{font-size:14px;margin:0 0 12px;color:var(--text-primary, #333)}.mini-bar-row{display:grid;grid-template-columns:30px 1fr 100px 50px;align-items:center;gap:8px;padding:6px 0}.rank-num{font-size:14px;font-weight:700;color:var(--text-secondary, #666);text-align:center}.officer-name-mini{font-size:13px;color:var(--text-primary, #333);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.bar-container{height:16px;background:var(--bg-tertiary, #e0e0e0);border-radius:8px;overflow:hidden}.bar{height:100%;background:linear-gradient(90deg,#4caf50,#8bc34a);border-radius:8px;transition:width .5s ease}.bar-value{font-size:13px;font-weight:600;text-align:right}.quick-metric{display:flex;flex-direction:column;gap:8px;padding:16px;background:var(--bg-secondary, #f9f9f9);border-radius:8px;text-align:center}.metric-label{font-size:12px;color:var(--text-secondary, #666);text-transform:uppercase}.metric-value{font-size:24px;font-weight:700;color:var(--text-primary, #333)}.trend-status-cards{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px}.status-card{display:flex;gap:12px;padding:16px;border-radius:8px;align-items:center}.status-card.declining{background:#ffebee;border:1px solid #ffcdd2}.status-card.improving{background:#e8f5e9;border:1px solid #c8e6c9}.card-icon{font-size:28px}.card-data{display:flex;flex-direction:column}.card-count{font-size:24px;font-weight:700;line-height:1}.card-label{font-size:12px;color:var(--text-secondary, #666);margin-top:4px}.significant-trend-card{background:var(--bg-secondary, #f9f9f9);border-radius:8px;padding:16px;margin-bottom:16px}.significant-trend-card h4{margin:0 0 8px;font-size:13px;color:var(--text-secondary, #666);text-transform:uppercase}.trend-officer-name{font-size:16px;font-weight:600;margin-bottom:8px;color:var(--text-primary, #333)}.trend-summary-text{font-size:13px;line-height:1.5;color:var(--text-primary, #333);padding:12px;background:#fff;border-radius:6px;border-left:3px solid #4CAF50}.yoy-quick-card{display:flex;flex-direction:column;gap:4px;padding:12px;background:#e3f2fd;border-radius:6px}.yoy-label{font-size:11px;color:var(--text-secondary, #666);text-transform:uppercase}.yoy-value{font-size:20px;font-weight:700}.yoy-value.positive{color:#388e3c}.yoy-value.negative{color:#d32f2f}.yoy-detail{font-size:12px;color:var(--text-secondary, #666)}.report-modal .report-text{white-space:pre-wrap;word-break:break-word;margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:13px;line-height:1.4;color:#111827}.report-modal .report-context-meta{margin-bottom:12px;padding:10px;border-radius:8px;border:1px solid #d1d5db;background:#f8fafc;font-size:12px;color:#374151;line-height:1.4}.report-modal .action-btn.copied{background:#16a34a;border-color:#16a34a;color:#fff}.report-modal .action-btn.copy-failed{background:#dc2626;border-color:#dc2626;color:#fff}.report-actions{display:flex;flex-direction:column;gap:12px}.report-actions.compact{gap:8px}.report-presets-row{display:flex;flex-wrap:wrap;gap:6px}.report-preset-btn{border:1px solid var(--border-medium);background:var(--bg-primary);color:var(--text-secondary);border-radius:999px;padding:4px 10px;font-size:11px;cursor:pointer}.report-preset-btn.active{border-color:var(--color-primary);color:var(--color-primary);background:var(--bg-active, #eef2ff);font-weight:600}.report-type-selector{position:relative}.report-type-trigger{display:flex;align-items:center;gap:8px;width:100%;padding:10px 12px;border:1px solid var(--border-medium);border-radius:8px;background:var(--bg-primary);cursor:pointer;text-align:left;transition:border-color .15s}.report-type-trigger:hover{border-color:var(--color-primary)}.report-type-trigger-label{font-weight:600;font-size:13px;color:var(--text-primary);white-space:nowrap}.report-type-trigger-desc{flex:1;font-size:11px;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.report-type-trigger-arrow{font-size:9px;color:var(--text-tertiary);flex-shrink:0}.report-type-menu{position:absolute;top:calc(100% + 4px);left:0;right:0;z-index:100;border:1px solid var(--border-medium);border-radius:8px;background:var(--bg-primary);box-shadow:0 4px 16px #0000001f;overflow:hidden}.report-type-menu-item{display:flex;flex-direction:column;gap:2px;width:100%;padding:10px 12px;border:none;background:none;cursor:pointer;text-align:left;transition:background .1s;border-bottom:1px solid var(--border-light, #f0f0f0)}.report-type-menu-item:last-child{border-bottom:none}.report-type-menu-item:hover{background:var(--bg-hover, #f5f7fa)}.report-type-menu-item.selected{background:var(--bg-active, #eef2ff)}.report-type-menu-item-label{font-weight:600;font-size:13px;color:var(--text-primary)}.report-type-menu-item.selected .report-type-menu-item-label{color:var(--color-primary)}.report-type-menu-item-desc{font-size:11px;color:var(--text-secondary);line-height:1.3}.report-controls{display:flex;align-items:flex-start;gap:14px;flex-wrap:wrap}.report-control-group{display:flex;flex-direction:column;gap:4px}.report-control-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-tertiary)}.report-control-hint{font-size:10px;color:var(--text-secondary);max-width:260px;line-height:1.3}.report-audience-toggle,.report-detail-toggle{display:inline-flex;border:1px solid var(--border-medium);border-radius:6px;overflow:hidden}.report-audience-btn,.report-detail-btn{padding:5px 10px;border:none;background:var(--bg-primary);font-size:12px;color:var(--text-secondary);cursor:pointer;transition:background .15s,color .15s}.report-audience-btn+.report-audience-btn,.report-detail-btn+.report-detail-btn{border-left:1px solid var(--border-medium)}.report-audience-btn:hover,.report-detail-btn:hover{background:var(--bg-hover, #f5f7fa)}.report-audience-btn.active,.report-detail-btn.active{background:var(--color-primary);color:var(--text-inverse, #fff);font-weight:600}.report-checkbox{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--text-secondary);cursor:pointer;padding-top:16px}.report-generate-btn{padding:10px 16px;border-radius:8px;border:1px solid var(--color-primary);background:var(--color-primary);color:var(--text-inverse, #fff);font-weight:600;font-size:13px;cursor:pointer;transition:opacity .15s;align-self:flex-start}.report-generate-btn:hover:not(:disabled){opacity:.9}.report-generate-btn:disabled{opacity:.6;cursor:not-allowed}.report-actions.compact .report-type-trigger{padding:7px 10px}.report-actions.compact .report-controls{gap:10px}.report-actions.compact .report-control-hint{display:none}.report-actions.compact .report-generate-btn{padding:8px 12px;font-size:12px}.shift-visuals-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:9998;animation:fadeIn .2s ease-out}.shift-visuals-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:linear-gradient(135deg,#fff,#f8fafc);border-radius:16px;box-shadow:0 25px 50px -12px #00000040;width:90%;max-width:900px;max-height:85vh;overflow:hidden;z-index:9999;animation:slideIn .3s ease-out;display:flex;flex-direction:column}@keyframes slideIn{0%{opacity:0;transform:translate(-50%,-48%)}to{opacity:1;transform:translate(-50%,-50%)}}.shift-visuals-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.shift-visuals-modal .modal-header h2{margin:0;font-size:1.4rem;font-weight:600;letter-spacing:-.5px}.shift-visuals-modal .modal-close-btn{background:#fff3;border:none;color:#fff;width:36px;height:36px;border-radius:50%;font-size:24px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s}.shift-visuals-modal .modal-close-btn:hover{background:#ffffff4d;transform:scale(1.1)}.date-range-badge{display:flex;align-items:center;gap:10px;padding:12px 24px;background:#f1f5f9;border-bottom:1px solid #e2e8f0;font-size:.9rem;color:#475569}.date-range-badge .date-icon{font-size:1.1rem}.interval-badge{background:#667eea;color:#fff;padding:3px 10px;border-radius:12px;font-size:.75rem;font-weight:600;margin-left:auto}.shift-visuals-modal .modal-content{padding:24px;overflow-y:auto;flex:1}.visualization-section{margin-bottom:32px}.visualization-section h3{margin:0 0 20px;font-size:1.1rem;color:var(--text-primary);font-weight:600;padding-bottom:10px;border-bottom:2px solid var(--border-light)}.chart-container{background:var(--bg-primary);border-radius:12px;padding:16px;box-shadow:var(--shadow-sm);margin-bottom:20px}.chart-container.large{padding:20px}.ranking-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px;margin-top:20px}.ranking-card{background:var(--bg-primary);border-radius:12px;padding:16px;display:flex;align-items:center;gap:12px;box-shadow:var(--shadow-sm);border-left:4px solid;transition:transform .2s,box-shadow .2s;position:relative;overflow:hidden}.ranking-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.ranking-card.rank-1{background:linear-gradient(135deg,#fef9c3,#fef3c7)}.ranking-card.rank-2{background:linear-gradient(135deg,#f1f5f9,#e2e8f0)}.ranking-card.rank-3{background:linear-gradient(135deg,#fed7aa,#fcd34d 10%,#fff 11%)}.rank-medal{font-size:1.5rem;min-width:40px;text-align:center}.rank-info{flex:1}.rank-shift-name{font-weight:600;color:#1e293b;margin-bottom:4px}.rank-details{display:flex;gap:12px;font-size:.85rem;color:#64748b}.rank-value{font-weight:600;color:#334155}.leader-badge{position:absolute;top:8px;right:-20px;background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;padding:4px 28px;font-size:.7rem;font-weight:600;transform:rotate(45deg);text-transform:uppercase}.trend-summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:16px;margin-bottom:24px}.summary-card{background:var(--bg-primary);border-radius:12px;padding:16px;text-align:center;box-shadow:var(--shadow-sm);border:1px solid var(--border-light)}.summary-card .card-icon{font-size:1.5rem;display:block;margin-bottom:8px}.summary-card .card-label{display:block;font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.summary-card .card-value{display:block;font-size:1.25rem;font-weight:700;color:var(--text-primary)}.summary-card .card-change{display:block;font-size:.85rem;margin-top:4px}.summary-card.trend-up{border-color:#22c55e;background:linear-gradient(135deg,#f0fdf4,#dcfce7)}.summary-card.trend-up .card-change{color:#16a34a}.summary-card.trend-down{border-color:#ef4444;background:linear-gradient(135deg,#fef2f2,#fee2e2)}.summary-card.trend-down .card-change{color:#dc2626}.summary-card.trend-stable{border-color:#3b82f6;background:linear-gradient(135deg,#eff6ff,#dbeafe)}.period-comparison{display:flex;align-items:center;justify-content:center;gap:20px;padding:20px;background:var(--bg-secondary);border-radius:12px;margin-top:20px}.period-box{text-align:center;padding:16px 24px;background:var(--bg-primary);border-radius:10px;box-shadow:0 2px 6px #0000000d;min-width:120px}.period-box .period-label{display:block;font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;margin-bottom:6px}.period-box .period-value{display:block;font-size:1.5rem;font-weight:700;color:var(--text-primary)}.period-arrow{font-size:2rem;color:var(--text-muted)}.vs-comparison-container{display:flex;align-items:center;gap:0;margin-bottom:24px;height:80px}.vs-side{height:100%;min-width:100px;transition:width .5s ease-out}.vs-side.left{display:flex;justify-content:flex-end}.vs-side.right{display:flex;justify-content:flex-start}.vs-bar{height:100%;display:flex;flex-direction:column;justify-content:center;padding:0 20px;color:#fff;min-width:140px}.vs-side.left .vs-bar{border-radius:12px 0 0 12px;text-align:right}.vs-side.right .vs-bar{border-radius:0 12px 12px 0;text-align:left}.vs-label{font-size:.85rem;opacity:.9;margin-bottom:4px}.vs-value{font-size:1.5rem;font-weight:700}.vs-divider{background:#1e293b;color:#fff;padding:8px 16px;font-weight:700;font-size:.85rem;z-index:1;border-radius:8px;margin:0 -10px}.winner-section{display:flex;justify-content:center;margin-bottom:24px}.winner-badge{display:inline-flex;align-items:center;gap:10px;padding:12px 24px;color:#fff;border-radius:30px;font-weight:600;box-shadow:0 4px 12px #00000026}.winner-icon{font-size:1.2rem}.comparison-stats{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:20px}.stat-card{border-radius:12px;overflow:hidden;border:2px solid;background:var(--bg-primary)}.stat-header{padding:12px 16px;color:#fff;font-weight:600;text-align:center}.stat-body{padding:16px}.stat-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid var(--border-light)}.stat-row:last-child{border-bottom:none}.stat-row span:first-child{color:var(--text-secondary)}.stat-row span:last-child{font-weight:600;color:var(--text-primary)}.no-data-message{text-align:center;padding:40px;color:#64748b}.no-data-icon{font-size:3rem;display:block;margin-bottom:16px;opacity:.5}@media (max-width: 768px){.shift-visuals-modal{width:95%;max-height:90vh}.ranking-cards{grid-template-columns:1fr}.trend-summary-cards{grid-template-columns:repeat(2,1fr)}.comparison-stats{grid-template-columns:1fr}.vs-comparison-container{flex-direction:column;height:auto}.vs-side{width:100%!important;min-width:100%}.vs-bar{border-radius:12px!important;text-align:center!important;padding:16px}.vs-divider{margin:10px 0}}.shift-stats-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;margin-top:20px}.shift-stats-cards .ranking-card{background:var(--bg-primary);border-radius:10px;padding:14px;box-shadow:var(--shadow-sm);border-left:4px solid;transition:transform .2s ease,box-shadow .2s ease}.shift-stats-cards .ranking-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.shift-stats-cards .rank-medal{font-size:1rem;font-weight:600;color:var(--text-secondary);min-width:28px}.shift-stats-cards .rank-shift-name{font-weight:600;color:var(--text-primary);font-size:.95rem}.shift-stats-cards .rank-details{display:flex;gap:12px;margin-top:4px;font-size:.85rem}.shift-stats-cards .rank-value{color:#667eea;font-weight:600}.shift-stats-cards .rank-officers{color:var(--text-secondary)}.chart-section{margin-bottom:30px}.chart-subtitle{font-size:1rem;font-weight:600;color:#374151;margin-bottom:16px;padding-bottom:8px;border-bottom:2px solid #e5e7eb}.chart-section .chart-container.large{background:linear-gradient(to bottom,#fafbfc,#fff);border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000000a}.k9-analytics-dashboard{padding:20px;max-width:1400px;margin:0 auto}.k9-analytics-dashboard.compact{padding:12px}.k9-analytics-dashboard .dashboard-tabs{display:flex;gap:4px;padding:12px 16px;background:var(--gray-100, #f1f5f9);border-bottom:1px solid var(--gray-200, #e2e8f0);margin-bottom:20px}.k9-analytics-dashboard .tab-button{padding:10px 20px;border:none;border-radius:8px;background:transparent;font-size:.9rem;font-weight:500;color:var(--text-secondary, #64748b);cursor:pointer;transition:all .2s ease}.k9-analytics-dashboard .tab-button:hover{background:#fffc;color:var(--text-primary, #334155)}.k9-analytics-dashboard .tab-button.active{background:var(--bg-primary, white);color:#8b4513;box-shadow:0 2px 4px #0000000d}.k9-analytics-dashboard.loading,.k9-analytics-dashboard.error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;color:#666}.k9-analytics-dashboard .loading-spinner{width:40px;height:40px;border:4px solid #e0e0e0;border-top-color:#8b4513;border-radius:50%;animation:k9-spin 1s linear infinite;margin-bottom:16px}@keyframes k9-spin{to{transform:rotate(360deg)}}.k9-analytics-dashboard .error-message{color:#d32f2f;margin-bottom:16px}.k9-analytics-dashboard .overview-tab{display:flex;flex-direction:column;gap:24px}.k9-analytics-dashboard .k9-summary-section h3,.k9-analytics-dashboard .top-performers-section h3{margin:0 0 16px;font-size:1.1rem;color:#333;display:flex;align-items:center;gap:8px}.k9-analytics-dashboard .summary-stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px}.k9-analytics-dashboard .summary-stat-card{background:#fff;border-radius:12px;padding:16px;display:flex;flex-direction:column;align-items:center;border-left:4px solid #8B4513;box-shadow:0 2px 8px #00000014}.k9-analytics-dashboard .summary-stat-card .stat-value{font-size:1.5rem;font-weight:700;margin-bottom:4px;color:#8b4513}.k9-analytics-dashboard .summary-stat-card .stat-label{font-size:.8rem;color:#666;text-align:center}.k9-analytics-dashboard .summary-meta{display:flex;gap:16px;margin-top:12px;font-size:.9rem;color:#666}.k9-analytics-dashboard .top-performers-grid{display:flex;flex-direction:column;gap:8px}.k9-analytics-dashboard .performer-card{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#f8f8f8;border-radius:10px;border-left:4px solid #8B4513;transition:transform .2s,box-shadow .2s}.k9-analytics-dashboard .performer-card:hover{transform:translate(4px);box-shadow:0 2px 8px #0000001a}.k9-analytics-dashboard .performer-card.rank-1{background:linear-gradient(135deg,#fff8e1,#ffecb3);border-left-color:gold}.k9-analytics-dashboard .performer-card.rank-2{background:linear-gradient(135deg,#fafafa,#e0e0e0);border-left-color:silver}.k9-analytics-dashboard .performer-card.rank-3{background:linear-gradient(135deg,#fbe9e7,#ffccbc);border-left-color:#cd7f32}.k9-analytics-dashboard .rank-badge{font-size:1.2rem;min-width:32px;text-align:center}.k9-analytics-dashboard .performer-info{flex:1;display:flex;flex-direction:column}.k9-analytics-dashboard .performer-name{font-weight:600;color:#333}.k9-analytics-dashboard .performer-total{font-size:1.1rem;font-weight:700;color:#8b4513}.k9-analytics-dashboard .performer-avg{font-size:.85rem;color:#666;background:#8b45131a;padding:4px 8px;border-radius:12px}.k9-analytics-dashboard .rankings-tab{display:flex;flex-direction:column;gap:20px}.k9-analytics-dashboard .rankings-filters,.k9-analytics-dashboard .trends-filters,.k9-analytics-dashboard .comparisons-filters{display:flex;gap:16px;flex-wrap:wrap}.k9-analytics-dashboard .filter-group{display:flex;flex-direction:column;gap:4px}.k9-analytics-dashboard .filter-group label{font-size:.85rem;font-weight:500;color:#666}.k9-analytics-dashboard .filter-group select{padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:.95rem;min-width:180px;background:#fff}.k9-analytics-dashboard .filter-group select:focus{outline:none;border-color:#8b4513;box-shadow:0 0 0 2px #8b45131a}.k9-analytics-dashboard .rankings-table-container{display:block;width:100%;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow:hidden}.k9-analytics-dashboard .rankings-table{display:table;width:100%;border-collapse:collapse;table-layout:fixed}.k9-analytics-dashboard .rankings-table th,.k9-analytics-dashboard .rankings-table td{padding:14px 16px;border-bottom:1px solid #eee;vertical-align:middle}.k9-analytics-dashboard .rankings-table th{background:#f5f5f5;font-weight:600;color:#555;border-bottom:2px solid #ddd}.k9-analytics-dashboard .rankings-table .col-rank{width:10%;text-align:center}.k9-analytics-dashboard .rankings-table .col-handler{width:35%;text-align:left}.k9-analytics-dashboard .rankings-table .col-total{width:18%;text-align:right;font-variant-numeric:tabular-nums}.k9-analytics-dashboard .rankings-table .col-days{width:18%;text-align:center}.k9-analytics-dashboard .rankings-table .col-avg{width:19%;text-align:right;font-variant-numeric:tabular-nums}.k9-analytics-dashboard .rankings-table tr:last-child td{border-bottom:none}.k9-analytics-dashboard .rankings-table tbody tr:hover{background:#fafafa}.k9-analytics-dashboard .rankings-table tr.top-1{background:#fff8e1}.k9-analytics-dashboard .rankings-table tr.top-1:hover{background:#fff3cd}.k9-analytics-dashboard .rankings-table tr.top-2{background:#f5f5f5}.k9-analytics-dashboard .rankings-table tr.top-2:hover{background:#ebebeb}.k9-analytics-dashboard .rankings-table tr.top-3{background:#fff3e0}.k9-analytics-dashboard .rankings-table tr.top-3:hover{background:#ffe0b2}.k9-analytics-dashboard .rankings-table .medal{font-size:1.4rem}.k9-analytics-dashboard .rankings-table .rank-number{font-weight:600;color:#888;font-size:1rem}.k9-analytics-dashboard .rankings-table .k9-indicator{margin-right:8px}.k9-analytics-dashboard .rankings-table td.col-total,.k9-analytics-dashboard .rankings-table td.col-avg{font-weight:600;color:#1a1a2e}.k9-analytics-dashboard .no-data-message{text-align:center;padding:40px 20px;color:#6b7280;background:#f9fafb;border-radius:12px}.k9-analytics-dashboard .no-data-message p{margin:0;font-size:.95rem}.k9-analytics-dashboard .trends-tab{display:flex;flex-direction:column;gap:20px}.k9-analytics-dashboard .trend-display{background:#fafafa;border-radius:12px;padding:20px}.k9-analytics-dashboard .trend-summary{margin-bottom:20px}.k9-analytics-dashboard .trend-header{display:flex;justify-content:space-between;align-items:center}.k9-analytics-dashboard .trend-header h4{margin:0;font-size:1.1rem;color:#333}.k9-analytics-dashboard .trend-indicator{display:flex;align-items:center;gap:8px}.k9-analytics-dashboard .trend-icon{font-size:1.2rem}.k9-analytics-dashboard .trend-direction{font-weight:600;text-transform:capitalize}.k9-analytics-dashboard .trend-direction.up{color:#4caf50}.k9-analytics-dashboard .trend-direction.down{color:#f44336}.k9-analytics-dashboard .trend-direction.stable{color:#9e9e9e}.k9-analytics-dashboard .trend-percent{font-weight:500}.k9-analytics-dashboard .trend-chart{height:200px;margin-bottom:20px}.k9-analytics-dashboard .chart-bars{display:flex;align-items:flex-end;justify-content:space-around;height:100%;gap:8px;padding:0 10px}.k9-analytics-dashboard .chart-bar-container{flex:1;display:flex;flex-direction:column;align-items:center;height:100%;max-width:60px}.k9-analytics-dashboard .chart-bar{width:100%;border-radius:4px 4px 0 0;transition:height .3s ease;cursor:pointer}.k9-analytics-dashboard .chart-bar.k9-bar{background:linear-gradient(180deg,#8b4513,sienna)}.k9-analytics-dashboard .chart-bar:hover{opacity:.85}.k9-analytics-dashboard .chart-label{font-size:.75rem;color:#666;margin-top:8px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.k9-analytics-dashboard .trend-data-table{overflow-x:auto}.k9-analytics-dashboard .trend-data-table table{width:100%;border-collapse:collapse;font-size:.9rem}.k9-analytics-dashboard .trend-data-table th,.k9-analytics-dashboard .trend-data-table td{padding:10px 12px;text-align:left;border-bottom:1px solid #e0e0e0}.k9-analytics-dashboard .trend-data-table th{background:#f0f0f0;font-weight:600}.k9-analytics-dashboard .comparisons-tab{display:flex;flex-direction:column;gap:20px}.k9-analytics-dashboard .comparison-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:20px}.k9-analytics-dashboard .comparison-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000001a}.k9-analytics-dashboard .comparison-card h4{margin:0 0 16px;font-size:1rem;color:#333}.k9-analytics-dashboard .comparison-bars{display:flex;flex-direction:column;gap:16px}.k9-analytics-dashboard .comparison-stat-group{display:flex;flex-direction:column;gap:8px;padding-bottom:12px;border-bottom:1px solid #eee}.k9-analytics-dashboard .comparison-stat-group:last-child{border-bottom:none;padding-bottom:0}.k9-analytics-dashboard .comparison-winner{font-size:.85rem;color:#666;text-align:right}.k9-analytics-dashboard .comparison-winner strong{color:#8b4513}.k9-analytics-dashboard .diff-percent{color:#888;font-size:.8rem}.k9-analytics-dashboard .comparison-bar-row{display:flex;align-items:center;gap:12px}.k9-analytics-dashboard .bar-label{min-width:80px;font-size:.9rem;font-weight:500;color:#555}.k9-analytics-dashboard .bar-container{flex:1;height:24px;background:#f0f0f0;border-radius:12px;overflow:hidden}.k9-analytics-dashboard .bar{height:100%;border-radius:12px;transition:width .3s ease}.k9-analytics-dashboard .day-bar{background:linear-gradient(90deg,#ffa726,#ffb74d)}.k9-analytics-dashboard .night-bar{background:linear-gradient(90deg,#5c6bc0,#7986cb)}.k9-analytics-dashboard .a-bar{background:linear-gradient(90deg,#26a69a,#4db6ac)}.k9-analytics-dashboard .b-bar{background:linear-gradient(90deg,#ec407a,#f06292)}.k9-analytics-dashboard .bar-value{min-width:60px;text-align:right;font-weight:600;color:#333}[data-theme=dark] .k9-analytics-dashboard .dashboard-tabs{background:var(--bg-secondary, #1e1e2e);border-bottom-color:#444}[data-theme=dark] .k9-analytics-dashboard .tab-button{color:#999}[data-theme=dark] .k9-analytics-dashboard .tab-button:hover{background:#ffffff14;color:#ccc}[data-theme=dark] .k9-analytics-dashboard .tab-button.active{background:var(--bg-primary, #2a2a2a);color:#d2691e;box-shadow:0 2px 4px #0003}[data-theme=dark] .k9-analytics-dashboard .summary-stat-card{background:#2a2a2a;box-shadow:0 2px 8px #0000004d}[data-theme=dark] .k9-analytics-dashboard .summary-stat-card .stat-value{color:#d2691e}[data-theme=dark] .k9-analytics-dashboard .summary-stat-card .stat-label{color:#bbb}[data-theme=dark] .k9-analytics-dashboard .summary-meta{color:#999}[data-theme=dark] .k9-analytics-dashboard .performer-card{background:#2a2a2a}[data-theme=dark] .k9-analytics-dashboard .performer-name{color:#e0e0e0}[data-theme=dark] .k9-analytics-dashboard .filter-group label{color:#999}[data-theme=dark] .k9-analytics-dashboard .filter-group select{background:#2a2a2a;border-color:#444;color:#e0e0e0}[data-theme=dark] .k9-analytics-dashboard .rankings-table-container{background:#1e1e2e;box-shadow:0 2px 8px #0000004d}[data-theme=dark] .k9-analytics-dashboard .rankings-table th{background:#2a2a3e;color:#aaa;border-bottom-color:#444}[data-theme=dark] .k9-analytics-dashboard .rankings-table td{border-bottom-color:#333}[data-theme=dark] .k9-analytics-dashboard .rankings-table tbody tr:hover{background:#2a2a3e}[data-theme=dark] .k9-analytics-dashboard .rankings-table tr.top-1{background:#3d3a2e}[data-theme=dark] .k9-analytics-dashboard .rankings-table tr.top-2{background:#2a2a3e}[data-theme=dark] .k9-analytics-dashboard .rankings-table tr.top-3{background:#3a2e2a}[data-theme=dark] .k9-analytics-dashboard .rankings-table td.col-total,[data-theme=dark] .k9-analytics-dashboard .rankings-table td.col-avg{color:#e0e0e0}[data-theme=dark] .k9-analytics-dashboard .rankings-table .rank-number{color:#888}[data-theme=dark] .k9-analytics-dashboard .no-data-message{background:#2a2a2a;color:#9ca3af}[data-theme=dark] .k9-analytics-dashboard .trend-display{background:#2a2a2a}[data-theme=dark] .k9-analytics-dashboard .trend-header h4{color:#e0e0e0}[data-theme=dark] .k9-analytics-dashboard .chart-label{color:#999}[data-theme=dark] .k9-analytics-dashboard .trend-data-table th{background:#333}[data-theme=dark] .k9-analytics-dashboard .trend-data-table td{border-bottom-color:#444}[data-theme=dark] .k9-analytics-dashboard .comparison-card{background:#2a2a2a;box-shadow:0 2px 8px #0000004d}[data-theme=dark] .k9-analytics-dashboard .comparison-card h4{color:#e0e0e0}[data-theme=dark] .k9-analytics-dashboard .comparison-stat-group{border-bottom-color:#444}[data-theme=dark] .k9-analytics-dashboard .comparison-winner{color:#bbb}[data-theme=dark] .k9-analytics-dashboard .comparison-winner strong{color:#d2691e}[data-theme=dark] .k9-analytics-dashboard .diff-percent{color:#888}[data-theme=dark] .k9-analytics-dashboard .bar-label{color:#bbb}[data-theme=dark] .k9-analytics-dashboard .bar-container{background:#444}[data-theme=dark] .k9-analytics-dashboard .bar-value{color:#e0e0e0}.k9-header-stats{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.k9-header-stat{display:flex;align-items:center;justify-content:center;padding:var(--spacing-md) var(--spacing-lg);background:var(--bg-primary);border-radius:var(--radius-md);flex:1;box-shadow:var(--shadow-sm);border-top:3px solid #8B4513}.k9-header-content{display:flex;flex-direction:column;align-items:center;text-align:center}.k9-header-value{font-size:var(--text-2xl);font-weight:var(--font-bold);color:#8b4513;line-height:1.2}.k9-header-label{font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-top:4px}@media (max-width: 768px){.k9-header-stats{flex-direction:column}}.k9-insights-section{margin-bottom:var(--spacing-lg)}.k9-insights-header{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary);margin:0 0 var(--spacing-md) 0}.k9-insights-icon{font-size:20px}.k9-insights-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-sm)}@media (max-width: 900px){.k9-insights-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 600px){.k9-insights-grid{grid-template-columns:1fr}}.k9-insight-card{display:flex;align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-md);background:var(--bg-primary);border-radius:var(--radius-md);border-left:3px solid #8B4513;box-shadow:var(--shadow-sm);transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.k9-insight-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.k9-insight-card.positive{border-left-color:var(--color-success, #10b981)}.k9-insight-card.attention{border-left-color:var(--color-warning, #f59e0b)}.k9-insight-card.neutral{border-left-color:#8b4513}.k9-insight-icon{font-size:24px;flex-shrink:0;line-height:1}.k9-insight-content{flex:1;min-width:0}.k9-insight-title{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-primary);margin-bottom:4px;line-height:1.3}.k9-insight-description{font-size:var(--text-xs);color:var(--text-secondary);line-height:1.4}.k9-stats-groups{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}@media (max-width: 900px){.k9-stats-groups{grid-template-columns:1fr}}.k9-stats-group{background:var(--bg-primary);border-radius:var(--radius-md);padding:var(--spacing-md);box-shadow:var(--shadow-sm);border-top:3px solid #8B4513}.k9-group-title{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--text-base);font-weight:var(--font-semibold);color:#8b4513;margin:0 0 var(--spacing-md) 0;padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--border-light)}.k9-group-title .group-icon{font-size:18px}.k9-stats-tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(100px,1fr));gap:var(--spacing-sm)}.k9-stat-tile{position:relative;display:flex;flex-direction:column;align-items:center;padding:var(--spacing-sm);background:var(--bg-secondary);border-radius:var(--radius-sm);text-align:center;transition:background var(--transition-fast)}.k9-stat-tile:hover{background:var(--bg-tertiary)}.k9-stat-value{font-size:var(--text-xl);font-weight:var(--font-bold);color:#8b4513;line-height:1.2}.k9-stat-label{font-size:10px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px;margin-top:2px}.k9-change-indicator{position:absolute;top:4px;right:4px;font-size:9px;font-weight:var(--font-semibold);padding:2px 5px;border-radius:var(--radius-sm);background:var(--bg-tertiary);color:var(--text-muted)}.k9-change-indicator.up{color:var(--color-success, #10b981);background:#10b9811a}.k9-change-indicator.down{color:var(--color-warning, #f59e0b);background:#f59e0b1a}.k9-change-indicator.significant.up{background:#10b98133;font-weight:var(--font-bold)}.k9-change-indicator.significant.down{background:#f59e0b33;font-weight:var(--font-bold)}.k9-averages-section{background:var(--bg-primary);border-radius:var(--radius-md);padding:var(--spacing-md);box-shadow:var(--shadow-sm)}.k9-averages-title{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-secondary);margin:0 0 var(--spacing-md) 0;text-transform:uppercase;letter-spacing:.5px}.k9-averages-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-md)}@media (max-width: 768px){.k9-averages-grid{grid-template-columns:repeat(2,1fr)}}.k9-average-item{display:flex;flex-direction:column;align-items:center;padding:var(--spacing-sm);background:var(--bg-secondary);border-radius:var(--radius-sm);text-align:center}.k9-avg-value{font-size:var(--text-2xl);font-weight:var(--font-bold);color:#8b4513;line-height:1.2}.k9-avg-label{font-size:var(--text-xs);color:var(--text-muted);margin-top:4px}.k9-empty-state{text-align:center;padding:var(--spacing-2xl);color:var(--text-muted);font-size:var(--text-base)}[data-theme=dark] .k9-header-stat{background:var(--bg-secondary);border-top-color:#d2691e}[data-theme=dark] .k9-header-value{color:#d2691e}[data-theme=dark] .k9-stats-group{background:var(--bg-secondary);border-top-color:#d2691e}[data-theme=dark] .k9-group-title{color:#d2691e;border-bottom-color:var(--border-default)}[data-theme=dark] .k9-stat-tile{background:var(--bg-tertiary)}[data-theme=dark] .k9-stat-tile:hover{background:var(--bg-primary)}[data-theme=dark] .k9-stat-value{color:#d2691e}[data-theme=dark] .k9-insight-card{background:var(--bg-secondary)}[data-theme=dark] .k9-insight-card.neutral{border-left-color:#d2691e}[data-theme=dark] .k9-insight-card.positive{background:linear-gradient(135deg,rgba(16,185,129,.1) 0%,var(--bg-secondary) 100%)}[data-theme=dark] .k9-insight-card.attention{background:linear-gradient(135deg,rgba(245,158,11,.1) 0%,var(--bg-secondary) 100%)}[data-theme=dark] .k9-averages-section{background:var(--bg-secondary)}[data-theme=dark] .k9-average-item{background:var(--bg-tertiary)}[data-theme=dark] .k9-avg-value{color:#d2691e}[data-theme=dark] .k9-change-indicator{background:var(--bg-primary)}[data-theme=dark] .k9-change-indicator.up{background:#10b98133;color:#34d399}[data-theme=dark] .k9-change-indicator.down{background:#f59e0b33;color:#fbbf24}.data-quality-badge{background:var(--bg-primary);border:1px solid var(--border-light);border-radius:8px;overflow:hidden;margin:16px 0;box-shadow:var(--shadow-sm)}.data-quality-badge-compact{display:inline-flex;align-items:center;gap:8px;padding:6px 12px;border-radius:20px;border:2px solid;cursor:pointer;transition:all .2s ease;font-size:13px;font-weight:500}.data-quality-badge-compact:hover{transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.confidence-icon{font-size:16px}.confidence-score{font-weight:600;font-size:14px}.confidence-label{font-size:12px;opacity:.8}.badge-header{padding:16px;display:flex;align-items:center;justify-content:space-between;border-left:4px solid}.confidence-main{display:flex;align-items:center;gap:16px}.confidence-icon-large{font-size:36px}.confidence-info{display:flex;flex-direction:column;gap:4px}.confidence-score-large{font-size:28px;font-weight:700;line-height:1}.confidence-label-large{font-size:14px;color:var(--text-muted);font-weight:500}.details-toggle{padding:6px 12px;background:var(--bg-primary);border:1px solid var(--border-medium);border-radius:6px;cursor:pointer;font-size:13px;font-weight:500;color:var(--text-secondary);transition:all .2s ease}.details-toggle:hover{background:var(--bg-hover);border-color:var(--border-dark)}.badge-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:16px;padding:16px;background:var(--bg-secondary);border-top:1px solid var(--border-light)}.summary-item{display:flex;flex-direction:column;gap:4px}.summary-label{font-size:12px;color:var(--text-muted);font-weight:500}.summary-value{font-size:16px;font-weight:600;color:var(--text-primary)}.badge-details{padding:16px;background:var(--bg-primary);border-top:1px solid var(--border-light)}.score-breakdown{margin-bottom:20px}.score-breakdown h4{font-size:14px;font-weight:600;color:var(--text-secondary);margin:0 0 12px}.score-components{display:flex;flex-direction:column;gap:12px}.score-component{display:grid;grid-template-columns:120px 1fr 60px;gap:12px;align-items:center}.component-label{font-size:13px;color:var(--text-muted);font-weight:500}.component-bar{height:8px;background:var(--border-light);border-radius:4px;overflow:hidden}.component-fill{height:100%;transition:width .3s ease;border-radius:4px}.component-value{font-size:12px;font-weight:600;color:var(--text-secondary);text-align:right}.data-warnings{margin:16px 0;padding:12px;background:var(--color-warning-light);border-left:3px solid var(--color-warning);border-radius:4px}.data-warnings h4{font-size:13px;font-weight:600;color:var(--color-warning-dark);margin:0 0 8px}.data-warnings ul{margin:0;padding-left:20px}.data-warnings li{font-size:13px;color:#92400e;margin:4px 0}.data-recommendations{margin:16px 0;padding:12px;background:#dbeafe;border-left:3px solid #3b82f6;border-radius:4px}.data-recommendations h4{font-size:13px;font-weight:600;color:#1e40af;margin:0 0 8px}.data-recommendations ul{margin:0;padding-left:20px}.data-recommendations li{font-size:13px;color:#1e40af;margin:4px 0}.additional-metrics{margin-top:16px;padding-top:16px;border-top:1px solid #e5e7eb}.metric-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #f3f4f6}.metric-row:last-child{border-bottom:none}.metric-label{font-size:13px;color:#6b7280;font-weight:500}.metric-value{font-size:13px;color:#111827;font-weight:600}.info-hint{margin-left:4px;cursor:help;opacity:.6;font-size:12px;transition:opacity .2s ease}.info-hint:hover{opacity:1}@media (max-width: 768px){.badge-header{flex-direction:column;align-items:flex-start;gap:12px}.badge-summary{grid-template-columns:repeat(2,1fr)}.score-component{grid-template-columns:100px 1fr 50px;gap:8px}}.predictive-analytics-container{background:var(--bg-primary);border-radius:12px;padding:24px;box-shadow:var(--shadow-sm)}.prediction-hero{display:flex;align-items:center;gap:24px;padding:24px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff;margin-bottom:24px;position:relative;overflow:hidden}.prediction-hero--professional{background:linear-gradient(135deg,#1e293b,#0f172a);border:1px solid #334155}.prediction-hero--professional:before{display:none}.prediction-hero:before{content:"";position:absolute;top:-50%;right:-10%;width:300px;height:300px;background:radial-gradient(circle,rgba(255,255,255,.1) 0%,transparent 70%);border-radius:50%}.crystal-ball-icon{font-size:64px;animation:float 3s ease-in-out infinite}.forecast-icon{display:flex;align-items:center;justify-content:center;width:72px;height:72px;background:#3b82f626;border:1px solid rgba(59,130,246,.3);border-radius:12px;color:#60a5fa;flex-shrink:0}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.prediction-headline{flex:1}.prediction-headline h3{margin:0 0 8px;font-size:24px;font-weight:700;color:#fff}.prediction-hero--professional .prediction-headline h3{color:#f1f5f9}.officer-name{margin:0;font-size:14px;opacity:.9}.shift-code-badge{display:inline-block;padding:2px 10px;border-radius:4px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);margin-left:8px;font-family:SF Mono,Consolas,monospace;font-size:12px;letter-spacing:.02em}.prediction-hero--professional .shift-code-badge{background:#3b82f626;border-color:#3b82f64d;color:#93c5fd}.key-prediction{text-align:right;background:#ffffff26;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:16px 24px;border-radius:12px;border:1px solid rgba(255,255,255,.2)}.prediction-hero--professional .key-prediction{background:#0f172a99;border:1px solid #334155}.prediction-value{font-size:48px;font-weight:700;line-height:1;margin-bottom:8px}.prediction-hero--professional .prediction-value{color:#60a5fa!important}.prediction-label{font-size:13px;opacity:.9}.prediction-hero--professional .prediction-label{color:#94a3b8}.prediction-chart-container{margin:24px 0;padding:20px;background:var(--bg-secondary);border-radius:8px;border:1px solid var(--border-light)}.prediction-chart-container h4{margin:0 0 16px;font-size:16px;font-weight:600;color:var(--text-primary)}.forecast-chart-controls{display:flex;gap:8px;flex-wrap:wrap;margin:-4px 0 10px}.forecast-toggle{border:1px solid var(--border-light);background:var(--bg-primary);color:var(--text-secondary);border-radius:999px;padding:6px 10px;font-size:12px;font-weight:700;cursor:pointer}.forecast-toggle.active{background:var(--color-primary);border-color:var(--color-primary);color:var(--text-inverse)}.forecast-tooltip{background:color-mix(in srgb,var(--bg-primary) 98%,transparent);border:1px solid var(--border-light);border-radius:10px;padding:10px 12px;box-shadow:0 10px 24px #00000026;min-width:220px}.forecast-tooltip-title{font-weight:800;color:var(--text-primary);margin-bottom:8px;font-size:13px}.forecast-tooltip-row{display:grid;grid-template-columns:12px 1fr auto;align-items:center;gap:8px;padding:2px 0;font-size:12px;color:var(--text-secondary)}.forecast-tooltip-row .dot{width:10px;height:10px;border-radius:50%}.forecast-tooltip-row .label{color:var(--text-muted);font-weight:700}.forecast-tooltip-row .value{color:var(--text-primary);font-weight:800}.forecast-tooltip-foot{margin-top:8px;font-size:11px;color:var(--text-muted)}.forecast-legend{display:flex;gap:10px;flex-wrap:wrap;margin:8px 0 0;justify-content:center}.forecast-legend-item{display:inline-flex;align-items:center;gap:8px;padding:6px 10px;border-radius:999px;border:1px solid var(--border-light);background:var(--bg-primary);color:var(--text-secondary);font-size:12px;font-weight:800;cursor:pointer}.forecast-legend-item .swatch{width:10px;height:10px;border-radius:2px;box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--text-primary) 12%,transparent)}.forecast-legend-item.active{background:var(--color-primary);border-color:var(--color-primary);color:var(--text-inverse)}.chart-note{margin-top:12px;font-size:12px;color:var(--text-muted);text-align:center;font-style:italic}.trend-analysis-section{margin:24px 0}.trend-analysis-section h4{margin:0 0 16px;font-size:18px;font-weight:600;color:var(--text-primary)}.trend-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px}.trend-card{background:var(--bg-primary);border:2px solid var(--border-light);border-radius:8px;padding:16px;text-align:center;transition:all .2s ease}.trend-card:hover{border-color:var(--color-primary);transform:translateY(-2px);box-shadow:0 4px 12px #3b82f61a}.trend-label{font-size:12px;color:var(--text-muted);font-weight:500;margin-bottom:8px}.trend-value{font-size:24px;font-weight:700;color:var(--text-primary)}.ai-insights-section{margin:24px 0;padding:20px;background:var(--color-info-light);border-radius:8px;border:1px solid var(--color-info)}.ai-insights-section h4{margin:0 0 16px;font-size:18px;font-weight:600;color:var(--color-info-dark)}.insight-summary{font-size:15px;color:var(--text-primary);line-height:1.6;margin-bottom:16px;padding:12px;background:var(--bg-primary);border-radius:6px;border-left:4px solid var(--color-info)}.insight-list{margin:16px 0;padding:12px;border-radius:6px}.insight-list.positive{background:var(--color-success-light);border:1px solid var(--color-success)}.insight-list.risk{background:var(--color-error-light);border:1px solid var(--color-error)}.insight-list h5{margin:0 0 8px;font-size:14px;font-weight:600}.insight-list.positive h5{color:var(--color-success-dark)}.insight-list.risk h5{color:var(--color-error-dark)}.insight-list ul{margin:0;padding-left:20px}.insight-list li{font-size:13px;margin:4px 0;line-height:1.5}.insight-list.positive li{color:#15803d}.insight-list.risk li{color:#b91c1c}.improvement-probability{margin-top:16px;padding:12px;background:var(--bg-primary);border-radius:6px}.probability-label{font-size:13px;color:var(--text-primary);font-weight:600;margin-bottom:8px}.probability-bar{height:24px;background:var(--border-light);border-radius:12px;overflow:hidden;margin-bottom:8px}.probability-fill{height:100%;background:linear-gradient(90deg,#10b981,#059669);border-radius:12px;transition:width .5s ease;display:flex;align-items:center;justify-content:flex-end;padding-right:8px;color:#fff;font-size:12px;font-weight:600}.probability-value{text-align:right;font-size:14px;font-weight:700;color:#10b981}.prediction-disclaimer{margin-top:24px;padding:12px 16px;background:var(--color-warning-light);border-left:4px solid var(--color-warning);border-radius:4px;font-size:13px;color:var(--color-warning-dark);line-height:1.5}@media (max-width: 768px){.prediction-hero{flex-direction:column;text-align:center}.key-prediction{width:100%;text-align:center}.trend-cards{grid-template-columns:repeat(2,1fr)}}.anomaly-detection-container{background:var(--bg-primary);border-radius:12px;padding:24px;box-shadow:var(--shadow-sm)}.prediction-collapsible{margin:12px 0;border:1px solid var(--border-light);border-radius:12px;background:var(--bg-primary);padding:10px 12px}.prediction-collapsible-summary{cursor:pointer;font-weight:800;color:var(--text-primary);list-style:none}.prediction-collapsible summary::-webkit-details-marker{display:none}.prediction-collapsible-summary:before{content:"▸";display:inline-block;margin-right:8px;color:var(--text-muted)}.prediction-collapsible[open] .prediction-collapsible-summary:before{content:"▾"}.anomaly-alert-header{display:flex;align-items:center;gap:20px;padding:20px;background:var(--color-error-light);border-radius:8px;border-left:6px solid var(--color-error);margin-bottom:24px}.alert-icon{font-size:48px;animation:pulse 2s ease-in-out infinite}@keyframes pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.1);opacity:.8}}.alert-content{flex:1}.alert-content h3{margin:0 0 8px;font-size:22px;font-weight:700;color:var(--color-error-dark)}.alert-content p{margin:0 0 12px;color:var(--text-secondary);font-size:14px}.risk-badge{display:inline-block;padding:6px 12px;border-radius:20px;font-size:12px;font-weight:600}.no-anomalies-header{display:flex;align-items:center;gap:20px;padding:20px;background:var(--color-success-light);border-radius:8px;border-left:6px solid var(--color-success);margin-bottom:24px}.success-icon{font-size:48px}.success-content h3{margin:0 0 4px;color:var(--color-success-dark);font-size:22px;font-weight:700}.success-content p{margin:0;color:var(--text-secondary);font-size:14px}.anomaly-timeline{margin:24px 0;padding:20px;background:var(--bg-secondary);border-radius:8px;border:1px solid var(--border-light)}.anomaly-filter-row{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 10px}.anomaly-filter-chip{border:1px solid var(--border-light);background:var(--bg-primary);color:var(--text-secondary);border-radius:999px;padding:6px 10px;font-size:12px;font-weight:800;cursor:pointer;text-transform:uppercase;letter-spacing:.02em}.anomaly-filter-chip.active{color:#fff}.anomaly-timeline h4{margin:0 0 16px;font-size:16px;font-weight:600;color:var(--text-primary)}.anomaly-cards-section{margin:24px 0}.anomaly-cards-section h4{margin:0 0 16px;font-size:18px;font-weight:600;color:var(--text-primary)}.anomaly-cards-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}.anomaly-card{background:var(--bg-primary);border:2px solid;border-radius:8px;padding:16px;cursor:pointer;transition:all .2s ease}.anomaly-card.severity-critical{border-color:var(--color-error-dark);background:var(--color-error-light)}.anomaly-card.severity-high{border-color:#f97316;background:#fff7ed}.anomaly-card.severity-medium{border-color:var(--color-warning-dark);background:var(--color-warning-light)}.anomaly-card.severity-low{border-color:var(--color-primary);background:var(--color-primary-light)}.anomaly-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000026}.anomaly-header{display:flex;align-items:center;gap:8px;margin-bottom:12px}.severity-icon{font-size:20px}.anomaly-date{flex:1;font-weight:600;color:var(--text-primary);font-size:14px}.severity-badge{padding:4px 8px;border-radius:12px;font-size:11px;font-weight:600;text-transform:uppercase}.severity-badge.severity-critical{background:#dc2626;color:#fff}.severity-badge.severity-high{background:#f97316;color:#fff}.severity-badge.severity-medium{background:#f59e0b;color:#fff}.severity-badge.severity-low{background:#3b82f6;color:#fff}.anomaly-value-section{margin:12px 0;padding:12px;background:var(--bg-primary);border-radius:6px}.value-comparison{display:flex;justify-content:space-around;margin-bottom:8px}.actual-value,.expected-value{display:flex;flex-direction:column;align-items:center;gap:4px}.actual-value .label,.expected-value .label{font-size:11px;color:var(--text-muted);text-transform:uppercase;font-weight:600}.actual-value .value,.expected-value .value{font-size:20px;font-weight:700;color:var(--text-primary)}.deviation{text-align:center;padding-top:8px;border-top:1px solid var(--border-light)}.deviation-value{font-size:16px;font-weight:700}.deviation-value.positive{color:#dc2626}.deviation-value.negative{color:#2563eb}.anomaly-context,.anomaly-recommendation{display:flex;align-items:flex-start;gap:8px;margin:12px 0;padding:10px;border-radius:6px;font-size:13px;line-height:1.4}.anomaly-context{background:var(--color-primary-light);color:var(--color-primary-dark)}.anomaly-recommendation{background:var(--color-warning-light);color:var(--color-warning-dark)}.context-icon,.rec-icon{flex-shrink:0}.consecutive-badge{margin-top:8px;padding:8px;background:var(--color-error-light);border:1px solid var(--color-error);border-radius:4px;font-size:12px;font-weight:600;color:var(--color-error-dark);text-align:center}.anomaly-summary-section{margin:24px 0}.anomaly-summary-section h4{margin:0 0 16px;font-size:18px;font-weight:600;color:var(--text-primary)}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.summary-card{padding:16px;background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:8px}.summary-label{font-size:12px;color:var(--text-muted);font-weight:500;margin-bottom:8px}.summary-value{font-size:28px;font-weight:700;color:var(--text-primary)}.summary-value-small{font-size:14px;font-weight:600;color:var(--text-primary)}.summary-breakdown{font-size:12px;color:var(--text-secondary)}.summary-breakdown div{margin:4px 0}.anomaly-disclaimer{margin-top:24px;padding:12px 16px;background:var(--color-warning-light);border-left:4px solid var(--color-warning);border-radius:4px;font-size:13px;color:var(--color-warning-dark);line-height:1.5}.anomaly-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}.anomaly-modal{background:var(--bg-primary);border-radius:12px;max-width:600px;width:90%;max-height:80vh;overflow-y:auto;box-shadow:0 20px 25px -5px #0000004d}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px;border-bottom:1px solid var(--border-light)}.modal-header h3{margin:0;font-size:20px;font-weight:600;color:var(--text-primary)}.modal-close{background:none;border:none;font-size:32px;color:var(--text-muted);cursor:pointer;line-height:1;padding:0;width:32px;height:32px}.modal-close:hover{color:var(--text-primary)}.modal-content{padding:20px}.modal-stat{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--border-light);font-size:14px}.modal-stat span:first-child{font-weight:600;color:var(--text-muted)}.modal-section{margin:20px 0}.modal-section h4{margin:0 0 8px;font-size:14px;font-weight:600;color:var(--text-secondary)}.modal-section p{margin:0;font-size:14px;color:var(--text-muted);line-height:1.6}@media (max-width: 768px){.anomaly-cards-grid{grid-template-columns:1fr}.summary-grid{grid-template-columns:repeat(2,1fr)}}.op-attention-card{border:1px solid #e5e7eb;border-radius:14px;background:#fff;padding:16px}.op-attention-header{display:flex;justify-content:space-between;gap:14px}.op-attention-left{display:flex;gap:12px;align-items:center}.op-attention-icon{font-size:28px}.op-attention-title{font-weight:900;color:#111827;font-size:16px}.op-attention-subtitle{color:#6b7280;font-size:13px;margin-top:4px}.op-attention-right{text-align:right;min-width:150px}.op-attention-badge{display:inline-block;padding:4px 10px;border-radius:999px;font-weight:900;font-size:11px;letter-spacing:.06em}.level-critical{background:var(--color-error-light);color:var(--color-error-dark);border:1px solid var(--color-error)}.level-high,.level-medium{background:var(--color-warning-light);color:var(--color-warning-dark);border:1px solid var(--color-warning)}.level-low{background:var(--color-success-light);color:var(--color-success-dark);border:1px solid var(--color-success)}.op-attention-score{margin-top:6px;font-weight:900;font-size:18px;color:var(--text-primary)}.op-attention-confidence{margin-top:4px;font-size:12px;color:var(--text-muted)}.op-attention-summary{margin-top:12px;background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:10px;padding:10px 12px;color:var(--text-primary);font-size:13px;line-height:1.4}.op-attention-actions-row{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-top:10px}.op-attention-toggle{border:1px solid var(--border-light);background:var(--bg-primary);border-radius:999px;padding:8px 12px;font-weight:800;cursor:pointer;color:var(--text-primary)}.op-attention-disclaimer{color:var(--text-muted);font-size:12px}.op-attention-details{margin-top:12px}.op-attention-section{margin-top:12px;padding:12px;border:1px solid var(--border-light);border-radius:10px;background:var(--bg-primary)}.op-attention-section-title{font-weight:900;color:var(--text-primary);margin-bottom:8px}.op-attention-list{margin:0;padding-left:18px;color:var(--text-secondary);font-size:13px;line-height:1.5}.op-attention-action{margin-top:10px}.op-attention-action-title{font-weight:900;color:var(--text-primary);margin-bottom:6px}.app-empty-state{border:1px solid rgba(0,0,0,.08);background:#ffffffb3;border-radius:12px;padding:16px;text-align:center;color:#111827}.app-empty-state.compact{padding:12px}.app-empty-state-title{font-weight:700;font-size:.98rem}.app-empty-state-desc{margin-top:6px;color:#6b7280;font-size:.9rem;line-height:1.35}.app-empty-state-action{margin-top:12px}.k9-forecast-tab{padding:12px 0}.k9-forecast-subtitle{color:var(--text-muted);margin-top:6px}.k9-forecast-controls{margin-top:14px;padding:12px;border:1px solid var(--border-light);background:var(--bg-secondary);border-radius:10px}.k9-target-toggle{display:inline-flex;background:var(--bg-primary);border:1px solid var(--border-light);border-radius:999px;overflow:hidden;margin-bottom:12px}.toggle-btn{border:none;background:transparent;padding:10px 14px;font-weight:800;color:var(--text-secondary);cursor:pointer}.toggle-btn.active{background:var(--color-primary);color:var(--text-inverse)}.k9-selectors{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;align-items:end}.selector label{display:block;font-size:12px;font-weight:700;color:var(--text-secondary);margin-bottom:6px}.selector select{width:100%;border:1px solid var(--border-light);border-radius:8px;padding:10px;background:var(--bg-primary);color:var(--text-primary)}.mode-btn{border:none;background:transparent;padding:10px 14px;font-weight:800;color:var(--text-secondary);cursor:pointer}.mode-help{margin-top:6px;color:var(--text-muted);font-size:12px}.k9-forecast-error{margin-top:12px;padding:10px 12px;border:1px solid var(--color-error);background:var(--color-error-light);color:var(--color-error-dark);border-radius:10px}.k9-forecast-section{margin-top:20px}.k9-forecast-loading{padding:22px;background:var(--bg-primary);border:1px solid var(--border-light);border-radius:12px;display:flex;align-items:center;gap:12px}.k9-visuals-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1100;animation:k9FadeIn .25s ease-out}.k9-visuals-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:linear-gradient(135deg,#fff,#f8fafc);border-radius:16px;box-shadow:0 25px 50px -12px #0006;width:90vw;height:90vh;max-width:1400px;overflow:hidden;z-index:1101;animation:k9SlideIn .3s ease-out;display:flex;flex-direction:column}@keyframes k9SlideIn{0%{opacity:0;transform:translate(-50%,-48%) scale(.95)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.k9-visuals-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;background:linear-gradient(135deg,#1e3a5f,#2d5a87);color:#fff;flex-shrink:0;border-bottom:1px solid rgba(255,255,255,.1)}.k9-visuals-modal .modal-header h2{margin:0;font-size:1.5rem;font-weight:600;letter-spacing:-.5px;display:flex;align-items:center;gap:12px}.k9-visuals-modal .modal-header h2 .header-icon{font-size:1.4rem;opacity:.9}.k9-visuals-modal .modal-close-btn{background:#fff3;border:none;color:#fff;width:40px;height:40px;border-radius:50%;font-size:28px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;line-height:1}.k9-visuals-modal .modal-close-btn:hover{background:#ffffff4d;transform:scale(1.1)}.k9-visuals-modal .modal-close-btn:active{transform:scale(.95)}.k9-visuals-modal .date-range-badge{display:flex;align-items:center;gap:10px;padding:12px 24px;background:#f1f5f9;border-bottom:1px solid #e2e8f0;font-size:.95rem;color:#475569;flex-shrink:0}.k9-visuals-modal .date-range-badge .date-icon{font-size:1.1rem}.k9-visuals-modal .modal-content{padding:24px;overflow-y:auto;flex:1;min-height:0}.k9-visuals-modal .modal-content::-webkit-scrollbar{width:10px}.k9-visuals-modal .modal-content::-webkit-scrollbar-track{background:#f1f5f9;border-radius:5px}.k9-visuals-modal .modal-content::-webkit-scrollbar-thumb{background:#94a3b8;border-radius:5px}.k9-visuals-modal .modal-content::-webkit-scrollbar-thumb:hover{background:#64748b}.k9-visuals-modal .k9-analytics-dashboard{background:transparent;box-shadow:none;padding:0;height:calc(90vh - 120px);min-height:500px}.k9-visuals-modal .k9-analytics-dashboard .dashboard-tabs{margin-bottom:20px;position:sticky;top:0;background:#f8fafc;padding:10px 0;z-index:10}.k9-visuals-modal .k9-analytics-dashboard .dashboard-content{padding-bottom:20px}.k9-visuals-modal .chart-container{min-height:300px}.k9-visuals-modal .chart-container.large{min-height:400px}@media (max-width: 1024px){.k9-visuals-modal{width:95vw;height:92vh;border-radius:12px}}@media (max-width: 768px){.k9-visuals-modal{width:100vw;height:100vh;max-width:none;border-radius:0}.k9-visuals-modal .modal-header{padding:16px 20px}.k9-visuals-modal .modal-header h2{font-size:1.2rem}.k9-visuals-modal .modal-content{padding:16px}.k9-visuals-modal .date-range-badge{padding:10px 16px;font-size:.85rem}}.k9-visuals-modal.closing{animation:k9SlideOut .2s ease-in forwards}.k9-visuals-backdrop.closing{animation:k9FadeOut .2s ease-in forwards}@keyframes k9SlideOut{0%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-48%) scale(.95)}}@keyframes k9FadeOut{0%{opacity:1}to{opacity:0}}.seizure-analytics-dashboard{padding:20px;max-width:1400px;margin:0 auto}.seizure-analytics-dashboard.compact{padding:12px}.seizure-analytics-dashboard .dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.seizure-analytics-dashboard .dashboard-header h2{margin:0;font-size:1.5rem;color:#1a1a2e}.seizure-analytics-dashboard .date-range-display{font-size:.9rem;color:#666;background:#f0f0f0;padding:6px 12px;border-radius:16px}.seizure-analytics-dashboard .dashboard-tabs{display:flex;gap:4px;padding:12px 16px;background:var(--gray-100, #f1f5f9);border-bottom:1px solid var(--gray-200, #e2e8f0);margin-bottom:20px}.seizure-analytics-dashboard .tab-button{padding:10px 20px;border:none;border-radius:8px;background:transparent;font-size:.9rem;font-weight:500;color:var(--text-secondary, #64748b);cursor:pointer;transition:all .2s ease}.seizure-analytics-dashboard .tab-button:hover{background:#fffc;color:var(--text-primary, #334155)}.seizure-analytics-dashboard .tab-button.active{background:var(--bg-primary, white);color:#673ab7;box-shadow:0 2px 4px #0000000d}.seizure-analytics-dashboard.loading,.seizure-analytics-dashboard.error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;color:#666}.seizure-analytics-dashboard .loading-spinner{width:40px;height:40px;border:4px solid #e0e0e0;border-top-color:#673ab7;border-radius:50%;animation:seizure-spin 1s linear infinite;margin-bottom:16px}@keyframes seizure-spin{to{transform:rotate(360deg)}}.seizure-analytics-dashboard .error-message{color:#d32f2f;margin-bottom:16px}.seizure-analytics-dashboard .overview-tab{display:flex;flex-direction:column;gap:24px}.seizure-analytics-dashboard .summary-cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.seizure-analytics-dashboard .summary-card{display:flex;align-items:center;gap:16px;padding:20px;border-radius:12px;box-shadow:0 2px 8px #0000001a}.seizure-analytics-dashboard .summary-card .card-icon{font-size:2rem;min-width:48px;text-align:center}.seizure-analytics-dashboard .summary-card .card-content{display:flex;flex-direction:column}.seizure-analytics-dashboard .summary-card .card-value{font-size:1.5rem;font-weight:700;color:#333}.seizure-analytics-dashboard .summary-card .card-label{font-size:.85rem;color:#666}.seizure-analytics-dashboard .currency-card{background:linear-gradient(135deg,#d1fae5,#a7f3d0);border-left:4px solid #047857}.seizure-analytics-dashboard .currency-card .card-value{color:#047857}.seizure-analytics-dashboard .drugs-card{background:linear-gradient(135deg,#ede9fe,#ddd6fe);border-left:4px solid #6D28D9}.seizure-analytics-dashboard .drugs-card .card-value{color:#6d28d9}.seizure-analytics-dashboard .officers-card{background:linear-gradient(135deg,#e3f2fd,#bbdefb);border-left:4px solid #2196F3}.seizure-analytics-dashboard .officers-card .card-value{color:#1565c0}.seizure-analytics-dashboard .records-card{background:linear-gradient(135deg,#fff3e0,#ffe0b2);border-left:4px solid #FF9800}.seizure-analytics-dashboard .records-card .card-value{color:#e65100}.seizure-analytics-dashboard .drug-breakdown-section h3,.seizure-analytics-dashboard .top-officers-section h3{margin:0 0 16px;font-size:1.1rem;color:#333}.seizure-analytics-dashboard .donut-chart-container{display:flex;gap:32px;align-items:center;flex-wrap:wrap;background:linear-gradient(135deg,#fafafa,#f5f5f5);border-radius:16px;padding:24px;box-shadow:0 2px 12px #00000014}.seizure-analytics-dashboard .donut-chart-wrapper{position:relative;width:200px;height:200px;flex-shrink:0}.seizure-analytics-dashboard .donut-chart{width:100%;height:100%;filter:drop-shadow(0 4px 6px rgba(0,0,0,.1))}.seizure-analytics-dashboard .donut-segment{transition:opacity .2s,transform .2s}.seizure-analytics-dashboard .donut-segment:hover{opacity:.85;filter:brightness(1.1)}.seizure-analytics-dashboard .donut-center-value{font-size:18px;font-weight:700;fill:#333}.seizure-analytics-dashboard .donut-center-label{font-size:12px;fill:#666}.seizure-analytics-dashboard .donut-legend{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;flex:1;min-width:200px}.seizure-analytics-dashboard .legend-item{display:flex;align-items:center;gap:10px;padding:8px 12px;background:#fff;border-radius:8px;box-shadow:0 1px 4px #0000000f;transition:transform .2s,box-shadow .2s}.seizure-analytics-dashboard .legend-item:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.seizure-analytics-dashboard .legend-color{width:14px;height:14px;border-radius:4px;flex-shrink:0;box-shadow:0 1px 3px #0003}.seizure-analytics-dashboard .legend-text{display:flex;flex-direction:column;gap:2px}.seizure-analytics-dashboard .legend-label{font-weight:600;font-size:.9rem;color:#333}.seizure-analytics-dashboard .legend-value{font-size:.8rem;color:#666}.seizure-analytics-dashboard .top-officers-grid{display:flex;flex-direction:column;gap:8px}.seizure-analytics-dashboard .officer-card{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#f8f8f8;border-radius:10px;border-left:4px solid #4CAF50;transition:transform .2s,box-shadow .2s}.seizure-analytics-dashboard .officer-card:hover{transform:translate(4px);box-shadow:0 2px 8px #0000001a}.seizure-analytics-dashboard .officer-card.rank-1{background:linear-gradient(135deg,#fff8e1,#ffecb3);border-left-color:gold}.seizure-analytics-dashboard .officer-card.rank-2{background:linear-gradient(135deg,#fafafa,#e0e0e0);border-left-color:silver}.seizure-analytics-dashboard .officer-card.rank-3{background:linear-gradient(135deg,#fbe9e7,#ffccbc);border-left-color:#cd7f32}.seizure-analytics-dashboard .rank-badge{font-size:1.2rem;min-width:32px;text-align:center}.seizure-analytics-dashboard .officer-info{flex:1;display:flex;flex-direction:column}.seizure-analytics-dashboard .officer-name{font-weight:600;color:#333}.seizure-analytics-dashboard .officer-total{font-size:1.1rem;font-weight:700;color:#4caf50}.seizure-analytics-dashboard .officer-avg{font-size:.85rem;color:#666;background:#4caf501a;padding:4px 8px;border-radius:12px}.seizure-analytics-dashboard .currency-tab,.seizure-analytics-dashboard .drugs-tab,.seizure-analytics-dashboard .trends-tab{display:flex;flex-direction:column;gap:20px}.seizure-analytics-dashboard .rankings-filters,.seizure-analytics-dashboard .trends-filters{display:flex;gap:16px;flex-wrap:wrap}.seizure-analytics-dashboard .filter-group{display:flex;flex-direction:column;gap:4px}.seizure-analytics-dashboard .filter-group label{font-size:.85rem;font-weight:500;color:#666}.seizure-analytics-dashboard .filter-group select{padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:.95rem;min-width:180px;background:#fff}.seizure-analytics-dashboard .filter-group select:focus{outline:none;border-color:#673ab7;box-shadow:0 0 0 2px #673ab71a}.seizure-analytics-dashboard .rankings-list{display:flex;flex-direction:column;gap:10px}.seizure-analytics-dashboard .ranking-card{display:grid;grid-template-columns:50px 1fr auto;align-items:center;gap:16px;padding:14px 20px;background:#fff;border-radius:12px;border:1px solid #e8e8e8;transition:all .2s ease;box-shadow:0 1px 3px #0000000a}.seizure-analytics-dashboard .ranking-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000014;border-color:#d0d0d0}.seizure-analytics-dashboard .ranking-card.rank-1{background:linear-gradient(135deg,#fffbeb,#fef3c7);border-color:#f59e0b;border-width:2px}.seizure-analytics-dashboard .ranking-card.rank-2{background:linear-gradient(135deg,#f9fafb,#e5e7eb);border-color:#9ca3af;border-width:2px}.seizure-analytics-dashboard .ranking-card.rank-3{background:linear-gradient(135deg,#fef3e2,#fed7aa);border-color:#d97706;border-width:2px}.seizure-analytics-dashboard .ranking-position{display:flex;align-items:center;justify-content:center;min-width:50px}.seizure-analytics-dashboard .ranking-position .medal{font-size:1.6rem}.seizure-analytics-dashboard .ranking-position .rank-number{font-size:1rem;font-weight:700;color:#6b7280;background:#f3f4f6;padding:6px 10px;border-radius:8px}.seizure-analytics-dashboard .ranking-officer{display:flex;flex-direction:column;min-width:0}.seizure-analytics-dashboard .ranking-officer .officer-name{font-weight:600;font-size:1rem;color:#1f2937;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.seizure-analytics-dashboard .ranking-stats{display:flex;gap:24px;align-items:center}.seizure-analytics-dashboard .ranking-stats .stat-item{display:flex;flex-direction:column;align-items:center;min-width:80px}.seizure-analytics-dashboard .ranking-stats .stat-label{font-size:.7rem;font-weight:500;color:#9ca3af;text-transform:uppercase;letter-spacing:.5px;margin-bottom:2px}.seizure-analytics-dashboard .ranking-stats .stat-value{font-size:1rem;font-weight:700;color:#374151}.seizure-analytics-dashboard .ranking-stats .stat-value.currency{color:#047857}.seizure-analytics-dashboard .ranking-stats .stat-value.drugs{color:#6d28d9}@media (max-width: 640px){.seizure-analytics-dashboard .ranking-card{grid-template-columns:40px 1fr;grid-template-rows:auto auto;gap:8px 12px;padding:12px 14px}.seizure-analytics-dashboard .ranking-position{min-width:40px}.seizure-analytics-dashboard .ranking-position .medal{font-size:1.3rem}.seizure-analytics-dashboard .ranking-stats{grid-column:1 / -1;justify-content:space-between;gap:12px;padding-top:8px;border-top:1px solid #E5E7EB;margin-top:4px}.seizure-analytics-dashboard .ranking-stats .stat-item{min-width:60px}}.seizure-analytics-dashboard .no-data-message{text-align:center;padding:40px 20px;color:#6b7280;background:#f9fafb;border-radius:12px}.seizure-analytics-dashboard .no-data-message p{margin:0;font-size:.95rem}.seizure-analytics-dashboard .trend-display{background:#fafafa;border-radius:12px;padding:20px}.seizure-analytics-dashboard .trend-header{margin-bottom:20px}.seizure-analytics-dashboard .trend-header h4{margin:0;font-size:1.1rem;color:#333}.seizure-analytics-dashboard .trend-chart{height:200px;margin-bottom:20px}.seizure-analytics-dashboard .chart-bars{display:flex;align-items:flex-end;justify-content:space-around;height:100%;gap:8px;padding:0 10px}.seizure-analytics-dashboard .chart-bar-container{flex:1;display:flex;flex-direction:column;align-items:center;height:100%;max-width:60px}.seizure-analytics-dashboard .chart-bar{width:100%;border-radius:4px 4px 0 0;transition:height .3s ease;cursor:pointer}.seizure-analytics-dashboard .chart-bar.currency-bar{background:linear-gradient(180deg,#4caf50,#66bb6a)}.seizure-analytics-dashboard .chart-bar.drugs-bar{background:linear-gradient(180deg,#673ab7,#9575cd)}.seizure-analytics-dashboard .chart-bar.all-bar{background:linear-gradient(180deg,#2196f3,#64b5f6)}.seizure-analytics-dashboard .chart-bar:hover{opacity:.85}.seizure-analytics-dashboard .chart-label{font-size:.75rem;color:#666;margin-top:8px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.seizure-analytics-dashboard .trend-data-table{overflow-x:auto}.seizure-analytics-dashboard .trend-data-table table{width:100%;border-collapse:collapse;font-size:.9rem}.seizure-analytics-dashboard .trend-data-table th,.seizure-analytics-dashboard .trend-data-table td{padding:10px 12px;text-align:left;border-bottom:1px solid #e0e0e0}.seizure-analytics-dashboard .trend-data-table th{background:#f0f0f0;font-weight:600}.seizure-analytics-dashboard .trend-data-table .value-cell{font-weight:600;color:#374151}.seizure-analytics-dashboard .trend-data-table .currency-value{color:#047857;font-weight:500}.seizure-analytics-dashboard .trend-data-table .drugs-value{color:#6d28d9;font-weight:500}.seizure-analytics-dashboard .trend-indicator-card{display:flex;align-items:center;gap:20px;padding:20px 24px;background:#fff;border-radius:12px;border:2px solid #e8e8e8;margin-bottom:20px;box-shadow:0 2px 8px #0000000f}.seizure-analytics-dashboard .trend-indicator-card.trend-positive{border-color:#10b981;background:linear-gradient(135deg,#ecfdf5,#d1fae5)}.seizure-analytics-dashboard .trend-indicator-card.trend-negative{border-color:#ef4444;background:linear-gradient(135deg,#fef2f2,#fee2e2)}.seizure-analytics-dashboard .trend-indicator-card.trend-neutral{border-color:#9ca3af;background:linear-gradient(135deg,#f9fafb,#f3f4f6)}.seizure-analytics-dashboard .trend-icon{font-size:2.5rem;flex-shrink:0}.seizure-analytics-dashboard .trend-info{flex:1;min-width:0}.seizure-analytics-dashboard .trend-direction{display:flex;align-items:center;gap:12px;margin-bottom:8px}.seizure-analytics-dashboard .trend-direction .trend-label{font-size:1.25rem;font-weight:700;color:#1f2937}.seizure-analytics-dashboard .trend-percent{font-size:1.1rem;font-weight:700;padding:4px 12px;border-radius:20px}.seizure-analytics-dashboard .trend-percent.trend-positive{background:#d1fae5;color:#059669}.seizure-analytics-dashboard .trend-percent.trend-negative{background:#fee2e2;color:#dc2626}.seizure-analytics-dashboard .trend-percent.trend-neutral{background:#e5e7eb;color:#6b7280}.seizure-analytics-dashboard .trend-comparison{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.seizure-analytics-dashboard .trend-comparison .period-stat{display:flex;flex-direction:column;gap:2px}.seizure-analytics-dashboard .trend-comparison .period-label{font-size:.7rem;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.seizure-analytics-dashboard .trend-comparison .period-value{font-size:1rem;font-weight:600;color:#374151}.seizure-analytics-dashboard .trend-comparison .period-arrow{font-size:1.2rem;color:#9ca3af;font-weight:700}.seizure-analytics-dashboard .trend-totals{display:flex;gap:16px;flex-shrink:0}.seizure-analytics-dashboard .trend-totals .total-item{display:flex;flex-direction:column;align-items:center;padding:8px 16px;background:#ffffffb3;border-radius:8px;min-width:80px}.seizure-analytics-dashboard .trend-totals .total-label{font-size:.7rem;color:#6b7280;text-transform:uppercase;letter-spacing:.5px}.seizure-analytics-dashboard .trend-totals .total-value{font-size:1rem;font-weight:700;color:#1f2937}.seizure-analytics-dashboard .performance-chart{margin-bottom:24px}.seizure-analytics-dashboard .performance-chart .chart-bars{display:flex;align-items:flex-end;justify-content:space-around;height:200px;gap:6px;padding:0 10px;position:relative}.seizure-analytics-dashboard .performance-chart .chart-bar-wrapper{flex:1;display:flex;flex-direction:column;align-items:center;height:100%;max-width:80px;position:relative}.seizure-analytics-dashboard .performance-chart .bar-value{font-size:.65rem;font-weight:600;color:#6b7280;margin-bottom:4px;white-space:nowrap;opacity:0;transition:opacity .2s ease}.seizure-analytics-dashboard .performance-chart .chart-bar-wrapper:hover .bar-value{opacity:1}.seizure-analytics-dashboard .performance-chart .chart-bar{width:100%;border-radius:4px 4px 0 0;transition:all .3s ease;cursor:pointer;margin-top:auto}.seizure-analytics-dashboard .performance-chart .chart-bar:hover{transform:scaleY(1.02);filter:brightness(1.1)}.seizure-analytics-dashboard .performance-chart .chart-label{font-size:.7rem;color:#6b7280;margin-top:8px;text-align:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}.seizure-analytics-dashboard .performance-chart .half-divider{position:absolute;right:-3px;top:0;bottom:20px;width:2px;background:repeating-linear-gradient(to bottom,#9CA3AF 0,#9CA3AF 4px,transparent 4px,transparent 8px)}.seizure-analytics-dashboard .performance-chart .chart-legend{display:flex;justify-content:center;gap:40px;margin-top:12px;font-size:.75rem;color:#6b7280}.seizure-analytics-dashboard .performance-chart .legend-item{padding:4px 12px;background:#f3f4f6;border-radius:12px}@media (max-width: 768px){.seizure-analytics-dashboard .trend-indicator-card{flex-direction:column;align-items:flex-start;gap:16px}.seizure-analytics-dashboard .trend-totals{width:100%;justify-content:space-between}.seizure-analytics-dashboard .trend-totals .total-item{flex:1;min-width:0}.seizure-analytics-dashboard .performance-chart .chart-bars{height:150px}.seizure-analytics-dashboard .performance-chart .bar-value{display:none}}[data-theme=dark] .seizure-analytics-dashboard .dashboard-header h2{color:#e0e0e0}[data-theme=dark] .seizure-analytics-dashboard .date-range-display{background:#333;color:#bbb}[data-theme=dark] .seizure-analytics-dashboard .dashboard-tabs{background:var(--bg-secondary, #1e1e2e);border-bottom-color:#444}[data-theme=dark] .seizure-analytics-dashboard .tab-button{color:#999}[data-theme=dark] .seizure-analytics-dashboard .tab-button:hover{background:#ffffff14;color:#ccc}[data-theme=dark] .seizure-analytics-dashboard .tab-button.active{background:var(--bg-primary, #2a2a2a);color:#9575cd;box-shadow:0 2px 4px #0003}[data-theme=dark] .seizure-analytics-dashboard .summary-card{background:#2a2a2a;box-shadow:0 2px 8px #0000004d}[data-theme=dark] .seizure-analytics-dashboard .currency-card{background:linear-gradient(135deg,#1b3d2e,#2e5d42)}[data-theme=dark] .seizure-analytics-dashboard .drugs-card{background:linear-gradient(135deg,#2d1f4b,#4a2d7f)}[data-theme=dark] .seizure-analytics-dashboard .officers-card{background:linear-gradient(135deg,#1a3a4f,#2d5a7b)}[data-theme=dark] .seizure-analytics-dashboard .records-card{background:linear-gradient(135deg,#3d2e1a,#5d452d)}[data-theme=dark] .seizure-analytics-dashboard .summary-card .card-label{color:#bbb}[data-theme=dark] .seizure-analytics-dashboard .drug-breakdown-section h3,[data-theme=dark] .seizure-analytics-dashboard .top-officers-section h3{color:#e0e0e0}[data-theme=dark] .seizure-analytics-dashboard .donut-chart-container{background:linear-gradient(135deg,#2a2a2a,#333)}[data-theme=dark] .seizure-analytics-dashboard .donut-center-value{fill:#e0e0e0}[data-theme=dark] .seizure-analytics-dashboard .donut-center-label{fill:#999}[data-theme=dark] .seizure-analytics-dashboard .legend-item{background:#333}[data-theme=dark] .seizure-analytics-dashboard .legend-label{color:#e0e0e0}[data-theme=dark] .seizure-analytics-dashboard .legend-value{color:#999}[data-theme=dark] .seizure-analytics-dashboard .officer-card{background:#2a2a2a}[data-theme=dark] .seizure-analytics-dashboard .officer-name{color:#e0e0e0}[data-theme=dark] .seizure-analytics-dashboard .filter-group label{color:#999}[data-theme=dark] .seizure-analytics-dashboard .filter-group select{background:#2a2a2a;border-color:#444;color:#e0e0e0}[data-theme=dark] .seizure-analytics-dashboard .ranking-card{background:#2a2a2a;border-color:#404040}[data-theme=dark] .seizure-analytics-dashboard .ranking-card:hover{border-color:#505050;box-shadow:0 4px 12px #0000004d}[data-theme=dark] .seizure-analytics-dashboard .ranking-card.rank-1{background:linear-gradient(135deg,#3d3412,#4a3f0f);border-color:#b7791f}[data-theme=dark] .seizure-analytics-dashboard .ranking-card.rank-2{background:linear-gradient(135deg,#2d2d2d,#3a3a3a);border-color:#6b7280}[data-theme=dark] .seizure-analytics-dashboard .ranking-card.rank-3{background:linear-gradient(135deg,#3d2b12,#4a3515);border-color:#b7681f}[data-theme=dark] .seizure-analytics-dashboard .ranking-position .rank-number{color:#d1d5db;background:#404040}[data-theme=dark] .seizure-analytics-dashboard .ranking-officer .officer-name{color:#f3f4f6}[data-theme=dark] .seizure-analytics-dashboard .ranking-stats .stat-label{color:#6b7280}[data-theme=dark] .seizure-analytics-dashboard .ranking-stats .stat-value{color:#e5e7eb}[data-theme=dark] .seizure-analytics-dashboard .ranking-stats .stat-value.currency{color:#6ee7b7}[data-theme=dark] .seizure-analytics-dashboard .ranking-stats .stat-value.drugs{color:#c4b5fd}[data-theme=dark] .seizure-analytics-dashboard .no-data-message{background:#2a2a2a;color:#9ca3af}@media (max-width: 640px){[data-theme=dark] .seizure-analytics-dashboard .ranking-stats{border-top-color:#404040}}[data-theme=dark] .seizure-analytics-dashboard .trend-display{background:#2a2a2a}[data-theme=dark] .seizure-analytics-dashboard .trend-header h4{color:#e0e0e0}[data-theme=dark] .seizure-analytics-dashboard .chart-label{color:#999}[data-theme=dark] .seizure-analytics-dashboard .trend-data-table th{background:#333}[data-theme=dark] .seizure-analytics-dashboard .trend-data-table td{border-bottom-color:#444}[data-theme=dark] .seizure-analytics-dashboard .trend-data-table .value-cell{color:#e5e7eb}[data-theme=dark] .seizure-analytics-dashboard .trend-data-table .currency-value{color:#6ee7b7}[data-theme=dark] .seizure-analytics-dashboard .trend-data-table .drugs-value{color:#c4b5fd}[data-theme=dark] .seizure-analytics-dashboard .trend-indicator-card{background:#2a2a2a;border-color:#404040}[data-theme=dark] .seizure-analytics-dashboard .trend-indicator-card.trend-positive{border-color:#059669;background:linear-gradient(135deg,#064e3b,#065f46)}[data-theme=dark] .seizure-analytics-dashboard .trend-indicator-card.trend-negative{border-color:#dc2626;background:linear-gradient(135deg,#7f1d1d,#991b1b)}[data-theme=dark] .seizure-analytics-dashboard .trend-indicator-card.trend-neutral{border-color:#6b7280;background:linear-gradient(135deg,#374151,#4b5563)}[data-theme=dark] .seizure-analytics-dashboard .trend-direction .trend-label{color:#f3f4f6}[data-theme=dark] .seizure-analytics-dashboard .trend-percent.trend-positive{background:#065f46;color:#34d399}[data-theme=dark] .seizure-analytics-dashboard .trend-percent.trend-negative{background:#991b1b;color:#fca5a5}[data-theme=dark] .seizure-analytics-dashboard .trend-percent.trend-neutral{background:#4b5563;color:#d1d5db}[data-theme=dark] .seizure-analytics-dashboard .trend-comparison .period-label{color:#9ca3af}[data-theme=dark] .seizure-analytics-dashboard .trend-comparison .period-value{color:#e5e7eb}[data-theme=dark] .seizure-analytics-dashboard .trend-comparison .period-arrow{color:#6b7280}[data-theme=dark] .seizure-analytics-dashboard .trend-totals .total-item{background:#0000004d}[data-theme=dark] .seizure-analytics-dashboard .trend-totals .total-label{color:#9ca3af}[data-theme=dark] .seizure-analytics-dashboard .trend-totals .total-value{color:#f3f4f6}[data-theme=dark] .seizure-analytics-dashboard .performance-chart .bar-value,[data-theme=dark] .seizure-analytics-dashboard .performance-chart .chart-label{color:#9ca3af}[data-theme=dark] .seizure-analytics-dashboard .performance-chart .half-divider{background:repeating-linear-gradient(to bottom,#6B7280 0,#6B7280 4px,transparent 4px,transparent 8px)}[data-theme=dark] .seizure-analytics-dashboard .performance-chart .legend-item{background:#374151;color:#9ca3af}.seizure-analytics-dashboard .ranking-card.clickable{cursor:pointer}.seizure-analytics-dashboard .ranking-card.clickable:hover{transform:translateY(-3px);box-shadow:0 6px 16px #0000001f}.seizure-analytics-dashboard .ranking-officer .click-hint{font-size:.7rem;color:#9ca3af;opacity:0;transition:opacity .2s ease;margin-top:2px}.seizure-analytics-dashboard .ranking-card.clickable:hover .click-hint{opacity:1}[data-theme=dark] .seizure-analytics-dashboard .ranking-officer .click-hint{color:#6b7280}.seizure-analytics-dashboard .records-tab{display:flex;flex-direction:column;gap:16px}.seizure-analytics-dashboard .records-filters{display:flex;gap:16px;flex-wrap:wrap;align-items:center}.seizure-analytics-dashboard .officer-filter-badge{display:flex;align-items:center;gap:8px;background:linear-gradient(135deg,#673ab7,#9c27b0);color:#fff;padding:6px 12px;border-radius:20px;font-size:.85rem;font-weight:500}.seizure-analytics-dashboard .clear-filter-btn{background:#fff3;border:none;color:#fff;width:20px;height:20px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.75rem;transition:background .2s ease}.seizure-analytics-dashboard .clear-filter-btn:hover{background:#ffffff4d}.seizure-analytics-dashboard .records-summary{display:flex;gap:20px;padding:12px 16px;background:#f3f4f6;border-radius:8px;font-size:.9rem}.seizure-analytics-dashboard .records-summary .summary-item{color:#4b5563}.seizure-analytics-dashboard .records-summary .summary-item strong{color:#1f2937}.seizure-analytics-dashboard .records-summary .summary-item.currency strong{color:#047857}.seizure-analytics-dashboard .records-summary .summary-item.drugs strong{color:#6d28d9}.seizure-analytics-dashboard .records-table-wrapper{background:#fff;border-radius:12px;border:1px solid #e8e8e8;overflow:hidden;box-shadow:0 1px 3px #0000000a}.seizure-analytics-dashboard .records-table{width:100%;border-collapse:collapse;font-size:.9rem}.seizure-analytics-dashboard .records-table thead{background:linear-gradient(135deg,#673ab7,#9c27b0);color:#fff}.seizure-analytics-dashboard .records-table th{padding:12px 16px;text-align:left;font-weight:600;white-space:nowrap}.seizure-analytics-dashboard .records-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:background .2s ease}.seizure-analytics-dashboard .records-table th.sortable:hover{background:#ffffff1a}.seizure-analytics-dashboard .records-table th.amount-col{text-align:right}.seizure-analytics-dashboard .records-table td{padding:12px 16px;border-bottom:1px solid #F3F4F6;color:#374151}.seizure-analytics-dashboard .records-table tbody tr:hover{background:#fafafa}.seizure-analytics-dashboard .records-table tbody tr:last-child td{border-bottom:none}.seizure-analytics-dashboard .records-table .date-cell{font-weight:500;color:#1f2937}.seizure-analytics-dashboard .records-table .officer-cell{font-weight:500}.seizure-analytics-dashboard .records-table .type-cell{text-transform:capitalize}.seizure-analytics-dashboard .records-table .type-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:12px;font-size:.8rem;font-weight:500}.seizure-analytics-dashboard .records-table .type-badge.currency{background:#d1fae5;color:#047857}.seizure-analytics-dashboard .records-table .type-badge.drug{background:#ede9fe;color:#6d28d9}.seizure-analytics-dashboard .records-table .amount-cell{text-align:right;font-weight:600}.seizure-analytics-dashboard .records-table .amount-cell.currency{color:#047857}.seizure-analytics-dashboard .records-table .amount-cell.drugs{color:#6d28d9}.seizure-analytics-dashboard .records-table .drug-cell{color:#6b7280}@media (max-width: 768px){.seizure-analytics-dashboard .records-table-wrapper{overflow-x:auto}.seizure-analytics-dashboard .records-table{min-width:700px}.seizure-analytics-dashboard .records-table th,.seizure-analytics-dashboard .records-table td{padding:10px 12px}}[data-theme=dark] .seizure-analytics-dashboard .records-summary{background:#2a2a2a}[data-theme=dark] .seizure-analytics-dashboard .records-summary .summary-item{color:#9ca3af}[data-theme=dark] .seizure-analytics-dashboard .records-summary .summary-item strong{color:#e5e7eb}[data-theme=dark] .seizure-analytics-dashboard .records-summary .summary-item.currency strong{color:#6ee7b7}[data-theme=dark] .seizure-analytics-dashboard .records-summary .summary-item.drugs strong{color:#c4b5fd}[data-theme=dark] .seizure-analytics-dashboard .records-table-wrapper{background:#2a2a2a;border-color:#404040}[data-theme=dark] .seizure-analytics-dashboard .records-table thead{background:linear-gradient(135deg,#4a2982,#6a2d99)}[data-theme=dark] .seizure-analytics-dashboard .records-table td{border-bottom-color:#404040;color:#d1d5db}[data-theme=dark] .seizure-analytics-dashboard .records-table tbody tr:hover{background:#333}[data-theme=dark] .seizure-analytics-dashboard .records-table .date-cell{color:#f3f4f6}[data-theme=dark] .seizure-analytics-dashboard .records-table .type-badge.currency{background:#064e3b;color:#34d399}[data-theme=dark] .seizure-analytics-dashboard .records-table .type-badge.drug{background:#4c1d95;color:#c4b5fd}[data-theme=dark] .seizure-analytics-dashboard .records-table .amount-cell.currency{color:#6ee7b7}[data-theme=dark] .seizure-analytics-dashboard .records-table .amount-cell.drugs{color:#c4b5fd}[data-theme=dark] .seizure-analytics-dashboard .records-table .drug-cell{color:#9ca3af}.seizure-visuals-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1100;animation:seizureFadeIn .25s ease-out}.seizure-visuals-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:linear-gradient(135deg,#fff,#f8fafc);border-radius:16px;box-shadow:0 25px 50px -12px #0006;width:90vw;height:90vh;max-width:1400px;overflow:hidden;z-index:1101;animation:seizureSlideIn .3s ease-out;display:flex;flex-direction:column}@keyframes seizureSlideIn{0%{opacity:0;transform:translate(-50%,-48%) scale(.95)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.seizure-visuals-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;background:linear-gradient(135deg,#065f46,#047857);color:#fff;flex-shrink:0;border-bottom:1px solid rgba(255,255,255,.1)}.seizure-visuals-modal .modal-header h2{margin:0;font-size:1.5rem;font-weight:600;letter-spacing:-.5px;display:flex;align-items:center;gap:12px}.seizure-visuals-modal .modal-header h2:before{content:"💰";font-size:1.4rem}.seizure-visuals-modal .modal-close-btn{background:#fff3;border:none;color:#fff;width:40px;height:40px;border-radius:50%;font-size:28px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;line-height:1}.seizure-visuals-modal .modal-close-btn:hover{background:#ffffff4d;transform:scale(1.1)}.seizure-visuals-modal .modal-close-btn:active{transform:scale(.95)}.seizure-visuals-modal .date-range-badge{display:flex;align-items:center;gap:10px;padding:12px 24px;background:#f1f5f9;border-bottom:1px solid #e2e8f0;font-size:.95rem;color:#475569;flex-shrink:0}.seizure-visuals-modal .date-range-badge .date-icon{font-size:1.1rem}.seizure-visuals-modal .modal-content{padding:24px;overflow-y:auto;flex:1;min-height:0}.seizure-visuals-modal .modal-content::-webkit-scrollbar{width:10px}.seizure-visuals-modal .modal-content::-webkit-scrollbar-track{background:#f1f5f9;border-radius:5px}.seizure-visuals-modal .modal-content::-webkit-scrollbar-thumb{background:#94a3b8;border-radius:5px}.seizure-visuals-modal .modal-content::-webkit-scrollbar-thumb:hover{background:#64748b}.seizure-visuals-modal .seizure-analytics-dashboard{background:transparent;box-shadow:none;padding:0;height:calc(90vh - 120px);min-height:500px}.seizure-visuals-modal .seizure-analytics-dashboard .dashboard-tabs{margin-bottom:20px;position:sticky;top:0;background:#f8fafc;padding:10px 0;z-index:10}.seizure-visuals-modal .seizure-analytics-dashboard .dashboard-content{padding-bottom:20px}.seizure-visuals-modal .chart-container{min-height:300px}.seizure-visuals-modal .chart-container.large{min-height:400px}@media (max-width: 1024px){.seizure-visuals-modal{width:95vw;height:92vh;border-radius:12px}}@media (max-width: 768px){.seizure-visuals-modal{width:100vw;height:100vh;max-width:none;border-radius:0}.seizure-visuals-modal .modal-header{padding:16px 20px}.seizure-visuals-modal .modal-header h2{font-size:1.2rem}.seizure-visuals-modal .modal-content{padding:16px}.seizure-visuals-modal .date-range-badge{padding:10px 16px;font-size:.85rem}}.seizure-visuals-modal.closing{animation:seizureSlideOut .2s ease-in forwards}.seizure-visuals-backdrop.closing{animation:seizureFadeOut .2s ease-in forwards}@keyframes seizureSlideOut{0%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-48%) scale(.95)}}@keyframes seizureFadeOut{0%{opacity:1}to{opacity:0}}.incident-visuals-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1100;animation:incidentFadeIn .25s ease-out}@keyframes incidentFadeIn{0%{opacity:0}to{opacity:1}}.incident-visuals-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:linear-gradient(135deg,#1e293b,#0f172a);border-radius:16px;box-shadow:0 25px 50px -12px #00000080;width:90vw;height:90vh;max-width:1400px;overflow:hidden;z-index:1101;animation:incidentSlideIn .3s ease-out;display:flex;flex-direction:column}@keyframes incidentSlideIn{0%{opacity:0;transform:translate(-50%,-48%) scale(.95)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.incident-visuals-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;background:linear-gradient(135deg,#4338ca,#6366f1);color:#fff;flex-shrink:0;border-bottom:1px solid rgba(255,255,255,.1)}.incident-visuals-modal .modal-header h2{margin:0;font-size:1.5rem;font-weight:600;letter-spacing:-.5px;display:flex;align-items:center;gap:12px}.incident-visuals-modal .modal-header h2 .header-icon{font-size:1.4rem}.incident-visuals-modal .modal-close-btn{background:#fff3;border:none;color:#fff;width:40px;height:40px;border-radius:50%;font-size:28px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;line-height:1}.incident-visuals-modal .modal-close-btn:hover{background:#ffffff4d;transform:scale(1.1)}.incident-visuals-modal .modal-close-btn:active{transform:scale(.95)}.incident-visuals-modal .date-range-badge{display:flex;align-items:center;gap:10px;padding:12px 24px;background:#1e293b;border-bottom:1px solid #334155;font-size:.95rem;color:#94a3b8;flex-shrink:0}.incident-visuals-modal .date-range-badge .date-icon{font-size:1.1rem}.incident-visuals-modal .modal-content{padding:24px;overflow-y:auto;flex:1;min-height:0;background:#0f172a}.incident-visuals-modal .modal-content::-webkit-scrollbar{width:10px}.incident-visuals-modal .modal-content::-webkit-scrollbar-track{background:#1e293b;border-radius:5px}.incident-visuals-modal .modal-content::-webkit-scrollbar-thumb{background:#475569;border-radius:5px}.incident-visuals-modal .modal-content::-webkit-scrollbar-thumb:hover{background:#64748b}.incident-visuals-modal .loading-state,.incident-visuals-modal .error-state,.incident-visuals-modal .empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px;height:300px;color:#94a3b8;font-size:1.1rem}.incident-visuals-modal .loading-spinner{width:40px;height:40px;border:3px solid #334155;border-top-color:#6366f1;border-radius:50%;animation:incidentSpin 1s linear infinite}@keyframes incidentSpin{to{transform:rotate(360deg)}}.incident-visuals-modal .error-icon,.incident-visuals-modal .empty-icon{font-size:2rem}.incident-visuals-modal .analytics-grid{display:flex;flex-direction:column;gap:24px}.incident-visuals-modal .summary-cards-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px}.incident-visuals-modal .summary-card{background:linear-gradient(135deg,#1e293b,#334155);border-radius:12px;padding:20px;border:1px solid #475569;transition:transform .2s,box-shadow .2s}.incident-visuals-modal .summary-card:hover{transform:translateY(-2px);box-shadow:0 8px 25px -5px #0000004d}.incident-visuals-modal .card-label{color:#94a3b8;font-size:.85rem;text-transform:uppercase;letter-spacing:.5px;margin-bottom:8px}.incident-visuals-modal .card-value{color:#f1f5f9;font-size:2rem;font-weight:700;line-height:1.2}.incident-visuals-modal .card-value.open{color:#fbbf24}.incident-visuals-modal .card-value.resolved{color:#34d399}.incident-visuals-modal .card-subtitle{color:#64748b;font-size:.8rem;margin-top:4px}.incident-visuals-modal .chart-section{background:#1e293b;border-radius:12px;padding:20px;border:1px solid #334155}.incident-visuals-modal .chart-section h3{color:#f1f5f9;font-size:1.1rem;font-weight:600;margin:0 0 16px;padding-bottom:12px;border-bottom:1px solid #334155}.incident-visuals-modal .chart-container{min-height:300px}.incident-visuals-modal .charts-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));gap:16px}.incident-visuals-modal .chart-section.half{min-height:320px}.incident-visuals-modal .officers-table{overflow-x:auto}.incident-visuals-modal .officers-table table{width:100%;border-collapse:collapse;font-size:.95rem}.incident-visuals-modal .officers-table th,.incident-visuals-modal .officers-table td{padding:12px 16px;text-align:left;border-bottom:1px solid #334155}.incident-visuals-modal .officers-table th{color:#94a3b8;font-weight:600;text-transform:uppercase;font-size:.8rem;letter-spacing:.5px;background:#0f172a}.incident-visuals-modal .officers-table td{color:#e2e8f0}.incident-visuals-modal .officers-table tr:hover td{background:#6366f11a}.incident-visuals-modal .rank-cell{font-size:1.1rem;width:60px}.incident-visuals-modal .name-cell{font-weight:500}.incident-visuals-modal .count-cell{color:#f1f5f9;font-weight:600}.incident-visuals-modal .days-cell{color:#94a3b8}.incident-visuals-modal .rate-cell{color:#6366f1;font-family:monospace}.incident-visuals-modal .recharts-default-tooltip{background:#1e293b!important;border:1px solid #475569!important;border-radius:8px!important}@media (max-width: 1024px){.incident-visuals-modal{width:95vw;height:92vh;border-radius:12px}}@media (max-width: 768px){.incident-visuals-modal{width:100vw;height:100vh;max-width:none;border-radius:0}.incident-visuals-modal .modal-header{padding:16px 20px}.incident-visuals-modal .modal-header h2{font-size:1.2rem}.incident-visuals-modal .modal-content{padding:16px}.incident-visuals-modal .date-range-badge{padding:10px 16px;font-size:.85rem}.incident-visuals-modal .summary-cards-row{grid-template-columns:repeat(2,1fr)}.incident-visuals-modal .charts-row{grid-template-columns:1fr}}.incident-visuals-modal.closing{animation:incidentSlideOut .2s ease-in forwards}.incident-visuals-backdrop.closing{animation:incidentFadeOut .2s ease-in forwards}@keyframes incidentSlideOut{0%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-48%) scale(.95)}}@keyframes incidentFadeOut{0%{opacity:1}to{opacity:0}}.patrol-analytics-dashboard{background:var(--bg-primary, white);border-radius:var(--radius-lg, 12px);box-shadow:var(--shadow-sm, 0 2px 8px rgba(0, 0, 0, .08));overflow:hidden}.patrol-analytics-dashboard.compact{border-radius:var(--radius-md, 8px)}.patrol-analytics-dashboard.loading,.patrol-analytics-dashboard.error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;text-align:center;padding:var(--spacing-xl, 24px)}.patrol-analytics-dashboard .loading-spinner{width:40px;height:40px;border:3px solid var(--gray-200, #e5e7eb);border-top-color:var(--color-primary, #3b82f6);border-radius:50%;animation:patrolSpin .8s linear infinite;margin-bottom:var(--spacing-md, 16px)}@keyframes patrolSpin{to{transform:rotate(360deg)}}.patrol-analytics-dashboard.error .error-message{color:var(--color-danger, #dc2626);margin-bottom:var(--spacing-md, 16px)}.patrol-analytics-dashboard.error button{padding:var(--spacing-sm, 8px) var(--spacing-lg, 20px);background:var(--color-primary, #3b82f6);color:#fff;border:none;border-radius:var(--radius-md, 6px);cursor:pointer}.patrol-analytics-dashboard .dashboard-tabs{display:flex;gap:var(--spacing-xs, 4px);padding:var(--spacing-sm, 12px) var(--spacing-md, 16px);background:var(--gray-100, #f1f5f9);border-bottom:1px solid var(--gray-200, #e2e8f0)}.patrol-analytics-dashboard .tab-button{padding:var(--spacing-sm, 10px) var(--spacing-lg, 20px);border:none;border-radius:var(--radius-md, 8px);background:transparent;color:var(--text-secondary, #64748b);font-size:var(--text-base, .9rem);font-weight:500;cursor:pointer;transition:all .2s ease}.patrol-analytics-dashboard .tab-button:hover{background:#fffc;color:var(--text-primary, #334155)}.patrol-analytics-dashboard .tab-button.active{background:var(--bg-primary, white);color:var(--color-primary-dark, #1e40af);box-shadow:var(--shadow-xs, 0 2px 4px rgba(0, 0, 0, .05))}.patrol-analytics-dashboard .dashboard-content{padding:var(--spacing-lg, 20px);min-height:500px}.overview-tab .summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md, 16px);margin-bottom:var(--spacing-xl, 24px)}.overview-tab .summary-card{display:flex;align-items:center;gap:var(--spacing-md, 16px);padding:var(--spacing-md, 16px) var(--spacing-lg, 20px);background:linear-gradient(135deg,var(--gray-50, #f8fafc) 0%,var(--gray-100, #f1f5f9) 100%);border-radius:var(--radius-lg, 12px);border:1px solid var(--gray-200, #e5e7eb)}.overview-tab .card-icon{font-size:2rem}.overview-tab .card-content{display:flex;flex-direction:column}.overview-tab .card-value{font-size:var(--text-xl, 1.5rem);font-weight:700;color:var(--text-primary, #1f2937)}.overview-tab .card-label{font-size:var(--text-sm, .85rem);color:var(--text-secondary, #6b7280)}.overview-tab .top-performers-section{margin-bottom:var(--spacing-xl, 24px)}.overview-tab .top-performers-section h3{margin:0 0 var(--spacing-md, 16px) 0;color:var(--text-primary, #1f2937);font-size:var(--text-lg, 1.1rem)}.overview-tab .top-performers-grid{display:flex;flex-wrap:wrap;gap:var(--spacing-sm, 12px)}.overview-tab .performer-card{display:flex;align-items:center;gap:var(--spacing-md, 12px);padding:var(--spacing-sm, 12px) var(--spacing-md, 16px);background:var(--bg-primary, white);border:1px solid var(--gray-200, #e5e7eb);border-radius:var(--radius-md, 8px);min-width:220px}.overview-tab .performer-card.rank-1{border-color:var(--color-warning, #f59e0b);background:linear-gradient(135deg,#fffbeb,#fef3c7)}.overview-tab .performer-card.rank-2{border-color:var(--gray-400, #9ca3af);background:linear-gradient(135deg,#f9fafb,#f3f4f6)}.overview-tab .performer-card.rank-3{border-color:#cd7f32;background:linear-gradient(135deg,#fdf4e7,#fef0d8)}.overview-tab .performer-rank{font-size:var(--text-xl, 1.5rem)}.overview-tab .performer-info{display:flex;flex-direction:column}.overview-tab .performer-name{font-weight:600;color:var(--text-primary, #1f2937)}.overview-tab .performer-stats{font-size:var(--text-sm, .8rem);color:var(--text-secondary, #6b7280)}.overview-tab .overview-chart{background:var(--gray-50, #f8fafc);border-radius:var(--radius-lg, 12px);padding:var(--spacing-lg, 20px)}.overview-tab .overview-chart h3{margin:0 0 var(--spacing-md, 16px) 0;color:var(--text-primary, #1f2937);font-size:var(--text-lg, 1.1rem)}.overview-tab .chart-container{height:300px}.comparisons-tab .comparison-controls-row{display:flex;gap:var(--spacing-xl, 32px);margin-bottom:var(--spacing-lg, 20px);flex-wrap:wrap}.comparisons-tab .comparison-date-section,.comparisons-tab .officer-select-section,.comparisons-tab .stat-select-section{flex:1;min-width:200px}.comparisons-tab .comparison-date-section{flex:0 0 auto;min-width:260px}.comparisons-tab .comparison-date-section label{display:block;margin-bottom:var(--spacing-sm, 8px);font-weight:600;color:var(--text-primary, #1f2937);font-size:var(--text-sm, .9rem)}.comparisons-tab .date-inputs{display:flex;align-items:center;gap:var(--spacing-sm, 8px)}.comparisons-tab .date-input{padding:var(--spacing-sm, 10px) var(--spacing-md, 12px);border:1px solid var(--gray-300, #d1d5db);border-radius:var(--radius-md, 8px);font-size:var(--text-sm, .9rem);background:var(--bg-primary, white);transition:border-color .2s ease,box-shadow .2s ease}.comparisons-tab .date-input:focus{outline:none;border-color:var(--color-primary, #3b82f6);box-shadow:0 0 0 3px #3b82f626}.comparisons-tab .date-separator{color:var(--text-secondary, #6b7280);font-size:var(--text-sm, .9rem)}.comparisons-tab .officer-select-section label,.comparisons-tab .stat-select-section label{display:block;margin-bottom:var(--spacing-sm, 8px);font-weight:600;color:var(--text-primary, #1f2937);font-size:var(--text-sm, .9rem)}.comparisons-tab .officer-search-dropdown{position:relative;margin-bottom:var(--spacing-sm, 8px)}.comparisons-tab .officer-search-input{width:100%;padding:var(--spacing-sm, 10px) var(--spacing-md, 14px);border:1px solid var(--gray-300, #d1d5db);border-radius:var(--radius-md, 8px);font-size:var(--text-base, .95rem);background:var(--bg-primary, white);transition:border-color .2s ease,box-shadow .2s ease}.comparisons-tab .officer-search-input:focus{outline:none;border-color:var(--color-primary, #3b82f6);box-shadow:0 0 0 3px #3b82f626}.comparisons-tab .officer-search-input:disabled{background:var(--gray-100, #f3f4f6);cursor:not-allowed}.comparisons-tab .officer-dropdown-list{position:absolute;top:100%;left:0;right:0;background:var(--bg-primary, white);border:1px solid var(--gray-200, #e5e7eb);border-radius:var(--radius-md, 8px);box-shadow:var(--shadow-lg, 0 10px 25px rgba(0, 0, 0, .15));max-height:250px;overflow-y:auto;z-index:100;margin-top:4px}.comparisons-tab .officer-dropdown-item{display:block;width:100%;padding:var(--spacing-sm, 10px) var(--spacing-md, 14px);text-align:left;border:none;background:transparent;cursor:pointer;font-size:var(--text-base, .95rem);color:var(--text-primary, #1f2937);transition:background .15s ease}.comparisons-tab .officer-dropdown-item:hover{background:var(--gray-100, #f1f5f9)}.comparisons-tab .selected-officers-tags{display:flex;flex-wrap:wrap;gap:var(--spacing-xs, 6px)}.comparisons-tab .officer-tag{display:inline-flex;align-items:center;gap:var(--spacing-xs, 6px);padding:var(--spacing-xs, 6px) var(--spacing-sm, 10px);border-radius:var(--radius-full, 20px);color:#fff;font-size:var(--text-sm, .85rem);font-weight:500}.comparisons-tab .officer-tag button{background:#ffffff4d;border:none;color:#fff;width:18px;height:18px;border-radius:50%;cursor:pointer;font-size:14px;line-height:1;display:flex;align-items:center;justify-content:center;transition:background .15s ease}.comparisons-tab .officer-tag button:hover{background:#ffffff80}.comparisons-tab .stat-toggle-grid{display:flex;flex-wrap:wrap;gap:var(--spacing-xs, 6px)}.comparisons-tab .stat-toggle-btn{padding:var(--spacing-xs, 6px) var(--spacing-sm, 12px);border:1px solid var(--gray-200, #e5e7eb);border-radius:var(--radius-md, 6px);background:var(--bg-primary, white);color:var(--text-secondary, #6b7280);font-size:var(--text-sm, .85rem);cursor:pointer;transition:all .15s ease}.comparisons-tab .stat-toggle-btn:hover{border-color:var(--color-primary, #3b82f6)}.comparisons-tab .stat-toggle-btn.active{background:var(--color-primary, #3b82f6);border-color:var(--color-primary, #3b82f6);color:#fff}.comparisons-tab .comparison-search-row{display:flex;justify-content:flex-start;margin-bottom:var(--spacing-lg, 24px)}.analytics-search-btn{padding:12px 32px;font-size:1rem;font-weight:600;color:#fff;background:var(--primary, #3b82f6);border:2px solid var(--primary, #3b82f6);border-radius:var(--radius-md, 8px);cursor:pointer;transition:all .2s ease}.analytics-search-btn:hover:not(:disabled){background:var(--primary-dark, #2563eb);border-color:var(--primary-dark, #2563eb)}.analytics-search-btn:disabled{opacity:.6;cursor:not-allowed}.comparisons-tab .stale-data-notice{margin-left:var(--spacing-md, 16px);padding:8px 16px;font-size:.85rem;color:var(--warning-text, #92400e);background:var(--warning-bg, #fef3c7);border-radius:var(--radius-md, 8px);display:flex;align-items:center}@keyframes chartFadeIn{0%{opacity:0}to{opacity:1}}.chart-animate-in{animation:chartFadeIn .3s ease-out forwards}.comparisons-tab .no-selection-message,.comparisons-tab .comparison-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;background:var(--gray-50, #f8fafc);border-radius:var(--radius-lg, 12px);border:2px dashed var(--gray-300, #d1d5db);gap:var(--spacing-md, 16px)}.comparisons-tab .no-selection-message p,.comparisons-tab .comparison-loading p{color:var(--text-secondary, #6b7280);font-size:var(--text-lg, 1.1rem)}.comparisons-tab .comparison-chart-container{background:var(--gray-50, #f8fafc);border-radius:var(--radius-lg, 12px);padding:var(--spacing-lg, 20px);margin-bottom:var(--spacing-lg, 20px)}.comparisons-tab .comparison-chart-container h3{margin:0 0 var(--spacing-md, 16px) 0;color:var(--text-primary, #1f2937);font-size:var(--text-lg, 1.1rem)}.comparisons-tab .comparison-table-container{background:var(--gray-50, #f8fafc);border-radius:var(--radius-lg, 12px);padding:var(--spacing-lg, 20px)}.comparisons-tab .comparison-table-container h3{margin:0 0 var(--spacing-md, 16px) 0;color:var(--text-primary, #1f2937);font-size:var(--text-lg, 1.1rem)}.comparisons-tab .comparison-table{width:100%;border-collapse:collapse}.comparisons-tab .comparison-table th,.comparisons-tab .comparison-table td{padding:var(--spacing-sm, 12px) var(--spacing-md, 16px);text-align:left;border-bottom:1px solid var(--gray-200, #e5e7eb)}.comparisons-tab .comparison-table th{font-weight:600;font-size:var(--text-sm, .9rem);background:var(--bg-primary, white)}.comparisons-tab .comparison-table td{color:var(--text-primary, #1f2937);font-weight:500}.comparisons-tab .comparison-table td:first-child{font-weight:600}.rankings-tab .rankings-filters{display:flex;gap:var(--spacing-lg, 20px);margin-bottom:var(--spacing-lg, 20px)}.rankings-tab .filter-group{display:flex;flex-direction:column;gap:var(--spacing-xs, 6px)}.rankings-tab .filter-group label{font-weight:600;font-size:var(--text-sm, .85rem);color:var(--text-primary, #374151)}.rankings-tab .filter-group select{padding:var(--spacing-sm, 8px) var(--spacing-md, 12px);border:1px solid var(--gray-200, #e5e7eb);border-radius:var(--radius-md, 6px);font-size:var(--text-base, .9rem);min-width:160px}.rankings-tab .rankings-table-container{overflow-x:auto}.rankings-tab .rankings-table{width:100%;border-collapse:collapse}.rankings-tab .rankings-table th,.rankings-tab .rankings-table td{padding:var(--spacing-sm, 12px) var(--spacing-md, 16px);text-align:left;border-bottom:1px solid var(--gray-200, #e5e7eb)}.rankings-tab .rankings-table th{font-weight:600;color:var(--text-secondary, #6b7280);font-size:var(--text-sm, .85rem);background:var(--gray-50, #f8fafc)}.rankings-tab .rankings-table tr.top-1{background:linear-gradient(90deg,#fffbeb 0%,transparent 100%)}.rankings-tab .rankings-table tr.top-2{background:linear-gradient(90deg,#f9fafb 0%,transparent 100%)}.rankings-tab .rankings-table tr.top-3{background:linear-gradient(90deg,#fdf4e7 0%,transparent 100%)}.rankings-tab .rankings-table .medal{font-size:var(--text-lg, 1.25rem)}.rankings-tab .rankings-table .rank-number{color:var(--text-secondary, #6b7280)}.trends-tab .trends-filters{display:flex;gap:var(--spacing-lg, 20px);margin-bottom:var(--spacing-lg, 20px)}.trends-tab .filter-group{display:flex;flex-direction:column;gap:var(--spacing-xs, 6px)}.trends-tab .filter-group label{font-weight:600;font-size:var(--text-sm, .85rem);color:var(--text-primary, #374151)}.trends-tab .filter-group select,.trends-tab .filter-group input{padding:var(--spacing-sm, 8px) var(--spacing-md, 12px);border:1px solid var(--gray-200, #e5e7eb);border-radius:var(--radius-md, 6px);font-size:var(--text-base, .9rem);min-width:160px}.trends-tab .trend-name-filter{min-width:180px}.trends-tab .trend-name-filter:focus{outline:none;border-color:var(--color-primary, #3b82f6);box-shadow:0 0 0 3px #3b82f626}.trends-tab .date-inputs{display:flex;align-items:center;gap:6px;flex-wrap:nowrap}.trends-tab .filter-group .date-inputs input.date-input{padding:6px 8px;border:1px solid var(--gray-200, #e5e7eb);border-radius:var(--radius-md, 6px);font-size:.8rem;min-width:unset;width:120px}.trends-tab .filter-group .date-inputs input.date-input:focus{outline:none;border-color:var(--color-primary, #3b82f6);box-shadow:0 0 0 3px #3b82f626}.trends-tab .date-separator{color:var(--text-secondary, #6b7280);font-size:.8rem;white-space:nowrap}.trends-tab .trends-summary{display:flex;gap:var(--spacing-md, 16px);margin-bottom:var(--spacing-xl, 24px)}.trends-tab .trend-stat-card{display:flex;align-items:center;gap:var(--spacing-md, 12px);padding:var(--spacing-md, 16px) var(--spacing-lg, 20px);border-radius:var(--radius-lg, 12px);flex:1}.trends-tab .trend-stat-card.increasing{background:linear-gradient(135deg,#ecfdf5,#d1fae5);border:1px solid var(--color-success, #10b981)}.trends-tab .trend-stat-card.declining{background:linear-gradient(135deg,#fef2f2,#fecaca);border:1px solid var(--color-danger, #ef4444)}.trends-tab .trend-stat-card.stable{background:linear-gradient(135deg,#f9fafb,#f3f4f6);border:1px solid var(--gray-300, #d1d5db)}.trends-tab .trend-stat-card .trend-icon{font-size:2rem}.trends-tab .trend-stat-card .trend-info{display:flex;flex-direction:column}.trends-tab .trend-stat-card .trend-count{font-size:var(--text-2xl, 1.75rem);font-weight:700;color:var(--text-primary, #1f2937)}.trends-tab .trend-stat-card .trend-label{font-size:var(--text-sm, .85rem);color:var(--text-secondary, #6b7280)}.trends-tab .trends-table-container{overflow-x:auto}.trends-tab .trends-table-container h3{margin:0 0 var(--spacing-md, 16px) 0;color:var(--text-primary, #1f2937);font-size:var(--text-lg, 1.1rem)}.trends-tab .trends-table{width:100%;border-collapse:collapse}.trends-tab .trends-table th,.trends-tab .trends-table td{padding:var(--spacing-sm, 12px) var(--spacing-md, 16px);text-align:left;border-bottom:1px solid var(--gray-200, #e5e7eb)}.trends-tab .trends-table th{font-weight:600;color:var(--text-secondary, #6b7280);font-size:var(--text-sm, .85rem);background:var(--gray-50, #f8fafc)}.trends-tab .trends-table th.sortable-header{cursor:pointer;-webkit-user-select:none;user-select:none}.trends-tab .trends-table th.sortable-header:hover{background:var(--gray-100, #f1f5f9)}.trends-tab .trends-table tr.top-1{background:linear-gradient(90deg,#ecfdf5 0%,transparent 100%)}.trends-tab .trends-table tr.top-2{background:linear-gradient(90deg,#fef2f2 0%,transparent 100%)}.trends-tab .trends-table .trend-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:var(--radius-full, 20px);font-size:var(--text-xs, .75rem);font-weight:500;text-transform:capitalize}.trends-tab .trends-table .trend-badge.increasing{background:#ecfdf5;color:#059669}.trends-tab .trends-table .trend-badge.declining{background:#fef2f2;color:#dc2626}.trends-tab .trends-table .trend-badge.stable{background:#f3f4f6;color:#6b7280}.trends-tab .trends-table .col-change.positive{color:var(--color-success, #10b981);font-weight:600}.trends-tab .trends-table .col-change.negative{color:var(--color-danger, #ef4444);font-weight:600}.trends-tab .no-results{text-align:center;padding:var(--spacing-xl, 32px);color:var(--text-secondary, #6b7280);font-size:var(--text-base, 1rem)}.trends-tab .trends-table .trend-action-col{width:110px;text-align:right;padding-right:var(--spacing-sm, 8px)}.trends-tab .trends-table thead .trend-action-col{border-bottom:2px solid var(--border-color, #e5e7eb)}.trends-tab .trends-table tr{transition:background .15s ease}.trends-tab .trends-table tr:hover:not(.trend-chart-row){background:var(--gray-50, #f9fafb)}.trends-tab .trends-table tr.expanded-row{background:var(--blue-50, #eff6ff)}.trend-expand-btn{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;font-size:.75rem;font-weight:500;border:1px solid var(--border-color, #d1d5db);border-radius:6px;background:var(--bg-surface, #fff);color:var(--text-secondary, #6b7280);cursor:pointer;transition:all .15s ease;white-space:nowrap}.trend-expand-btn:hover{background:var(--gray-50, #f3f4f6);border-color:var(--color-primary, #3b82f6);color:var(--color-primary, #3b82f6)}.trend-expand-btn.active{background:var(--blue-50, #eff6ff);border-color:var(--color-primary, #3b82f6);color:var(--color-primary, #3b82f6)}.trends-tab .trends-table tr.trend-chart-row td{padding:0;border-top:none}.officer-trend-chart-panel{background:linear-gradient(180deg,var(--blue-50, #eff6ff) 0%,var(--bg-surface, #fff) 100%);border-bottom:2px solid var(--border-color, #e5e7eb);padding:16px 20px 12px;animation:trendPanelSlideIn .25s ease-out}@keyframes trendPanelSlideIn{0%{opacity:0;max-height:0;padding-top:0;padding-bottom:0}to{opacity:1;max-height:400px;padding-top:16px;padding-bottom:12px}}.officer-trend-summary{font-size:.85rem;color:var(--text-secondary, #4b5563);margin:0 0 10px;line-height:1.5;font-style:italic}.officer-trend-chart{border-radius:8px;background:var(--bg-surface, #fff);padding:12px 8px 4px;box-shadow:0 1px 3px #0000000a}.officer-trend-meta{display:flex;flex-wrap:wrap;gap:8px;padding:8px 4px 0}.officer-trend-meta .meta-tag{font-size:.72rem;padding:2px 8px;border-radius:4px;background:var(--gray-100, #f3f4f6);color:var(--text-secondary, #6b7280);font-weight:500}.officer-trend-meta .meta-tag.best{background:#ecfdf5;color:#059669}.officer-trend-meta .meta-tag.worst{background:#fef2f2;color:#dc2626}.officer-trend-no-data{text-align:center;padding:24px;color:var(--text-secondary, #9ca3af);font-size:.85rem;font-style:italic}@media (max-width: 768px){.patrol-analytics-dashboard .dashboard-tabs{overflow-x:auto;padding:var(--spacing-sm, 8px)}.patrol-analytics-dashboard .tab-button{padding:var(--spacing-sm, 8px) var(--spacing-md, 12px);font-size:var(--text-sm, .85rem)}.patrol-analytics-dashboard .dashboard-content{padding:var(--spacing-md, 16px)}.overview-tab .summary-cards{grid-template-columns:repeat(2,1fr)}.overview-tab .top-performers-grid{flex-direction:column}.overview-tab .performer-card{width:100%}.rankings-tab .rankings-filters,.trends-tab .trends-filters,.comparisons-tab .comparison-controls-row,.trends-tab .trends-summary{flex-direction:column}.comparisons-tab .comparison-date-section,.comparisons-tab .officer-select-section,.comparisons-tab .stat-select-section{min-width:100%}}.patrol-analytics-dashboard.compact .dashboard-content{padding:var(--spacing-md, 16px)}.patrol-analytics-dashboard.compact .overview-tab .summary-cards{grid-template-columns:repeat(2,1fr)}.overview-tab .overview-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:var(--gray-50, #f8fafc);border-radius:8px;margin-bottom:20px}.overview-tab .date-range-label{font-size:14px;color:var(--text-secondary, #64748b);font-weight:500}.overview-tab .officer-count{font-size:13px;color:var(--text-tertiary, #94a3b8);background:var(--bg-primary);padding:4px 12px;border-radius:20px;border:1px solid var(--gray-200, #e2e8f0)}.overview-tab .metric-tiles-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:24px}@media (max-width: 900px){.overview-tab .metric-tiles-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 500px){.overview-tab .metric-tiles-grid{grid-template-columns:1fr}}.overview-tab .metric-tile{background:var(--bg-primary);border:1px solid var(--gray-200, #e2e8f0);border-radius:12px;padding:20px;text-align:center;transition:box-shadow .2s,transform .2s}.overview-tab .metric-tile:hover{box-shadow:0 4px 12px #00000014;transform:translateY(-2px)}.overview-tab .metric-icon{font-size:28px;margin-bottom:8px}.overview-tab .metric-value{font-size:32px;font-weight:700;color:var(--text-primary, #1e293b);line-height:1.2}.overview-tab .metric-label{font-size:13px;font-weight:600;color:var(--text-secondary, #64748b);text-transform:uppercase;letter-spacing:.5px;margin-top:4px}.overview-tab .metric-subtext{font-size:12px;color:var(--text-tertiary, #94a3b8);margin-top:8px;padding-top:8px;border-top:1px solid var(--gray-100, #f1f5f9)}.overview-tab .insights-section{margin-bottom:24px}.overview-tab .insights-header{display:flex;align-items:center;gap:8px;font-size:16px;font-weight:600;color:var(--text-primary, #1e293b);margin-bottom:12px}.overview-tab .insights-icon{font-size:18px}.overview-tab .insights-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}@media (max-width: 800px){.overview-tab .insights-grid{grid-template-columns:1fr}}.overview-tab .insight-card{display:flex;align-items:flex-start;gap:12px;background:var(--bg-primary);border:1px solid var(--gray-200, #e2e8f0);border-radius:10px;padding:16px;transition:box-shadow .2s}.overview-tab .insight-card:hover{box-shadow:0 2px 8px #0000000f}.overview-tab .insight-card.positive{border-left:3px solid var(--color-success, #10b981)}.overview-tab .insight-card.negative{border-left:3px solid var(--color-danger, #ef4444)}.overview-tab .insight-card.neutral{border-left:3px solid var(--color-primary, #3b82f6)}.overview-tab .insight-icon{font-size:24px;flex-shrink:0}.overview-tab .insight-content{flex:1;min-width:0}.overview-tab .insight-title{font-size:14px;font-weight:600;color:var(--text-primary, #1e293b);margin-bottom:4px}.overview-tab .insight-description{font-size:12px;color:var(--text-secondary, #64748b);line-height:1.4}.overview-tab .quick-stats-section{background:var(--bg-primary);border:1px solid var(--gray-200, #e2e8f0);border-radius:12px;padding:20px}.overview-tab .quick-stats-section h3{font-size:15px;font-weight:600;color:var(--text-primary, #1e293b);margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--gray-100, #f1f5f9)}.overview-tab .top-performers-compact{display:flex;flex-direction:column;gap:12px}.overview-tab .top-performer-row{display:flex;align-items:center;padding:10px 12px;background:var(--gray-50, #f8fafc);border-radius:8px}.overview-tab .performer-stat{font-size:12px;font-weight:600;color:var(--text-secondary, #64748b);text-transform:uppercase;letter-spacing:.3px;width:120px;flex-shrink:0}.overview-tab .performer-name{flex:1;font-size:14px;font-weight:500;color:var(--text-primary, #1e293b)}.overview-tab .performer-value{font-size:14px;font-weight:700;color:var(--color-primary, #3b82f6);background:var(--bg-primary);padding:4px 10px;border-radius:6px;border:1px solid var(--gray-200, #e2e8f0)}.patrol-visuals-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1100;animation:patrolFadeIn .25s ease-out}@keyframes patrolFadeIn{0%{opacity:0}to{opacity:1}}.patrol-visuals-modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);background:linear-gradient(135deg,#fff,#f8fafc);border-radius:16px;box-shadow:0 25px 50px -12px #0006;width:90vw;height:90vh;max-width:1400px;overflow:hidden;z-index:1101;animation:patrolSlideIn .3s ease-out;display:flex;flex-direction:column}@keyframes patrolSlideIn{0%{opacity:0;transform:translate(-50%,-48%) scale(.95)}to{opacity:1;transform:translate(-50%,-50%) scale(1)}}.patrol-visuals-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:20px 24px;background:linear-gradient(135deg,#1e3a8a,#3b82f6);color:#fff;flex-shrink:0;border-bottom:1px solid rgba(255,255,255,.1)}.patrol-visuals-modal .modal-header h2{margin:0;font-size:1.5rem;font-weight:600;letter-spacing:-.5px;display:flex;align-items:center;gap:12px}.patrol-visuals-modal .modal-header h2:before{content:"🚔";font-size:1.4rem}.patrol-visuals-modal .modal-close-btn{background:#fff3;border:none;color:#fff;width:40px;height:40px;border-radius:50%;font-size:28px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease;line-height:1}.patrol-visuals-modal .modal-close-btn:hover{background:#ffffff4d;transform:scale(1.1)}.patrol-visuals-modal .modal-close-btn:active{transform:scale(.95)}.patrol-visuals-modal .modal-content{padding:24px;overflow-y:auto;flex:1;min-height:0}.patrol-visuals-modal .modal-content::-webkit-scrollbar{width:10px}.patrol-visuals-modal .modal-content::-webkit-scrollbar-track{background:#f1f5f9;border-radius:5px}.patrol-visuals-modal .modal-content::-webkit-scrollbar-thumb{background:#94a3b8;border-radius:5px}.patrol-visuals-modal .modal-content::-webkit-scrollbar-thumb:hover{background:#64748b}.patrol-visuals-modal .patrol-analytics-dashboard{background:transparent;box-shadow:none;padding:0;height:calc(90vh - 120px);min-height:500px}.patrol-visuals-modal .patrol-analytics-dashboard .dashboard-tabs{margin-bottom:20px;position:sticky;top:0;background:#f8fafc;padding:10px 0;z-index:10}.patrol-visuals-modal .patrol-analytics-dashboard .dashboard-content{padding-bottom:20px}.patrol-visuals-modal .chart-container{min-height:300px}.patrol-visuals-modal .chart-container.large{min-height:400px}@media (max-width: 1024px){.patrol-visuals-modal{width:95vw;height:92vh;border-radius:12px}}@media (max-width: 768px){.patrol-visuals-modal{width:100vw;height:100vh;max-width:none;border-radius:0}.patrol-visuals-modal .modal-header{padding:16px 20px}.patrol-visuals-modal .modal-header h2{font-size:1.2rem}.patrol-visuals-modal .modal-content{padding:16px}}.patrol-visuals-modal.closing{animation:patrolSlideOut .2s ease-in forwards}.patrol-visuals-backdrop.closing{animation:patrolFadeOut .2s ease-in forwards}@keyframes patrolSlideOut{0%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-48%) scale(.95)}}@keyframes patrolFadeOut{0%{opacity:1}to{opacity:0}}.intelligence-features{background:var(--bg-primary);border-radius:12px;padding:24px;box-shadow:var(--shadow-sm)}.features-header{display:flex;align-items:flex-start;gap:20px;margin-bottom:24px;padding-bottom:24px;border-bottom:2px solid var(--border-light)}.header-icon{font-size:48px;line-height:1}.header-content{flex:1}.header-content h3{margin:0 0 8px;font-size:24px;font-weight:700;color:var(--text-primary)}.capability-badge{display:inline-block;padding:6px 12px;border-radius:20px;font-size:13px;font-weight:600;margin-bottom:8px}.capability-description{margin:0;font-size:14px;color:var(--text-muted);line-height:1.5}.features-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;margin-bottom:24px}.feature-card{background:var(--bg-primary);border:2px solid var(--border-light);border-radius:12px;padding:20px;transition:all .2s ease;position:relative;overflow:hidden}.feature-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,#3b82f6,#8b5cf6);opacity:0;transition:opacity .2s ease}.feature-card:hover:before{opacity:1}.feature-card.feature-enabled{border-color:#10b981;cursor:pointer}.feature-card.feature-enabled:hover{transform:translateY(-2px);box-shadow:0 4px 12px #10b98133}.feature-card.feature-warning{border-color:#f59e0b;background:#fffbeb}.feature-card.feature-disabled{border-color:#d1d5db;background:#f9fafb;opacity:.7}.feature-header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.feature-icon{font-size:32px;line-height:1}.feature-name{margin:0;font-size:16px;font-weight:600;color:#111827;line-height:1.3}.feature-status{margin-bottom:12px}.status-enabled,.status-warning,.status-disabled{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:500}.status-enabled{color:#10b981}.status-warning{color:#f59e0b}.status-disabled{color:#6b7280}.status-icon{font-size:14px}.status-label{font-weight:600}.confidence-mini{margin-left:auto;font-size:11px;opacity:.8}.feature-description{margin:0 0 16px;font-size:13px;color:#6b7280;line-height:1.5;min-height:40px}.feature-requirements{margin-top:16px;padding-top:16px;border-top:1px solid #e5e7eb}.progress-info{margin-bottom:8px}.progress-text{display:flex;align-items:baseline;gap:4px;margin-bottom:8px;font-size:14px}.progress-text .current{font-weight:700;color:#111827;font-size:18px}.progress-text .separator{color:#9ca3af;font-weight:500}.progress-text .required{font-weight:600;color:#6b7280}.progress-text .label{color:#9ca3af;font-size:12px;margin-left:4px}.progress-bar{height:6px;background:#e5e7eb;border-radius:3px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,#3b82f6,#8b5cf6);border-radius:3px;transition:width .3s ease}.unlock-estimate{margin-top:8px;font-size:12px;color:#3b82f6;font-weight:500}.data-needed{margin-top:4px;font-size:12px;color:#6b7280}.feature-action-btn{width:100%;padding:10px 16px;background:linear-gradient(135deg,#3b82f6,#8b5cf6);color:#fff;border:none;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;margin-top:16px}.feature-action-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #3b82f64d}.features-footer{background:#f9fafb;border-radius:8px;padding:16px;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px}.footer-stats{display:flex;gap:32px}.stat-item{display:flex;flex-direction:column;align-items:center;gap:4px}.stat-value{font-size:24px;font-weight:700;color:#111827;line-height:1}.stat-label{font-size:12px;color:#6b7280;font-weight:500}.footer-message{font-size:13px;color:#6b7280;font-style:italic}@media (max-width: 768px){.features-grid{grid-template-columns:1fr}.features-header,.features-footer{flex-direction:column;align-items:center;text-align:center}.footer-stats{width:100%;justify-content:space-around}}.confirm-dialog-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#0f172a8c;display:flex;align-items:center;justify-content:center;z-index:var(--z-modal-backdrop);padding:var(--spacing-lg)}.confirm-dialog{width:min(520px,100%);background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-lg);box-shadow:var(--shadow-2xl);padding:var(--spacing-2xl);animation:confirm-pop .2s ease-out}.confirm-dialog h2{margin:0 0 var(--spacing-md) 0;font-size:var(--text-xl);color:var(--text-primary)}.confirm-dialog-description{margin:0;color:var(--text-secondary);font-size:var(--text-sm);line-height:1.6}.confirm-dialog-actions{display:flex;justify-content:flex-end;gap:var(--spacing-sm);margin-top:var(--spacing-xl)}.confirm-dialog-button{padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-md);border:1px solid transparent;font-weight:var(--font-semibold);font-size:var(--text-sm);transition:all var(--transition-fast)}.confirm-dialog-button.secondary{background:var(--bg-secondary);border-color:var(--border-medium);color:var(--text-primary)}.confirm-dialog-button.secondary:hover{background:var(--bg-hover)}.confirm-dialog-button.primary{background:var(--color-primary);color:var(--text-inverse)}.confirm-dialog-button.primary:hover{background:var(--color-primary-hover);box-shadow:var(--shadow-sm)}.confirm-dialog-button.danger{background:var(--color-error);color:var(--text-inverse)}.confirm-dialog-button.danger:hover{background:var(--color-error-dark);box-shadow:var(--shadow-sm)}@keyframes confirm-pop{0%{opacity:0;transform:translateY(6px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}.shift-comparison-card{background:var(--bg-primary);border-radius:12px;box-shadow:var(--shadow-sm);padding:20px;margin-bottom:20px}.shift-comparison-card .comparison-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid var(--border-light)}.shift-comparison-card .comparison-header h3{margin:0;font-size:1.2rem;color:var(--text-primary)}.shift-comparison-card .date-range{font-size:.8rem;color:var(--text-muted);background:var(--bg-secondary);padding:4px 10px;border-radius:12px}.shift-comparison-card .comparison-summary{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:20px}.shift-comparison-card .shift-info{flex:1;padding:12px 16px;background:var(--bg-secondary);border-radius:8px;border-left:4px solid}.shift-comparison-card .shift-label{font-weight:600;font-size:1rem;color:var(--text-primary);display:block;margin-bottom:6px}.shift-comparison-card .shift-meta{display:flex;gap:16px;font-size:.85rem;color:var(--text-secondary)}.shift-comparison-card .vs-divider{display:flex;align-items:center;justify-content:center;width:50px;height:50px;background:var(--bg-tertiary);border-radius:50%;font-weight:700;color:var(--text-secondary);font-size:.9rem;flex-shrink:0}.shift-comparison-card .overall-score{margin-bottom:20px;padding:16px;background:var(--bg-secondary);border-radius:8px}.shift-comparison-card .score-bar{display:flex;height:12px;border-radius:6px;overflow:hidden;margin-bottom:8px;background:var(--border-light)}.shift-comparison-card .score-segment{transition:width .3s ease}.shift-comparison-card .score-labels{display:flex;justify-content:space-between;font-size:.85rem;font-weight:500;margin-bottom:8px}.shift-comparison-card .ties-label{color:var(--text-muted)}.shift-comparison-card .overall-leader{text-align:center;font-size:.95rem;padding-top:8px;border-top:1px solid var(--border-light)}.shift-comparison-card .overall-leader .leader{color:#333}.shift-comparison-card .overall-leader .tied{color:#757575}.shift-comparison-card .comparison-table{overflow-x:auto}.shift-comparison-card .comparison-table table{width:100%;border-collapse:collapse;font-size:.9rem}.shift-comparison-card .comparison-table th{text-align:left;padding:10px 12px;background:var(--bg-tertiary);font-weight:600;color:var(--text-secondary);border-bottom:2px solid var(--border-medium)}.shift-comparison-card .comparison-table th:first-child{border-radius:6px 0 0}.shift-comparison-card .comparison-table th:last-child{border-radius:0 6px 0 0;text-align:center}.shift-comparison-card .comparison-table td{padding:12px;border-bottom:1px solid var(--border-light);vertical-align:middle}.shift-comparison-card .comparison-table tr:last-child td{border-bottom:none}.shift-comparison-card .comparison-table tr:hover{background:var(--bg-hover)}.shift-comparison-card .stat-name{font-weight:500;color:var(--text-primary)}.shift-comparison-card .stat-value .value-stack{display:flex;flex-direction:column}.shift-comparison-card .stat-value .total{font-weight:600;color:var(--text-primary)}.shift-comparison-card .stat-value .avg{font-size:.75rem;color:var(--text-muted)}.shift-comparison-card .diff-value{font-weight:600;text-align:center}.shift-comparison-card .leader-cell{text-align:center}.shift-comparison-card .leader-badge{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;color:#fff;font-weight:700;font-size:.8rem}.shift-comparison-card .equal-badge{color:var(--text-muted);font-size:1.2rem}.shift-comparison-card .show-more{text-align:center;padding:12px;color:var(--text-secondary);font-size:.85rem;border-top:1px solid var(--border-light);margin-top:8px}@media (max-width: 768px){.shift-comparison-card .comparison-summary{flex-direction:column}.shift-comparison-card .vs-divider{width:40px;height:40px;font-size:.8rem}.shift-comparison-card .shift-info{width:100%}.shift-comparison-card .shift-meta{flex-direction:column;gap:4px}.shift-comparison-card .comparison-table{font-size:.8rem}.shift-comparison-card .comparison-table th,.shift-comparison-card .comparison-table td{padding:8px 6px}.shift-comparison-card .stat-value .avg{display:none}}.missing-stats-notification{position:relative;display:inline-block}.missing-stats-notification-button{display:flex;align-items:center;gap:var(--spacing-xs, 8px);padding:var(--spacing-sm, 12px) var(--spacing-md, 16px);background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;border:2px solid #d97706;border-radius:var(--radius-md, 8px);cursor:pointer;font-weight:600;font-size:var(--text-sm, 14px);transition:all .2s ease;box-shadow:0 2px 4px #f59e0b4d}.missing-stats-notification-button:hover{background:linear-gradient(135deg,#d97706,#b45309);border-color:#b45309;box-shadow:0 4px 8px #f59e0b66;transform:translateY(-1px)}.missing-stats-notification-button:active{transform:translateY(0)}.notification-badge{background:var(--bg-primary);color:#d97706;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:12px;flex-shrink:0}.missing-stats-dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:320px;max-width:400px;background:var(--bg-primary, #ffffff);border:2px solid var(--border-medium, #e5e7eb);border-radius:var(--radius-lg, 12px);box-shadow:0 10px 40px #00000026;z-index:1000;overflow:hidden}.dropdown-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md, 16px);background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;border-bottom:2px solid #d97706}.count-badge{background:var(--bg-primary);color:#d97706;padding:4px 10px;border-radius:12px;font-weight:700;font-size:12px}.request-item{display:flex;flex-direction:column;padding:var(--spacing-md, 16px);border-bottom:1px solid var(--border-light, #f3f4f6);cursor:pointer;transition:background-color .2s ease;position:relative}.request-item:last-child{border-bottom:none}.request-item:hover{background-color:var(--bg-hover, #f9fafb)}.request-date{font-weight:600;font-size:var(--text-base, 16px);color:var(--text-primary, #111827);margin-bottom:4px}.request-meta{font-size:var(--text-sm, 14px);color:var(--text-secondary, #6b7280)}.request-arrow{position:absolute;right:var(--spacing-md, 16px);top:50%;transform:translateY(-50%);color:var(--text-secondary, #6b7280);font-size:18px}[data-theme=dark] .missing-stats-dropdown{background:var(--bg-primary, #1f2937);border-color:var(--border-medium, #374151)}[data-theme=dark] .request-item{border-bottom-color:var(--border-light, #374151)}[data-theme=dark] .request-item:hover{background-color:var(--bg-hover, #374151)}[data-theme=dark] .request-date{color:var(--text-primary, #f9fafb)}[data-theme=dark] .request-meta,[data-theme=dark] .request-arrow{color:var(--text-secondary, #9ca3af)}.commendation-notification{position:relative;display:inline-block}.commendation-notification-button{display:flex;align-items:center;gap:var(--spacing-xs, 8px);padding:var(--spacing-sm, 12px) var(--spacing-md, 16px);background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#fff;border:2px solid #f59e0b;border-radius:var(--radius-md, 8px);cursor:pointer;font-weight:600;font-size:var(--text-sm, 14px);transition:all .2s ease;box-shadow:0 2px 4px #fbbf244d}.commendation-notification-button:hover{background:linear-gradient(135deg,#f59e0b,#d97706);border-color:#d97706;box-shadow:0 4px 8px #fbbf2466;transform:translateY(-1px)}.commendation-notification-button:active{transform:translateY(0)}.notification-icon{font-size:18px;display:inline-flex;align-items:center;justify-content:center}.notification-badge{background:var(--bg-primary);color:#f59e0b;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:12px;flex-shrink:0}.commendation-dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:320px;max-width:400px;background:var(--bg-primary, #ffffff);border:2px solid var(--border-medium, #e5e7eb);border-radius:var(--radius-lg, 12px);box-shadow:0 10px 40px #00000026;z-index:1000;overflow:hidden}.dropdown-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md, 16px);background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#fff;border-bottom:2px solid #f59e0b}.count-badge{background:var(--bg-primary);color:#f59e0b;padding:4px 10px;border-radius:12px;font-weight:700;font-size:12px}.notification-item{display:flex;flex-direction:column;padding:var(--spacing-md, 16px);border-bottom:1px solid var(--border-light, #f3f4f6);cursor:pointer;transition:background-color .2s ease;position:relative}.notification-category{font-weight:600;font-size:var(--text-base, 16px);color:var(--text-primary, #111827);margin-bottom:4px}.notification-meta{font-size:var(--text-sm, 14px);color:var(--text-secondary, #6b7280);margin-bottom:4px}.notification-date{font-size:var(--text-xs, 12px);color:var(--text-tertiary, #9ca3af)}[data-theme=dark] .commendation-dropdown{background:var(--bg-primary, #1f2937);border-color:var(--border-medium, #374151)}[data-theme=dark] .notification-category{color:var(--text-primary, #f9fafb)}[data-theme=dark] .notification-meta{color:var(--text-secondary, #9ca3af)}.incident-review-notification{position:relative;display:inline-block}.incident-review-notification-button{display:flex;align-items:center;gap:var(--spacing-xs, 8px);padding:var(--spacing-sm, 12px) var(--spacing-md, 16px);background:var(--bg-secondary, #f3f4f6);color:var(--text-primary, #111827);border:2px solid var(--border-medium, #d1d5db);border-radius:var(--radius-md, 8px);cursor:pointer;font-weight:600;font-size:var(--text-sm, 14px);transition:all .2s ease;box-shadow:0 2px 4px #0000001a}.incident-review-notification-button:hover{background:var(--bg-hover, #e5e7eb);border-color:var(--color-primary, #3b82f6);box-shadow:0 4px 8px #00000026;transform:translateY(-1px)}.incident-review-notification-button:active{transform:translateY(0)}.notification-badge{background:var(--color-primary, #3b82f6);color:#fff;border-radius:50%;width:24px;height:24px;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:12px;flex-shrink:0}.notification-badge.urgent{background:var(--color-error, #ef4444);animation:pulse-urgent 2s infinite}@keyframes pulse-urgent{0%,to{box-shadow:0 0 #ef444466}50%{box-shadow:0 0 0 6px #ef444400}}.incident-review-notification-button.action-required{background:var(--color-error-light, #fef2f2);border-color:var(--color-error, #ef4444);color:var(--color-error-dark, #991b1b)}.incident-review-notification-button.action-required:hover{background:var(--color-error-lighter, #fee2e2);border-color:var(--color-error-dark, #dc2626)}.notification-text{white-space:nowrap}.incident-review-dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:320px;max-width:400px;background:var(--bg-primary, #ffffff);border:2px solid var(--border-medium, #e5e7eb);border-radius:var(--radius-lg, 12px);box-shadow:0 10px 40px #00000026;z-index:1000;overflow:hidden}.dropdown-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md, 16px);background:var(--bg-secondary, #f3f4f6);color:var(--text-primary, #111827);border-bottom:2px solid var(--border-medium, #e5e7eb)}.dropdown-header h3{margin:0;font-size:var(--text-base, 16px);font-weight:600}.count-badge{background:var(--color-primary, #3b82f6);color:#fff;padding:4px 10px;border-radius:12px;font-weight:700;font-size:12px}.count-badge.urgent{background:var(--color-error, #ef4444)}.dropdown-header.has-urgent{background:var(--color-error-light, #fef2f2);border-bottom-color:var(--color-error, #ef4444)}.dropdown-content{max-height:400px;overflow-y:auto}.notification-item{display:flex;flex-direction:column;padding:var(--spacing-md, 16px);border-bottom:1px solid var(--border-light, #f3f4f6);cursor:pointer;transition:background-color .2s ease;position:relative;gap:8px}.notification-item:last-child{border-bottom:none}.notification-item:hover{background-color:var(--bg-hover, #f9fafb)}.notification-header{display:flex;align-items:center;gap:var(--spacing-sm, 8px);margin-bottom:4px}.notification-type{font-weight:600;font-size:var(--text-base, 16px);color:var(--text-primary, #111827)}.notification-case{font-size:var(--text-sm, 14px);color:var(--text-secondary, #6b7280);font-family:monospace}.notification-decision{margin:4px 0}.decision-badge{display:inline-block;padding:4px 12px;border-radius:var(--radius-sm, 4px);font-weight:600;font-size:var(--text-sm, 14px)}.decision-badge.rejected{background:#fef3c7;color:#92400e;border:1px solid #fcd34d}.notification-item.rejected{background:var(--color-warning-lighter, #fffbeb);border-left:4px solid var(--color-warning, #f59e0b)}.notification-item.rejected:hover{background:var(--color-warning-light, #fef3c7)}.notification-urgent-banner{display:flex;align-items:center;gap:6px;font-size:var(--text-xs, 12px);font-weight:700;color:var(--color-warning-dark, #92400e);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px}.notification-comment{font-size:var(--text-sm, 14px);color:var(--text-secondary, #6b7280);line-height:1.5;margin-top:4px}.notification-date{font-size:var(--text-xs, 12px);color:var(--text-tertiary, #9ca3af);margin-top:4px}.notification-arrow{position:absolute;right:var(--spacing-md, 16px);top:50%;transform:translateY(-50%);color:var(--text-secondary, #6b7280);font-size:18px}[data-theme=dark] .incident-review-notification-button{background:var(--bg-secondary, #374151);border-color:var(--border-medium, #4b5563);color:var(--text-primary, #f9fafb)}[data-theme=dark] .incident-review-notification-button:hover{background:var(--bg-hover, #4b5563);border-color:var(--color-primary, #60a5fa)}[data-theme=dark] .incident-review-dropdown{background:var(--bg-primary, #1f2937);border-color:var(--border-medium, #374151)}[data-theme=dark] .dropdown-header{background:var(--bg-secondary, #374151);border-bottom-color:var(--border-medium, #4b5563);color:var(--text-primary, #f9fafb)}[data-theme=dark] .notification-item{border-bottom-color:var(--border-light, #374151)}[data-theme=dark] .notification-item:hover{background-color:var(--bg-hover, #374151)}[data-theme=dark] .notification-type{color:var(--text-primary, #f9fafb)}[data-theme=dark] .notification-case,[data-theme=dark] .notification-comment{color:var(--text-secondary, #9ca3af)}[data-theme=dark] .notification-date{color:var(--text-tertiary, #6b7280)}[data-theme=dark] .notification-arrow{color:var(--text-secondary, #9ca3af)}[data-theme=dark] .incident-review-notification-button.action-required{background:#ef444426;border-color:var(--color-error, #ef4444);color:#fca5a5}[data-theme=dark] .incident-review-notification-button.action-required:hover{background:#ef444440;border-color:#f87171}[data-theme=dark] .dropdown-header.has-urgent{background:#ef444426;border-bottom-color:var(--color-error, #ef4444)}[data-theme=dark] .notification-item.rejected{background:#f59e0b1a;border-left-color:var(--color-warning, #f59e0b)}[data-theme=dark] .notification-item.rejected:hover{background:#f59e0b33}[data-theme=dark] .notification-urgent-banner{color:#fcd34d}[data-theme=dark] .decision-badge.rejected{background:#fcd34d33;color:#fcd34d;border-color:#fcd34d66}.stats-navigation{display:flex;gap:6px;margin-bottom:var(--spacing-lg);padding:6px;background-color:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--border-light);width:100%;box-sizing:border-box}.stats-navigation .nav-button{flex:1 1 0;padding:10px 8px;font-size:var(--text-sm);font-weight:var(--font-medium);background-color:var(--bg-secondary);color:var(--text-primary);border:2px solid transparent;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-width:90px;max-width:200px;text-align:center;display:flex;align-items:center;justify-content:center;gap:4px}.stats-navigation .nav-button .nav-button-icon{display:inline-flex;align-items:center;justify-content:center;font-size:var(--icon-sm)}.stats-navigation .nav-button-primary,.stats-navigation .nav-button-secondary{display:flex}.stats-navigation .nav-button-more{display:none}.dropdown-item-group{border-top:1px solid var(--border-light);margin-top:4px;padding-top:4px}.dropdown-item-group:first-child{border-top:none;margin-top:0;padding-top:0}.dropdown-item-header{padding:8px var(--spacing-xl);font-size:var(--text-2xs);font-weight:var(--font-bold);text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);margin-bottom:4px}.stats-navigation .nav-button:hover{background-color:var(--bg-hover);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.stats-navigation .nav-button.active{background-color:var(--color-primary);color:var(--text-inverse);border-color:var(--color-primary-hover);box-shadow:0 2px 4px #3b82f64d}.stats-navigation .nav-button:active{transform:translateY(0)}.stats-navigation .theme-toggle{flex:0 0 auto;min-width:48px;max-width:48px;font-size:var(--text-lg);padding:10px}[data-theme=dark] .stats-navigation .theme-toggle{background-color:var(--gray-800);color:var(--text-inverse);border-color:var(--gray-700)}[data-theme=dark] .stats-navigation .theme-toggle:hover{background-color:var(--gray-700);border-color:var(--gray-600)}[data-theme=light] .stats-navigation .theme-toggle{background-color:var(--gray-800);color:var(--text-inverse);border-color:var(--gray-700)}[data-theme=light] .stats-navigation .theme-toggle:hover{background-color:var(--gray-700);border-color:var(--gray-600)}.stats-navigation .logout-button{flex:0 0 auto;background-color:var(--color-error);color:var(--text-inverse);border-color:var(--color-error-dark);padding:10px 12px;font-size:var(--text-sm);min-width:fit-content;white-space:nowrap}.stats-navigation .logout-button:hover{background-color:var(--color-error-dark);box-shadow:0 2px 4px #ef44444d}.admin-dropdown{position:relative;flex:1 1 0;display:flex;min-width:0}.admin-dropdown .nav-button{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.admin-dropdown-trigger{display:flex;align-items:center;justify-content:center;gap:6px;background:linear-gradient(135deg,var(--bg-secondary) 0%,var(--bg-hover) 100%);border:2px solid var(--border-medium);text-align:center;position:relative}.admin-dropdown-trigger .dropdown-chevron{font-size:var(--text-2xs);transition:transform .3s cubic-bezier(.4,0,.2,1);display:inline-block;opacity:.7;margin-left:2px}.admin-dropdown-trigger .dropdown-chevron.open{transform:rotate(180deg)}.admin-dropdown-trigger:hover{background:linear-gradient(135deg,var(--color-primary-light) 0%,var(--bg-hover) 100%);border-color:var(--color-primary)}.admin-dropdown-trigger.open{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-hover) 100%);color:var(--text-inverse);border-color:var(--color-primary-hover);box-shadow:0 4px 12px #3b82f64d}.dropdown-chevron{font-size:var(--text-2xs);transition:transform .3s cubic-bezier(.4,0,.2,1);display:inline-block}.dropdown-chevron.open{transform:rotate(180deg)}.admin-dropdown-menu{position:absolute;top:calc(100% + 8px);left:0;transform:translateY(-10px);min-width:220px;background:linear-gradient(180deg,var(--bg-primary) 0%,var(--bg-secondary) 100%);border-radius:var(--radius-xl);box-shadow:0 10px 40px #00000026,0 4px 12px #0000001a,inset 0 1px #ffffff1a;border:1px solid var(--border-light);overflow:visible;z-index:1000;opacity:0;visibility:hidden;transform-origin:top left;transition:all .25s cubic-bezier(.4,0,.2,1)}.admin-dropdown-menu:before{content:"";position:absolute;top:-8px;left:24px;border-left:10px solid transparent;border-right:10px solid transparent;border-bottom:8px solid var(--border-light)}.admin-dropdown-menu:after{content:"";position:absolute;top:-6px;left:25px;border-left:9px solid transparent;border-right:9px solid transparent;border-bottom:7px solid var(--bg-primary)}.admin-dropdown-menu.open{opacity:1;visibility:visible;transform:translateY(0)}.dropdown-item{display:flex;align-items:center;gap:var(--spacing-md);width:100%;padding:var(--spacing-md) var(--spacing-xl);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-primary);background-color:transparent;border:none;cursor:pointer;text-align:left;transition:all .2s ease;position:relative;opacity:0;transform:translateY(-8px)}.admin-dropdown-menu.open .dropdown-item{opacity:1;transform:translateY(0)}.admin-dropdown-menu.open .dropdown-item:nth-child(1){transition-delay:.05s}.admin-dropdown-menu.open .dropdown-item:nth-child(2){transition-delay:.1s}.admin-dropdown-menu.open .dropdown-item:nth-child(3){transition-delay:.15s}.dropdown-item:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--color-primary);transform:scaleY(0);transition:transform .2s ease}.dropdown-item:hover{background:linear-gradient(90deg,var(--color-primary-light) 0%,transparent 100%);color:var(--color-primary);padding-left:calc(var(--spacing-xl) + 6px)}.dropdown-item:hover:before{transform:scaleY(1)}.dropdown-item:hover .dropdown-item-icon{transform:scale(1.15)}.dropdown-item.active{background:linear-gradient(90deg,var(--color-primary) 0%,var(--color-primary-hover) 100%);color:var(--text-inverse)}.dropdown-item.active .dropdown-item-icon{color:var(--text-inverse)}.dropdown-item.active:before{background:var(--text-inverse);transform:scaleY(1)}.dropdown-item.active:hover{background:linear-gradient(90deg,var(--color-primary-hover) 0%,var(--color-primary) 100%);color:var(--text-inverse);padding-left:calc(var(--spacing-xl) + 6px)}.dropdown-item-icon{font-size:var(--icon-md);width:28px;text-align:center;transition:transform .2s ease;color:var(--color-primary)}.dropdown-item-icon svg{display:block}.dropdown-item:not(:last-child){border-bottom:1px solid var(--border-light)}.dropdown-item:first-child{padding-top:calc(var(--spacing-md) + 4px)}.dropdown-item:last-child{padding-bottom:calc(var(--spacing-md) + 4px)}.dropdown-item-with-submenu{position:relative;overflow:visible}.dropdown-item-with-submenu .dropdown-item{justify-content:space-between}.dropdown-item-with-submenu .dropdown-chevron{font-size:10px;transition:transform .3s cubic-bezier(.4,0,.2,1);display:inline-block;margin-left:auto}.dropdown-item-with-submenu .dropdown-chevron.open{transform:rotate(90deg)}.admin-dropdown-submenu{position:absolute;left:calc(100% + 4px);top:0;min-width:200px;max-width:220px;background:linear-gradient(180deg,var(--bg-primary) 0%,var(--bg-secondary) 100%);border-radius:var(--radius-lg);box-shadow:0 10px 40px #0003,0 4px 12px #00000026,inset 0 1px #ffffff1a;border:1px solid var(--border-light);overflow:hidden;z-index:1001;pointer-events:none;opacity:0;visibility:hidden;transform:translate(-10px);transition:all .25s cubic-bezier(.4,0,.2,1)}.admin-dropdown-submenu.open-left{left:auto;right:calc(100% + 4px);transform:translate(10px)}.admin-dropdown-submenu.open{opacity:1;visibility:visible;transform:translate(0);pointer-events:auto}.dropdown-item-with-submenu:after{content:"";position:absolute;right:-4px;top:50%;transform:translateY(-50%);width:0;height:0;border-top:6px solid transparent;border-bottom:6px solid transparent;border-left:6px solid var(--border-light);z-index:1002;opacity:0;transition:opacity .25s ease}.dropdown-item-with-submenu:hover:after,.admin-dropdown-submenu.open~.dropdown-item-with-submenu:after{opacity:1}.admin-dropdown-submenu .dropdown-item{padding:var(--spacing-sm) var(--spacing-lg);font-size:var(--text-sm);justify-content:center;text-align:center;gap:var(--spacing-sm)}.admin-dropdown-submenu .dropdown-item-label{display:inline-block;text-align:center}.admin-dropdown-submenu .dropdown-item:hover,.admin-dropdown-submenu .dropdown-item.active:hover{padding-left:var(--spacing-lg)}.stats-navigation .ai-sergeant-button{flex:1 1 0;display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 8px;font-size:var(--text-sm);min-width:0;overflow:hidden;text-overflow:ellipsis}.ai-sergeant-icon{width:20px;height:20px}@media (max-width: 1400px){.stats-navigation .nav-button{min-width:80px;max-width:160px;font-size:var(--text-xs);padding:9px 6px}}@media (max-width: 1200px){.stats-navigation .nav-button-secondary{display:none!important}.stats-navigation .nav-button-more{display:flex!important}.stats-navigation .nav-button{min-width:75px;max-width:140px;font-size:var(--text-xs)}}@media (max-width: 1024px){.stats-navigation{gap:4px;padding:4px}.stats-navigation .nav-button{padding:8px 6px;font-size:var(--text-xs);min-width:70px;max-width:120px}.stats-navigation .theme-toggle{min-width:44px;max-width:44px;padding:8px}.stats-navigation .logout-button{padding:8px 10px;font-size:var(--text-xs);min-width:fit-content;max-width:none}}@media (max-width: 768px){.stats-navigation{flex-wrap:wrap;gap:4px}.stats-navigation .nav-button{flex:1 1 calc(50% - 2px);min-width:calc(50% - 2px);max-width:calc(50% - 2px);font-size:var(--text-xs);padding:8px 4px}.stats-navigation .theme-toggle,.stats-navigation .logout-button{flex:0 0 auto;min-width:auto;max-width:none}}@media (max-width: 640px){.stats-navigation{flex-direction:column;overflow-x:visible}.stats-navigation .nav-button{width:100%;flex:1 1 100%;min-width:100%;max-width:100%}}.seizures-tab{padding:1rem;display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;align-items:start}.currency-section{background:var(--bg-secondary);border-radius:8px;padding:1.25rem;border:1px solid var(--border-medium)}.currency-section h3{margin:0 0 1rem;color:var(--text-primary);font-size:1.1rem;border-bottom:2px solid var(--color-primary);padding-bottom:.5rem}.add-currency-form{display:flex;flex-direction:column;gap:.75rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--border-medium)}.add-currency-form .form-row{display:flex;gap:.5rem;align-items:flex-end}.currency-input-group{display:flex;align-items:center}.currency-prefix{background:var(--bg-tertiary);padding:.5rem .75rem;border:1px solid var(--border-medium);border-right:none;border-radius:4px 0 0 4px;font-weight:700;color:var(--text-primary)}.currency-input-group input{border-radius:0 4px 4px 0;width:100px}.form-group-notes{flex:1}.form-group-notes input{width:100%}.inline-input-wide{width:100%;min-width:100px}.drug-seizures-section{background:var(--bg-primary);border:1px solid var(--border-medium);border-radius:8px;padding:1.25rem}.drug-seizures-section h3{margin:0 0 1rem;color:var(--text-primary);font-size:1.1rem;border-bottom:2px solid var(--color-primary);padding-bottom:.5rem}.add-seizure-form{display:flex;flex-direction:column;gap:.5rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--border-light)}.add-seizure-form .form-row,.add-seizure-form .form-row-full{display:flex;gap:.5rem;align-items:flex-end}.form-group{display:flex;flex-direction:column;gap:.25rem}.form-group.flex-1{flex:1}.form-group.flex-2{flex:2}.form-group label{font-size:.75rem;color:var(--text-secondary);font-weight:500}.form-group select,.form-group input{padding:.4rem .5rem;border:1px solid var(--border-medium);border-radius:4px;font-size:.85rem;background:var(--bg-primary);color:var(--text-primary)}.form-group select:focus,.form-group input:focus{outline:none;border-color:var(--color-primary)}.form-group select:disabled,.form-group input:disabled{background-color:var(--bg-disabled);cursor:not-allowed}.add-button{padding:.4rem .75rem;background-color:var(--color-success);color:var(--text-inverse);border:none;border-radius:4px;cursor:pointer;font-size:.85rem;white-space:nowrap;align-self:flex-end}.add-button:hover:not(:disabled){background-color:var(--color-success-dark)}.add-button:disabled{background-color:var(--bg-disabled);cursor:not-allowed}.seizures-table{width:100%;border-collapse:collapse;font-size:.85rem}.seizures-table th,.seizures-table td{padding:.5rem;text-align:left;border-bottom:1px solid var(--border-light)}.seizures-table th{background-color:var(--bg-tertiary);font-weight:600;color:var(--text-primary);font-size:.8rem}.seizures-table tr:hover{background-color:var(--bg-hover)}.seizures-table .actions{text-align:right;white-space:nowrap}.seizures-table .amount-cell{font-family:monospace}.inline-input{padding:.2rem .4rem;border:1px solid var(--border-medium);border-radius:4px;width:100%;max-width:80px;font-size:.85rem;background:var(--bg-primary);color:var(--text-primary)}.inline-select{padding:.2rem .3rem;border:1px solid var(--border-medium);border-radius:4px;font-size:.85rem;background:var(--bg-primary);color:var(--text-primary)}.action-btn{padding:.2rem .4rem;border:none;border-radius:4px;cursor:pointer;font-size:.75rem;margin-left:.2rem}.action-btn.edit{background-color:#007bff;color:#fff}.action-btn.edit:hover{background-color:#0056b3}.action-btn.delete{background-color:#dc3545;color:#fff}.action-btn.delete:hover{background-color:#c82333}.action-btn.save{background-color:#28a745;color:#fff}.action-btn.save:hover{background-color:#218838}.action-btn.cancel{background-color:#6c757d;color:#fff}.action-btn.cancel:hover{background-color:#545b62}.action-btn:disabled{opacity:.5;cursor:not-allowed}.empty-state{text-align:center;padding:1.5rem;color:var(--text-secondary)}.empty-state p{margin:0;font-size:.85rem}.running-total{margin-top:.75rem;padding-top:.75rem;border-top:2px solid var(--color-primary);display:flex;justify-content:flex-end;font-weight:600;color:var(--text-primary);font-size:.95rem}.delete-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.delete-modal{background:var(--bg-primary);padding:1.5rem;border-radius:8px;max-width:400px;width:90%}.delete-modal h4{margin:0 0 1rem;color:var(--color-error)}.delete-modal p{margin:0 0 1.5rem;color:var(--text-secondary)}.delete-modal-actions{display:flex;gap:.75rem;justify-content:flex-end}.delete-modal-actions button{padding:.5rem 1rem;border:none;border-radius:4px;cursor:pointer}.delete-modal-actions .confirm-delete{background-color:#dc3545;color:#fff}.delete-modal-actions .cancel-delete{background-color:#6c757d;color:#fff}@media (max-width: 900px){.seizures-tab{grid-template-columns:1fr}.add-seizure-form .form-row{flex-wrap:wrap}}.review-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);animation:fadeIn .2s ease-out}.review-modal{background:var(--bg-primary);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);width:90%;max-width:600px;max-height:85vh;overflow:hidden;display:flex;flex-direction:column;animation:slideUp .3s ease-out}.review-modal-header{padding:var(--spacing-lg) var(--spacing-xl);background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-hover) 100%);color:var(--text-inverse);text-align:center}.review-modal-header h2{margin:0;font-size:var(--text-xl);font-weight:var(--font-bold)}.review-date{margin:var(--spacing-xs) 0 0;font-size:var(--text-sm);opacity:.9}.resubmit-warning{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);background-color:var(--color-warning-light);color:var(--color-warning-dark);font-size:var(--text-sm);font-weight:var(--font-medium);border-bottom:1px solid var(--border-light)}.resubmit-warning .warning-icon{font-size:var(--text-lg)}.review-modal-content{flex:1;overflow-y:auto;padding:var(--spacing-lg) var(--spacing-xl)}.review-section{margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--border-light)}.review-section:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.section-title{display:flex;align-items:center;gap:var(--spacing-sm);margin:0 0 var(--spacing-md);font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary)}.section-icon{font-size:var(--text-xl)}.stats-list{list-style:none;margin:0;padding:0}.stat-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) var(--spacing-md);background-color:var(--bg-secondary);border-radius:var(--radius-md);margin-bottom:var(--spacing-xs)}.stat-item:last-child{margin-bottom:0}.stat-label{font-size:var(--text-sm);color:var(--text-secondary)}.stat-value{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--color-primary)}.no-stats{margin:0;padding:var(--spacing-md);color:var(--text-muted);font-style:italic;text-align:center;background-color:var(--bg-secondary);border-radius:var(--radius-md)}.currency-summary{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);background-color:var(--bg-secondary);border-radius:var(--radius-md);margin-bottom:var(--spacing-md)}.currency-icon{font-size:var(--text-xl)}.currency-label{font-size:var(--text-sm);color:var(--text-secondary)}.currency-value{margin-left:auto;font-size:var(--text-lg);font-weight:var(--font-bold);color:var(--color-success)}.drug-summary{background-color:var(--bg-secondary);border-radius:var(--radius-md);padding:var(--spacing-md)}.drug-header{display:flex;align-items:center;gap:var(--spacing-sm);margin:0 0 var(--spacing-sm);font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-secondary)}.drug-icon{font-size:var(--text-lg)}.drug-list{list-style:none;margin:0;padding:0}.drug-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) 0;border-bottom:1px dashed var(--border-light)}.drug-item:last-child{border-bottom:none}.drug-name{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-primary)}.drug-amount{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-primary)}.original-entry{margin-left:var(--spacing-xs);font-size:var(--text-xs);font-weight:var(--font-normal);color:var(--text-muted)}.drug-total{display:flex;justify-content:space-between;align-items:center;margin-top:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:2px solid var(--border-medium);font-weight:var(--font-semibold)}.drug-total .total-value{color:var(--color-primary);font-size:var(--text-base)}.zero-note{margin:0;padding:var(--spacing-sm) var(--spacing-xl);font-size:var(--text-xs);color:var(--text-muted);text-align:center;background-color:var(--bg-secondary)}.empty-submission-warning{display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);background-color:var(--color-warning-light);color:var(--color-warning-dark);font-size:var(--text-sm);font-weight:var(--font-medium)}.empty-submission-warning .warning-icon{font-size:var(--text-lg)}.review-modal-actions{display:flex;gap:var(--spacing-md);padding:var(--spacing-lg) var(--spacing-xl);border-top:1px solid var(--border-light);background-color:var(--bg-secondary)}.review-modal-actions .btn-secondary{flex:1;padding:var(--spacing-md) var(--spacing-lg);font-size:var(--text-base);font-weight:var(--font-medium);background-color:var(--bg-primary);color:var(--text-primary);border:2px solid var(--border-medium);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.review-modal-actions .btn-secondary:hover:not(:disabled){background-color:var(--bg-hover);border-color:var(--border-dark)}.review-modal-actions .btn-primary{flex:1;padding:var(--spacing-md) var(--spacing-lg);font-size:var(--text-base);font-weight:var(--font-bold);background-color:var(--color-success);color:var(--text-inverse);border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);box-shadow:0 2px 4px #28a7454d}.review-modal-actions .btn-primary:hover:not(:disabled){background-color:var(--color-success-dark);transform:translateY(-1px);box-shadow:0 4px 8px #28a74566}.review-modal-actions button:disabled{opacity:.6;cursor:not-allowed;transform:none}@media (max-width: 640px){.review-modal{width:95%;max-height:90vh}.review-modal-header,.review-modal-content{padding:var(--spacing-md) var(--spacing-lg)}.review-modal-actions{flex-direction:column;padding:var(--spacing-md) var(--spacing-lg)}.stat-item{padding:var(--spacing-xs) var(--spacing-sm)}}.stats-container{min-height:100vh;background-color:var(--bg-secondary);padding:0 var(--spacing-md) var(--spacing-md);transition:border .3s ease}.stats-container.missing-stats-mode{border:4px solid #ef4444;border-radius:var(--radius-lg);box-shadow:0 0 20px #ef44444d}.stats-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md);padding:var(--spacing-xs) var(--spacing-lg);background-color:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.stats-header h1{font-size:var(--text-page-title);font-weight:var(--font-semibold);color:var(--text-primary);margin:0}.date-display{display:flex;align-items:center;gap:var(--spacing-sm)}.date-display label{font-size:var(--text-sm);color:var(--text-muted);font-weight:var(--font-medium)}.date-value{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--color-primary);font-family:Roboto Mono,monospace}.message{padding:var(--spacing-md) var(--spacing-lg);margin-bottom:var(--spacing-lg);border-radius:var(--radius-md);font-size:var(--text-sm);text-align:center}.message-success{background-color:var(--color-success-light);color:var(--color-success-dark);border:1px solid var(--color-success)}.message-error{background-color:var(--color-error-light);color:var(--color-error-dark);border:1px solid var(--color-error)}.message-info{background-color:var(--color-info-light);color:var(--color-info-dark);border:1px solid var(--color-info)}.message-warning{background-color:var(--color-warning-light);color:var(--color-warning-dark);border:1px solid var(--color-warning);white-space:pre-line;font-size:var(--text-sm);line-height:1.6;padding:var(--spacing-md) var(--spacing-lg)}.missing-stats-banner{background:linear-gradient(135deg,#fee2e2,#fecaca);border:3px solid #ef4444;border-radius:var(--radius-lg);padding:var(--spacing-lg);margin:var(--spacing-md) var(--spacing-md) var(--spacing-lg);box-shadow:0 4px 12px #ef444433}.pending-requests-banner{background:linear-gradient(135deg,#fef3c7,#fde68a);border:3px solid #f59e0b;border-radius:var(--radius-lg);padding:var(--spacing-lg);margin:var(--spacing-md) var(--spacing-md) var(--spacing-lg);box-shadow:0 4px 12px #f59e0b33}.banner-content{display:flex;align-items:center;gap:var(--spacing-md)}.banner-icon{font-size:32px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center}.banner-text{display:flex;flex-direction:column;gap:var(--spacing-xs);flex:1}.banner-text strong{font-size:var(--text-lg);color:#991b1b;font-weight:700}.pending-requests-banner .banner-text strong{color:#92400e}.banner-text span{font-size:var(--text-base);color:#7f1d1d;font-weight:500}.pending-requests-banner .banner-text span{color:#78350f}.banner-text small{font-size:var(--text-sm);color:#991b1b;opacity:.8}.pending-requests-banner .banner-text small{color:#92400e}[data-theme=dark] .missing-stats-banner{background:linear-gradient(135deg,#7f1d1d,#991b1b);border-color:#dc2626}[data-theme=dark] .pending-requests-banner{background:linear-gradient(135deg,#78350f,#92400e);border-color:#d97706}[data-theme=dark] .banner-text strong{color:#fecaca}[data-theme=dark] .pending-requests-banner .banner-text strong{color:#fde68a}[data-theme=dark] .banner-text span{color:#fecaca}[data-theme=dark] .pending-requests-banner .banner-text span{color:#fde68a}[data-theme=dark] .banner-text small{color:#fecaca}[data-theme=dark] .pending-requests-banner .banner-text small{color:#fde68a}.stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-md);margin-bottom:var(--spacing-2xl)}@media (max-width: 1024px){.stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.stats-grid{grid-template-columns:1fr}}.stats-grid .stat-item{background-color:var(--bg-primary);border-radius:var(--radius-lg);padding:var(--spacing-md);box-shadow:var(--shadow-sm);border:1px solid var(--border-light);display:flex;flex-direction:row;align-items:center;gap:var(--spacing-sm);transition:box-shadow var(--transition-fast)}.stats-grid .stat-item:hover{box-shadow:var(--shadow-md)}.stat-button{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--text-xs);font-weight:var(--font-medium);background-color:var(--color-primary);color:var(--text-inverse);border:none;border-radius:var(--spacing-sm);cursor:pointer;transition:all var(--transition-fast);box-shadow:var(--shadow-sm);flex:1;white-space:normal;text-align:center;line-height:1.3;min-height:40px;display:flex;align-items:center;justify-content:center;max-height:48px;overflow:hidden}.stat-button:hover:not(:disabled){background-color:var(--color-primary-hover);box-shadow:var(--shadow-md);transform:translateY(-1px)}.stat-button:active:not(:disabled){box-shadow:var(--shadow-sm);transform:translateY(0)}.stat-button:disabled{background-color:var(--gray-400);cursor:not-allowed;box-shadow:none}.stat-controls{display:flex;align-items:center;gap:var(--spacing-sm);flex-shrink:0}.stat-input{width:70px;padding:var(--spacing-sm);font-size:var(--text-lg);font-family:Roboto Mono,monospace;font-weight:var(--font-bold);text-align:center;border:1px solid var(--border-medium);border-radius:var(--radius-sm);background-color:var(--bg-primary);color:var(--text-primary);transition:all var(--transition-fast)}.stat-input:disabled{background-color:var(--bg-disabled);color:var(--text-disabled);cursor:not-allowed}.stat-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.stat-input::-webkit-outer-spin-button,.stat-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.stat-input[type=number]{-moz-appearance:textfield}.minus-button{width:40px;height:40px;padding:0;font-size:var(--text-2xl);font-weight:var(--font-bold);background-color:var(--color-error);color:var(--text-inverse);border:none;border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-fast);box-shadow:var(--shadow-sm);display:flex;align-items:center;justify-content:center;flex-shrink:0}.minus-button:hover:not(:disabled){background-color:var(--color-error-dark);box-shadow:var(--shadow-md);transform:scale(1.05)}.minus-button:active:not(:disabled){box-shadow:var(--shadow-sm);transform:scale(.95)}.minus-button:disabled{background-color:var(--gray-400);cursor:not-allowed;box-shadow:none}.submit-section{display:flex;justify-content:center;margin-top:var(--spacing-2xl)}.submit-button{padding:var(--spacing-md) var(--spacing-3xl);font-size:var(--text-lg);font-weight:var(--font-bold);background-color:var(--color-success);color:var(--text-inverse);border:2px solid var(--color-success-dark);border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast);box-shadow:var(--shadow-md);min-width:200px}.submit-button:hover:not(:disabled){background-color:var(--color-success-dark);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.submit-button:active:not(:disabled){box-shadow:var(--shadow-sm);transform:translateY(0)}.submit-button:disabled{background-color:var(--gray-400);border-color:var(--gray-500);cursor:not-allowed;box-shadow:none}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#0009;display:flex;align-items:center;justify-content:center;z-index:var(--z-modal-backdrop)}.modal-dialog{background-color:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-2xl);padding:var(--spacing-2xl);max-width:500px;width:90%;animation:modal-pop .2s ease-out}.modal-dialog h2{margin:0 0 var(--spacing-lg) 0;color:var(--color-primary);font-size:var(--text-2xl)}.modal-dialog p{margin:0 0 var(--spacing-md) 0;line-height:1.6;color:var(--text-primary)}.modal-buttons{display:flex;gap:var(--spacing-md);justify-content:flex-end;margin-top:var(--spacing-xl)}.modal-button{padding:var(--spacing-md) var(--spacing-xl);font-size:var(--text-base);font-weight:var(--font-bold);border:none;border-radius:var(--radius-md);cursor:pointer;transition:all var(--transition-fast)}.modal-button-primary{background-color:var(--color-primary);color:var(--text-inverse)}.modal-button-primary:hover{background-color:var(--color-primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.modal-button-warning{background-color:var(--color-warning);color:var(--text-on-warning)}.modal-button-warning:hover{background-color:var(--color-warning-dark);transform:translateY(-1px);box-shadow:var(--shadow-md)}.modal-button-secondary{background-color:var(--gray-600);color:var(--text-inverse)}.modal-button-secondary:hover{background-color:var(--gray-700)}.reason-selection{margin:var(--spacing-lg) 0}.reason-option{display:flex;align-items:center;padding:var(--spacing-md);margin-bottom:var(--spacing-sm);background-color:var(--bg-secondary);border-radius:var(--radius-md);border:2px solid var(--border-light);cursor:pointer;transition:all var(--transition-fast)}.reason-option:hover{background-color:var(--color-primary-light);border-color:var(--color-primary)}.reason-option input[type=radio]{margin-right:var(--spacing-md);width:18px;height:18px;cursor:pointer}.reason-option span{font-size:var(--text-base);color:var(--text-primary);cursor:pointer}.reason-textarea{width:100%;margin-top:var(--spacing-md);padding:var(--spacing-md);font-size:var(--text-sm);border:1px solid var(--border-medium);border-radius:var(--radius-md);background:var(--bg-primary);color:var(--text-primary);resize:vertical;box-sizing:border-box;min-height:100px;transition:all var(--transition-fast)}.reason-textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.reason-error{margin-top:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);background:var(--color-error-light);color:var(--color-error-dark);font-size:var(--text-sm);border:1px solid var(--color-error)}.stats-tabs{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-xs);margin-bottom:var(--spacing-lg);background:var(--gray-100, #f1f5f9);padding:var(--spacing-sm);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.tabs-left{display:flex;gap:4px}.stats-tabs .submit-button{padding:var(--spacing-sm) var(--spacing-xl);font-size:var(--text-base);font-weight:var(--font-bold);background-color:var(--color-success);color:var(--text-inverse);border:none;border-radius:var(--radius-md);cursor:pointer;transition:background-color var(--transition-fast),transform var(--transition-fast);box-shadow:0 2px 4px #28a7454d}.stats-tabs .submit-button:hover:not(:disabled){background-color:#218838;transform:translateY(-1px)}.stats-tabs .submit-button:disabled{background-color:#6c757d;cursor:not-allowed;box-shadow:none;transform:none}.stats-tab{padding:10px 20px;font-size:var(--text-base);font-weight:500;background:transparent;color:var(--text-secondary, #64748b);border:none;border-radius:8px;cursor:pointer;transition:all .2s ease}.stats-tab:disabled{opacity:.5;cursor:not-allowed}.stats-tab:hover:not(.active):not(:disabled){background:#fffc;color:var(--text-primary, #334155)}.stats-tab.active{background:var(--bg-primary, white);color:var(--color-primary-dark, #1e40af);box-shadow:0 2px 4px #0000000d}.stats-tab-content{min-height:400px;animation:stats-fade-in .2s ease-out}.stats-loading{min-height:360px;display:flex;align-items:center;justify-content:center}.stats-loading-card{width:min(520px,100%);background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:var(--spacing-xl);box-shadow:var(--shadow-sm);text-align:center}.stats-loading-title{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary);margin-bottom:var(--spacing-xs)}.stats-loading-detail{font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:var(--spacing-lg)}.stats-loading-bars{display:grid;gap:var(--spacing-sm)}.stats-loading-bar{height:10px;border-radius:var(--radius-full);background:linear-gradient(90deg,var(--bg-secondary) 0%,var(--bg-hover) 50%,var(--bg-secondary) 100%);background-size:200% 100%;animation:shimmer 1.2s ease-in-out infinite}.stats-loading-bar:nth-child(2){width:80%;margin:0 auto}.stats-loading-bar:nth-child(3){width:60%;margin:0 auto}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes modal-pop{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes stats-fade-in{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}.tab-placeholder{display:flex;align-items:center;justify-content:center;min-height:400px;background-color:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:2px dashed var(--border-medium)}.placeholder-content{text-align:center;padding:var(--spacing-2xl);max-width:500px}.placeholder-content h2{font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--color-primary);margin:0 0 var(--spacing-md) 0}.placeholder-content p{font-size:var(--text-base);color:var(--text-secondary);margin:0 0 var(--spacing-lg) 0;line-height:1.6}.placeholder-content .placeholder-hint{font-size:var(--text-sm);color:var(--text-muted);font-weight:var(--font-medium);margin-bottom:var(--spacing-sm)}.placeholder-content ul{text-align:left;list-style-type:none;padding:0;margin:0}.placeholder-content li{font-size:var(--text-sm);color:var(--text-secondary);padding:var(--spacing-xs) 0;padding-left:var(--spacing-lg);position:relative}.placeholder-content li:before{content:"•";color:var(--color-primary);font-weight:700;position:absolute;left:0}.stats-history-container{min-height:100vh;background-color:var(--bg-secondary);padding:0 var(--spacing-md) var(--spacing-md)}.history-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);padding:var(--spacing-lg);background-color:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.history-header h1{font-size:var(--text-page-title);font-weight:var(--font-semibold);color:var(--text-primary);margin:0}.history-controls{display:flex;align-items:center;gap:var(--spacing-sm)}.refresh-btn{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--text-sm);background:linear-gradient(135deg,var(--color-secondary) 0%,var(--color-secondary-hover) 100%);color:var(--text-inverse);border:none;border-radius:var(--radius-md);cursor:pointer;font-weight:var(--font-semibold);transition:all var(--transition-fast);box-shadow:0 2px 6px #60a5fa4d}.refresh-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 10px #60a5fa66}.refresh-btn:active:not(:disabled){transform:translateY(0)}.refresh-btn:disabled{opacity:.6;cursor:not-allowed}.history-controls label{font-size:var(--text-sm);color:var(--text-muted)}.history-controls select{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--text-sm);border:1px solid var(--border-medium);border-radius:var(--radius-sm);background-color:var(--bg-primary);color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast)}.history-controls select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.empty-state p:first-child{font-size:var(--text-lg);font-weight:var(--font-bold);margin-bottom:var(--spacing-sm);color:var(--text-primary)}.history-table-wrapper{background-color:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border-light);overflow-x:auto;overflow-y:visible}.history-table{width:100%;border-collapse:collapse;font-size:var(--text-sm);table-layout:auto}.history-table tbody{display:table-row-group}.history-table tbody tr.detail-row{display:table-row}.history-table thead{background-color:var(--color-primary);color:var(--text-inverse)}.history-table th{padding:var(--spacing-sm) var(--spacing-md);text-align:left;font-weight:var(--font-semibold);white-space:nowrap}.history-table tbody tr.summary-row{border-bottom:1px solid var(--border-light);transition:background-color var(--transition-fast);cursor:pointer;height:auto}.history-table tbody tr.summary-row:hover{background-color:var(--bg-hover)}.history-table tbody tr.summary-row.expanded{background-color:var(--color-primary-light)}.history-table tbody tr.detail-row{border-bottom:1px solid var(--border-light);background-color:var(--bg-secondary)}.history-table tbody tr.detail-row td{padding:0!important;width:100%;display:table-cell;position:relative}.history-table tbody tr.detail-row td[colspan="6"]{width:100%;max-width:100%}.history-table tbody tr:last-child{border-bottom:none}.history-table td{padding:var(--spacing-sm) var(--spacing-md);text-align:left;color:var(--text-primary);vertical-align:middle;line-height:1.4}.history-table tbody tr.summary-row td{padding:var(--spacing-sm) var(--spacing-md)}.history-table .date-cell{font-weight:var(--font-medium);color:var(--text-primary);white-space:nowrap;vertical-align:middle}.history-table .total-cell{font-weight:var(--font-bold);color:var(--color-primary)}.history-table .sync-cell{text-align:center}.history-table .synced{color:var(--color-success);font-size:var(--text-lg)}.history-table .not-synced{color:var(--color-warning);font-size:var(--text-lg)}.detail-content{padding:var(--spacing-lg);background-color:var(--bg-secondary);border-radius:var(--radius-sm);width:100%;max-width:100%;box-sizing:border-box;display:block;overflow:visible}.detail-content h3{margin:0 0 var(--spacing-md) 0;color:var(--color-primary);font-size:var(--text-lg);font-weight:var(--font-semibold)}.detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-md)}.detail-item{display:flex;justify-content:space-between;padding:var(--spacing-sm) var(--spacing-md);background-color:var(--bg-primary);border-radius:var(--radius-sm);border-left:3px solid var(--color-primary)}.detail-item.custom-stat-item{border-left-color:var(--color-info)}.detail-label{font-weight:var(--font-medium);color:var(--text-secondary)}.detail-value{font-weight:var(--font-bold);color:var(--text-primary)}.history-summary{margin-top:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);background-color:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);text-align:center;color:var(--text-muted);font-size:var(--text-sm)}@media (max-width: 1024px){.history-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-md)}.history-table{font-size:var(--text-xs)}.history-table th,.history-table td{padding:var(--spacing-sm)}}@media (max-width: 640px){.history-table-wrapper{overflow-x:scroll}.history-table{min-width:800px}}.type-badges-cell{display:inline-flex;gap:var(--spacing-xs);flex-wrap:wrap;align-items:center}.type-badge{display:inline-block;padding:2px 8px;border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-semibold);text-transform:uppercase;white-space:nowrap}.type-badge.patrol{background-color:var(--color-primary-light);color:var(--color-primary)}.type-badge.k9{background-color:color-mix(in srgb,var(--color-warning) 18%,transparent);color:var(--color-warning-dark)}.type-badge.seizure{background-color:color-mix(in srgb,var(--color-info) 18%,transparent);color:var(--color-info-dark)}.detail-section{margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid var(--border-light)}.detail-section:first-child{margin-top:0;padding-top:0;border-top:none}.detail-section h4{margin:0 0 var(--spacing-md) 0;font-size:var(--text-base);font-weight:var(--font-semibold)}.patrol-section h4{color:var(--color-primary)}.detail-content .k9-section{border-left:none}.k9-section h4{color:#8b4513}.k9-item{border-left:3px solid #8B4513}.k9-item .detail-value{color:#8b4513}.detail-content .seizure-section{border-left:none}.seizure-section h4{color:#673ab7}.seizure-summary{display:flex;gap:var(--spacing-md);flex-wrap:wrap;margin-bottom:var(--spacing-md)}.seizure-card{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);background-color:var(--bg-primary);border-radius:var(--radius-md);flex:1;min-width:150px}.seizure-card.currency{border-left:4px solid #047857}.seizure-card.drugs{border-left:4px solid #6D28D9}.seizure-icon{font-size:var(--text-2xl)}.seizure-card>div{display:flex;flex-direction:column}.seizure-label{font-size:var(--text-xs);color:var(--text-muted)}.seizure-amount{font-size:var(--text-lg);font-weight:var(--font-bold)}.seizure-card.currency .seizure-amount{color:#047857}.seizure-card.drugs .seizure-amount{color:#6d28d9}.drug-list{margin-top:var(--spacing-md)}.drug-list h5{margin:0 0 var(--spacing-sm) 0;font-size:var(--text-sm);color:var(--text-secondary)}.drug-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) var(--spacing-md);background-color:var(--bg-primary);border-radius:var(--radius-sm);margin-bottom:var(--spacing-xs)}.drug-item .drug-name{font-weight:var(--font-medium);color:var(--text-primary)}.drug-item .drug-amount{font-weight:var(--font-bold);color:#673ab7}[data-theme=dark] .type-badge.k9{background-color:#d2691e33;color:#d2691e}[data-theme=dark] .type-badge.seizure{background-color:#9575cd33;color:#9575cd}[data-theme=dark] .k9-section h4,[data-theme=dark] .k9-item .detail-value{color:#d2691e}[data-theme=dark] .seizure-section h4{color:#9575cd}[data-theme=dark] .seizure-card.currency .seizure-amount{color:#34d399}[data-theme=dark] .seizure-card.drugs .seizure-amount{color:#a78bfa}[data-theme=dark] .drug-item .drug-amount{color:#9575cd}.stats-dashboard-container{min-height:100vh;background-color:var(--bg-secondary);padding:0 var(--spacing-md) var(--spacing-md)}.dashboard-header{margin-bottom:var(--spacing-md);padding:var(--spacing-md);background-color:var(--bg-primary);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);display:flex;align-items:center;justify-content:space-between}.dashboard-header .header-left{display:flex;flex-direction:column;gap:2px}.dashboard-header .header-right{display:flex;align-items:center;gap:var(--spacing-sm)}.dashboard-header h1{font-size:var(--text-page-title);font-weight:var(--font-semibold);color:var(--text-primary);margin:0}.dashboard-subtitle{font-size:var(--text-xs);color:var(--text-muted);margin:0}.period-selector{padding:8px 12px;border:1px solid var(--border-light);border-radius:var(--radius-sm);background:var(--bg-secondary);color:var(--text-primary);font-size:var(--text-sm);cursor:pointer;transition:border-color var(--transition-fast)}.period-selector:hover{border-color:var(--color-primary)}.period-selector:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px #3b82f633}.dashboard-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.dashboard-card{background-color:var(--bg-primary);border-radius:var(--radius-md);padding:var(--spacing-md);box-shadow:var(--shadow-sm);display:flex;align-items:center;gap:var(--spacing-sm);transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.dashboard-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.dashboard-card.highlight{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-hover) 100%);color:var(--text-inverse)}.dashboard-card.highlight .card-content h3,.dashboard-card.highlight .card-detail{color:var(--text-inverse);opacity:.9}.dashboard-card.highlight .card-value{color:var(--text-inverse)}.card-icon{font-size:var(--text-2xl);line-height:1}.card-content{flex:1}.card-content h3{margin:0 0 var(--spacing-sm) 0;font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.card-value{margin:0 0 var(--spacing-xs) 0;font-size:var(--text-2xl);font-weight:var(--font-bold);color:var(--color-primary);line-height:1}.card-detail{margin:0;font-size:var(--text-xs);color:var(--text-disabled)}.dashboard-details{background-color:var(--bg-primary);border-radius:var(--radius-md);padding:var(--spacing-md);box-shadow:var(--shadow-sm);margin-bottom:var(--spacing-md)}.dashboard-details h2{margin:0 0 var(--spacing-sm) 0;font-size:var(--text-lg);color:var(--text-primary)}.breakdown-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--spacing-sm)}.breakdown-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-sm) var(--spacing-md);background-color:var(--bg-secondary);border-radius:var(--radius-sm);border-left:3px solid var(--color-primary)}.breakdown-item.custom-stat-item{border-left-color:var(--color-info)}.breakdown-label{font-size:var(--text-xs);color:var(--text-secondary);font-weight:var(--font-medium)}.breakdown-value{font-size:var(--text-lg);font-weight:var(--font-bold);color:var(--color-primary)}.loading,.error-message,.empty-state{padding:var(--spacing-2xl) var(--spacing-lg);text-align:center;background-color:var(--bg-primary);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm)}.loading{color:var(--text-muted);font-size:var(--text-base)}.error-message{color:var(--color-error);font-size:var(--text-base)}.empty-state{color:var(--text-muted)}.empty-state p:first-child{font-size:var(--text-lg);font-weight:var(--font-bold);margin-bottom:var(--spacing-sm)}@media (max-width: 768px){.dashboard-cards,.breakdown-grid{grid-template-columns:repeat(2,1fr)}.card-value{font-size:var(--text-xl)}.breakdown-value{font-size:var(--text-base)}.seizure-summary-cards{grid-template-columns:1fr}}.k9-section{margin-top:var(--spacing-sm);border-left:3px solid #8B4513}.k9-section h2{color:#8b4513}.k9-item{border-left-color:#8b4513}.k9-item .breakdown-value{color:#8b4513}.section-subtitle{margin:calc(-1 * var(--spacing-xs)) 0 var(--spacing-sm) 0;font-size:var(--text-xs);color:var(--text-muted)}.seizure-section{margin-top:var(--spacing-sm);border-left:3px solid #6D28D9}.seizure-section h2{color:#6d28d9}.seizure-summary-cards{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.seizure-summary-card{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md);background:linear-gradient(135deg,var(--bg-secondary) 0%,var(--bg-tertiary) 100%)}.seizure-summary-card.currency{border-left:4px solid #047857}.seizure-summary-card.drugs{border-left:4px solid #6D28D9}.seizure-icon{font-size:var(--text-xl);line-height:1}.seizure-card-content{display:flex;flex-direction:column;gap:var(--spacing-xs)}.seizure-label{font-size:var(--text-sm);color:var(--text-muted);font-weight:var(--font-medium)}.seizure-value{font-size:var(--text-lg);font-weight:var(--font-bold);color:#6d28d9}.seizure-summary-card.currency .seizure-value{color:#047857}.seizure-summary-card.drugs .seizure-value{color:#6d28d9}.drug-breakdown{margin-top:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:1px solid var(--border-light)}.drug-breakdown h3{margin:0 0 var(--spacing-xs) 0;font-size:var(--text-sm);color:var(--text-secondary);font-weight:var(--font-semibold)}.drug-breakdown-list{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}.drug-breakdown-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-xs) var(--spacing-sm);background-color:var(--bg-secondary);border-radius:var(--radius-sm);flex:1;min-width:140px}.drug-rank{display:flex;align-items:center;justify-content:center;width:18px;height:18px;border-radius:50%;background-color:#6d28d9;color:#fff;font-size:var(--text-2xs);font-weight:var(--font-bold);flex-shrink:0}.drug-name{flex:1;font-size:var(--text-xs);color:var(--text-primary);font-weight:var(--font-medium);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.drug-amount{font-size:var(--text-xs);color:#6d28d9;font-weight:var(--font-bold)}[data-theme=dark] .k9-section h2{color:#d2691e}[data-theme=dark] .k9-item{border-left-color:#d2691e}[data-theme=dark] .k9-item .breakdown-value{color:#d2691e}[data-theme=dark] .seizure-section h2,[data-theme=dark] .seizure-value{color:#9575cd}[data-theme=dark] .seizure-summary-card.currency .seizure-value{color:#34d399}[data-theme=dark] .seizure-summary-card.drugs .seizure-value{color:#a78bfa}[data-theme=dark] .drug-rank{background-color:#a78bfa}[data-theme=dark] .drug-amount{color:#c4b5fd}@media (max-width: 768px){.seizure-summary-cards{grid-template-columns:1fr}}.metrics-tiles-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--spacing-md);margin-bottom:var(--spacing-md)}@media (max-width: 1024px){.metrics-tiles-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 500px){.metrics-tiles-grid{grid-template-columns:1fr}}.metric-tile-card{background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-md);padding:var(--spacing-md);display:flex;flex-direction:column;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.metric-tile-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.metric-tile-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm)}.metric-tile-icon{font-size:24px}.rank-badge{font-size:var(--text-xs);font-weight:var(--font-bold);padding:2px 8px;border-radius:12px;background:var(--bg-secondary);color:var(--text-secondary)}.rank-badge.rank-1{background:linear-gradient(135deg,#fef3c7,#fcd34d);color:#92400e}.rank-badge.rank-2{background:linear-gradient(135deg,#e5e7eb,#d1d5db);color:#374151}.rank-badge.rank-3{background:linear-gradient(135deg,#fed7aa,#fdba74);color:#9a3412}.metric-tile-value{font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--text-primary);line-height:1.1}.metric-tile-label{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-top:4px}.metric-tile-footer{display:flex;justify-content:space-between;align-items:center;margin-top:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:1px solid var(--border-light);font-size:var(--text-xs)}.vs-dept{font-weight:var(--font-semibold)}.vs-dept.above{color:var(--color-success, #10b981)}.vs-dept.below{color:var(--color-warning, #f59e0b)}.daily-avg{color:var(--text-muted)}.insights-section{background:var(--bg-primary);border-radius:var(--radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-md);box-shadow:var(--shadow-sm)}.insights-title{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary);margin:0 0 var(--spacing-md) 0}.insights-icon{font-size:20px}.insights-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-sm)}@media (max-width: 900px){.insights-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 600px){.insights-grid{grid-template-columns:1fr}}.insight-card{display:flex;align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-md);background:var(--bg-secondary);border-radius:var(--radius-sm);border-left:3px solid var(--color-primary);transition:transform var(--transition-fast)}.insight-card:hover{transform:translate(2px)}.insight-card.positive{border-left-color:var(--color-success, #10b981);background:linear-gradient(135deg,rgba(16,185,129,.05) 0%,var(--bg-secondary) 100%)}.insight-card.attention{border-left-color:var(--color-warning, #f59e0b);background:linear-gradient(135deg,rgba(245,158,11,.05) 0%,var(--bg-secondary) 100%)}.insight-card.neutral{border-left-color:var(--color-primary, #3b82f6);background:linear-gradient(135deg,rgba(59,130,246,.05) 0%,var(--bg-secondary) 100%)}.insight-card-icon{font-size:24px;flex-shrink:0;line-height:1}.insight-card-content{flex:1;min-width:0}.insight-card-title{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-primary);margin-bottom:4px;line-height:1.3}.insight-card-description{font-size:var(--text-xs);color:var(--text-secondary);line-height:1.4}[data-theme=dark] .metric-tile-card{background:var(--bg-primary);border-color:var(--border-default)}[data-theme=dark] .rank-badge.rank-1{background:linear-gradient(135deg,#78350f,#92400e);color:#fcd34d}[data-theme=dark] .rank-badge.rank-2{background:linear-gradient(135deg,#374151,#4b5563);color:#e5e7eb}[data-theme=dark] .rank-badge.rank-3{background:linear-gradient(135deg,#7c2d12,#9a3412);color:#fdba74}[data-theme=dark] .insight-card{background:var(--bg-tertiary)}[data-theme=dark] .insight-card.positive{background:linear-gradient(135deg,rgba(16,185,129,.1) 0%,var(--bg-tertiary) 100%)}[data-theme=dark] .insight-card.attention{background:linear-gradient(135deg,rgba(245,158,11,.1) 0%,var(--bg-tertiary) 100%)}[data-theme=dark] .insight-card.neutral{background:linear-gradient(135deg,rgba(59,130,246,.1) 0%,var(--bg-tertiary) 100%)}[data-theme=dark] .period-selector{background:var(--bg-tertiary);border-color:var(--border-default);color:var(--text-primary)}.modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000bf;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal-backdrop);padding:var(--spacing-md);animation:fadeIn .2s ease-out}.admin-results-modal{background:var(--bg-primary);border-radius:var(--radius-xl);box-shadow:var(--shadow-2xl);border:1px solid var(--border-light);overflow:hidden;animation:slideIn .3s cubic-bezier(.4,0,.2,1);width:100%;height:100%;max-height:95vh;display:flex;flex-direction:column}.search-warning-banner{margin:var(--spacing-md) var(--spacing-xl) 0 var(--spacing-xl);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-lg);border:1px solid rgba(245,158,11,.35);background:#f59e0b1f;color:var(--text-primary);font-size:var(--text-sm)}.search-warning-banner strong{margin-right:var(--spacing-sm)}.search-warning-banner ul{margin:var(--spacing-sm) 0 0 var(--spacing-lg)}.search-warning-skipped{margin-top:var(--spacing-sm);color:var(--text-secondary);font-size:var(--text-xs)}@keyframes slideIn{0%{opacity:0;transform:scale(.96) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.results-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg) var(--spacing-xl);border-bottom:1px solid var(--border-light);background:linear-gradient(135deg,var(--bg-secondary) 0%,var(--bg-primary) 100%)}.results-title{display:flex;align-items:baseline;gap:var(--spacing-md)}.results-title h2{font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--text-primary);margin:0;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.results-count{font-size:var(--text-sm);color:var(--text-secondary);font-weight:var(--font-medium);padding:var(--spacing-xs) var(--spacing-sm);background:var(--bg-tertiary);border-radius:var(--radius-full)}.results-actions{display:flex;gap:var(--spacing-sm)}.export-btn{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-sm) var(--spacing-lg);background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);color:var(--text-inverse);border:none;border-radius:var(--radius-lg);font-size:var(--text-sm);font-weight:var(--font-semibold);cursor:pointer;transition:all var(--transition-base);box-shadow:var(--shadow-md)}.export-btn:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);filter:brightness(1.1)}.export-btn:active{transform:translateY(0);box-shadow:var(--shadow-sm)}.export-btn span{font-size:18px}.close-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-medium);border-radius:var(--radius-lg);font-size:20px;font-weight:var(--font-semibold);cursor:pointer;transition:all var(--transition-base);line-height:1}.close-btn:hover{background:var(--color-error);color:var(--text-inverse);border-color:var(--color-error-dark);transform:scale(1.05)}.close-btn:active{transform:scale(.95)}.search-context-bar{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-xl);background:var(--bg-secondary);border-bottom:1px solid var(--border-light)}.context-icon{font-size:20px;filter:grayscale(20%);display:inline-flex;align-items:center;justify-content:center}.context-info{display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap;font-size:var(--text-sm);color:var(--text-secondary)}.context-item{font-weight:var(--font-medium);color:var(--text-primary);padding:var(--spacing-xs) var(--spacing-sm);background:var(--bg-tertiary);border-radius:var(--radius-md)}.context-divider{color:var(--text-muted);font-weight:var(--font-normal)}.results-tabs{display:flex;gap:4px;padding:var(--spacing-sm, 12px) var(--spacing-xl);background:var(--gray-100, #f1f5f9);border-bottom:1px solid var(--gray-200, #e2e8f0);overflow-x:auto;overflow-y:hidden;scrollbar-width:none}.results-tabs::-webkit-scrollbar{display:none}.results-tabs .tab-button{display:flex;align-items:center;gap:var(--spacing-sm);padding:10px 20px;background:transparent;border:none;border-radius:8px;font-size:var(--text-sm);font-weight:500;color:var(--text-secondary, #64748b);cursor:pointer;transition:all .2s ease;white-space:nowrap}.results-tabs .tab-button:hover{background:#fffc;color:var(--text-primary, #334155)}.results-tabs .tab-button.active{background:var(--bg-primary, white);color:var(--color-primary);box-shadow:0 2px 4px #0000000d}.tab-icon{font-size:18px;display:inline-flex;align-items:center;justify-content:center}.tab-label{font-weight:var(--font-semibold)}.tab-content{padding:var(--spacing-xl);flex:1;overflow-y:auto;background:var(--bg-primary)}.results-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--spacing-sm);min-height:320px;background:var(--bg-secondary);border-radius:var(--radius-lg);border:1px dashed var(--border-medium);text-align:center;padding:var(--spacing-xl)}.results-empty-state h3{margin:0;color:var(--text-primary);font-size:var(--text-xl)}.results-empty-state p{margin:0;color:var(--text-secondary);font-size:var(--text-sm)}.tab-content::-webkit-scrollbar{width:10px}.tab-content::-webkit-scrollbar-track{background:var(--bg-secondary);border-radius:var(--radius-md)}.tab-content::-webkit-scrollbar-thumb{background:var(--border-medium);border-radius:var(--radius-md);border:2px solid var(--bg-secondary)}.tab-content::-webkit-scrollbar-thumb:hover{background:var(--border-dark)}@media (max-width: 768px){.modal-backdrop{padding:0}.admin-results-modal{border-radius:0;max-height:100vh}.results-header{padding:var(--spacing-md) var(--spacing-lg)}.results-title h2{font-size:var(--text-2xl)}.search-context-bar,.results-tabs{padding:var(--spacing-sm) var(--spacing-lg)}.results-tabs .tab-button{padding:8px 12px;font-size:var(--text-xs)}.tab-icon{font-size:16px}.tab-content{padding:var(--spacing-lg)}.export-btn{padding:var(--spacing-sm) var(--spacing-md);font-size:var(--text-xs)}.export-btn span{font-size:16px}.close-btn{width:36px;height:36px;font-size:18px}}.summary-tab{animation:fadeIn .3s ease-in}.section-title{font-size:20px;font-weight:700;color:var(--text-primary);margin:0 0 16px;padding-bottom:8px;border-bottom:2px solid var(--border-medium);letter-spacing:-.02em}.overview-section{margin-bottom:32px}.overview-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.overview-card{display:flex;align-items:center;gap:16px;padding:20px;background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:12px;transition:all .3s}.overview-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg);border-color:var(--border-medium)}.overview-icon{font-size:36px;width:60px;height:60px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);border-radius:12px;box-shadow:var(--shadow-md)}.overview-content{flex:1}.overview-value{font-size:26px;font-weight:700;color:var(--text-primary);line-height:1.2}.overview-label{font-size:14px;color:var(--text-secondary);font-weight:600;margin-top:4px}.stats-section{margin-bottom:24px}.stats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:16px}.stat-card{padding:20px;background:var(--bg-secondary);border:2px solid var(--border-light);border-radius:12px;transition:all .3s;position:relative;overflow:hidden}.stat-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--color-primary) 0%,var(--color-secondary) 100%);opacity:0;transition:opacity .3s}.stat-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl);border-color:var(--border-medium)}.stat-card:hover:before{opacity:1}.stat-header{display:flex;align-items:center;gap:8px;margin-bottom:12px}.stat-icon{font-size:24px}.stat-label{font-size:15px;font-weight:700;color:var(--text-primary);text-transform:uppercase;letter-spacing:.02em}.stat-total{font-size:36px;font-weight:700;color:var(--text-primary);margin-bottom:12px;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.stat-details{display:flex;gap:16px;margin-bottom:8px}.stat-detail-item{flex:1;display:flex;flex-direction:column;gap:4px}.stat-detail-label{font-size:11px;color:var(--text-muted);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.stat-detail-value{font-size:16px;color:var(--text-primary);font-weight:700}.stat-trend{display:flex;align-items:center;gap:6px;font-size:13px;font-weight:600;padding:6px 10px;background:#00000008;border-radius:6px;margin-top:8px}.trend-icon{font-size:16px}.trend-text{font-weight:700}.details-tab{animation:fadeIn .3s ease-in}.details-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:12px;border-bottom:2px solid var(--border-medium)}.details-header h3{font-size:20px;font-weight:700;color:var(--text-primary);margin:0;letter-spacing:-.02em}.record-count{font-size:14px;color:var(--text-secondary);font-weight:600;padding:4px 12px;background:var(--bg-tertiary);border-radius:12px}.details-table-wrapper{overflow-x:auto;border-radius:12px;border:1px solid var(--border-light);background:var(--bg-secondary)}.details-table{width:100%;border-collapse:collapse;font-size:14px}.details-table thead{background:var(--bg-tertiary);position:sticky;top:0;z-index:10}.details-table th{padding:14px 16px;text-align:left;font-weight:700;color:var(--text-primary);border-bottom:2px solid var(--border-medium);white-space:nowrap;font-size:13px;text-transform:uppercase;letter-spacing:.5px}.details-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .2s}.details-table th.sortable:hover{background:var(--bg-hover);color:var(--color-primary)}.details-table tbody{background:var(--bg-secondary)}.details-table tr.data-row{border-bottom:1px solid var(--border-light);transition:all .2s}.details-table tr.data-row:hover{background:var(--bg-hover);transform:scale(1.005);box-shadow:var(--shadow-sm)}.details-table td{padding:12px 16px;color:var(--text-secondary);font-size:13px}.date-cell{font-weight:600;color:var(--text-primary);white-space:nowrap}.officer-cell{font-weight:600;color:#475569}.value-cell{text-align:center;font-weight:600;color:#64748b}.details-table tfoot{background:linear-gradient(135deg,#667eea,#764ba2);position:sticky;bottom:0}.totals-row{font-weight:700}.totals-label{color:#fff;font-size:14px;letter-spacing:1px;padding:16px!important}.totals-value{color:#fff;font-size:16px;text-align:center!important;padding:16px!important}.analysis-tab{animation:fadeIn .3s ease-in}.section-title{font-size:18px;font-weight:700;color:#1e293b;margin:0 0 16px;padding-bottom:8px;border-bottom:2px solid #e5e7eb}.analysis-section{margin-bottom:32px}.analysis-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:16px}.analysis-card{padding:20px;background:var(--bg-primary);border:2px solid var(--border-light);border-radius:12px;transition:all .3s}.analysis-card:hover{transform:translateY(-4px);box-shadow:0 12px 24px #0000001f}.analysis-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.analysis-title{font-size:16px;font-weight:700;color:#1e293b;margin:0}.trend-badge{padding:4px 10px;border-radius:12px;font-size:12px;font-weight:700}.trend-up{background:#dcfce7;color:#166534}.trend-down{background:#fee2e2;color:#991b1b}.trend-stable{background:#f3f4f6;color:#4b5563}.analysis-metrics{margin-bottom:16px}.metric-row{display:flex;justify-content:space-between;padding:8px 0;border-bottom:1px solid #f1f5f9}.metric-label{font-size:13px;color:#64748b;font-weight:500}.metric-value{font-size:14px;color:#1e293b;font-weight:700}.metric-primary{font-size:18px;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.consistency-bar{margin-top:12px;padding-top:12px;border-top:1px solid #e5e7eb}.consistency-label{font-size:12px;color:#64748b;margin-bottom:6px;font-weight:600}.consistency-indicator{height:8px;background:#f1f5f9;border-radius:4px;overflow:hidden;margin-bottom:6px}.consistency-fill{height:100%;border-radius:4px;transition:all .3s}.consistency-status{font-size:12px;font-weight:700}.performance-pattern-section{margin:12px 0;padding:12px;background:#f9fafb;border-radius:8px;border:1px solid #e5e7eb}.pattern-header{display:flex;align-items:center;gap:8px;margin-bottom:6px}.pattern-icon{font-size:20px}.pattern-label{font-weight:700;font-size:14px}.pattern-description{font-size:13px;color:#4b5563;margin-bottom:4px}.pattern-detail{font-size:12px;color:#6b7280;font-style:italic;margin-bottom:8px}.pattern-metric{display:flex;justify-content:space-between;font-size:11px;color:#9ca3af;margin-top:8px;padding-top:8px;border-top:1px solid #e5e7eb}.metric-sublabel{font-weight:500}.insights-section{margin-bottom:24px}.insights-list{display:flex;flex-direction:column;gap:12px}.insight-item{display:flex;gap:12px;padding:16px;border-radius:12px;border:2px solid}.insight-info{background:#eff6ff;border-color:#bfdbfe}.insight-success{background:#f0fdf4;border-color:#bbf7d0}.insight-warning{background:#fef3c7;border-color:#fde68a}.insight-icon{font-size:24px}.insight-content{flex:1;font-size:14px;color:#374151;line-height:1.6}.department-analysis-section{margin-top:32px;margin-bottom:24px}.department-loading-card{padding:48px 24px;background:linear-gradient(135deg,#3b82f60d,#2563eb05);border:2px solid rgba(59,130,246,.2);border-radius:12px;box-shadow:var(--shadow-md);display:flex;flex-direction:column;align-items:center;gap:16px}.loading-spinner{width:40px;height:40px;border:4px solid rgba(59,130,246,.1);border-top-color:#3b82f6cc;border-radius:50%;animation:spin .8s linear infinite}.loading-text{font-size:14px;color:var(--text-secondary);font-weight:500}.department-analysis-card{padding:24px;background:linear-gradient(135deg,#3b82f60d,#2563eb05);border:2px solid rgba(59,130,246,.2);border-radius:12px;box-shadow:var(--shadow-md)}.department-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px}.department-stat-item{text-align:center;padding:16px;background:var(--bg-secondary);border:1px solid var(--border-light);border-radius:8px;transition:all .2s}.department-stat-item:hover{transform:translateY(-2px);box-shadow:var(--shadow-md);border-color:var(--color-primary)}.department-stat-item .stat-label{font-size:12px;color:var(--text-secondary);font-weight:600;margin-bottom:8px;text-transform:uppercase;letter-spacing:.5px}.department-stat-item .stat-value{font-size:28px;font-weight:700;color:var(--text-primary);margin-bottom:4px;line-height:1.2}.department-stat-item .stat-sublabel{font-size:11px;color:var(--text-muted);font-weight:500}@media (max-width: 768px){.department-stats-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 480px){.department-stats-grid{grid-template-columns:1fr}}.comparison-tab{animation:fadeIn .3s ease-in}.comparison-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px;max-width:100%}@media (min-width: 768px){.comparison-grid{grid-template-columns:repeat(2,1fr)}}@media (min-width: 1200px){.comparison-grid{grid-template-columns:repeat(3,1fr)}}@media (min-width: 1600px){.comparison-grid{grid-template-columns:repeat(4,1fr)}}.officer-comparison-card{padding:16px;background:var(--bg-primary);border:2px solid var(--border-light);border-radius:12px;transition:all .3s;position:relative}.officer-comparison-card:hover{transform:translateY(-4px);box-shadow:0 16px 32px #00000026}.officer-rank{position:absolute;top:12px;right:12px;font-size:28px}.officer-name{font-size:18px;font-weight:700;color:#1e293b;margin:0 0 16px;padding-right:40px;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.officer-totals{display:flex;flex-direction:column;gap:10px}.comparison-stat{display:flex;justify-content:space-between;align-items:center;padding:8px 10px;background:#f8fafc;border-radius:6px}.comparison-label{font-size:12px;color:#64748b;font-weight:600}.comparison-values{display:flex;flex-direction:column;align-items:flex-end}.comparison-total{font-size:16px;font-weight:700;color:#1e293b}.comparison-avg{font-size:11px;color:#64748b;font-weight:500}.charts-tab{animation:fadeIn .3s ease-in}.chart-card{margin-bottom:32px;padding:24px;background:var(--bg-primary);border:2px solid var(--border-light);border-radius:16px;box-shadow:var(--shadow-sm)}.chart-title{font-size:16px;font-weight:700;color:#1e293b;margin:0 0 20px}.performance-forecast-tab{padding:24px;max-width:1400px;margin:0 auto}.forecast-header{margin-bottom:32px;text-align:center}.forecast-header h2{font-size:28px;font-weight:700;color:var(--text-primary);margin:0 0 8px}.forecast-subtitle{font-size:16px;color:var(--text-muted);margin:0}.forecast-section{background:var(--bg-primary);border-radius:12px;padding:24px;margin-bottom:24px;box-shadow:var(--shadow-sm)}.forecast-section .section-header{margin-bottom:20px;padding-bottom:16px;border-bottom:2px solid var(--border-light)}.forecast-section .section-header h3{font-size:20px;font-weight:600;color:var(--text-primary);margin:0 0 4px}.mode-toggle{display:inline-flex;background:var(--bg-primary);border:1px solid var(--border-light);border-radius:999px;overflow:hidden}.mode-btn{border:none;background:transparent;padding:10px 14px;font-weight:700;color:var(--text-secondary);cursor:pointer}.forecast-section .section-header p{font-size:14px;color:var(--text-muted);margin:0}.forecast-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center}.forecast-loading .loading-spinner{width:48px;height:48px;border:4px solid var(--border-light);border-top-color:var(--color-primary);border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}.forecast-loading p{font-size:16px;color:var(--text-muted);margin:0}.forecast-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;text-align:center;background:#fef2f2;border-radius:12px;border:1px solid #fecaca}.forecast-error .error-icon{font-size:48px;margin-bottom:16px}.forecast-error h3{font-size:20px;font-weight:600;color:#991b1b;margin:0 0 8px}.forecast-error p{font-size:14px;color:#7f1d1d;margin:0;max-width:500px}.forecast-totals-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;margin-top:24px}.forecast-total-card{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:16px;padding:32px 24px;color:#fff;text-align:center;box-shadow:0 8px 24px #667eea40;transition:transform .2s ease,box-shadow .2s ease}.forecast-total-card:hover{transform:translateY(-4px);box-shadow:0 12px 32px #667eea59}.forecast-total-card .total-icon{font-size:48px;margin-bottom:12px;opacity:.9}.forecast-total-card .total-period{font-size:18px;font-weight:600;margin-bottom:16px;opacity:.95;text-transform:uppercase;letter-spacing:1px}.forecast-total-card .total-value{font-size:56px;font-weight:700;line-height:1;margin-bottom:8px;text-shadow:0 2px 4px rgba(0,0,0,.2)}.forecast-total-card .total-label{font-size:16px;margin-bottom:16px;opacity:.9;font-weight:500}.forecast-total-card .total-confidence{font-size:14px;padding:8px 16px;background:#fff3;border-radius:20px;display:inline-block;font-weight:600;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}@media (max-width: 768px){.performance-forecast-tab{padding:16px}.forecast-header h2{font-size:24px}.forecast-section{padding:16px}.forecast-section .section-header h3{font-size:18px}.forecast-totals-grid{grid-template-columns:1fr;gap:16px}.forecast-total-card .total-value{font-size:42px}}.k9-results-section .modal-backdrop,.modal-backdrop:has(.k9-results-modal){position:fixed;top:0;left:0;right:0;bottom:0;background:#000000bf;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal-backdrop, 1000);padding:var(--spacing-md, 16px);animation:k9FadeIn .2s ease-out}@keyframes k9FadeIn{0%{opacity:0}to{opacity:1}}.k9-results-modal{background:var(--bg-primary);border-radius:var(--radius-xl, 16px);box-shadow:var(--shadow-2xl);border:1px solid var(--border-light);overflow:hidden;animation:k9SlideIn .3s cubic-bezier(.4,0,.2,1);width:100%;max-width:1400px;max-height:95vh;display:flex;flex-direction:column;padding:24px}@keyframes k9SlideIn{0%{opacity:0;transform:scale(.96) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.k9-results-modal .results-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--border-light)}.k9-results-modal .results-title{display:flex;align-items:center;gap:12px}.k9-results-modal .results-title h2{font-size:var(--text-xl);font-weight:var(--font-semibold);margin:0;color:var(--text-primary)}.k9-results-modal .results-count{background:var(--accent-primary);color:#fff;padding:4px 12px;border-radius:20px;font-size:var(--text-sm);font-weight:var(--font-medium)}.k9-results-modal .results-actions{display:flex;gap:8px;align-items:center}.k9-results-modal .close-btn{width:36px;height:36px;border-radius:50%;border:1px solid var(--border-light);background:var(--bg-secondary);color:var(--text-secondary);font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.k9-results-modal .close-btn:hover{background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--border-medium)}.k9-results-modal .results-summary{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:20px;padding:16px;background:var(--bg-secondary);border-radius:8px}.k9-results-modal .summary-item{display:flex;flex-direction:column;gap:4px}.k9-results-modal .summary-label{font-size:var(--text-xs);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.k9-results-modal .summary-value{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary)}.k9-results-modal .summary-item.highlight{padding:8px 16px;background:var(--accent-primary-light, rgba(99, 102, 241, .1));border-radius:8px}.k9-results-modal .summary-item.highlight .summary-value{color:var(--accent-primary)}.k9-results-modal .results-table-wrapper{overflow-x:auto;max-height:calc(95vh - 280px);overflow-y:auto}.k9-results-modal .results-table{width:100%;border-collapse:collapse}.k9-results-modal .results-table th,.k9-results-modal .results-table td{padding:12px 16px;text-align:left;border-bottom:1px solid var(--border-light)}.k9-results-modal .results-table th{background:var(--bg-secondary);font-weight:var(--font-semibold);color:var(--text-primary);position:sticky;top:0;z-index:1}.k9-results-modal .results-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.k9-results-modal .results-table th.sortable:hover{background:var(--bg-tertiary)}.k9-results-modal .results-table tbody tr:hover{background:var(--bg-secondary)}.k9-results-modal .results-table .stat-value{text-align:center;font-variant-numeric:tabular-nums}.k9-results-modal .results-table .totals-row{background:var(--accent-primary-light, rgba(99, 102, 241, .1));font-weight:var(--font-semibold)}.k9-results-modal .results-table .totals-row td{border-bottom:none}.k9-results-modal .no-results{text-align:center;padding:48px;color:var(--text-secondary)}.k9-results-section{background:var(--bg-primary);border-radius:12px;padding:24px;box-shadow:var(--shadow-sm);margin-top:24px}.k9-results-section .results-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.k9-results-section .results-header h2{font-size:var(--text-xl);font-weight:var(--font-semibold);margin:0;color:var(--text-primary)}.k9-results-section .results-actions{display:flex;gap:8px}.k9-results-section .results-summary{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:20px;padding:16px;background:var(--bg-secondary);border-radius:8px}.k9-results-section .summary-item{display:flex;flex-direction:column;gap:4px}.k9-results-section .summary-label{font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;font-weight:var(--font-medium)}.k9-results-section .summary-value{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--text-primary)}.k9-results-section .summary-item.highlight{padding:8px 16px;background:var(--color-primary-light);border-radius:8px}.k9-results-section .summary-item.highlight .summary-value{color:var(--color-primary);font-size:var(--text-lg)}.k9-results-section .results-table-wrapper{overflow-x:auto;border-radius:12px;border:1px solid var(--border-light);background:var(--bg-secondary)}.k9-results-section .results-table{width:100%;border-collapse:collapse;font-size:14px}.k9-results-section .results-table thead{background:var(--bg-tertiary);position:sticky;top:0;z-index:10}.k9-results-section .results-table th{background:var(--bg-tertiary)!important;padding:14px 16px!important;text-align:left!important;font-weight:700!important;font-size:13px!important;text-transform:uppercase;letter-spacing:.5px;border-bottom:2px solid var(--border-medium)!important;color:var(--text-primary)!important;white-space:nowrap}.k9-results-section .results-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .2s}.k9-results-section .results-table th.sortable:hover{background:var(--bg-hover)!important;color:var(--color-primary)!important}.k9-results-section .results-table th.sorted{background:var(--color-primary-light)!important;color:var(--color-primary)!important}.k9-results-section .results-table tbody{background:var(--bg-secondary)}.k9-results-section .results-table tbody tr{border-bottom:1px solid var(--border-light);transition:all .2s}.k9-results-section .results-table tbody tr:hover{background:var(--bg-hover)}.k9-results-section .results-table td{padding:12px 16px!important;border-bottom:1px solid var(--border-light)!important;color:var(--text-primary)!important;font-size:13px!important}.k9-results-section .results-table td.stat-value{text-align:right;font-family:SF Mono,Monaco,Menlo,Consolas,monospace;font-size:13px!important;font-weight:600}.k9-results-section .totals-row{font-weight:700;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%)!important}.k9-results-section .totals-row td{border-top:none!important;padding:16px!important;color:#fff!important;font-size:14px!important}.k9-results-section .no-results{text-align:center;padding:40px;color:var(--text-muted)}.k9-results-section .no-results p{margin:0;font-size:var(--text-base)}@media (max-width: 768px){.k9-results-section{padding:16px}.k9-results-section .results-header{flex-direction:column;gap:12px;align-items:flex-start}.k9-results-section .results-summary{flex-direction:column;gap:12px}.k9-results-section .results-table{font-size:var(--text-xs)}.k9-results-section .results-table th,.k9-results-section .results-table td{padding:8px}}.k9-search-panel{width:100%}.no-officers-message .hint{font-size:13px;color:var(--text-muted);font-style:italic}.k9-handler-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;background:var(--color-success-light);color:var(--color-success-dark);border-radius:12px;font-size:12px;font-weight:500}.seizure-results-section .modal-backdrop,.modal-backdrop:has(.seizure-results-modal){position:fixed;top:0;left:0;right:0;bottom:0;background:#000000bf;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:var(--z-modal-backdrop, 1000);padding:var(--spacing-md, 16px);animation:seizureFadeIn .2s ease-out}@keyframes seizureFadeIn{0%{opacity:0}to{opacity:1}}.seizure-results-modal{background:var(--bg-primary);border-radius:var(--radius-xl, 16px);box-shadow:var(--shadow-2xl);border:1px solid var(--border-light);overflow:hidden;animation:seizureSlideIn .3s cubic-bezier(.4,0,.2,1);width:100%;max-width:1400px;max-height:95vh;display:flex;flex-direction:column;padding:24px}@keyframes seizureSlideIn{0%{opacity:0;transform:scale(.96) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.seizure-results-modal .results-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--border-light)}.seizure-results-modal .results-title{display:flex;align-items:center;gap:12px}.seizure-results-modal .results-title h2{font-size:var(--text-xl);font-weight:var(--font-semibold);margin:0;color:var(--text-primary)}.seizure-results-modal .results-count{background:var(--accent-primary);color:#fff;padding:4px 12px;border-radius:20px;font-size:var(--text-sm);font-weight:var(--font-medium)}.seizure-results-modal .results-actions{display:flex;gap:8px;align-items:center}.seizure-results-modal .close-btn{width:36px;height:36px;border-radius:50%;border:1px solid var(--border-light);background:var(--bg-secondary);color:var(--text-secondary);font-size:18px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.seizure-results-modal .close-btn:hover{background:var(--bg-tertiary);color:var(--text-primary);border-color:var(--border-medium)}.seizure-results-modal .view-mode-tabs{display:flex;gap:4px;margin-bottom:20px;padding:8px 12px;background:var(--gray-100, #f1f5f9);border-radius:8px}.seizure-results-modal .view-tab{padding:8px 16px;border:none;background:transparent;color:var(--text-secondary, #64748b);font-size:var(--text-sm);font-weight:500;cursor:pointer;border-radius:6px;transition:all .2s ease}.seizure-results-modal .view-tab:hover{background:#fffc;color:var(--text-primary, #334155)}.seizure-results-modal .view-tab.active{background:var(--bg-primary, white);color:var(--accent-primary, #673AB7);box-shadow:0 2px 4px #0000000d}.seizure-results-modal .results-summary{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:20px;padding:16px;background:var(--bg-secondary);border-radius:8px}.seizure-results-modal .summary-item{display:flex;flex-direction:column;gap:4px}.seizure-results-modal .summary-label{font-size:var(--text-xs);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.seizure-results-modal .summary-value{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary)}.seizure-results-modal .summary-item.highlight{padding:8px 16px;border-radius:8px}.seizure-results-modal .summary-item.highlight.currency{background:#10b9811a}.seizure-results-modal .summary-item.highlight.currency .summary-value{color:#10b981}.seizure-results-modal .summary-item.highlight.drugs{background:#8b5cf61a}.seizure-results-modal .summary-item.highlight.drugs .summary-value{color:#8b5cf6}.seizure-results-modal .results-table-wrapper{overflow-x:auto;max-height:calc(95vh - 350px);overflow-y:auto}.seizure-results-modal .results-table{width:100%;border-collapse:collapse}.seizure-results-modal .results-table th,.seizure-results-modal .results-table td{padding:12px 16px;text-align:left;border-bottom:1px solid var(--border-light)}.seizure-results-modal .results-table th{background:var(--bg-secondary);font-weight:var(--font-semibold);color:var(--text-primary);position:sticky;top:0;z-index:1}.seizure-results-modal .results-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}.seizure-results-modal .results-table th.sortable:hover{background:var(--bg-tertiary)}.seizure-results-modal .results-table tbody tr:hover{background:var(--bg-secondary)}.seizure-results-modal .results-table .stat-value{text-align:right;font-variant-numeric:tabular-nums}.seizure-results-modal .results-table .totals-row{background:var(--accent-primary-light, rgba(99, 102, 241, .1));font-weight:var(--font-semibold)}.seizure-results-modal .results-table .totals-row td{border-bottom:none}.seizure-results-modal .type-badge{display:inline-flex;align-items:center;padding:4px 12px;border-radius:20px;font-size:var(--text-sm);font-weight:var(--font-medium)}.seizure-results-modal .type-badge.currency{background:#10b98126;color:#10b981}.seizure-results-modal .type-badge.drug{background:#8b5cf626;color:#8b5cf6}.seizure-results-modal .no-results{text-align:center;padding:48px;color:var(--text-secondary)}.seizure-results-modal .summary-view,.seizure-results-modal .drug-breakdown-view{margin-top:20px}.seizure-results-modal .summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.seizure-results-modal .summary-card{padding:20px;border-radius:12px;text-align:center}.seizure-results-modal .summary-card h3{margin:0 0 8px;font-size:var(--text-sm);color:var(--text-secondary)}.seizure-results-modal .summary-card .card-value{font-size:var(--text-2xl);font-weight:var(--font-bold)}.seizure-results-modal .summary-card .card-detail{font-size:var(--text-sm);color:var(--text-secondary);margin-top:4px}.seizure-results-modal .summary-card.currency-card{background:#10b9811a}.seizure-results-modal .summary-card.currency-card .card-value{color:#10b981}.seizure-results-modal .summary-card.drugs-card{background:#8b5cf61a}.seizure-results-modal .summary-card.drugs-card .card-value{color:#8b5cf6}.seizure-results-section{background:var(--bg-primary);border-radius:12px;padding:24px;box-shadow:var(--shadow-sm);margin-top:24px}.seizure-results-section .results-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.seizure-results-section .results-header h2{font-size:var(--text-xl);font-weight:var(--font-semibold);margin:0;color:var(--text-primary)}.seizure-results-section .results-actions{display:flex;gap:8px}.seizure-results-section .results-summary{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:20px;padding:16px;background:var(--bg-secondary);border-radius:8px}.seizure-results-section .summary-item{display:flex;flex-direction:column;gap:4px}.seizure-results-section .summary-label{font-size:var(--text-xs);color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;font-weight:var(--font-medium)}.seizure-results-section .summary-value{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--text-primary)}.seizure-table-wrapper{overflow-x:auto;border-radius:12px;border:1px solid var(--border-light);background:var(--bg-secondary)}.seizure-table{width:100%;border-collapse:collapse;font-size:14px}.seizure-table thead{background:var(--bg-tertiary);position:sticky;top:0;z-index:10}.seizure-table th{padding:14px 16px;text-align:left;font-weight:700;color:var(--text-primary)!important;border-bottom:2px solid var(--border-medium);white-space:nowrap;font-size:13px;text-transform:uppercase;letter-spacing:.5px;background:var(--bg-tertiary)}.seizure-table th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none;transition:all .2s}.seizure-table th.sortable:hover{background:var(--bg-hover);color:var(--color-primary)!important}.seizure-table th.sorted{background:var(--color-primary-light);color:var(--color-primary)!important}.seizure-table tbody{background:var(--bg-secondary)}.seizure-table tbody tr{border-bottom:1px solid var(--border-light);transition:all .2s}.seizure-table tbody tr:hover{background:var(--bg-hover)}.seizure-table td{padding:12px 16px;color:var(--text-secondary);font-size:13px}.seizure-table td.stat-value{text-align:right;font-family:SF Mono,Monaco,Menlo,Consolas,monospace;font-size:13px;font-weight:600;color:var(--text-primary)}.seizure-table .totals-row{font-weight:700;background:var(--color-primary-light)}.seizure-table .totals-row td{padding:16px;color:var(--text-primary)!important;font-size:14px;border-bottom:none;border-top:2px solid var(--color-primary)}.seizure-results-section .no-results{text-align:center;padding:40px;color:var(--text-muted)}.seizure-results-section .no-results p{margin:0;font-size:var(--text-base)}.view-mode-tabs{display:flex;gap:4px;margin-bottom:20px;padding:8px 12px;background:var(--gray-100, #f1f5f9);border-radius:8px}.view-tab{padding:10px 20px;border:none;background:transparent;color:var(--text-secondary, #64748b);cursor:pointer;font-size:var(--text-sm);font-weight:500;border-radius:6px;transition:all .2s ease}.view-tab:hover{color:var(--text-primary, #334155);background:#fffc}.view-tab.active{color:var(--color-primary-dark, #1e40af);background:var(--bg-primary, white);box-shadow:0 2px 4px #0000000d;font-weight:var(--font-semibold)}.summary-view{margin-bottom:24px}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.summary-card{padding:24px;background:var(--bg-secondary);border-radius:12px;border:1px solid var(--border-light);text-align:center}.summary-card h3{margin:0 0 12px;font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.summary-card .card-value{font-size:var(--text-2xl);font-weight:var(--font-bold);margin-bottom:8px}.summary-card .card-detail{font-size:var(--text-sm);color:var(--text-muted)}.summary-card.currency-card{border-left:4px solid #047857}.summary-card.currency-card .card-value{color:#047857}.summary-card.drugs-card{border-left:4px solid #6D28D9}.summary-card.drugs-card .card-value{color:#6d28d9}.summary-item.highlight.currency{padding:8px 16px;background:#d1fae5;border-radius:8px}.summary-item.highlight.currency .summary-value{color:#047857;font-size:var(--text-lg)}.summary-item.highlight.drugs{padding:8px 16px;background:#ede9fe;border-radius:8px}.summary-item.highlight.drugs .summary-value{color:#6d28d9;font-size:var(--text-lg)}.type-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:12px;font-size:.8rem;font-weight:500}.type-badge.currency{background:#d1fae5;color:#047857}.type-badge.drug{background:#ede9fe;color:#6d28d9}.seizure-table .seizure-currency-row{background:#22c55e0d}.seizure-table .seizure-drug-row{background:#eab3080d}.drug-breakdown-view{margin-top:16px}.drug-breakdown-table-wrapper{overflow-x:auto;border:1px solid var(--border-light);border-radius:8px}.drug-breakdown-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.drug-breakdown-table th,.drug-breakdown-table td{padding:12px 16px;text-align:left;border-bottom:1px solid var(--border-light);font-size:var(--text-sm)}.drug-breakdown-table th{background:var(--bg-tertiary);font-weight:var(--font-semibold);font-size:var(--text-xs);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.5px}.drug-breakdown-table td{color:var(--text-primary)}.drug-breakdown-table td.stat-value{text-align:right;font-family:SF Mono,Monaco,Menlo,Consolas,monospace;font-weight:var(--font-medium)}.drug-breakdown-table tbody tr:hover{background:var(--bg-hover)}.drug-breakdown-table tbody tr:last-child td{border-bottom:none}@media (max-width: 768px){.seizure-results-section{padding:16px}.seizure-results-section .results-header{flex-direction:column;gap:12px;align-items:flex-start}.seizure-results-section .results-summary{flex-direction:column;gap:12px}.view-mode-tabs{overflow-x:auto;padding:6px 8px}.view-tab{padding:8px 12px;font-size:var(--text-xs);white-space:nowrap}.summary-cards{grid-template-columns:1fr}}.seizure-search-panel{width:100%}.seizure-type-filter{margin-bottom:20px}.seizure-type-filter>label{display:block;font-weight:500;margin-bottom:8px;color:var(--text-primary)}.seizure-type-buttons{display:flex;gap:8px;flex-wrap:wrap}.type-button{padding:8px 16px;border:1px solid var(--border-medium);background:var(--bg-primary);color:var(--text-secondary);border-radius:6px;cursor:pointer;font-size:14px;transition:all .2s}.type-button:hover{background:var(--bg-secondary);border-color:var(--border-dark)}.type-button.selected{background:var(--color-primary);color:#fff;border-color:var(--color-primary)}.drug-type-filter{margin-bottom:20px}.drug-type-filter>label{display:block;font-weight:500;margin-bottom:8px;color:var(--text-primary)}.drug-type-filter select{width:100%;max-width:300px;padding:8px 12px;border:1px solid var(--border-medium);border-radius:6px;background:var(--bg-primary);color:var(--text-primary);font-size:14px}.drug-type-filter select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px rgba(var(--color-primary-rgb),.1)}.no-officers-message{padding:20px;text-align:center;background:var(--bg-secondary);border-radius:8px;border:1px dashed var(--border-medium)}.no-officers-message p{margin:0 0 8px;color:var(--text-secondary)}.admin-search-container{min-height:100vh;background-color:var(--bg-secondary);padding:0 var(--spacing-md) var(--spacing-md)}.admin-search-content{max-width:1400px;margin:0 auto}.admin-header{margin-bottom:24px}.admin-header h1{font-size:var(--text-page-title);font-weight:var(--font-semibold);margin:0 0 8px;color:var(--text-primary)}.admin-subtitle{color:var(--text-muted);margin:0;font-size:var(--text-sm)}.filters-card{background:var(--bg-primary);border-radius:12px;padding:24px;box-shadow:var(--shadow-sm);margin-bottom:24px}.filters-card h2{font-size:var(--text-lg);margin:0 0 20px;color:var(--text-primary)}.quick-dates{display:flex;gap:8px;align-items:center;margin-bottom:20px;flex-wrap:wrap}.quick-dates label{font-weight:500;color:var(--text-muted);margin-right:8px}.quick-dates button{padding:6px 12px;border:1px solid var(--border-medium);background:var(--bg-primary);color:var(--text-primary);border-radius:6px;cursor:pointer;font-size:var(--text-sm);transition:all .2s}.quick-dates button:hover{background:var(--bg-hover);border-color:var(--color-primary);color:var(--color-primary)}.date-range{display:flex;gap:16px;margin-bottom:20px}.date-field{flex:1;display:flex;flex-direction:column;gap:6px}.date-field label{font-weight:500;color:var(--text-muted);font-size:var(--text-sm)}.date-field input[type=date]{padding:10px;border:1px solid var(--border-medium);border-radius:6px;font-size:var(--text-sm);background:var(--bg-primary);color:var(--text-primary)}.officer-select{margin-bottom:20px}.officer-select-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:10px}.officer-select-header label{font-weight:500;color:var(--text-muted)}.officer-actions{display:flex;gap:8px}.officer-actions button{padding:6px 12px;border:1px solid var(--border-medium);background:var(--bg-primary);color:var(--text-primary);border-radius:4px;cursor:pointer;font-size:var(--text-sm);transition:all .2s}.officer-actions button:hover:not(:disabled){background:var(--bg-hover);border-color:var(--color-primary)}.officer-actions button:disabled{opacity:.5;cursor:not-allowed}.officer-search{width:100%;padding:8px 12px;border:2px solid var(--border-medium);border-radius:6px;font-size:var(--text-sm);margin-bottom:10px;transition:border-color .2s;background:var(--bg-primary);color:var(--text-primary)}.officer-search:focus{outline:none;border-color:var(--color-primary)}.officer-list{display:flex;flex-direction:column;max-height:250px;overflow-y:auto;padding:12px;border:1px solid var(--border-medium);border-radius:6px;background:var(--bg-tertiary);gap:4px}.officer-checkbox{display:flex;align-items:center;gap:6px;cursor:pointer;padding:4px 8px;border-radius:4px;transition:background .2s;font-size:var(--text-sm);width:fit-content;white-space:nowrap}.officer-checkbox.highlighted{background:var(--color-warning-light);font-weight:500}.officer-checkbox.highlighted:hover{background:var(--color-warning)}.officer-checkbox input[type=checkbox]{flex-shrink:0;width:16px;height:16px;min-width:16px;min-height:16px;margin:0;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:2px solid var(--border-medium);border-radius:3px;background:var(--bg-primary);position:relative}.category-filters{margin-bottom:24px}.category-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.category-header>label{font-weight:500;color:var(--text-muted)}.category-header-actions{display:flex;align-items:center;gap:16px}.show-inactive-toggle{display:flex;align-items:center;gap:6px;font-size:var(--text-sm);color:var(--text-secondary);cursor:pointer;-webkit-user-select:none;user-select:none}.show-inactive-toggle input[type=checkbox]{width:16px;height:16px;cursor:pointer;accent-color:var(--color-primary)}.show-inactive-toggle:hover{color:var(--text-primary)}.category-chips{display:flex;flex-wrap:wrap;gap:8px}.chip-button{padding:8px 16px;border:2px solid var(--border-medium);background:var(--bg-primary);color:var(--text-primary);border-radius:20px;cursor:pointer;font-size:var(--text-sm);font-weight:500;transition:all .2s}.chip-button:hover{border-color:var(--color-primary);background:var(--bg-hover)}.chip-button.selected{background:var(--color-primary);color:var(--text-inverse);border-color:var(--color-primary)}.chip-button.inactive{opacity:.75;border-style:dashed}.chip-inactive-tag{margin-left:8px;font-size:10px;padding:2px 6px;border-radius:999px;background:#00000014}.filter-actions{display:flex;gap:12px;margin-top:24px}.admin-search-container .filter-actions{justify-content:flex-end}.admin-search-container .filter-actions .btn-primary,.admin-search-container .filter-actions .btn-secondary{width:auto}.admin-search-container .filter-actions .btn-secondary{order:1}.admin-search-container .filter-actions .btn-primary{order:2}.btn-primary{padding:12px 24px;background:var(--color-primary);color:var(--text-inverse);border:none;border-radius:6px;cursor:pointer;font-size:var(--text-sm);font-weight:500;transition:background .2s}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover)}.btn-primary:disabled{background:var(--gray-400);cursor:not-allowed}.btn-secondary{padding:12px 24px;background:var(--bg-primary);color:var(--text-secondary);border:2px solid var(--border-medium);border-radius:6px;cursor:pointer;font-size:var(--text-sm);font-weight:500;transition:all .2s}.btn-secondary:hover{border-color:var(--border-dark);color:var(--text-primary)}.results-section{background:var(--bg-primary);border-radius:12px;padding:24px;box-shadow:var(--shadow-sm)}.results-section h2{font-size:var(--text-lg);margin:0 0 16px;color:var(--text-primary)}.results-table-wrapper{overflow-x:auto}.results-table{width:100%;border-collapse:collapse;font-size:var(--text-sm)}.results-table th{background:var(--bg-tertiary);padding:12px;text-align:left;font-weight:600;border-bottom:2px solid var(--border-medium);position:sticky;top:0;color:var(--text-primary)}.results-table td{padding:10px 12px;border-bottom:1px solid var(--border-light);color:var(--text-primary)}.results-table tbody tr:hover{background:var(--bg-hover)}.totals-row{font-weight:700;background:var(--color-primary-light)!important}.totals-row td{border-top:3px solid var(--color-primary)!important;padding:14px 12px!important;color:var(--text-primary)}.error-message{padding:12px;background:var(--color-error-light);color:var(--color-error-dark);border-radius:6px;margin-top:16px;font-size:var(--text-sm)}.empty-state{text-align:center;padding:40px;color:var(--text-muted)}.empty-state p{margin:8px 0}.shift-quick-select{margin-bottom:20px;padding:16px;background:var(--bg-secondary);border-radius:8px;border:1px solid var(--border-light)}.shift-quick-select label{display:block;font-weight:600;color:var(--text-primary);margin-bottom:12px;font-size:var(--text-sm)}.shift-buttons{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.shift-loading{color:var(--text-muted);font-size:var(--text-sm);font-style:italic}.shift-btn{padding:8px 16px;border:2px solid var(--shift-color, var(--border-medium));background:color-mix(in srgb,var(--shift-color, var(--color-primary)) 10%,var(--bg-primary));color:var(--shift-color, var(--text-primary));border-radius:8px;font-weight:600;font-size:var(--text-sm);cursor:pointer;transition:all .2s ease;white-space:nowrap}.shift-btn:hover{background:color-mix(in srgb,var(--shift-color, var(--color-primary)) 20%,var(--bg-primary));transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.shift-btn:active{transform:translateY(0)}.shift-btn.selected{background:var(--shift-color, var(--color-primary));color:#fff;box-shadow:0 2px 8px #0003;transform:translateY(-1px)}.shift-btn.selected:hover{background:color-mix(in srgb,var(--shift-color, var(--color-primary)) 90%,black)}.shift-btn-divider{width:1px;height:28px;background:var(--border-medium);margin:0 4px}.shift-btn-group{--shift-color: var(--text-secondary);background:var(--bg-primary);border-style:dashed}.shift-btn-group:hover{background:var(--bg-hover);border-style:solid}.shift-btn-group.selected{--shift-color: var(--color-primary);background:var(--color-primary);color:#fff;border-style:solid;box-shadow:0 2px 8px #0003}.shift-btn-group.selected:hover{background:color-mix(in srgb,var(--color-primary) 90%,black)}@media (max-width: 600px){.shift-buttons{flex-direction:column;align-items:stretch}.shift-btn{text-align:center}.shift-btn-divider{width:100%;height:1px;margin:8px 0}}.search-tabs{display:flex;gap:4px;margin-bottom:24px;padding:12px 16px;background:var(--gray-100, #f1f5f9);border-radius:12px;box-shadow:var(--shadow-sm)}.search-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 20px;font-size:var(--text-base);font-weight:500;color:var(--text-secondary, #64748b);background:transparent;border:none;border-radius:8px;cursor:pointer;transition:all .2s ease}.search-tab:hover{background:#fffc;color:var(--text-primary, #334155)}.search-tab.active{background:var(--bg-primary, white);color:var(--color-primary-dark, #1e40af);border:none;box-shadow:0 2px 4px #0000000d;font-weight:600}.tab-icon{font-size:var(--icon-md)}.coming-soon-placeholder{text-align:center;padding:60px 20px}.placeholder-icon{font-size:64px;display:block;margin-bottom:20px;opacity:.6}.coming-soon-placeholder h3{font-size:24px;color:var(--text-primary);margin:0 0 12px}.coming-soon-placeholder p{font-size:var(--text-base);color:var(--text-secondary);margin:0 0 8px}.placeholder-note{font-size:var(--text-xs)!important;color:var(--text-muted)!important;font-style:italic;margin-top:16px!important}@media (max-width: 600px){.search-tabs{flex-direction:column;gap:4px}.search-tab{padding:12px 16px;font-size:14px}.tab-icon{font-size:16px}}.user-management-container{min-height:100vh;background:var(--bg-secondary);display:flex;flex-direction:column;padding:0 var(--spacing-md) var(--spacing-md)}.user-management-content{flex:1;display:flex;flex-direction:column;padding:0 var(--spacing-md) var(--spacing-md);max-width:1400px;margin:0 auto;width:100%;overflow:hidden}.fixed-header{background:var(--bg-primary);border-radius:var(--radius-lg);padding:var(--spacing-md) var(--spacing-lg);margin-bottom:var(--spacing-md);box-shadow:var(--shadow-sm)}.header-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm)}.fixed-header h1{font-size:var(--text-page-title);margin:0 0 3px;color:var(--text-primary);font-weight:var(--font-semibold)}.subtitle{font-size:var(--text-sm);color:var(--text-muted);margin:0}.header-actions{display:flex;gap:10px;align-items:center}.btn-add-user{padding:8px 18px;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-hover) 100%);color:var(--text-inverse);border:none;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--font-semibold);cursor:pointer;transition:all .2s;box-shadow:0 2px 8px #3b82f64d}.btn-add-user:hover{transform:translateY(-1px);box-shadow:0 4px 12px #3b82f666}.btn-bulk-action{padding:8px 16px;background:linear-gradient(135deg,var(--color-warning) 0%,var(--color-warning-dark) 100%);color:var(--text-inverse);border:none;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--font-semibold);cursor:pointer;transition:all .2s;box-shadow:0 2px 8px #f59e0b4d}.btn-bulk-action:hover{transform:translateY(-1px);box-shadow:0 4px 12px #f59e0b66}.search-controls{display:flex;gap:12px;align-items:center}.search-input{flex:1;padding:8px 12px;font-size:var(--text-sm);border:2px solid var(--border-medium);border-radius:var(--radius-md);transition:all .2s;background:var(--bg-primary);color:var(--text-primary)}.search-input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.checkbox-label{display:flex;align-items:center;gap:8px;font-size:var(--text-sm);color:var(--text-secondary);white-space:nowrap;cursor:pointer}.checkbox-label input[type=checkbox]{width:18px;height:18px;cursor:pointer}.btn-deselect{padding:6px 14px;background:var(--bg-primary);color:var(--text-muted);border:2px solid var(--border-medium);border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--font-semibold);cursor:pointer;transition:all .2s;white-space:nowrap}.btn-deselect:hover{background:var(--bg-hover);border-color:var(--border-dark);color:var(--text-secondary);transform:translateY(-1px)}.message-banner{padding:10px 16px;border-radius:var(--radius-md);margin-bottom:12px;font-weight:500;font-size:var(--text-sm);animation:slideDown .3s ease-out}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.message-success{background:var(--color-success-light);color:var(--color-success-dark);border:1px solid var(--color-success)}.message-error{background:var(--color-error-light);color:var(--color-error-dark);border:1px solid var(--color-error)}.message-info{background:var(--color-primary-light);color:var(--color-primary-dark);border:1px solid var(--color-primary)}.user-grid-container{flex:1;background:var(--bg-primary);border-radius:10px;padding:20px;box-shadow:var(--shadow-sm);overflow-y:auto;min-height:0}.user-grid-container::-webkit-scrollbar{width:10px}.user-grid-container::-webkit-scrollbar-track{background:var(--bg-tertiary);border-radius:5px}.user-grid-container::-webkit-scrollbar-thumb{background:var(--border-medium);border-radius:5px}.user-grid-container::-webkit-scrollbar-thumb:hover{background:var(--border-dark)}.user-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.user-card{background:var(--bg-secondary);border:2px solid var(--border-medium);border-radius:8px;padding:10px 14px;display:flex;justify-content:space-between;align-items:center;gap:12px;transition:all .2s;position:relative;z-index:1}.user-card:has(.menu-wrapper .action-menu){z-index:1001}.user-card:hover{border-color:var(--color-primary);box-shadow:0 4px 12px #3b82f626;transform:translateY(-2px)}.user-card.selected{border-color:var(--color-warning);background:var(--color-warning-light);box-shadow:0 2px 8px #f59e0b33}.user-card.deleted{opacity:.6;background:var(--color-error-light);border-color:var(--color-error)}.user-checkbox{display:flex;align-items:center}.user-checkbox input[type=checkbox]{width:20px;height:20px;cursor:pointer;accent-color:var(--color-warning)}.user-info{flex:1}.user-name{font-size:var(--text-base);font-weight:var(--font-semibold);color:var(--text-primary);margin:0 0 2px}.user-username{font-size:var(--text-xs);color:var(--text-muted);margin:0 0 6px;font-family:Courier New,monospace}.user-badges{display:flex;gap:4px;flex-wrap:wrap}.user-management-container .badge{padding:2px 8px;border-radius:10px;font-size:var(--text-2xs);font-weight:var(--font-semibold);text-transform:uppercase;letter-spacing:.3px}.badge-admin{background:var(--color-warning-light);color:var(--color-warning-dark)}.badge-role.badge-sergeant{background:#dbeafe;color:#1e40af}.badge-role.badge-lieutenant{background:#e9d5ff;color:#6b21a8}.badge-role.badge-captain{background:#dbeafe;color:#1e3a8a;font-weight:var(--font-bold)}.badge-role.badge-chief{background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e;font-weight:var(--font-bold);box-shadow:0 1px 3px #92400e33}.badge-shift{background:var(--color-primary-light);color:var(--color-primary-dark)}.badge-deleted{background:var(--color-error-light);color:var(--color-error-dark)}.badge-k9{background:linear-gradient(135deg,#8b4513,sienna);color:#fff}.user-actions{display:flex;gap:6px;align-items:center}.btn-icon{width:32px;height:32px;border-radius:var(--radius-md);border:2px solid var(--border-medium);background:var(--bg-primary);color:var(--text-muted);font-size:var(--icon-sm);cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center}.btn-icon:hover:not(:disabled){transform:scale(1.1);border-color:var(--color-primary);background:var(--bg-hover)}.btn-icon:disabled{opacity:.3;cursor:not-allowed}.btn-icon.active{border-color:var(--color-warning);background:var(--color-warning-light);color:var(--color-warning-dark)}.btn-icon.deleted{border-color:var(--color-success);background:var(--color-success-light);color:var(--color-success-dark)}.btn-icon.k9-active{border-color:#8b4513;background:linear-gradient(135deg,#deb887,tan);color:#8b4513}.menu-wrapper{position:relative}.menu-trigger{font-weight:700}.action-menu{position:absolute;right:0;top:100%;margin-top:6px;background:var(--bg-primary);border:2px solid var(--border-medium);border-radius:6px;box-shadow:var(--shadow-md);z-index:1000;min-width:160px;overflow:hidden;animation:dropDown .2s ease-out}@keyframes dropDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.action-menu button{width:100%;padding:10px 14px;border:none;background:var(--bg-primary);color:var(--text-primary);font-size:.9rem;font-weight:500;text-align:left;cursor:pointer;transition:all .15s;display:flex;align-items:center;gap:8px}.action-menu button:hover:not(:disabled){background:var(--bg-hover);color:var(--color-primary)}.action-menu button:disabled{opacity:.4;cursor:not-allowed}.action-menu button:not(:last-child){border-bottom:1px solid var(--border-light)}.loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:16px}.loading-spinner{width:48px;height:48px;border:4px solid var(--border-light);border-top-color:var(--color-primary);border-radius:50%;animation:spin .8s linear infinite}.loading p{color:var(--text-muted);font-size:.95rem;margin:0}.empty-state{text-align:center;padding:60px 20px;color:var(--text-muted)}.empty-icon{font-size:4rem;margin-bottom:16px;opacity:.5}.empty-state h3{font-size:1.2rem;color:var(--text-primary);margin:0 0 8px}.empty-state p{font-size:.95rem;color:var(--text-muted);max-width:400px;margin:0 auto}.text-info{color:var(--color-secondary)}.text-warning{color:var(--color-warning, #f59e0b)}.user-management-container .modal-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease-out}.user-management-container .modal-content{background:var(--bg-primary);border-radius:var(--radius-xl);width:90%;max-width:480px;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-lg);animation:slideUp .3s cubic-bezier(.4,0,.2,1)}@keyframes slideUp{0%{opacity:0;transform:translateY(20px) scale(.95)}to{opacity:1;transform:translateY(0) scale(1)}}.user-management-container .modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg) var(--spacing-lg);border-bottom:2px solid var(--border-light)}.user-management-container .modal-header h2{margin:0;font-size:var(--text-xl);color:var(--text-primary);font-weight:var(--font-bold)}.user-management-container .modal-close{width:28px;height:28px;border-radius:var(--radius-md);border:none;background:var(--bg-tertiary);color:var(--text-muted);font-size:var(--icon-md);cursor:pointer;transition:all .2s;display:flex;align-items:center;justify-content:center;line-height:1}.modal-close:hover{background:var(--color-error-light);color:var(--color-error)}.user-management-container .modal-content form{padding:20px}.user-management-container .modal-description{color:var(--text-secondary);margin:0 0 16px;font-size:var(--text-sm)}.user-management-container .form-group{margin-bottom:16px}.user-management-container .form-group label{display:block;margin-bottom:5px;font-weight:var(--font-semibold);color:var(--text-secondary);font-size:var(--text-sm)}.user-management-container .form-group input,.user-management-container .form-group select{width:100%;padding:8px 12px;font-size:var(--text-base);border:2px solid var(--border-medium);border-radius:var(--radius-md);transition:all .2s;box-sizing:border-box;background:var(--bg-primary);color:var(--text-primary)}.user-management-container .form-group input:focus,.user-management-container .form-group select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.user-management-container .form-group input:disabled,.user-management-container .form-group select:disabled{background:var(--bg-tertiary);cursor:not-allowed}.user-management-container .form-group small{display:block;margin-top:5px;font-size:var(--text-xs)}.text-success{color:var(--color-success)}.text-error{color:var(--color-error)}.user-management-container .checkbox-group{margin:16px 0}.user-management-container .checkbox-group label{display:flex;align-items:center;gap:8px;cursor:pointer;font-weight:500;font-size:var(--text-sm)}.checkbox-group input[type=checkbox]{width:18px;height:18px;cursor:pointer}.user-management-container .modal-actions{display:flex;gap:10px;justify-content:flex-end;margin-top:20px;padding-top:16px;border-top:2px solid var(--border-light)}.user-management-container .btn-primary,.user-management-container .btn-secondary{padding:8px 16px;border-radius:var(--radius-md);font-size:var(--text-sm);font-weight:var(--font-semibold);cursor:pointer;transition:all .2s;border:none}.btn-primary{background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-primary-hover) 100%);color:var(--text-inverse);box-shadow:0 2px 8px #3b82f64d}.btn-primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #3b82f666}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{background:var(--bg-primary);color:var(--text-muted);border:2px solid var(--border-medium)}.btn-secondary:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 1024px){.user-grid{grid-template-columns:1fr}}@media (max-width: 768px){.header-top{flex-direction:column;align-items:stretch;gap:16px}.btn-add-user{width:100%}.search-controls{flex-direction:column;align-items:stretch}.user-card{flex-direction:column;align-items:flex-start;gap:16px}.user-actions{width:100%;justify-content:flex-end}}.shift-badge{display:inline-flex;align-items:center;padding:3px 10px;border-radius:12px;font-size:.75rem;font-weight:500;margin-top:6px;transition:opacity .2s ease}.shift-badge.no-shift{background-color:var(--bg-tertiary);color:var(--text-secondary)}.shift-badge.a-day{background-color:#4caf50;color:#fff}.shift-badge.b-day{background-color:#2196f3;color:#fff}.shift-badge.a-night{background-color:#9c27b0;color:#fff}.shift-badge.b-night{background-color:#ff9800;color:#fff}.user-card .user-info{display:flex;flex-direction:column;gap:2px}.user-card .user-name{font-weight:600;font-size:var(--text-base);color:var(--text-primary)}.user-card .user-username{font-size:var(--text-sm);color:var(--text-muted)}.user-card .user-meta{display:flex;align-items:center;gap:8px;margin-top:4px;flex-wrap:wrap}.user-card .admin-badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:12px;font-size:.7rem;font-weight:600;background-color:var(--color-error);color:var(--text-inverse);text-transform:uppercase;letter-spacing:.5px}.user-card.deactivated .shift-badge{opacity:.5}.user-card.deactivated .user-name,.user-card.deactivated .user-username{opacity:.6}.form-group select{width:100%;padding:10px 12px;border:1px solid var(--border-medium);border-radius:6px;font-size:.95rem;background-color:var(--bg-primary);color:var(--text-primary);cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease}.form-group select:hover{border-color:var(--color-primary)}.form-group select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.form-group select:disabled{background-color:var(--bg-disabled);cursor:not-allowed;opacity:.7}.form-group select option{padding:8px}.k9-handler-section{background:color-mix(in srgb,var(--color-warning) 18%,var(--bg-primary));border:2px solid color-mix(in srgb,var(--color-warning) 55%,var(--border-medium));border-radius:8px;padding:16px;margin:16px 0}.k9-handler-header{display:flex;align-items:center;gap:12px}.k9-icon{font-size:var(--icon-lg)}.k9-label{font-weight:700;font-size:var(--text-base);color:var(--text-primary);flex:1}.k9-description{margin:8px 0 0;font-size:var(--text-sm);color:var(--text-secondary)}.toggle-switch{position:relative;display:inline-block;width:50px;height:26px}.toggle-switch input{opacity:0;width:0;height:0}.toggle-slider{position:absolute;cursor:pointer;top:0;left:0;right:0;bottom:0;background-color:var(--border-medium);transition:.3s;border-radius:26px}.toggle-slider:before{position:absolute;content:"";height:20px;width:20px;left:3px;bottom:3px;background-color:var(--bg-primary);transition:.3s;border-radius:50%;box-shadow:0 2px 4px #0003}.toggle-switch input:checked+.toggle-slider{background:linear-gradient(135deg,var(--color-warning) 0%,var(--color-warning-dark) 100%)}.toggle-switch input:checked+.toggle-slider:before{transform:translate(24px)}.toggle-switch input:disabled+.toggle-slider{opacity:.5;cursor:not-allowed}.shift-summary-bar{display:flex;gap:16px;padding:12px 16px;background-color:var(--bg-primary);border:1px solid var(--border-light);border-radius:8px;margin-bottom:16px;flex-wrap:wrap}.shift-summary-item{display:flex;align-items:center;gap:8px}.shift-summary-dot{width:12px;height:12px;border-radius:50%}.shift-summary-dot.a-day{background-color:#4caf50}.shift-summary-dot.b-day{background-color:#2196f3}.shift-summary-dot.a-night{background-color:#9c27b0}.shift-summary-dot.b-night{background-color:#ff9800}.shift-summary-label{font-size:var(--text-sm);color:var(--text-secondary)}.shift-summary-count{font-weight:600;color:var(--text-primary)}.shift-loading{display:inline-flex;align-items:center;gap:6px;padding:3px 10px;border-radius:12px;font-size:.75rem;background-color:#f0f0f0;color:#888}.shift-loading:after{content:"";width:10px;height:10px;border:2px solid #ccc;border-top-color:#888;border-radius:50%;animation:spin .8s linear infinite}.bulk-selection-bar{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;background-color:var(--color-primary-light);border-radius:8px;margin-bottom:16px}.bulk-selection-count{font-weight:600;color:var(--color-primary-dark)}.bulk-selection-actions{display:flex;gap:8px}@media (max-width: 768px){.shift-summary-bar{flex-direction:column;gap:8px}.user-card .user-meta{flex-direction:column;align-items:flex-start;gap:4px}.bulk-selection-bar{flex-direction:column;gap:12px;text-align:center}}.form-section-header{margin:20px 0 12px;padding-top:16px;border-top:1px solid var(--border-light)}.form-section-header h4{margin:0 0 4px;font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-primary);text-transform:uppercase;letter-spacing:.5px}.form-section-description{margin:0;font-size:var(--text-xs);color:var(--text-muted)}.drug-type-modal{max-width:450px;width:90%}.drug-type-modal .form-group{margin-bottom:16px}.drug-type-modal .form-group label{display:block;margin-bottom:6px;font-weight:var(--font-semibold)}.drug-type-modal .modal-actions{display:flex;justify-content:flex-end;gap:12px;margin-top:24px;padding-top:16px;border-top:1px solid var(--border-light)}.drug-types-page{padding:0 var(--spacing-md) var(--spacing-md)}.drug-types-config-header h1{margin:12px 0 6px;font-size:var(--text-page-title);font-weight:var(--font-semibold)}.drug-types-config-subtitle{color:var(--text-muted, #666);margin-bottom:16px}.drug-types-config-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;flex-wrap:wrap}.drug-types-config-meta{display:flex;align-items:center;gap:12px}.drug-types-config-count{color:var(--text-muted, #666)}.drug-types-config-primary,.drug-types-config-save,.drug-types-reactivate{padding:10px 14px;border:none;border-radius:8px;cursor:pointer}.drug-types-config-primary{background:#111827;color:#fff}.drug-types-config-primary:disabled{opacity:.6;cursor:not-allowed}.drug-types-config-save{background:var(--primary-color, #2f6fed);color:#fff}.drug-types-config-save:disabled{opacity:.6;cursor:not-allowed}.drug-types-config-loading{padding:18px 4px;color:var(--text-muted, #666)}.drug-types-config-sections{display:flex;flex-direction:column;gap:18px}.drug-types-config-section{border:1px solid var(--border-color, #e5e5e5);border-radius:12px;background:var(--card-bg, #fff);padding:14px}.drug-types-config-section-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;flex-wrap:wrap}.drug-types-config-section-title{margin:0;font-size:18px}.drug-types-config-section-subtitle{color:var(--text-muted, #666);font-size:13px;margin-top:4px}.drug-types-config-search{height:38px;border-radius:10px;border:1px solid var(--border-color, #e5e7eb);padding:0 12px;width:min(420px,100%);background:var(--input-bg, #fff)}.drug-types-config-list{display:flex;flex-direction:column;gap:6px;min-height:60px}.drug-types-row{display:grid;grid-template-columns:34px 52px 1fr 170px 110px;gap:10px;align-items:center;padding:10px;border-radius:10px;border:1px solid var(--border-color, #e5e5e5);background:var(--card-bg, #fff);transition:opacity .15s ease}.drug-types-row.dragging{opacity:.4;border-style:dashed}.drug-types-row.drag-over{background:#2f6fed1a;border-top:2px solid var(--primary-color, #2f6fed)}.drug-types-drag{cursor:grab;-webkit-user-select:none;user-select:none;text-align:center;color:var(--text-muted, #888)}.drug-types-order{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:12px;color:var(--text-muted, #666)}.drug-types-name{font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.drug-types-category{display:flex;justify-content:flex-start}.drug-types-actions{display:flex;justify-content:flex-end;gap:8px}.drug-types-icon{width:34px;height:34px;border:1px solid var(--border-color, #e5e7eb);border-radius:10px;background:var(--card-bg, #fff);cursor:pointer}.drug-types-icon:hover{background:#2f6fed14;border-color:#2f6fed59}.drug-types-icon.danger:hover{background:#ef44441a;border-color:#ef444459}.drug-types-badge,.drug-types-pill{display:inline-block;padding:4px 10px;border-radius:12px;font-size:.8rem;font-weight:600;border:1px solid var(--border-color, #e5e7eb)}.drug-types-badge.stimulant,.drug-types-pill.stimulant{background:var(--color-error-light);color:var(--color-error-dark)}.drug-types-badge.opioid,.drug-types-pill.opioid{background:var(--color-warning-light);color:var(--color-warning-dark)}.drug-types-badge.cannabis,.drug-types-pill.cannabis{background:var(--color-success-light);color:var(--color-success-dark)}.drug-types-badge.hallucinogen,.drug-types-pill.hallucinogen{background:#ede9fe;color:#5b21b6}.drug-types-badge.depressant,.drug-types-pill.depressant{background:#dbeafe;color:#1e40af}.drug-types-badge.other,.drug-types-badge.none,.drug-types-pill.other,.drug-types-pill.none{background:#f8fafc;color:#334155}.drug-types-config-library-list{display:flex;flex-direction:column;gap:10px}.drug-types-library-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:10px;border:1px solid var(--border-color, #e5e5e5);background:var(--card-bg, #fff)}.drug-types-library-main{display:flex;flex-direction:column;gap:6px;min-width:0}.drug-types-library-title{display:flex;align-items:center;gap:10px;font-weight:600;min-width:0}.drug-types-library-meta{display:flex;gap:10px;flex-wrap:wrap}.drug-types-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:12px;color:var(--text-muted, #666)}.drug-types-reactivate{border:1px solid var(--border-color, #e5e7eb);background:#111827;color:#fff}.drug-types-reactivate:disabled{opacity:.6;cursor:not-allowed}.modal-content{background:var(--color-surface);border-radius:12px;box-shadow:0 10px 40px #0003;padding:24px}.modal-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.modal-header h2{margin:0;font-size:1.25rem;color:var(--color-text-primary)}.modal-close{background:none;border:none;font-size:1.5rem;cursor:pointer;color:var(--color-text-secondary);padding:0;line-height:1}.modal-close:hover{color:var(--color-text-primary)}.btn-secondary{padding:10px 20px;background:var(--color-surface);color:var(--color-text-primary);border:1px solid var(--color-border);border-radius:8px;font-weight:500;cursor:pointer;transition:all .2s}.btn-secondary:hover{background:var(--color-surface-alt)}@media (max-width: 820px){.drug-types-row{grid-template-columns:34px 52px 1fr;grid-template-rows:auto auto}.drug-types-category{grid-column:1 / -1}.drug-types-actions{grid-column:1 / -1;justify-content:flex-start}}.roles-page{min-height:100vh;background-color:var(--bg-secondary);padding:0 var(--spacing-md) var(--spacing-md)}.roles-container{max-width:900px;margin:0 auto;padding:24px}.roles-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px;background:var(--color-surface);padding:20px 24px;border-radius:12px;box-shadow:var(--shadow-base);gap:16px}.header-title h1{margin:0 0 4px;font-size:var(--text-page-title);font-weight:var(--font-semibold);color:var(--color-text-primary)}.header-subtitle{margin:0;font-size:.9rem;color:var(--color-text-secondary)}.header-actions{display:flex;align-items:center;gap:16px}.show-inactive-toggle{display:flex;align-items:center;gap:8px;font-size:.9rem;color:var(--color-text-secondary);cursor:pointer}.show-inactive-toggle input{width:16px;height:16px;cursor:pointer}.roles-table-container{background:var(--color-surface);border-radius:12px;box-shadow:var(--shadow-base);overflow:hidden}.roles-table tr.inactive{opacity:.6}.loading-state{text-align:center;padding:48px;color:var(--color-text-secondary);font-size:1rem}.action-buttons{display:flex;gap:8px}.btn-icon{border:1px solid var(--border-medium);background:var(--bg-primary);border-radius:8px;padding:6px 10px;cursor:pointer;transition:all var(--transition-fast)}.btn-icon:hover{background:var(--bg-hover);transform:translateY(-1px)}.btn-icon:active{transform:translateY(0)}.empty-state{padding:18px;text-align:center;color:var(--color-text-secondary)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-group label{display:block;font-size:.85rem;margin-bottom:6px;color:var(--color-text-primary)}.form-group label.checkbox-inline{display:flex;margin-bottom:6px}.checkbox-inline{display:flex;align-items:center;gap:8px;cursor:pointer;margin-bottom:6px}.checkbox-inline input[type=checkbox]{width:18px;height:18px;cursor:pointer;margin:0}.checkbox-inline span{-webkit-user-select:none;user-select:none}.field-help{margin-left:6px;font-size:.85rem;color:var(--color-primary);cursor:help;opacity:.7}.field-help:hover{opacity:1}.text-info{display:block;margin-top:6px;font-size:.8rem;color:var(--color-primary)}.permissions h3{margin:14px 0 8px}.policy-panel{margin-top:14px;padding:10px 12px;border:1px solid var(--border-subtle);border-radius:8px;background:var(--bg-secondary)}.policy-panel h3{margin:0 0 6px}.policy-line{margin:0;color:var(--color-text-secondary);font-size:.9rem}.policy-line+.policy-line{margin-top:6px}.policy-line.projected{color:var(--color-primary)}.perm-grid{display:grid;grid-template-columns:1fr 1fr;gap:6px 12px}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:16px}.stat-config-page{padding:0 var(--spacing-md) var(--spacing-md)}.stat-config-header h1{margin:12px 0 6px;font-size:var(--text-page-title);font-weight:var(--font-semibold)}.stat-config-subtitle{color:var(--text-muted, #666);margin-bottom:16px}.stat-config-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;flex-wrap:wrap}.stat-config-tabs{display:flex;gap:4px;background:var(--gray-100, #f1f5f9);padding:6px 8px;border-radius:8px}.stat-config-tab{padding:10px 20px;border-radius:6px;border:none;background:transparent;color:var(--text-secondary, #64748b);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s ease}.stat-config-tab:hover{background:#fffc;color:var(--text-primary, #334155)}.stat-config-tab.active{background:var(--bg-primary, white);color:var(--primary-color, #2f6fed);font-weight:600;box-shadow:0 2px 4px #0000000d}.stat-config-meta{display:flex;align-items:center;gap:12px}.stat-config-save{padding:10px 14px;border:none;border-radius:8px;background:var(--primary-color, #2f6fed);color:#fff;cursor:pointer}.stat-config-save:disabled{opacity:.6;cursor:not-allowed}.stat-config-loading{padding:18px 4px;color:var(--text-muted, #666)}.stat-config-sections{display:flex;flex-direction:column;gap:18px}.stat-config-section{border:1px solid var(--border-color, #e5e5e5);border-radius:12px;background:var(--card-bg, #fff);padding:14px}.stat-config-section-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;flex-wrap:wrap}.stat-config-section-title{margin:0;font-size:18px}.stat-config-section-subtitle{color:var(--text-muted, #666);font-size:13px;margin-top:4px}.stat-config-library-search{height:38px;border-radius:10px;border:1px solid var(--border-color, #e5e7eb);padding:0 12px;width:min(420px,100%);background:var(--input-bg, #fff)}.stat-config-list{display:flex;flex-direction:column;gap:6px;min-height:60px}.stat-config-drop-indicator{height:4px;background:var(--primary-color, #2f6fed);border-radius:2px;margin:2px 10px;box-shadow:0 0 0 2px #2f6fed40}.stat-config-row{display:grid;grid-template-columns:34px 140px 220px 1fr;gap:10px;align-items:center;padding:10px;border-radius:10px;border:1px solid var(--border-color, #e5e5e5);background:var(--card-bg, #fff);transition:opacity .15s ease}.stat-config-row.dragging{opacity:.4;border-style:dashed}.stat-config-row.drag-over{background:#2f6fed1a;border-top:2px solid var(--primary-color, #2f6fed)}.stat-config-drag{cursor:grab;-webkit-user-select:none;user-select:none;text-align:center;color:var(--text-muted, #888)}.stat-config-toggle{display:flex;gap:8px;align-items:center}.stat-config-key{display:flex;align-items:center;gap:8px;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:12px;color:var(--text-muted, #666)}.stat-config-badge{font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;font-size:11px;padding:2px 8px;border-radius:999px;border:1px solid var(--border-color, #e5e7eb);background:#f8fafc;color:#334155}.stat-config-badge.core{background:#eef2ff;border-color:#c7d2fe;color:#3730a3}.stat-config-badge.library{background:#ecfeff;border-color:#a5f3fc;color:#155e75}.stat-config-label{padding:10px;border-radius:8px;border:1px solid var(--border-color, #ddd);background:var(--input-bg, #fff)}.stat-config-library-list{display:flex;flex-direction:column;gap:10px}.stat-config-library-row{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 12px;border-radius:10px;border:1px solid var(--border-color, #e5e5e5);background:var(--card-bg, #fff)}.stat-config-library-main{display:flex;flex-direction:column;gap:6px;min-width:0}.stat-config-library-title{display:flex;align-items:center;gap:10px;font-weight:600;min-width:0}.stat-config-library-meta{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.stat-config-library-column{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:12px;color:var(--text-muted, #666)}.stat-config-add{padding:9px 12px;border-radius:10px;border:1px solid var(--border-color, #e5e7eb);background:#111827;color:#fff;cursor:pointer}.stat-config-add:disabled{opacity:.6;cursor:not-allowed}@media (max-width: 820px){.stat-config-row{grid-template-columns:34px 1fr;grid-template-rows:auto auto}.stat-config-key{grid-column:1 / -1}}.shift-config-page{padding:0 var(--spacing-md) var(--spacing-md)}.shift-config-header h1{margin:12px 0 6px;font-size:var(--text-page-title);font-weight:var(--font-semibold)}.shift-config-subtitle{color:var(--text-muted, #666);margin-bottom:16px}.shift-config-reminder{border:1px solid rgba(59,130,246,.25);background:#3b82f614;border-radius:12px;padding:12px 14px;margin:10px 0 14px}.shift-config-reminder-title{font-weight:700;margin-bottom:6px}.shift-config-reminder-body{color:var(--text-muted, #555);font-size:13px}.shift-config-guidance{border:1px solid rgba(245,158,11,.35);background:#f59e0b14;border-radius:12px;padding:12px 14px;margin:10px 0 14px}.shift-config-guidance-title{font-weight:700;margin-bottom:6px}.shift-config-guidance-body{color:var(--text-muted, #555);font-size:13px}.shift-config-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:14px;flex-wrap:wrap}.shift-config-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.shift-config-show-inactive{display:inline-flex;align-items:center;gap:8px;padding:8px 10px;border-radius:10px;border:1px solid var(--border-color, #e5e7eb);background:var(--card-bg, #fff);color:var(--text-muted, #444);-webkit-user-select:none;user-select:none}.shift-config-show-inactive input{accent-color:var(--primary-color, #2f6fed)}.shift-config-meta{display:flex;align-items:center;gap:12px}.shift-config-count{color:var(--text-muted, #666)}.shift-config-primary,.shift-config-save,.shift-config-secondary,.shift-reactivate{padding:10px 14px;border:none;border-radius:8px;cursor:pointer}.shift-config-primary{background:#111827;color:#fff}.shift-config-secondary{background:#374151;color:#fff}.shift-config-save{background:var(--primary-color, #2f6fed);color:#fff}.shift-config-primary:disabled,.shift-config-secondary:disabled,.shift-config-save:disabled,.shift-reactivate:disabled{opacity:.6;cursor:not-allowed}.shift-config-loading{padding:18px 4px;color:var(--text-muted, #666)}.shift-config-sections{display:flex;flex-direction:column;gap:18px}.shift-config-section{border:1px solid var(--border-color, #e5e5e5);border-radius:12px;background:var(--card-bg, #fff);padding:14px}.shift-config-section-header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px;flex-wrap:wrap}.shift-config-section-title{margin:0;font-size:18px}.shift-config-section-subtitle{color:var(--text-muted, #666);font-size:13px;margin-top:4px}.shift-config-search{height:38px;border-radius:10px;border:1px solid var(--border-color, #e5e7eb);padding:0 12px;width:min(420px,100%);background:var(--input-bg, #fff)}.shift-config-list{display:flex;flex-direction:column;gap:6px;min-height:60px}.shift-row{display:grid;grid-template-columns:34px 1fr 280px 140px 110px;gap:10px;align-items:center;padding:10px;border-radius:10px;border:1px solid var(--border-color, #e5e5e5);background:var(--card-bg, #fff);transition:opacity .15s ease}.shift-row.dragging{opacity:.4;border-style:dashed}.shift-row.drag-over{background:#2f6fed1a;border-top:2px solid var(--primary-color, #2f6fed)}.shift-drag{cursor:grab;-webkit-user-select:none;user-select:none;text-align:center;color:var(--text-muted, #888)}.shift-name{font-weight:600;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.shift-tags{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.shift-pill{display:inline-block;padding:4px 10px;border-radius:12px;font-size:.8rem;font-weight:600;border:1px solid var(--border-color, #e5e7eb);background:var(--card-bg, #fff)}.shift-pill.cat-patrol{background:#dbeafe;color:#1e40af}.shift-pill.cat-k9{background:#d1fae5;color:#065f46}.shift-pill.cat-admin{background:#f3f4f6;color:#374151}.shift-pill.period-day{background:#fef3c7;color:#92400e}.shift-pill.period-night{background:#ede9fe;color:#5b21b6}.shift-pill.side-a{background:#fee2e2;color:#991b1b}.shift-pill.side-b{background:#cffafe;color:#155e75}.shift-times{color:var(--text-muted, #666)}.shift-actions{display:flex;justify-content:flex-end;gap:8px}.shift-icon{width:34px;height:34px;border:1px solid var(--border-color, #e5e7eb);border-radius:10px;background:var(--card-bg, #fff);cursor:pointer}.shift-icon:hover{background:#2f6fed14;border-color:#2f6fed59}.shift-icon.danger:hover{background:#ef44441a;border-color:#ef444459}.shift-config-library-list{display:flex;flex-direction:column;gap:10px}.shift-library-row{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:10px 12px;border:1px solid var(--border-color, #e5e5e5);border-radius:12px;background:var(--card-bg, #fff)}.shift-library-title{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-weight:700}.shift-library-meta{color:var(--text-muted, #666);font-size:12px;margin-top:4px}.shift-reactivate{background:var(--primary-color, #2f6fed);color:#fff}.shift-config-edit-warning{border:1px solid rgba(59,130,246,.25);background:#3b82f614;border-radius:10px;padding:10px 12px;margin-bottom:12px;color:var(--text-muted, #444)}.shift-config-edit-warning-sub{margin-top:6px;font-size:12px;color:var(--text-muted, #555)}.shift-form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}@media (max-width: 980px){.shift-row{grid-template-columns:34px 1fr 1fr;grid-template-areas:"drag name actions" "drag tags actions" "drag times actions"}.shift-drag{grid-area:drag}.shift-name{grid-area:name}.shift-tags{grid-area:tags}.shift-times{grid-area:times}.shift-actions{grid-area:actions}}@media (max-width: 560px){.shift-form-row{grid-template-columns:1fr}}.collapsible-section{background:var(--bg-secondary);border-radius:var(--radius-md);margin-bottom:var(--spacing-md);border:1px solid var(--border-light);overflow:hidden;box-shadow:0 8px 24px #0f172a0f;transition:border-color var(--transition-fast),box-shadow var(--transition-fast),transform var(--transition-fast)}.collapsible-section-header{width:100%;display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) var(--spacing-lg);background:var(--bg-tertiary, #f8f9fa);border:none;cursor:pointer;font-size:var(--text-base);font-weight:var(--font-semibold, 600);color:var(--text-primary);transition:background-color var(--transition-fast),color var(--transition-fast);text-align:left}.collapsible-section-header:hover{background:var(--bg-hover, #e9ecef)}.collapsible-section-header:disabled{cursor:not-allowed;opacity:.72}.collapsible-section-title{display:flex;align-items:center;gap:var(--spacing-xs, 8px)}.completion-checkmark{color:#28a745;font-weight:700;font-size:1.1em;margin-right:4px}.collapsible-section-lock{font-size:.95em;opacity:.8}.collapsible-section.completed .collapsible-section-header{border-left:3px solid #28a745}.collapsible-section.open{border-color:#3b82f659;box-shadow:0 14px 40px #2563eb1f;transform:translateY(-1px)}.collapsible-section-icon{font-size:var(--text-xs);color:var(--text-secondary);transition:transform var(--transition-fast)}.collapsible-section.open .collapsible-section-icon{transform:rotate(0)}.collapsible-section-content-outer{display:grid;grid-template-rows:0fr;transition:grid-template-rows .26s cubic-bezier(.2,.8,.2,1);will-change:grid-template-rows}.collapsible-section.open .collapsible-section-content-outer{grid-template-rows:1fr}.collapsible-section-content{overflow:hidden;padding:var(--spacing-lg);opacity:0;transform:translateY(-4px);transition:opacity .2s ease,transform .26s cubic-bezier(.2,.8,.2,1)}.collapsible-section.open .collapsible-section-content{opacity:1;transform:translateY(0)}.section-continue-footer{margin-top:var(--spacing-xl, 24px);padding-top:var(--spacing-lg, 16px);border-top:1px solid var(--border-light, #e2e8f0);display:flex;flex-direction:column;align-items:flex-end;gap:var(--spacing-xs, 8px)}.btn-continue-section{display:inline-flex;align-items:center;gap:var(--spacing-sm, 12px);padding:var(--spacing-sm, 12px) var(--spacing-xl, 24px);background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;border-radius:var(--radius-md, 8px);font-size:var(--text-base, 1rem);font-weight:var(--font-semibold, 600);cursor:pointer;transition:all .2s ease;box-shadow:0 4px 12px #2563eb4d}.btn-continue-section:hover:not(:disabled){background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-2px);box-shadow:0 6px 20px #2563eb66}.btn-continue-section:active:not(:disabled){transform:translateY(0);box-shadow:0 2px 8px #2563eb4d}.btn-continue-section:disabled{background:linear-gradient(135deg,#94a3b8,#64748b);cursor:not-allowed;box-shadow:none;opacity:.7}.continue-arrow{font-size:1.2em;transition:transform .2s ease}.btn-continue-section:hover:not(:disabled) .continue-arrow{transform:translate(4px)}.continue-hint{font-size:var(--text-sm, .875rem);color:var(--text-secondary, #64748b);font-style:italic}[data-theme=dark] .collapsible-section-header{background:var(--bg-tertiary, #2d3748)}[data-theme=dark] .collapsible-section-header:hover{background:var(--bg-hover, #374151)}[data-theme=dark] .collapsible-section{box-shadow:0 10px 30px #00000059}[data-theme=dark] .section-continue-footer{border-top-color:var(--border-dark, #374151)}[data-theme=dark] .continue-hint{color:var(--text-secondary-dark, #94a3b8)}.multi-select-checkboxes{margin-bottom:var(--spacing-md)}.multi-select-label{display:block;margin-bottom:var(--spacing-xs);font-weight:var(--font-medium);color:var(--text-primary)}.required-indicator{color:#dc3545}.checkbox-group{display:flex;flex-wrap:wrap;gap:var(--spacing-md);padding:var(--spacing-sm);border:1px solid var(--border-light);border-radius:var(--radius-sm);background:var(--bg-primary)}.checkbox-option{display:flex;align-items:center;gap:var(--spacing-xs);cursor:pointer;padding:var(--spacing-xs);border-radius:var(--radius-xs);transition:background-color var(--transition-fast)}.checkbox-option:hover{background:var(--bg-hover)}.checkbox-option input[type=checkbox]{margin:0;cursor:pointer}.checkbox-option span{-webkit-user-select:none;user-select:none}.checkbox-option:has(input:disabled),.checkbox-option.disabled{opacity:.5;cursor:not-allowed}.checkbox-option.disabled:hover{background:transparent}.yarl__fullsize{height:100%;width:100%}.yarl__relative{position:relative}.yarl__portal{bottom:0;left:0;opacity:0;overflow:hidden;position:fixed;right:0;top:0;transition:opacity var(--yarl__fade_animation_duration,.25s) var(--yarl__fade_animation_timing_function,ease);z-index:var(--yarl__portal_zindex,9999)}.yarl__portal_open{opacity:1}.yarl__container{background-color:var(--yarl__container_background_color,var(--yarl__color_backdrop,#000));bottom:0;left:0;outline:none;overflow:hidden;overscroll-behavior:var(--yarl__controller_overscroll_behavior,contain);position:absolute;right:0;top:0;touch-action:var(--yarl__controller_touch_action,none);-webkit-user-select:none;-moz-user-select:none;user-select:none}.yarl__carousel{align-content:center;align-items:stretch;display:flex;flex:0 0 auto;height:100%;justify-content:center;opacity:var(--yarl__pull_opacity,1);transform:translate(var(--yarl__swipe_offset,0),var(--yarl__pull_offset,0));width:calc(100% + (var(--yarl__carousel_slides_count) - 1)*(100% + var(--yarl__carousel_spacing_px, 0)*1px + var(--yarl__carousel_spacing_percent, 0)*1%))}.yarl__carousel_with_slides{-moz-column-gap:calc(var(--yarl__carousel_spacing_px, 0)*1px + 100/(var(--yarl__carousel_slides_count)*100 + (var(--yarl__carousel_slides_count) - 1)*var(--yarl__carousel_spacing_percent, 0))*var(--yarl__carousel_spacing_percent, 0)*1%);column-gap:calc(var(--yarl__carousel_spacing_px, 0)*1px + 100/(var(--yarl__carousel_slides_count)*100 + (var(--yarl__carousel_slides_count) - 1)*var(--yarl__carousel_spacing_percent, 0))*var(--yarl__carousel_spacing_percent, 0)*1%)}.yarl__flex_center{align-content:center;align-items:center;display:flex;justify-content:center}.yarl__slide{flex:1;overflow:hidden;padding:calc(var(--yarl__carousel_padding_px, 0)*1px + 100/(var(--yarl__carousel_slides_count)*100 + (var(--yarl__carousel_slides_count) - 1)*var(--yarl__carousel_spacing_percent, 0))*var(--yarl__carousel_padding_percent, 0)*1%);position:relative}[dir=rtl] .yarl__slide{--yarl__direction:-1}.yarl__slide_image{max-height:100%;max-width:100%;-o-object-fit:contain;object-fit:contain;touch-action:var(--yarl__controller_touch_action,none);-moz-user-select:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}.yarl__slide_image_cover{height:100%;-o-object-fit:cover;object-fit:cover;width:100%}.yarl__slide_image_loading{opacity:0}@media screen and (min-width:800px){.yarl__slide_wrapper:not(.yarl__slide_wrapper_interactive) .yarl__slide_image{-webkit-backface-visibility:hidden;-webkit-transform:translateZ(0);-webkit-transform-style:preserve-3d}}.yarl__slide_placeholder{left:50%;line-height:0;position:absolute;top:50%;transform:translate(-50%) translateY(-50%)}.yarl__slide_loading{animation:yarl__delayed_fadein 1s linear;color:var(--yarl__slide_icon_loading_color,var(--yarl__color_button,hsla(0,0%,100%,.8)))}.yarl__slide_loading line{animation:yarl__stroke_opacity 1s linear infinite}.yarl__slide_loading line:first-of-type{animation-delay:-1.875s}.yarl__slide_loading line:nth-of-type(2){animation-delay:-1.75s}.yarl__slide_loading line:nth-of-type(3){animation-delay:-1.625s}.yarl__slide_loading line:nth-of-type(4){animation-delay:-1.5s}.yarl__slide_loading line:nth-of-type(5){animation-delay:-1.375s}.yarl__slide_loading line:nth-of-type(6){animation-delay:-1.25s}.yarl__slide_loading line:nth-of-type(7){animation-delay:-1.125s}.yarl__slide_loading line:nth-of-type(8){animation-delay:-1s}.yarl__slide_error{color:var(--yarl__slide_icon_error_color,red);height:var(--yarl__slide_icon_error_size,48px);width:var(--yarl__slide_icon_error_size,48px)}@media (prefers-reduced-motion){.yarl__portal,.yarl__slide{transition:unset}.yarl__slide_loading,.yarl__slide_loading line{animation:unset}}.yarl__toolbar{bottom:auto;display:flex;justify-content:flex-end;left:auto;padding:var(--yarl__toolbar_padding,8px);position:absolute;right:0;top:0}[dir=rtl] .yarl__toolbar{bottom:auto;left:0;right:auto;top:0}.yarl__icon{height:var(--yarl__icon_size,32px);width:var(--yarl__icon_size,32px)}.yarl__button{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-color:var(--yarl__button_background_color,transparent);border:var(--yarl__button_border,0);color:var(--yarl__color_button,hsla(0,0%,100%,.8));cursor:pointer;filter:var(--yarl__button_filter,drop-shadow(2px 2px 2px rgba(0,0,0,.8)));line-height:0;margin:var(--yarl__button_margin,0);outline:none;padding:var(--yarl__button_padding,8px);-webkit-tap-highlight-color:transparent}.yarl__button:focus{color:var(--yarl__color_button_active,#fff)}.yarl__button:focus:not(:focus-visible){color:var(--yarl__color_button,hsla(0,0%,100%,.8))}.yarl__button:focus-visible{color:var(--yarl__color_button_active,#fff)}@media (hover:hover){.yarl__button:focus-visible:hover,.yarl__button:focus:hover,.yarl__button:hover{color:var(--yarl__color_button_active,#fff)}}.yarl__button:disabled{color:var(--yarl__color_button_disabled,hsla(0,0%,100%,.4));cursor:default}.yarl__navigation_next,.yarl__navigation_prev{padding:var(--yarl__navigation_button_padding,24px 16px);position:absolute;top:50%;transform:translateY(-50%)}.yarl__navigation_prev{left:0}[dir=rtl] .yarl__navigation_prev{left:unset;right:0;transform:translateY(-50%) rotate(180deg)}.yarl__navigation_next{right:0}[dir=rtl] .yarl__navigation_next{left:0;right:unset;transform:translateY(-50%) rotate(180deg)}.yarl__no_scroll{height:100%;overflow:hidden;overscroll-behavior:none}@keyframes yarl__delayed_fadein{0%{opacity:0}80%{opacity:0}to{opacity:1}}@keyframes yarl__stroke_opacity{0%{stroke-opacity:1}to{stroke-opacity:.125}}.yarl__thumbnails{display:flex;height:100%}.yarl__thumbnails_bottom,.yarl__thumbnails_end .yarl__thumbnails_track,.yarl__thumbnails_start .yarl__thumbnails_track,.yarl__thumbnails_top{flex-direction:column}.yarl__thumbnails_wrapper{flex:1;position:relative}.yarl__thumbnails_container{background-color:var(--yarl__thumbnails_container_background_color,var(--yarl__color_backdrop,#000));flex:0 0 auto;overflow:hidden;padding:var(--yarl__thumbnails_container_padding,16px);position:relative;-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-touch-callout:none}.yarl__thumbnails_vignette{pointer-events:none;position:absolute;--yarl__thumbnails_vignette_size:12%}@media (min-width:1200px){.yarl__thumbnails_vignette{--yarl__thumbnails_vignette_size:8%}}@media (min-width:2000px){.yarl__thumbnails_vignette{--yarl__thumbnails_vignette_size:5%}}.yarl__thumbnails_bottom .yarl__thumbnails_vignette,.yarl__thumbnails_top .yarl__thumbnails_vignette{background:linear-gradient(to right,var(--yarl__color_backdrop,#000) 0,transparent var(--yarl__thumbnails_vignette_size,12%) calc(100% - var(--yarl__thumbnails_vignette_size, 12%)),var(--yarl__color_backdrop,#000) 100%);height:100%;left:0;right:0}.yarl__thumbnails_end .yarl__thumbnails_vignette,.yarl__thumbnails_start .yarl__thumbnails_vignette{background:linear-gradient(to bottom,var(--yarl__color_backdrop,#000) 0,transparent var(--yarl__thumbnails_vignette_size,12%) calc(100% - var(--yarl__thumbnails_vignette_size, 12%)),var(--yarl__color_backdrop,#000) 100%);bottom:0;top:0;width:100%}.yarl__thumbnails_track{gap:var(--yarl__thumbnails_thumbnail_gap,16px);outline:none}.yarl__thumbnails_thumbnail{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:var(--yarl__thumbnails_thumbnail_background,#000);border-color:var(--yarl__thumbnails_thumbnail_border_color,var(--yarl__color_button,hsla(0,0%,100%,.8)));border-radius:var(--yarl__thumbnails_thumbnail_border_radius,4px);border-style:var(--yarl__thumbnails_thumbnail_border_style,solid);border-width:var(--yarl__thumbnails_thumbnail_border,1px);cursor:pointer;flex:0 0 auto;-webkit-tap-highlight-color:transparent;box-sizing:content-box;height:var(--yarl__thumbnails_thumbnail_height,80px);outline:none;overflow:hidden;padding:var(--yarl__thumbnails_thumbnail_padding,4px);position:relative;width:var(--yarl__thumbnails_thumbnail_width,120px)}.yarl__thumbnails_thumbnail_active{border-color:var(--yarl__thumbnails_thumbnail_active_border_color,var(--yarl__color_button_active,#fff))}.yarl__thumbnails_thumbnail_fadein{animation:yarl__thumbnails_thumbnail_fadein var(--yarl__thumbnails_thumbnail_fadein_duration,.5s) ease-in-out var(--yarl__thumbnails_thumbnail_fadein_delay,0s) forwards;opacity:0}.yarl__thumbnails_thumbnail_fadeout{animation:yarl__thumbnails_thumbnail_fadeout var(--yarl__thumbnails_thumbnail_fadeout_duration,.5s) ease-in-out var(--yarl__thumbnails_thumbnail_fadeout_delay,0s) forwards;cursor:unset}.yarl__thumbnails_thumbnail_placeholder{cursor:unset;visibility:hidden}.yarl__thumbnails_thumbnail:focus{box-shadow:var(--yarl__thumbnails_thumbnail_focus_box_shadow,#000 0 0 0 2px,var(--yarl__color_button,hsla(0,0%,100%,.8)) 0 0 0 4px)}.yarl__thumbnails_thumbnail:focus:not(:focus-visible){box-shadow:unset}.yarl__thumbnails_thumbnail:focus-visible{box-shadow:var(--yarl__thumbnails_thumbnail_focus_box_shadow,#000 0 0 0 2px,var(--yarl__color_button,hsla(0,0%,100%,.8)) 0 0 0 4px)}.yarl__thumbnails_thumbnail_icon{color:var(--yarl__thumbnails_thumbnail_icon_color,var(--yarl__color_button,hsla(0,0%,100%,.8)));filter:var(--yarl__thumbnails_thumbnail_icon_filter,drop-shadow(2px 2px 2px rgba(0,0,0,.8)));height:var(--yarl__thumbnails_thumbnail_icon_size,32px);left:50%;position:absolute;top:50%;transform:translate(-50%) translateY(-50%);width:var(--yarl__thumbnails_thumbnail_icon_size,32px)}@keyframes yarl__thumbnails_thumbnail_fadein{0%{opacity:0}to{opacity:1}}@keyframes yarl__thumbnails_thumbnail_fadeout{0%{opacity:1}to{opacity:0}}.app-toast-container{position:fixed;top:var(--spacing-lg);right:var(--spacing-lg);z-index:var(--z-popover);display:flex;flex-direction:column;gap:var(--spacing-sm);pointer-events:none}.app-toast{display:flex;align-items:center;gap:var(--spacing-md);min-width:240px;max-width:360px;padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-lg);border:1px solid var(--border-light);background:var(--bg-primary);color:var(--text-primary);box-shadow:var(--shadow-lg);pointer-events:auto;animation:toast-slide-in .2s ease-out}.app-toast-message{flex:1;font-size:var(--text-sm);line-height:1.4}.app-toast-close{padding:4px 10px;border-radius:var(--radius-md);border:1px solid var(--border-medium);background:var(--bg-secondary);color:var(--text-secondary);font-size:var(--text-xs);font-weight:var(--font-semibold);transition:all var(--transition-fast)}.app-toast-close:hover{background:var(--bg-hover);color:var(--text-primary)}.app-toast-info{border-left:4px solid var(--color-info)}.app-toast-success{border-left:4px solid var(--color-success)}.app-toast-warning{border-left:4px solid var(--color-warning)}.app-toast-error{border-left:4px solid var(--color-error)}@keyframes toast-slide-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.image-viewer-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#000000f2;z-index:10000;display:flex;flex-direction:column;animation:fadeIn .2s ease-out}.image-viewer-overlay.fullscreen{background:#000}.image-viewer-close{position:absolute;top:16px;right:16px;width:44px;height:44px;border:none;background:#ffffff1a;color:#fff;font-size:28px;cursor:pointer;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:background .2s ease,transform .2s ease;z-index:10}.image-viewer-close:hover{background:#fff3;transform:scale(1.1)}.image-viewer-close:focus{outline:2px solid var(--color-accent, #6366f1);outline-offset:2px}.image-viewer-toolbar{display:flex;justify-content:space-between;align-items:center;padding:12px 60px 12px 20px;background:#00000080;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.1)}.image-viewer-info{display:flex;align-items:center;gap:16px;color:#ffffffe6;font-size:14px}.image-counter{font-weight:600;padding:4px 12px;background:#ffffff1a;border-radius:20px}.image-filename{color:#ffffffb3;max-width:300px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.image-viewer-controls{display:flex;align-items:center;gap:8px}.image-viewer-controls button{width:36px;height:36px;border:none;background:#ffffff1a;color:#fff;cursor:pointer;border-radius:6px;display:flex;align-items:center;justify-content:center;transition:background .2s ease}.image-viewer-controls button:hover{background:#fff3}.image-viewer-controls button:focus{outline:2px solid var(--color-accent, #6366f1);outline-offset:2px}.zoom-level{color:#ffffffb3;font-size:12px;min-width:48px;text-align:center}.toolbar-divider{width:1px;height:24px;background:#fff3;margin:0 8px}.image-viewer-content{flex:1;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;min-height:0}.image-viewer-image-wrapper{position:relative;display:flex;align-items:center;justify-content:center;max-width:100%;max-height:100%;overflow:auto}.image-viewer-image{max-width:90vw;max-height:calc(100vh - 180px);object-fit:contain;transition:transform .2s ease;-webkit-user-select:none;user-select:none}.image-viewer-overlay.fullscreen .image-viewer-image{max-width:100vw;max-height:calc(100vh - 120px)}.image-viewer-loading{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center}.image-viewer-loading .spinner{width:48px;height:48px;border:3px solid rgba(255,255,255,.1);border-top-color:var(--color-accent, #6366f1);border-radius:50%;animation:spin 1s linear infinite}.image-viewer-nav{position:absolute;top:50%;transform:translateY(-50%);width:56px;height:56px;border:none;background:#00000080;color:#fff;cursor:pointer;border-radius:50%;display:flex;align-items:center;justify-content:center;transition:background .2s ease,transform .2s ease;z-index:5}.image-viewer-nav:hover{background:#000000b3;transform:translateY(-50%) scale(1.1)}.image-viewer-nav:focus{outline:2px solid var(--color-accent, #6366f1);outline-offset:2px}.image-viewer-nav.prev{left:20px}.image-viewer-nav.next{right:20px}.image-viewer-thumbnails{display:flex;gap:8px;padding:12px 20px;background:#00000080;border-top:1px solid rgba(255,255,255,.1);overflow-x:auto;justify-content:center}.image-viewer-thumbnails .thumbnail{flex-shrink:0;width:60px;height:60px;border:2px solid transparent;border-radius:6px;overflow:hidden;cursor:pointer;padding:0;background:#ffffff1a;transition:border-color .2s ease,transform .2s ease}.image-viewer-thumbnails .thumbnail:hover{transform:scale(1.05)}.image-viewer-thumbnails .thumbnail.active{border-color:var(--color-accent, #6366f1)}.image-viewer-thumbnails .thumbnail img{width:100%;height:100%;object-fit:cover}.thumbnail-grid{display:flex;flex-wrap:wrap;gap:12px}.thumbnail-grid-item{border:2px solid rgba(255,255,255,.1);border-radius:8px;overflow:hidden;cursor:pointer;padding:0;background:var(--bg-tertiary, #0f172a);transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease}.thumbnail-grid-item:hover{border-color:var(--color-accent, #6366f1);transform:scale(1.02);box-shadow:0 4px 12px #0000004d}.thumbnail-grid-item:focus{outline:none;border-color:var(--color-accent, #6366f1);box-shadow:0 0 0 3px #6366f14d}.thumbnail-grid-item img{width:100%;height:100%;object-fit:cover;display:block}.thumbnail-grid-item.thumbnail-more{display:flex;align-items:center;justify-content:center;background:#6366f133;border-color:#6366f14d}.thumbnail-grid-item.thumbnail-more span{font-size:18px;font-weight:600;color:var(--color-accent, #6366f1)}.thumbnail-grid-small .thumbnail-grid-item{width:60px;height:60px}.thumbnail-grid-medium .thumbnail-grid-item{width:80px;height:80px}.thumbnail-grid-large .thumbnail-grid-item{width:120px;height:120px}@media (max-width: 768px){.image-viewer-toolbar{padding:8px 50px 8px 12px;flex-wrap:wrap;gap:8px}.image-viewer-info{order:2;width:100%;justify-content:center}.image-viewer-controls{order:1;width:100%;justify-content:center;flex-wrap:wrap}.image-filename{display:none}.image-viewer-nav{width:44px;height:44px}.image-viewer-nav.prev{left:8px}.image-viewer-nav.next{right:8px}.image-viewer-thumbnails{padding:8px;justify-content:flex-start}.image-viewer-thumbnails .thumbnail{width:48px;height:48px}.thumbnail-grid{gap:8px}.thumbnail-grid-medium .thumbnail-grid-item{width:70px;height:70px}}.qr-uploader{background:var(--bg-secondary, #1e293b);border:1px solid var(--border-medium, rgba(255, 255, 255, .1));border-radius:var(--radius-lg, 12px);padding:20px;margin-bottom:16px}.qr-uploader-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}.qr-uploader-header h3{display:flex;align-items:center;gap:8px;margin:0;font-size:16px;font-weight:600;color:var(--text-primary, #e2e8f0)}.header-icon{font-size:20px;display:inline-flex;align-items:center;justify-content:center}.qr-uploader-minimize-btn{background:#ffffff1a;border:none;color:var(--text-secondary, #94a3b8);width:28px;height:28px;border-radius:6px;cursor:pointer;font-size:18px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.qr-uploader-minimize-btn:hover{background:#ffffff26;color:var(--text-primary, #e2e8f0)}.qr-uploader-error{display:flex;align-items:flex-start;gap:10px;background:#ef444426;border:1px solid rgba(239,68,68,.3);border-radius:8px;padding:12px 14px;margin-bottom:16px;color:#fca5a5;font-size:14px;line-height:1.4}.qr-uploader-error .error-icon{flex-shrink:0;font-size:16px;display:inline-flex;align-items:center;justify-content:center}.qr-uploader-error .error-message{flex:1}.qr-uploader-error .error-dismiss{flex-shrink:0;background:none;border:none;color:inherit;cursor:pointer;font-size:18px;padding:0;opacity:.7;line-height:1}.qr-uploader-error .error-dismiss:hover{opacity:1}.qr-uploader-empty{text-align:center;padding:20px}.qr-uploader-empty p{color:var(--text-secondary, #94a3b8);font-size:14px;margin:0 0 16px;line-height:1.5}.qr-uploader-generate-btn{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;background:linear-gradient(135deg,#3b82f6,#8b5cf6);border:none;border-radius:8px;color:#fff;font-size:15px;font-weight:600;cursor:pointer;transition:all .2s ease}.qr-uploader-generate-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 4px 12px #3b82f666}.qr-uploader-generate-btn:disabled{opacity:.6;cursor:not-allowed}.btn-icon{font-size:18px;display:inline-flex;align-items:center;justify-content:center}.qr-uploader-active{display:flex;flex-direction:column;align-items:center;gap:20px}.qr-uploader-empty-files{display:flex;flex-direction:column;align-items:center;gap:8px;padding:18px 16px;border-radius:12px;background:#ffffff0f;border:1px dashed rgba(255,255,255,.18);color:var(--text-secondary, #94a3b8);font-size:14px;text-align:center}.qr-uploader-empty-files svg{font-size:20px;color:var(--text-tertiary, #94a3b8)}.qr-code-container{display:flex;flex-direction:column;align-items:center;padding:16px;background:#fff;border-radius:12px}.qr-code-status{display:flex;align-items:center;gap:6px;margin-top:8px}.connection-indicator{width:8px;height:8px;border-radius:50%;background:#ef4444}.connection-indicator.connected{background:#22c55e;animation:pulse 2s infinite}.connection-indicator.connecting{background:#fbbf24;animation:blink 1s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes blink{0%,to{opacity:1}50%{opacity:.3}}.status-text{font-size:12px;color:#64748b}.qr-code-pin{margin:16px 0 8px;padding:12px 16px;background:linear-gradient(135deg,#1e3a5f,#2d4a6f);border-radius:8px;border:2px solid #3b82f6;display:flex;flex-direction:column;align-items:center;gap:4px}.pin-label{font-size:12px;color:#94a3b8;text-transform:uppercase;letter-spacing:.5px}.pin-value{font-size:28px;font-weight:700;font-family:SF Mono,Monaco,Inconsolata,Roboto Mono,monospace;color:#fbbf24;letter-spacing:8px;text-shadow:0 0 10px rgba(251,191,36,.3)}.qr-code-hint{margin:8px 0 0;font-size:13px;color:#64748b}.qr-code-timer{margin:4px 0 0;font-size:12px;color:#94a3b8;transition:color .3s ease}.qr-code-timer.expiring{color:#ef4444;animation:pulse-warning 1s ease-in-out infinite}.qr-code-timer.expiring strong{color:#ef4444}.qr-uploader-files{width:100%}.qr-uploader-files h4{margin:0 0 12px;font-size:14px;font-weight:600;color:var(--text-primary, #e2e8f0)}.files-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(80px,1fr));gap:12px}.file-thumbnail{position:relative;aspect-ratio:1;border-radius:8px;overflow:hidden;cursor:pointer;background:#ffffff0d;border:1px solid rgba(255,255,255,.1);transition:all .2s ease}.file-thumbnail:hover{border-color:var(--color-primary, #3b82f6);transform:scale(1.02)}.file-thumbnail img{width:100%;height:100%;object-fit:cover}.file-thumbnail .file-icon{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#fff;flex-direction:column;gap:4px}.file-thumbnail .file-icon svg{font-size:18px}.file-thumbnail .file-icon.pdf{background:linear-gradient(135deg,#dc2626,#991b1b)}.file-remove-btn{position:absolute;top:4px;right:4px;width:20px;height:20px;background:#ef4444e6;border:none;border-radius:50%;color:#fff;font-size:14px;cursor:pointer;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s ease}.file-thumbnail:hover .file-remove-btn{opacity:1}.quality-warning-badge{position:absolute;bottom:4px;left:4px;font-size:14px;filter:drop-shadow(0 1px 2px rgba(0,0,0,.5));display:inline-flex;align-items:center;justify-content:center}.qr-uploader-close-btn{padding:10px 20px;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:8px;color:var(--text-secondary, #94a3b8);font-size:14px;cursor:pointer;transition:all .2s ease}.qr-uploader-close-btn:hover{background:#ffffff26;color:var(--text-primary, #e2e8f0)}.qr-uploader-actions{display:flex;gap:10px;width:100%;justify-content:center}.qr-uploader-done-btn,.qr-uploader-cancel-btn{padding:10px 16px;border-radius:8px;font-size:14px;font-weight:600;cursor:pointer;transition:all .2s ease;border:1px solid rgba(255,255,255,.15);display:inline-flex;align-items:center;gap:8px}.qr-uploader-done-btn{background:linear-gradient(135deg,#22c55e,#16a34a);color:#fff;border-color:#22c55e59}.qr-uploader-done-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 16px #22c55e40}.qr-uploader-cancel-btn{background:#ef44441f;color:#fecaca;border-color:#ef444459}.qr-uploader-cancel-btn:hover:not(:disabled){background:#ef44442e}.qr-uploader-done-btn:disabled,.qr-uploader-cancel-btn:disabled{opacity:.6;cursor:not-allowed;transform:none;box-shadow:none}.qr-uploader-compact{padding:0;background:none;border:none}.qr-uploader-expand-btn{display:flex;align-items:center;gap:8px;width:100%;padding:14px 18px;background:var(--bg-secondary, #1e293b);border:1px dashed var(--border-medium, rgba(255, 255, 255, .2));border-radius:var(--radius-md, 8px);color:var(--text-primary, #e2e8f0);font-size:14px;cursor:pointer;transition:all .2s ease}.qr-uploader-expand-btn:hover:not(:disabled){border-color:var(--color-primary, #3b82f6);background:#3b82f61a}.qr-uploader-expand-btn:disabled{opacity:.5;cursor:not-allowed}.qr-uploader-compact-thumbs{margin-left:auto;display:inline-flex;align-items:center;gap:6px}.qr-uploader-compact-thumb{width:30px;height:30px;border-radius:8px;overflow:hidden;border:1px solid rgba(255,255,255,.14);background:#ffffff0f;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;cursor:pointer;transition:transform .15s ease,border-color .15s ease,background .15s ease}.qr-uploader-compact-thumb:hover{transform:translateY(-1px);border-color:#3b82f6b3;background:#3b82f61f}.qr-uploader-compact-thumb img{width:100%;height:100%;object-fit:cover;display:block}.qr-uploader-compact-file-pill{font-size:10px;font-weight:700;letter-spacing:.6px;color:#fff;background:linear-gradient(135deg,#dc2626,#991b1b);padding:6px;border-radius:7px}.qr-uploader-compact-more{height:30px;min-width:30px;padding:0 8px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#fff;background:var(--color-primary, #3b82f6);border:1px solid rgba(255,255,255,.12)}.qr-uploader-compact-expanded{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);width:380px;max-width:90vw;max-height:85vh;overflow-y:auto;z-index:9999;box-shadow:0 25px 80px #0009;background:var(--bg-secondary, #1e293b);border:1px solid var(--border-medium, rgba(255, 255, 255, .15));border-radius:var(--radius-lg, 16px);padding:24px}.qr-uploader-compact-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;z-index:9998;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.file-preview-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;display:flex;align-items:center;justify-content:center;padding:20px;z-index:2000;animation:fadeIn .2s ease}.file-preview-modal{background:var(--bg-secondary, #1e293b);border-radius:16px;max-width:800px;max-height:90vh;width:100%;overflow:hidden;position:relative}.preview-close-btn{position:absolute;top:12px;right:12px;width:32px;height:32px;background:#00000080;border:none;border-radius:50%;color:#fff;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;z-index:10;transition:background .2s ease}.preview-close-btn:hover{background:#000000b3}.preview-content{width:100%;max-height:60vh;display:flex;align-items:center;justify-content:center;background:#0f172a}.preview-content img{max-width:100%;max-height:60vh;object-fit:contain}.preview-pdf-placeholder{padding:60px;text-align:center;color:var(--text-secondary, #94a3b8)}.preview-pdf-placeholder .pdf-icon{font-size:48px;display:block;margin-bottom:12px}.preview-info{padding:20px}.preview-filename{font-size:16px;font-weight:600;color:var(--text-primary, #e2e8f0);margin:0 0 8px;word-break:break-all}.preview-meta{display:flex;align-items:center;gap:12px;font-size:14px;color:var(--text-secondary, #94a3b8);margin:0 0 8px}.quality-badge{padding:3px 10px;border-radius:4px;font-size:12px;font-weight:600}.quality-badge.good{background:#22c55e33;color:#86efac}.quality-badge.fair{background:#fbbf2433;color:#fcd34d}.quality-badge.poor{background:#ef444433;color:#fca5a5}.preview-warnings{font-size:13px;color:#fbbf24;margin:0 0 16px;display:flex;align-items:center}.preview-warnings svg{margin-right:6px}.preview-actions{display:flex;gap:12px}.preview-action-btn{flex:1;text-align:center;padding:10px 16px;border-radius:8px;font-size:14px;font-weight:500;text-decoration:none;transition:all .2s ease;background:#ffffff1a;color:var(--text-primary, #e2e8f0)}.preview-action-btn:hover{background:#ffffff26}.preview-action-btn.primary{background:linear-gradient(135deg,#3b82f6,#8b5cf6);color:#fff}.preview-action-btn.primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px #3b82f666}@media (max-width: 768px){.qr-uploader-compact-expanded{width:95vw;max-width:95vw}.files-grid{grid-template-columns:repeat(4,1fr)}}.incident-form{max-width:1200px;margin:0 auto;padding:var(--spacing-lg)}.incident-form.modal{padding:0}.incident-form-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg)}.incident-form-header h2{margin:0;color:var(--text-primary)}.form-section{background:var(--bg-secondary);border-radius:var(--radius-md);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg);border:1px solid var(--border-light)}.form-section h3{margin-top:0;margin-bottom:var(--spacing-md);color:var(--text-primary);font-size:var(--text-lg);border-bottom:2px solid var(--color-primary);padding-bottom:var(--spacing-sm)}.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.form-group input[type=text],.form-group input[type=date],.form-group input[type=time],.form-group input[type=number],.form-group select,.form-group textarea{width:100%;padding:var(--spacing-sm);border:1px solid var(--border-light);border-radius:var(--radius-sm);font-size:var(--text-base);background:var(--bg-primary);color:var(--text-primary)}.form-group textarea{resize:vertical;min-height:100px}.officer-search{width:100%;padding:var(--spacing-sm);margin-bottom:var(--spacing-md);border:1px solid var(--border-light);border-radius:var(--radius-sm);font-size:var(--text-base)}.officer-list{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-xs);max-height:300px;overflow-y:auto;border:1px solid var(--border-light);border-radius:var(--radius-sm);padding:var(--spacing-sm);background:var(--bg-primary)}@media (max-width: 900px){.officer-list{grid-template-columns:repeat(2,1fr)}}@media (max-width: 600px){.officer-list{grid-template-columns:1fr}}.officer-checkbox{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm);cursor:pointer;border-radius:var(--radius-sm);transition:background-color var(--transition-fast)}.officer-checkbox:hover{background:var(--bg-hover)}.officer-checkbox input[type=checkbox],.officer-checkbox input[type=radio]{flex-shrink:0;width:16px;height:16px;min-width:16px;min-height:16px;margin:0;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:2px solid var(--border-medium);border-radius:3px;background:var(--bg-primary);position:relative}.officer-checkbox input[type=radio]{border-radius:50%}.officer-checkbox input[type=checkbox]:checked,.officer-checkbox input[type=radio]:checked{background:var(--color-primary);border-color:var(--color-primary)}.officer-checkbox input[type=radio]:checked:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:6px;height:6px;background:#fff;border-radius:50%}.officer-checkbox input[type=checkbox]:disabled,.officer-checkbox input[type=radio]:disabled{cursor:not-allowed;opacity:.7;background:var(--bg-secondary)}.officer-checkbox input[type=checkbox]:disabled:checked,.officer-checkbox input[type=radio]:disabled:checked{background:var(--color-primary);border-color:var(--color-primary);opacity:.8}.form-actions{display:flex;justify-content:flex-end;gap:var(--spacing-md);margin-top:var(--spacing-xl);padding-top:var(--spacing-lg);border-top:1px solid var(--border-light)}.btn-secondary{background:var(--bg-secondary);color:var(--text-primary);border:1px solid var(--border-light)}.placeholder-text{color:var(--text-secondary, #666);font-style:italic;padding:var(--spacing-md);background:var(--bg-hover, #f5f5f5);border-radius:var(--radius-sm);border:1px dashed var(--border-light)}.placeholder-note{color:var(--text-secondary, #666);font-size:var(--text-sm);margin-top:var(--spacing-sm);padding-left:var(--spacing-md)}.section-note{margin-bottom:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-tertiary, #f0f0f0);border-radius:var(--radius-sm);border-left:3px solid var(--color-primary)}.section-note p{margin:0;font-size:var(--text-sm);color:var(--text-secondary)}.readonly-pill{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);border:1px solid var(--border-light);background:linear-gradient(180deg,#3b82f614,#3b82f608);color:var(--text-primary)}.readonly-pill-meta{font-size:var(--text-sm);color:var(--text-secondary, #666);white-space:nowrap}.officer-entry{background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-md)}.entry-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-sm);border-bottom:2px solid var(--border-light)}.entry-header h4{margin:0;color:var(--text-primary);font-size:var(--text-lg)}.btn-remove-entry{background:var(--color-danger, #dc3545);color:#fff;border:none;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-sm);font-weight:var(--font-medium)}.btn-remove-entry:hover{background:var(--color-danger-dark, #c82333)}.form-actions-add{margin-top:var(--spacing-md);display:flex;justify-content:flex-start;align-items:center;gap:var(--spacing-md)}.subject-unknown-checkbox{display:flex;align-items:center;gap:var(--spacing-xs);cursor:pointer;font-weight:var(--font-medium);color:var(--text-primary)}.subject-unknown-checkbox input[type=checkbox]{width:auto;margin:0;cursor:pointer}.subject-unknown-note{color:var(--color-primary);font-weight:var(--font-medium);margin-top:var(--spacing-xs)}.primary-badge{color:var(--color-primary);font-weight:var(--font-bold);font-size:var(--text-sm);margin-left:var(--spacing-xs)}.policy-radio-group{display:flex;gap:20px;margin-top:8px}.policy-radio-label{display:flex;align-items:center;gap:8px;cursor:pointer;padding:8px 12px;border-radius:var(--radius-sm);transition:background-color var(--transition-fast)}.policy-radio-label:hover{background:var(--bg-hover)}.policy-radio-label input[type=radio]{flex-shrink:0;width:18px;height:18px;min-width:18px;min-height:18px;margin:0;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:2px solid var(--border-medium);border-radius:50%;background:var(--bg-primary);position:relative}.policy-radio-label input[type=radio]:checked{background:var(--color-primary);border-color:var(--color-primary)}.policy-radio-label input[type=radio]:checked:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:6px;height:6px;background:#fff;border-radius:50%}.policy-radio-label span{white-space:nowrap;font-weight:var(--font-medium)}.review-interface{max-width:1400px;margin:0 auto;padding:var(--spacing-lg)}.review-header{margin-bottom:var(--spacing-lg)}.review-header h2{margin:0 0 var(--spacing-xs) 0;color:var(--text-primary)}.review-header .subtitle{margin:0;color:var(--text-secondary)}.review-layout{display:grid;grid-template-columns:400px 1fr;gap:var(--spacing-lg);align-items:start}.reviews-list{background:var(--bg-secondary);border-radius:var(--radius-md);padding:var(--spacing-lg);border:1px solid var(--border-light);max-height:calc(100vh - 200px);display:flex;flex-direction:column}.reviews-list h3{margin-top:0;margin-bottom:var(--spacing-md);color:var(--text-primary)}.reviews-list-header{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.reviews-list-header h3{margin:0}.count-pill{display:inline-flex;align-items:center;justify-content:center;min-width:28px;height:22px;padding:0 8px;margin-left:8px;border-radius:999px;background:var(--bg-primary);border:1px solid var(--border-light);color:var(--text-secondary);font-size:var(--text-sm);font-weight:var(--font-medium)}.reviews-list-toolbar{margin-bottom:var(--spacing-md)}.review-filter{width:100%;padding:var(--spacing-sm);border:1px solid var(--border-light);border-radius:var(--radius-sm);background:var(--bg-primary);color:var(--text-primary);font-size:var(--text-base)}.review-filter:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #007bff26}.reviews-list-items{overflow-y:auto;flex:1}.review-item{background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-sm);padding:var(--spacing-md);margin-bottom:var(--spacing-sm);cursor:pointer;transition:all var(--transition-fast)}.review-item:hover{border-color:var(--color-primary);box-shadow:0 2px 4px #0000001a}.review-item.selected{border-color:var(--color-primary);background:var(--bg-hover);box-shadow:0 2px 8px #00000026}.review-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm)}.incident-type{font-weight:var(--font-medium);color:var(--text-primary)}.review-status{font-size:var(--text-sm);padding:2px 8px;border-radius:var(--radius-sm);background:var(--color-warning);color:#fff}.review-item-details{font-size:var(--text-sm);color:var(--text-secondary);display:flex;flex-direction:column;gap:4px}.kv-label{display:inline-block;min-width:88px;color:var(--text-secondary)}.kv-value{color:var(--text-primary)}.review-form{background:var(--bg-secondary);border-radius:var(--radius-md);padding:var(--spacing-lg);border:1px solid var(--border-light)}.review-form-header{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.review-form-header h3{margin:0;color:var(--text-primary)}.review-form-header-actions{display:flex;gap:var(--spacing-sm)}.review-form h3{margin-top:0;margin-bottom:var(--spacing-lg);color:var(--text-primary)}.incident-details{background:var(--bg-primary);border-radius:var(--radius-sm);padding:var(--spacing-md);margin-bottom:var(--spacing-lg);border:1px solid var(--border-light)}.detail-row{display:grid;grid-template-columns:150px 1fr;gap:var(--spacing-md);margin-bottom:var(--spacing-sm);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--border-light)}.detail-row:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.detail-row label{font-weight:var(--font-medium);color:var(--text-secondary)}.detail-row span{color:var(--text-primary)}.description-text{color:var(--text-primary);white-space:pre-wrap;line-height:1.6}.review-actions h4{margin-top:0;margin-bottom:var(--spacing-md);color:var(--text-primary)}.action-buttons{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg)}.action-option{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm);border:1px solid var(--border-light);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.action-option:hover{background:var(--bg-hover);border-color:var(--color-primary)}.action-option input[type=radio]{margin:0;cursor:pointer}.form-group{margin-bottom:var(--spacing-md)}.form-group label{display:block;margin-bottom:var(--spacing-xs);font-weight:var(--font-medium);color:var(--text-primary)}.form-group select,.form-group textarea{width:100%;padding:var(--spacing-sm);border:1px solid var(--border-light);border-radius:var(--radius-sm);font-size:var(--text-base);background:var(--bg-primary);color:var(--text-primary);font-family:inherit}.form-group textarea{resize:vertical;min-height:120px}.form-actions{display:flex;justify-content:flex-end;gap:var(--spacing-md);margin-top:var(--spacing-lg);padding-top:var(--spacing-lg);border-top:1px solid var(--border-light)}.btn-primary,.btn-secondary{padding:var(--spacing-sm) var(--spacing-lg);border:none;border-radius:var(--radius-md);font-size:var(--text-base);font-weight:var(--font-medium);cursor:pointer;transition:all var(--transition-fast)}.btn-compact{padding:8px 12px;font-size:var(--text-sm)}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover);transform:translateY(-1px)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:var(--bg-primary);color:var(--text-primary);border:1px solid var(--border-light)}.btn-secondary:hover:not(:disabled){background:var(--bg-hover)}.empty-state,.empty-selection,.loading{text-align:center;padding:var(--spacing-xl);color:var(--text-secondary)}.error-message{background:#fee;color:#c33;padding:var(--spacing-md);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg);border:1px solid #fcc}@media (max-width: 1100px){.review-layout{grid-template-columns:1fr}.reviews-list{max-height:none}}.review-history-section{background:var(--bg-primary);border-radius:var(--radius-sm);padding:var(--spacing-md);margin-bottom:var(--spacing-lg);border:1px solid var(--border-light)}.review-history-section h4{margin-top:0;margin-bottom:var(--spacing-md);color:var(--text-primary);font-size:var(--text-lg)}.review-history-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.review-history-item{border:1px solid var(--border-light);border-radius:var(--radius-sm);background:var(--bg-secondary);overflow:hidden}.review-history-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm) var(--spacing-md);cursor:pointer;transition:background-color var(--transition-fast)}.review-history-header:hover{background:var(--bg-hover)}.review-history-level{display:flex;gap:var(--spacing-xs);align-items:center;min-width:200px}.review-level-badge{padding:2px 8px;border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:var(--font-medium);background:var(--color-primary);color:#fff;text-transform:capitalize}.review-action-badge{padding:2px 8px;border-radius:var(--radius-sm);font-size:var(--text-xs);font-weight:var(--font-medium);background:var(--bg-primary);color:var(--text-primary);border:1px solid var(--border-light);text-transform:capitalize}.review-history-info{display:flex;flex-direction:column;gap:4px;flex:1;margin-left:var(--spacing-md)}.reviewer-name{font-weight:var(--font-medium);color:var(--text-primary);font-size:var(--text-sm)}.review-date{font-size:var(--text-xs);color:var(--text-secondary)}.next-reviewer{font-size:var(--text-xs);color:var(--color-primary);font-style:italic}.expand-toggle{background:none;border:none;color:var(--text-secondary);cursor:pointer;font-size:var(--text-sm);padding:var(--spacing-xs);min-width:24px;text-align:center}.expand-toggle:hover{color:var(--text-primary)}.review-history-comments{padding:var(--spacing-md);background:var(--bg-primary);border-top:1px solid var(--border-light);animation:slideDown .2s ease-out}@keyframes slideDown{0%{opacity:0;max-height:0}to{opacity:1;max-height:500px}}.comments-label{font-weight:var(--font-medium);color:var(--text-secondary);font-size:var(--text-xs);margin-bottom:var(--spacing-xs);text-transform:uppercase;letter-spacing:.5px}.comments-text{color:var(--text-primary);white-space:pre-wrap;line-height:1.6;font-size:var(--text-sm)}.chief-decision-note{padding:var(--spacing-sm);background:var(--bg-secondary);border-radius:var(--radius-sm);border:1px solid var(--border-light)}.decision-badge{display:inline-block;padding:4px 12px;border-radius:var(--radius-sm);font-weight:var(--font-medium);font-size:var(--text-sm)}.decision-badge.approved{background:#d4edda;color:#155724;border:1px solid #c3e6cb}.decision-badge.declined{background:#f8d7da;color:#721c24;border:1px solid #f5c6cb}.decision-note{color:var(--text-secondary);font-size:var(--text-sm);font-style:italic}.incident-analytics-portal{display:flex;flex-direction:column;gap:var(--spacing-lg)}.iap-controls-bar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--bg-primary);border-radius:var(--radius-lg);border:1px solid var(--border-light)}.iap-date-controls{display:flex;gap:var(--spacing-md);align-items:center}.iap-date-field{display:flex;flex-direction:column;gap:var(--spacing-xs)}.iap-date-field label{font-size:var(--text-xs);color:var(--text-muted);font-weight:var(--font-medium)}.iap-date-field input{padding:var(--spacing-sm);border:1px solid var(--border-medium);border-radius:var(--radius-sm);font-size:var(--text-sm);background:var(--bg-primary);color:var(--text-primary)}.iap-date-field input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.iap-tabs{display:flex;gap:4px;flex-wrap:wrap;padding:12px 16px;background:var(--gray-100, #f1f5f9);border-bottom:1px solid var(--gray-200, #e2e8f0);border-radius:var(--radius-md) var(--radius-md) 0 0}.iap-tab-btn{padding:10px 20px;background:transparent;border:none;border-radius:8px;font-size:var(--text-sm);font-weight:500;cursor:pointer;color:var(--text-secondary, #64748b);transition:all .2s ease;white-space:nowrap}.iap-tab-btn:hover{color:var(--text-primary, #334155);background:#fffc}.iap-tab-btn.active{color:var(--color-primary-dark, #1e40af);background:var(--bg-primary, white);box-shadow:0 2px 4px #0000000d;font-weight:var(--font-semibold)}.iap-content{animation:iapFadeIn .3s ease-out}@keyframes iapFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.iap-error{background:var(--color-error-light);color:var(--color-error-dark);padding:var(--spacing-md);border-radius:var(--radius-md);border-left:4px solid var(--color-error)}.iap-loading{text-align:center;padding:var(--spacing-3xl);color:var(--text-muted);font-size:var(--text-lg)}.iap-overview-tab{display:flex;flex-direction:column;gap:var(--spacing-xl)}.iap-totals-section h3{margin:0 0 var(--spacing-md) 0;font-size:var(--text-lg);color:var(--text-primary)}.iap-totals-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md)}.iap-total-card{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-lg);background:var(--bg-primary);border-radius:var(--radius-lg);border:1px solid var(--border-light);transition:all var(--transition-fast)}.iap-total-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.iap-total-card.use-of-force{border-left:4px solid #2563eb}.iap-total-card.vehicle-pursuit{border-left:4px solid #f59e0b}.iap-total-card.citizen-complaint{border-left:4px solid #16a34a}.iap-total-card.total{border-left:4px solid var(--color-primary);background:var(--bg-secondary)}.iap-total-icon{font-size:var(--text-3xl)}.iap-total-content{display:flex;flex-direction:column}.iap-total-value{font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--text-primary);line-height:1.1}.iap-total-label{font-size:var(--text-sm);color:var(--text-muted)}.iap-chart-section{background:var(--bg-primary);border-radius:var(--radius-lg);padding:var(--spacing-lg);border:1px solid var(--border-light)}.iap-chart-section h3,.iap-chart-section h4{margin:0 0 var(--spacing-md) 0;font-size:var(--text-base);color:var(--text-primary)}.iap-chart-container{width:100%}.iap-comparison-section h3{margin:0 0 var(--spacing-xs) 0;font-size:var(--text-lg);color:var(--text-primary)}.iap-section-desc{margin:0 0 var(--spacing-md) 0;font-size:var(--text-sm);color:var(--text-muted)}.iap-comparison-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--spacing-md)}.iap-comparison-card{padding:var(--spacing-lg);background:var(--bg-primary);border-radius:var(--radius-lg);border:1px solid var(--border-light);transition:all var(--transition-fast)}.iap-comparison-card.up{border-left:4px solid var(--color-warning)}.iap-comparison-card.down{border-left:4px solid var(--color-success)}.iap-comparison-type{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--spacing-sm)}.iap-comparison-change{font-size:var(--text-2xl);font-weight:var(--font-bold);margin-bottom:var(--spacing-xs)}.iap-comparison-change.increase{color:var(--color-warning-dark)}.iap-comparison-change.decrease{color:var(--color-success)}.iap-comparison-detail{font-size:var(--text-xs);color:var(--text-muted)}.iap-categories-tab{display:flex;flex-direction:column;gap:var(--spacing-xl)}.iap-category-selector{display:flex;align-items:center;gap:var(--spacing-md)}.iap-category-selector label{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-primary)}.iap-category-selector select{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-medium);border-radius:var(--radius-sm);font-size:var(--text-base);background:var(--bg-primary);color:var(--text-primary);cursor:pointer}.iap-portal-stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--spacing-md)}.iap-portal-stat-card{padding:var(--spacing-lg);background:var(--bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--border-light);text-align:center}.iap-portal-stat-label{font-size:var(--text-xs);font-weight:var(--font-semibold);color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--spacing-sm)}.iap-portal-stat-value{font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--text-primary);line-height:1.1}.iap-portal-stat-sub{font-size:var(--text-xs);color:var(--text-muted);margin-top:var(--spacing-xs)}.iap-breakdown-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:var(--spacing-md)}.iap-breakdown-card{background:var(--bg-primary);border-radius:var(--radius-lg);padding:var(--spacing-lg);border:1px solid var(--border-light)}.iap-breakdown-card h4{margin:0 0 var(--spacing-md) 0;font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.iap-breakdown-list{display:flex;flex-direction:column;gap:var(--spacing-sm)}.iap-breakdown-item{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-xs) 0;border-bottom:1px solid var(--border-light)}.iap-breakdown-item:last-child{border-bottom:none}.iap-breakdown-label{font-size:var(--text-sm);color:var(--text-primary);text-transform:capitalize}.iap-breakdown-value{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--color-primary)}.iap-shifts-tab{display:flex;flex-direction:column;gap:var(--spacing-xl)}.iap-shifts-controls{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--spacing-md)}.iap-shift-mode-selector{display:flex;gap:var(--spacing-xs)}.iap-mode-btn{padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-secondary);border:1px solid var(--border-medium);border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--text-primary);cursor:pointer;transition:all var(--transition-fast)}.iap-mode-btn:hover{background:var(--bg-hover);border-color:var(--color-primary)}.iap-mode-btn.active{background:var(--color-primary);border-color:var(--color-primary);color:var(--text-inverse)}.iap-refresh-btn{padding:var(--spacing-sm) var(--spacing-lg);background:var(--color-primary);border:none;border-radius:var(--radius-md);font-size:var(--text-sm);color:var(--text-inverse);cursor:pointer;transition:all var(--transition-fast)}.iap-refresh-btn:hover:not(:disabled){background:var(--color-primary-hover)}.iap-refresh-btn:disabled{opacity:.6;cursor:not-allowed}.iap-comparison-cards-section h3{margin:0 0 var(--spacing-md) 0;font-size:var(--text-base);color:var(--text-primary)}.iap-comparison-cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:var(--spacing-lg)}.iap-table-section{background:var(--bg-primary);border-radius:var(--radius-lg);padding:var(--spacing-lg);border:1px solid var(--border-light)}.iap-table-section h3{margin:0 0 var(--spacing-md) 0;font-size:var(--text-base);color:var(--text-primary)}.iap-table-container{overflow-x:auto}.iap-data-table{width:100%;border-collapse:collapse}.iap-data-table th{background:var(--bg-tertiary);padding:var(--spacing-sm) var(--spacing-md);text-align:left;font-weight:var(--font-semibold);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);border-bottom:2px solid var(--border-medium)}.iap-data-table td{padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--border-light);color:var(--text-primary);font-size:var(--text-sm)}.iap-data-table tr:hover{background:var(--bg-hover)}.iap-total-cell{font-weight:var(--font-bold);color:var(--color-primary)}.iap-shift-indicator{display:inline-block;width:10px;height:10px;border-radius:var(--radius-full);margin-right:var(--spacing-sm)}.iap-rankings-tab{display:flex;flex-direction:column;gap:var(--spacing-xl)}.iap-rankings-controls{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:var(--spacing-md)}.iap-filter-group{display:flex;align-items:center;gap:var(--spacing-sm)}.iap-filter-group label{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-primary)}.iap-filter-group select{padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-medium);border-radius:var(--radius-sm);font-size:var(--text-sm);background:var(--bg-primary);color:var(--text-primary);cursor:pointer}.iap-rankings-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:var(--spacing-lg)}.iap-ranking-card{background:var(--bg-primary);border-radius:var(--radius-lg);border:1px solid var(--border-light);overflow:hidden}.iap-ranking-header{padding:var(--spacing-md) var(--spacing-lg);background:var(--bg-secondary);border-bottom:3px solid var(--color-primary)}.iap-ranking-header h4{margin:0;font-size:var(--text-base);color:var(--text-primary)}.iap-ranking-table-container{padding:var(--spacing-sm);overflow-x:auto}.iap-ranking-table{width:100%;border-collapse:collapse}.iap-ranking-table th{padding:var(--spacing-xs) var(--spacing-sm);text-align:left;font-weight:var(--font-semibold);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);border-bottom:1px solid var(--border-light)}.iap-ranking-table td{padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--text-sm);color:var(--text-primary);border-bottom:1px solid var(--border-light)}.iap-ranking-table tr.top-1{background:#ffd7001a}.iap-ranking-table tr.top-2{background:#c0c0c01a}.iap-ranking-table tr.top-3{background:#cd7f321a}.iap-rank-cell{font-weight:var(--font-bold);text-align:center}.iap-heat-rank{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;font-size:var(--text-sm);font-weight:var(--font-bold);color:#fff}.iap-heat-rank.heat-1{background:linear-gradient(135deg,#dc2626,#b91c1c);box-shadow:0 2px 4px #dc26264d}.iap-heat-rank.heat-2{background:linear-gradient(135deg,#ea580c,#c2410c);box-shadow:0 2px 4px #ea580c4d}.iap-heat-rank.heat-3{background:linear-gradient(135deg,#f59e0b,#d97706);box-shadow:0 2px 4px #f59e0b4d}.iap-heat-rank.heat-4{background:linear-gradient(135deg,#9ca3af,#6b7280);box-shadow:0 2px 4px #6b728033}.iap-trends-tab{display:flex;flex-direction:column;gap:var(--spacing-xl)}.iap-trends-controls{display:flex;justify-content:flex-start;align-items:center;flex-wrap:wrap;gap:var(--spacing-md)}.iap-trend-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md)}.iap-trend-summary-card{padding:var(--spacing-lg);background:var(--bg-primary);border-radius:var(--radius-lg);border:1px solid var(--border-light);text-align:center}.iap-trend-type{font-size:var(--text-sm);font-weight:var(--font-bold);text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--spacing-sm)}.iap-trend-direction{font-size:var(--text-xl);font-weight:var(--font-bold);color:var(--text-primary);margin-bottom:var(--spacing-xs)}.iap-trend-direction.increasing{color:var(--color-warning-dark)}.iap-trend-direction.decreasing{color:var(--color-success)}.iap-trend-direction.stable{color:var(--text-muted)}.iap-trend-change{font-size:var(--text-sm);color:var(--text-muted)}.iap-reports-tab{background:var(--bg-primary);border-radius:var(--radius-lg);padding:var(--spacing-xl);border:1px solid var(--border-light)}.iap-reports-tab h3{margin:0 0 var(--spacing-sm) 0;font-size:var(--text-lg);color:var(--text-primary)}.iap-officers-tab{display:flex;flex-direction:column;gap:24px}.iap-officer-summary-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px}.iap-summary-card{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:20px;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;text-align:center;transition:transform .2s,box-shadow .2s}.iap-summary-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001f}.iap-summary-card .card-value{font-size:2rem;font-weight:700;color:#1a1a2e;line-height:1.2}.iap-summary-card .card-label{font-size:.75rem;color:#666;text-transform:uppercase;letter-spacing:.5px;margin-top:6px}.iap-summary-card.risk-critical-bg{border-top:4px solid #dc2626;background:linear-gradient(135deg,#fef2f2,#fff)}.iap-summary-card.risk-high-bg{border-top:4px solid #f97316;background:linear-gradient(135deg,#fff7ed,#fff)}.iap-summary-card.risk-medium-bg{border-top:4px solid #eab308;background:linear-gradient(135deg,#fefce8,#fff)}.iap-officers-layout{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:start}.iap-officers-list-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow:hidden;display:flex;flex-direction:column;max-height:600px}.iap-officers-list-header{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;border-bottom:1px solid #eee;background:#f5f5f5}.iap-officers-list-header h3{margin:0;font-size:1rem;font-weight:600;color:#1a1a2e}.iap-search-input{padding:8px 14px;border:1px solid #ddd;border-radius:6px;font-size:.9rem;background:#fff;color:#333;width:200px;transition:border-color .2s,box-shadow .2s}.iap-search-input:focus{outline:none;border-color:#1976d2;box-shadow:0 0 0 3px #1976d226}.iap-officers-table-wrapper{flex:1;overflow-y:auto;min-height:0}.iap-officers-table{width:100%;border-collapse:collapse}.iap-officers-table th{position:sticky;top:0;background:#f5f5f5;padding:12px 14px;text-align:left;font-weight:600;font-size:.8rem;text-transform:uppercase;letter-spacing:.5px;color:#555;border-bottom:2px solid #ddd}.iap-officers-table td{padding:10px 14px;border-bottom:1px solid #eee;color:#1a1a2e;font-size:.9rem}.iap-officers-table .officer-row{cursor:pointer;transition:background .15s}.iap-officers-table .officer-row:hover{background:#fafafa}.iap-officers-table .officer-row.selected{background:#e3f2fd}.iap-officers-table .officer-name{font-weight:500}.iap-officers-table .count-cell{text-align:center;font-weight:600}.iap-officers-table .count-cell.uof{color:#2563eb}.iap-officers-table .count-cell.pursuit{color:#f59e0b}.iap-officers-table .count-cell.complaint{color:#16a34a}.iap-officers-table .count-cell.total{color:#1976d2}.risk-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:20px;font-size:.75rem;font-weight:600;white-space:nowrap}.risk-badge.risk-critical{background:#fef2f2;color:#dc2626;border:1px solid #fecaca}.risk-badge.risk-high{background:#fff7ed;color:#ea580c;border:1px solid #fed7aa}.risk-badge.risk-medium{background:#fefce8;color:#ca8a04;border:1px solid #fef08a}.risk-badge.risk-none{background:#f0fdf4;color:#16a34a;border:1px solid #bbf7d0}.iap-officer-detail-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:20px;display:flex;flex-direction:column;gap:20px;max-height:600px;overflow-y:auto}.officer-detail-header{display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding-bottom:16px;border-bottom:1px solid #eee}.officer-detail-header h3{margin:0;font-size:1.25rem;font-weight:600;color:#1a1a2e}.officer-detail-header .badge-number{font-size:.85rem;color:#666;padding:4px 10px;background:#f5f5f5;border-radius:6px;border:1px solid #e0e0e0}.officer-stats-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.officer-stat-card{display:flex;flex-direction:column;align-items:center;padding:16px;background:#f9f9f9;border-radius:10px;border:1px solid #e5e5e5;text-align:center;transition:transform .2s,box-shadow .2s}.officer-stat-card:hover{transform:translateY(-1px);box-shadow:0 2px 6px #0000000f}.officer-stat-card .stat-value{font-size:1.75rem;font-weight:700;line-height:1.2}.officer-stat-card .stat-label{font-size:.7rem;color:#666;text-transform:uppercase;letter-spacing:.5px;margin-top:6px}.officer-stat-card.uof{border-top:3px solid #2563eb}.officer-stat-card.uof .stat-value{color:#2563eb}.officer-stat-card.pursuit{border-top:3px solid #f59e0b}.officer-stat-card.pursuit .stat-value{color:#f59e0b}.officer-stat-card.complaint{border-top:3px solid #16a34a}.officer-stat-card.complaint .stat-value{color:#16a34a}.officer-thresholds-info{padding:14px 16px;background:linear-gradient(135deg,#f8fafc,#f1f5f9);border-radius:8px;border:1px solid #e2e8f0}.officer-thresholds-info h4{margin:0 0 10px;font-size:.85rem;font-weight:600;color:#1a1a2e}.thresholds-grid{display:flex;flex-direction:column;gap:6px}.threshold-item{display:flex;justify-content:space-between;font-size:.8rem;color:#666;padding:4px 0;border-bottom:1px dashed #e5e7eb}.threshold-item:last-child{border-bottom:none}.threshold-item strong{color:#1a1a2e;font-weight:500}.officer-trend-chart{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #0000000f}.officer-trend-chart h4{margin:0 0 16px;font-size:.95rem;font-weight:600;color:#1a1a2e}.officer-incidents-history{flex:1}.officer-incidents-history h4{margin:0 0 12px;font-size:.95rem;font-weight:600;color:#1a1a2e}.incidents-history-table-wrapper{max-height:260px;overflow-y:auto;border-radius:8px;box-shadow:0 1px 4px #0000000f}.incidents-history-table{width:100%;border-collapse:collapse;background:#fff}.incidents-history-table th{position:sticky;top:0;background:#f5f5f5;padding:10px 12px;text-align:left;font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.5px;color:#555;border-bottom:2px solid #ddd}.incidents-history-table td{padding:10px 12px;border-bottom:1px solid #eee;color:#1a1a2e;font-size:.85rem}.incidents-history-table tr:hover{background:#fafafa}.incident-type-badge{display:inline-flex;align-items:center;padding:3px 8px;border-radius:4px;font-size:.75rem;font-weight:500}.incident-type-badge.use_of_force{background:#eff6ff;color:#2563eb;border:1px solid #bfdbfe}.incident-type-badge.vehicle_pursuit{background:#fffbeb;color:#d97706;border:1px solid #fde68a}.incident-type-badge.citizen_complaint{background:#f0fdf4;color:#16a34a;border:1px solid #bbf7d0}.officer-detail-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;flex:1;min-height:300px;background:#f9fafb;border-radius:8px;border:2px dashed #e2e8f0}.officer-detail-placeholder p{color:#6b7280;font-size:.95rem}.iap-officer-charts{display:grid;grid-template-columns:repeat(auto-fit,minmax(420px,1fr));gap:20px}.iap-officer-charts .chart-card{background:#fff;border-radius:12px;padding:20px;box-shadow:0 2px 8px #00000014}.iap-officer-charts .chart-card h4{margin:0 0 16px;font-size:1rem;font-weight:600;color:#1a1a2e}[data-theme=dark] .iap-summary-card{background:#1e1e2e;box-shadow:0 2px 8px #0000004d}[data-theme=dark] .iap-summary-card .card-value{color:#e0e0e0}[data-theme=dark] .iap-summary-card .card-label{color:#888}[data-theme=dark] .iap-summary-card.risk-critical-bg{background:linear-gradient(135deg,#2d1f1f,#1e1e2e)}[data-theme=dark] .iap-summary-card.risk-high-bg{background:linear-gradient(135deg,#2d2a1f,#1e1e2e)}[data-theme=dark] .iap-summary-card.risk-medium-bg{background:linear-gradient(135deg,#2d2d1f,#1e1e2e)}[data-theme=dark] .iap-officers-list-section,[data-theme=dark] .iap-officer-detail-section{background:#1e1e2e;box-shadow:0 2px 8px #0000004d}[data-theme=dark] .iap-officers-list-header{background:#2a2a3e;border-bottom-color:#444}[data-theme=dark] .iap-officers-list-header h3{color:#e0e0e0}[data-theme=dark] .iap-search-input{background:#1e1e2e;border-color:#444;color:#e0e0e0}[data-theme=dark] .iap-search-input:focus{border-color:#64b5f6;box-shadow:0 0 0 3px #64b5f633}[data-theme=dark] .iap-officers-table th{background:#2a2a3e;color:#aaa;border-bottom-color:#444}[data-theme=dark] .iap-officers-table td{color:#e0e0e0;border-bottom-color:#333}[data-theme=dark] .iap-officers-table .officer-row:hover{background:#2a2a3e}[data-theme=dark] .iap-officers-table .officer-row.selected{background:#1e3a5f}[data-theme=dark] .risk-badge.risk-critical{background:#dc262633;color:#f87171;border-color:#dc262666}[data-theme=dark] .risk-badge.risk-high{background:#f9731633;color:#fb923c;border-color:#f9731666}[data-theme=dark] .risk-badge.risk-medium{background:#eab30833;color:#fbbf24;border-color:#eab30866}[data-theme=dark] .risk-badge.risk-none{background:#22c55e33;color:#4ade80;border-color:#22c55e66}[data-theme=dark] .officer-detail-header{border-bottom-color:#444}[data-theme=dark] .officer-detail-header h3{color:#e0e0e0}[data-theme=dark] .officer-detail-header .badge-number{background:#2a2a3e;color:#aaa;border-color:#444}[data-theme=dark] .officer-stat-card{background:#2a2a3e;border-color:#444}[data-theme=dark] .officer-stat-card .stat-label{color:#888}[data-theme=dark] .officer-thresholds-info{background:linear-gradient(135deg,#2a2a3e,#1e1e2e);border-color:#444}[data-theme=dark] .officer-thresholds-info h4{color:#e0e0e0}[data-theme=dark] .threshold-item{color:#888;border-bottom-color:#333}[data-theme=dark] .threshold-item strong{color:#e0e0e0}[data-theme=dark] .officer-trend-chart,[data-theme=dark] .iap-officer-charts .chart-card{background:#1e1e2e;box-shadow:0 2px 8px #0000004d}[data-theme=dark] .officer-trend-chart h4,[data-theme=dark] .iap-officer-charts .chart-card h4,[data-theme=dark] .officer-incidents-history h4{color:#e0e0e0}[data-theme=dark] .incidents-history-table-wrapper{box-shadow:0 1px 4px #0003}[data-theme=dark] .incidents-history-table{background:#1e1e2e}[data-theme=dark] .incidents-history-table th{background:#2a2a3e;color:#aaa;border-bottom-color:#444}[data-theme=dark] .incidents-history-table td{color:#e0e0e0;border-bottom-color:#333}[data-theme=dark] .incidents-history-table tr:hover{background:#2a2a3e}[data-theme=dark] .incident-type-badge.use_of_force{background:#2563eb33;color:#60a5fa;border-color:#2563eb66}[data-theme=dark] .incident-type-badge.vehicle_pursuit{background:#d9770633;color:#fbbf24;border-color:#d9770666}[data-theme=dark] .incident-type-badge.citizen_complaint{background:#16a34a33;color:#4ade80;border-color:#16a34a66}[data-theme=dark] .officer-detail-placeholder{background:#2a2a3e;border-color:#444}[data-theme=dark] .officer-detail-placeholder p{color:#888}@media (max-width: 1024px){.iap-officers-layout,.iap-officer-charts{grid-template-columns:1fr}}@media (max-width: 768px){.iap-tabs{overflow-x:auto;flex-wrap:nowrap;padding-bottom:var(--spacing-sm)}.iap-tab-btn{padding:var(--spacing-xs) var(--spacing-md);font-size:var(--text-xs)}.iap-totals-grid{grid-template-columns:repeat(2,1fr)}.iap-total-card{flex-direction:column;text-align:center}.iap-comparison-cards-grid,.iap-rankings-grid{grid-template-columns:1fr}.iap-shifts-controls{flex-direction:column;align-items:stretch}.iap-shift-mode-selector{flex-wrap:wrap}.iap-officer-summary-cards{grid-template-columns:repeat(2,1fr)}.officer-stats-grid{grid-template-columns:1fr}.iap-officers-list-header{flex-direction:column;gap:var(--spacing-sm);align-items:stretch}.iap-search-input{width:100%}}@media (max-width: 480px){.iap-totals-grid{grid-template-columns:1fr}.iap-date-controls{flex-direction:column;width:100%}.iap-date-field,.iap-date-field input{width:100%}}.iap-empty-state{text-align:center;padding:var(--spacing-xl) var(--spacing-md);color:var(--text-muted);font-style:italic;background:var(--bg-secondary)}.iap-maturity-banner{display:flex;align-items:flex-start;gap:var(--spacing-md);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-lg);margin-bottom:var(--spacing-lg)}.iap-maturity-icon{font-size:var(--text-xl);flex-shrink:0}.iap-maturity-content{display:flex;flex-direction:column;gap:var(--spacing-xs)}.iap-maturity-content strong{font-weight:var(--font-semibold)}.iap-maturity-content p{margin:0;font-size:var(--text-sm);line-height:1.5}.iap-maturity-limited{background:#f59e0b1a;border:1px solid var(--color-warning);color:var(--text-primary)}.iap-maturity-limited strong{color:var(--color-warning-dark)}.iap-maturity-insufficient{background:#3b82f61a;border:1px solid var(--color-info);color:var(--text-primary)}.iap-maturity-insufficient strong{color:var(--color-info)}.iap-comparison-insufficient{opacity:.9}.iap-comparison-card.neutral{border-left:4px solid var(--border-medium);background:var(--bg-secondary)}.iap-comparison-change.neutral{color:var(--text-muted)}.iap-baseline-caveat{font-style:italic;color:var(--color-warning-dark)}.iap-incident-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-lg)}.iap-incident-modal-content{position:relative;background:var(--bg-primary);border-radius:var(--radius-lg);max-width:1200px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.iap-incident-modal-close{position:sticky;top:var(--spacing-md);float:right;margin-right:var(--spacing-md);width:36px;height:36px;border-radius:50%;border:none;background:var(--bg-secondary);color:var(--text-secondary);font-size:24px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease;z-index:10}.iap-incident-modal-close:hover{background:var(--bg-tertiary);color:var(--text-primary)}.incidents-history-table tbody tr.clickable-row{cursor:pointer;transition:background-color .15s ease}.incidents-history-table tbody tr.clickable-row:hover{background:var(--bg-secondary)}.incidents-page{min-height:100vh;background:var(--bg-secondary);padding:0 var(--spacing-md) var(--spacing-md)}.incidents-container{max-width:1400px;margin:0 auto;padding:0 var(--spacing-md) var(--spacing-md)}.incidents-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-2xl)}.incidents-header h1{font-size:var(--text-page-title);font-weight:var(--font-semibold);color:var(--text-primary);margin:0 0 var(--spacing-sm) 0}.incidents-subtitle{color:var(--text-muted);font-size:var(--text-base);margin:0}.btn-new-incident{padding:var(--spacing-sm) var(--spacing-lg);background:var(--color-success);color:var(--text-inverse);border:none;border-radius:var(--radius-md);font-size:var(--text-base);font-weight:var(--font-semibold);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap;box-shadow:var(--shadow-sm)}.btn-new-incident:hover{background:var(--color-success-dark);transform:translateY(-1px);box-shadow:var(--shadow-md)}.incidents-tabs{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-2xl);border-bottom:2px solid var(--border-medium)}.tab-button{padding:var(--spacing-sm) var(--spacing-lg);background:none;border:none;border-bottom:3px solid transparent;font-size:var(--text-base);cursor:pointer;color:var(--text-muted);transition:all var(--transition-fast)}.tab-button:hover{color:var(--text-primary);background:var(--bg-hover)}.tab-button.active{color:var(--color-primary);border-bottom-color:var(--color-primary);font-weight:var(--font-semibold)}.dashboard-content{animation:fadeIn var(--transition-slow)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-lg);margin-bottom:var(--spacing-2xl)}.stat-card{background:var(--bg-primary);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border-light);transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.stat-card h3{margin:0 0 var(--spacing-md) 0;font-size:var(--text-sm);color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.stat-value{font-size:var(--text-4xl);font-weight:var(--font-bold);margin-bottom:var(--spacing-sm)}.stat-card.complaints .stat-value{color:var(--color-error)}.stat-card.commendations .stat-value{color:var(--color-success)}.stat-card.warnings .stat-value{color:var(--color-warning)}.stat-card.warnings{border-left:4px solid var(--color-warning)}.stat-card.clickable{cursor:pointer;position:relative}.stat-card.clickable:after{content:"→";position:absolute;top:var(--spacing-md);right:var(--spacing-md);font-size:var(--text-lg);color:var(--text-muted);opacity:0;transition:opacity var(--transition-fast),transform var(--transition-fast)}.stat-card.clickable:hover:after{opacity:1;transform:translate(4px)}.stat-card.clickable:hover{border-color:var(--color-warning);box-shadow:var(--shadow-lg)}.stat-card.clickable:focus{outline:2px solid var(--color-primary);outline-offset:2px}.stat-breakdown{display:flex;gap:var(--spacing-md);font-size:var(--text-sm);color:var(--text-muted)}.stat-label{font-size:var(--text-sm);color:var(--text-muted)}.quick-actions{display:flex;gap:var(--spacing-md);justify-content:center}.action-btn{padding:var(--spacing-sm) var(--spacing-2xl);background:var(--color-primary);color:var(--text-inverse);border:none;border-radius:var(--radius-md);font-size:var(--text-base);cursor:pointer;transition:all var(--transition-fast)}.action-btn:hover{background:var(--color-primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.list-content{animation:fadeIn var(--transition-slow)}.search-filters{background:var(--bg-primary);border-radius:var(--radius-lg);padding:var(--spacing-lg);margin-bottom:var(--spacing-2xl);box-shadow:var(--shadow-sm);border:1px solid var(--border-light)}.filter-row{display:flex;gap:var(--spacing-md);flex-wrap:wrap;align-items:flex-end}.filter-group{display:flex;flex-direction:column;gap:var(--spacing-sm);flex:1;min-width:150px}.filter-group label{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-primary)}.filter-group select,.filter-group input{padding:var(--spacing-sm);border:1px solid var(--border-medium);border-radius:var(--radius-sm);font-size:var(--text-sm);background:var(--bg-primary);color:var(--text-primary);transition:all var(--transition-fast)}.filter-group select:focus,.filter-group input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.search-btn{padding:var(--spacing-sm) var(--spacing-2xl);background:var(--color-primary);color:var(--text-inverse);border:none;border-radius:var(--radius-sm);cursor:pointer;font-size:var(--text-sm);font-weight:var(--font-medium);transition:all var(--transition-fast)}.search-btn:hover:not(:disabled){background:var(--color-primary-hover)}.search-btn:disabled{opacity:.6;cursor:not-allowed}.results-section{background:var(--bg-primary);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border-light)}.results-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:2px solid var(--border-light)}.results-header h3{margin:0;font-size:var(--text-xl);color:var(--text-primary)}.result-count{color:var(--text-muted);font-size:var(--text-sm)}.incidents-table-container{overflow-x:auto}.incidents-table{width:100%;border-collapse:collapse}.incidents-table th{background:var(--bg-tertiary);padding:var(--spacing-sm) var(--spacing-md);text-align:left;font-weight:var(--font-semibold);color:var(--text-primary);border-bottom:2px solid var(--border-medium);position:sticky;top:0}.incidents-table td{padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--border-light);color:var(--text-primary)}.incidents-table tr.clickable{cursor:pointer}.incidents-table tr:hover{background:var(--bg-hover)}.type-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-semibold);text-transform:capitalize}.type-badge.complaint{background:var(--color-error-light);color:var(--color-error-dark)}.type-badge.commendation{background:var(--color-success-light);color:var(--color-success-dark)}.status-badge{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-semibold);white-space:nowrap}.status-badge.draft{background:var(--gray-200);color:var(--gray-600)}.status-badge.pending_review{background:var(--color-info-light);color:var(--color-info-dark)}.status-badge.pending_chief_review{background:var(--color-warning-light);color:var(--color-warning-dark)}.status-badge.rejected{background:var(--color-error-light);color:var(--color-error-dark)}.status-badge.completed{background:var(--color-success-light);color:var(--color-success-dark)}.status-badge.open{background:var(--color-warning-light);color:var(--color-warning-dark)}.status-badge.under_review{background:var(--color-info-light);color:var(--color-info-dark)}.status-badge.resolved{background:var(--color-success-light);color:var(--color-success-dark)}.status-badge.closed{background:var(--gray-200);color:var(--gray-700)}.status-badge.approved{background:var(--color-success-light);color:var(--color-success-dark)}.status-badge.submitted{background:var(--color-info-light);color:var(--color-info-dark)}.warnings-content{animation:fadeIn var(--transition-slow)}.warnings-header{display:flex;justify-content:space-between;align-items:flex-start;background:var(--bg-primary);border-radius:var(--radius-lg);padding:var(--spacing-lg);margin-bottom:var(--spacing-2xl);box-shadow:var(--shadow-sm);border-left:4px solid var(--color-warning);flex-wrap:wrap;gap:var(--spacing-md)}.warnings-header h3{margin:0;color:var(--text-primary)}.warnings-header>div>p{margin:var(--spacing-xs) 0 0 0;color:var(--text-muted);font-size:var(--text-sm)}.warnings-title-row{display:flex;align-items:center;gap:var(--spacing-sm)}.info-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:none;border-radius:var(--radius-full);background:var(--color-primary-light);color:var(--color-primary);font-size:14px;cursor:pointer;transition:all var(--transition-fast)}.info-icon-btn:hover{background:var(--color-primary);color:var(--text-inverse);transform:scale(1.1)}.warnings-info-tooltip{margin-top:var(--spacing-md);padding:var(--spacing-md);background:var(--bg-secondary);border:1px solid var(--border-medium);border-radius:var(--radius-md);font-size:var(--text-sm);animation:fadeIn var(--transition-fast)}.info-tooltip-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-sm);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--border-light)}.info-tooltip-header strong{color:var(--text-primary);font-size:var(--text-base)}.info-close-btn{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;padding:0;border:none;border-radius:var(--radius-full);background:transparent;color:var(--text-muted);font-size:18px;cursor:pointer;transition:all var(--transition-fast)}.info-close-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.warnings-info-tooltip p{margin:0 0 var(--spacing-sm) 0;color:var(--text-secondary);line-height:1.5}.info-section{margin-bottom:var(--spacing-sm);color:var(--text-secondary)}.info-section:last-child{margin-bottom:0}.info-section strong{color:var(--text-primary)}.info-section ul{margin:var(--spacing-xs) 0 0 var(--spacing-lg);padding:0}.info-section ul li{margin-bottom:var(--spacing-xs)}.risk-level-list{list-style:none;margin-left:0!important}.risk-level-list li{display:flex;align-items:center;gap:var(--spacing-sm)}.risk-level-list .risk-pill{min-width:65px;text-align:center}.warnings-controls{display:flex;align-items:center;gap:var(--spacing-sm)}.warnings-controls label{font-size:var(--text-sm);color:var(--text-muted);white-space:nowrap}.warnings-controls select{padding:var(--spacing-xs) var(--spacing-sm);border:1px solid var(--border-medium);border-radius:var(--radius-md);background:var(--bg-secondary);color:var(--text-primary);font-size:var(--text-sm);cursor:pointer}.warnings-controls select:focus{outline:none;border-color:var(--color-primary)}.warnings-table-container{background:var(--bg-primary);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);overflow-x:auto}.warnings-table{width:100%;border-collapse:collapse}.warnings-table th{background:var(--color-warning-light);padding:var(--spacing-sm) var(--spacing-md);text-align:left;font-weight:var(--font-semibold);color:var(--color-warning-dark);border-bottom:2px solid var(--color-warning);white-space:nowrap}.warnings-table td{padding:var(--spacing-sm) var(--spacing-md);border-bottom:1px solid var(--border-light);color:var(--text-primary)}.warning-row:hover{background:var(--color-warning-light)}.warning-row.risk-critical{background:#dc354514}.warning-row.risk-critical:hover{background:#dc354526}.warning-row.risk-high{background:#ffc10714}.warning-row.risk-high:hover{background:#ffc10726}.count-badge{display:inline-flex;align-items:center;justify-content:center;min-width:28px;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-full);font-weight:var(--font-semibold);font-size:var(--text-sm);background:var(--bg-tertiary);color:var(--text-secondary)}.count-badge.warning{background:var(--color-warning);color:var(--text-on-warning)}.count-badge.combined{background:var(--color-primary-light);color:var(--color-primary-dark);font-weight:var(--font-bold)}.complaint-count{display:inline-block;background:var(--color-warning);color:var(--text-on-warning);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-full);font-weight:var(--font-bold)}.loading{text-align:center;padding:var(--spacing-3xl);color:var(--text-muted);font-size:var(--text-lg)}.error-message{background:var(--color-error-light);color:var(--color-error-dark);padding:var(--spacing-md);border-radius:var(--radius-md);margin-bottom:var(--spacing-md);border-left:4px solid var(--color-error)}.analytics-content{animation:fadeIn var(--transition-slow);display:flex;flex-direction:column;gap:var(--spacing-2xl)}.analytics-controls{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-md)}.analytics-controls-left{display:flex;align-items:center;gap:var(--spacing-sm);flex-wrap:wrap}.analytics-controls label{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-primary)}.analytics-controls select{padding:var(--spacing-sm);border:1px solid var(--border-medium);border-radius:var(--radius-sm);font-size:var(--text-sm);background:var(--bg-primary);color:var(--text-primary)}.analytics-controls select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.analytics-section{background:var(--bg-primary);border-radius:var(--radius-lg);padding:var(--spacing-xl);box-shadow:var(--shadow-sm);border:1px solid var(--border-light);display:flex;flex-direction:column;gap:var(--spacing-lg)}.section-header{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--spacing-md)}.section-header h3{margin:0;color:var(--text-primary)}.section-header p{margin:var(--spacing-xs) 0 0 0;color:var(--text-muted);font-size:var(--text-sm)}.action-btn.ghost{background:transparent;color:var(--color-primary);border:1px solid var(--color-primary)}.analytics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--spacing-lg)}.analytics-cards-row{display:flex;gap:12px;flex-wrap:wrap}.analytics-cards-row .analytics-card{flex:1 1 0;min-width:180px}@media (max-width: 900px){.analytics-cards-row .analytics-card{flex:1 1 calc(50% - 12px)}}@media (max-width: 500px){.analytics-cards-row .analytics-card{flex:1 1 100%}}.analytics-card{background:var(--bg-secondary);border-radius:var(--radius-lg);padding:var(--spacing-lg);border:1px solid var(--border-light);display:flex;flex-direction:column;gap:var(--spacing-sm)}.analytics-label{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.analytics-value{font-size:var(--text-4xl);font-weight:var(--font-bold);color:var(--text-primary)}.analytics-change{font-size:var(--text-sm)}.analytics-change.positive{color:var(--color-error-dark)}.analytics-change.negative{color:var(--color-success)}.analytics-change.neutral{color:var(--text-muted)}.analytics-subtext{font-size:var(--text-xs);color:var(--text-muted)}.spike-section h4{margin:0 0 var(--spacing-sm) 0}.spike-table,.trend-table{width:100%;border-collapse:collapse}.spike-table th,.spike-table td,.trend-table th,.trend-table td{padding:var(--spacing-sm);border-bottom:1px solid var(--border-light);text-align:left}.spike-table th,.trend-table th{background:var(--bg-tertiary);font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.5px}.trend-table-wrapper{overflow-x:auto}.portal-analytics-tables{display:grid;grid-template-columns:repeat(3,minmax(240px,1fr));gap:var(--spacing-md);align-items:start}.portal-analytics-block{background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:var(--spacing-md);box-shadow:var(--shadow-sm)}.portal-analytics-block-header{display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.portal-analytics-block-title{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;margin-bottom:0}.portal-analytics-block .trend-table-wrapper{margin-top:0}.portal-analytics-expand-btn{background:transparent;border:1px solid var(--border-medium);color:var(--text-primary);font-size:var(--text-xs);padding:.25rem .6rem;border-radius:var(--radius-full);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.portal-analytics-expand-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}@media (max-width: 1024px){.portal-analytics-tables{grid-template-columns:1fr}}.trend-diagnostics{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:var(--spacing-md)}.trend-card{background:var(--bg-secondary);border-radius:var(--radius-md);padding:var(--spacing-md);border:1px solid var(--border-light)}.trend-title{font-weight:var(--font-semibold);margin-bottom:var(--spacing-xs)}.trend-metric{font-size:var(--text-sm);color:var(--text-muted);display:flex;justify-content:space-between}.trend-metric span{color:var(--text-primary)}.alert-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:var(--spacing-lg)}.alert-card{border-radius:var(--radius-lg);border:1px solid var(--border-light);padding:var(--spacing-lg);background:var(--bg-secondary);display:flex;flex-direction:column;gap:var(--spacing-sm)}.alert-card.high{border-color:var(--color-warning)}.alert-card.critical{border-color:var(--color-error);box-shadow:var(--shadow-md)}.alert-card-header{display:flex;justify-content:space-between;align-items:flex-start}.alert-card-header h4{margin:0}.alert-card-header p{margin:0;color:var(--text-muted);font-size:var(--text-sm)}.alert-metrics{display:flex;gap:var(--spacing-md);font-size:var(--text-sm)}.alert-metrics label{display:block;color:var(--text-muted);font-size:var(--text-xs)}.alert-detail{display:grid;grid-template-columns:minmax(120px,140px) 1fr;column-gap:var(--spacing-md);row-gap:2px;align-items:start;font-size:var(--text-sm);color:var(--text-primary)}.alert-detail-label{color:var(--text-muted);font-size:var(--text-xs);line-height:1.2}.alert-detail-value{color:var(--text-primary);line-height:1.3;overflow-wrap:anywhere;word-break:break-word}.alert-channels{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.alert-channel-chip{display:inline-flex;align-items:center;padding:2px 8px;border-radius:var(--radius-full);background:var(--bg-primary);border:1px solid var(--border-light);color:var(--text-muted);font-size:var(--text-xs);line-height:1.2}.alert-reference{font-size:var(--text-xs);color:var(--text-muted)}.risk-pill{display:inline-flex;align-items:center;padding:.1rem .75rem;border-radius:var(--radius-full);font-size:var(--text-xs);text-transform:uppercase;font-weight:var(--font-semibold)}.risk-pill.moderate,.risk-pill.medium{background:var(--color-warning-light);color:var(--color-warning-dark)}.risk-pill.high{background:#ffe3b3;color:#9a5300}.risk-pill.critical{background:var(--color-error);color:var(--text-inverse)}.empty-state{padding:var(--spacing-lg);text-align:center;background:var(--bg-secondary);border-radius:var(--radius-md);border:1px dashed var(--border-light);color:var(--text-muted)}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.incident-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:1000;padding:var(--spacing-lg)}.incident-modal-content{position:relative;background:var(--bg-primary);border-radius:var(--radius-lg);max-width:1200px;width:100%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.incident-modal-close{position:sticky;top:var(--spacing-md);float:right;margin-right:var(--spacing-md);width:36px;height:36px;border-radius:50%;border:none;background:var(--bg-secondary);color:var(--text-secondary);font-size:24px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .15s ease;z-index:10}.incident-modal-close:hover{background:var(--bg-tertiary);color:var(--text-primary)}.new-incident-modal{max-width:1400px;width:95%;max-height:90vh}.incident-form{display:flex;flex-direction:column;height:100%}.form-section{margin-bottom:var(--spacing-lg)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);width:100%}.form-row.form-row-three{grid-template-columns:1fr 1fr 1fr;width:100%;gap:var(--spacing-md)}.form-row.form-row-three .form-section{width:100%;min-width:0}.form-row .form-section{margin-bottom:0}.form-label{display:block;font-weight:var(--font-semibold);margin-bottom:var(--spacing-sm);color:var(--text-primary);font-size:var(--text-sm)}.incident-form input[type=text],.incident-form input[type=date],.incident-form select,.incident-form textarea{width:100%;padding:16px 20px;border:1px solid var(--border-medium);border-radius:var(--radius-md);font-size:16px;font-family:inherit;background:var(--bg-primary);color:var(--text-primary);transition:all var(--transition-fast);min-height:56px;box-sizing:border-box}.incident-form input:focus,.incident-form select:focus,.incident-form textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.incident-form textarea{resize:vertical;min-height:150px}.modal-body{display:flex;flex-direction:column;gap:var(--spacing-lg);width:100%}.form-section.full-width{grid-column:1 / -1}.type-selector{display:flex;gap:var(--spacing-md)}.radio-label{display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;padding:var(--spacing-sm) var(--spacing-lg);border:2px solid var(--border-medium);border-radius:var(--radius-md);transition:all var(--transition-fast);background:var(--bg-primary)}.radio-label:hover{border-color:var(--color-primary);background:var(--bg-hover)}.radio-label input[type=radio]{width:auto;margin:0}.radio-label input[type=radio]:checked+span{font-weight:var(--font-semibold);color:var(--color-primary)}.officer-search{margin-bottom:var(--spacing-sm)}.officers-list{display:flex;flex-direction:column;max-height:200px;overflow-y:auto;border:1px solid var(--border-medium);border-radius:var(--radius-md);padding:var(--spacing-sm);background:var(--bg-secondary)}.officer-checkbox{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-sm);cursor:pointer;border-radius:var(--radius-sm);transition:background var(--transition-fast)}.officer-checkbox:hover{background:var(--bg-primary)}.officer-checkbox input[type=checkbox]{flex-shrink:0;width:16px;height:16px;min-width:16px;min-height:16px;margin:0;margin-right:var(--spacing-md);cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:2px solid var(--border-medium);border-radius:3px;background:var(--bg-primary);position:relative}.officer-checkbox input[type=checkbox]:checked{background:var(--color-primary);border-color:var(--color-primary)}.officer-checkbox input[type=checkbox]:checked:after{content:"✓";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-size:10px;font-weight:700}.officer-checkbox span{flex:1;white-space:nowrap}.officer-checkbox input[type=checkbox]:disabled{cursor:not-allowed;opacity:.7;background:var(--bg-secondary)}.officer-checkbox input[type=checkbox]:disabled:checked{background:var(--color-primary);border-color:var(--color-primary);opacity:.8}.primary-radio{display:flex;align-items:center;gap:var(--spacing-xs);font-size:var(--text-xs);color:var(--color-primary);margin-left:auto}.primary-radio input[type=radio]{flex-shrink:0;width:14px;height:14px;min-width:14px;min-height:14px;margin:0;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:2px solid var(--border-medium);border-radius:50%;background:var(--bg-primary);position:relative}.primary-radio input[type=radio]:checked{background:var(--color-primary);border-color:var(--color-primary)}.primary-radio input[type=radio]:checked:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:5px;height:5px;background:#fff;border-radius:50%;margin:0}.primary-radio input[type=radio]:disabled{cursor:not-allowed;opacity:.7;background:var(--bg-secondary)}.primary-radio input[type=radio]:disabled:checked{background:var(--color-primary);border-color:var(--color-primary);opacity:.8}.primary-label{font-weight:var(--font-semibold)}.selected-count{margin-top:var(--spacing-sm);font-size:var(--text-xs);color:var(--text-muted)}.loading-officers{padding:var(--spacing-md);text-align:center;color:var(--text-muted)}.modal-footer{display:flex;justify-content:flex-end;gap:var(--spacing-md);padding:var(--spacing-lg);border-top:1px solid var(--border-light);background:var(--bg-secondary)}.btn-cancel,.btn-submit{padding:var(--spacing-sm) var(--spacing-xl);border:none;border-radius:var(--radius-md);font-size:var(--text-base);font-weight:var(--font-medium);cursor:pointer;transition:all var(--transition-fast)}.btn-cancel{background:var(--gray-600);color:var(--text-inverse)}.btn-cancel:hover{background:var(--gray-700)}.btn-submit{background:var(--color-primary);color:var(--text-inverse)}.btn-submit:hover:not(:disabled){background:var(--color-primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-submit:disabled{opacity:.5;cursor:not-allowed}.officers-list::-webkit-scrollbar{width:6px}.officers-list::-webkit-scrollbar-track{background:var(--gray-100)}.officers-list::-webkit-scrollbar-thumb{background:var(--gray-400);border-radius:var(--radius-sm)}.officers-list::-webkit-scrollbar-thumb:hover{background:var(--gray-500)}.commendations-portal{min-height:100vh;background:var(--bg-secondary, #f9fafb);padding:0 var(--spacing-md) var(--spacing-md)}.commendations-container{max-width:1400px;margin:0 auto;padding:var(--spacing-lg, 24px)}.commendations-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-lg, 24px)}.commendations-header h1{margin:0 0 var(--spacing-xs, 8px) 0;font-size:var(--text-page-title);font-weight:var(--font-semibold);color:var(--text-primary, #111827)}.commendations-subtitle{margin:0;color:var(--text-secondary, #6b7280);font-size:var(--text-base, 16px)}.btn-new-commendation{padding:var(--spacing-sm, 12px) var(--spacing-lg, 24px);background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#fff;border:none;border-radius:var(--radius-md, 8px);font-weight:600;font-size:var(--text-base, 16px);cursor:pointer;transition:all .2s ease;box-shadow:0 2px 4px #fbbf244d}.btn-new-commendation:hover{background:linear-gradient(135deg,#f59e0b,#d97706);box-shadow:0 4px 8px #fbbf2466;transform:translateY(-1px)}.btn-edit{padding:var(--spacing-sm, 12px) var(--spacing-lg, 24px);background:linear-gradient(135deg,#3b82f6,#2563eb);color:#fff;border:none;border-radius:var(--radius-md, 8px);font-weight:600;font-size:var(--text-sm, 14px);cursor:pointer;transition:all .2s ease;box-shadow:0 2px 8px #3b82f64d;display:inline-flex;align-items:center;gap:var(--spacing-xs, 8px)}.btn-edit:hover{background:linear-gradient(135deg,#2563eb,#1d4ed8);transform:translateY(-2px);box-shadow:0 4px 12px #3b82f666}.detail-value{background:var(--bg-primary);padding:6px 10px;border-radius:var(--radius-md, 8px);border:1px solid var(--border-light, #e5e7eb);font-size:var(--text-base, 15px);color:var(--text-primary, #1f2937);font-weight:500}.detail-actions{background:transparent!important;border:none!important;padding-top:8px!important;display:flex;justify-content:flex-end}.commendations-filters{background:var(--bg-primary);padding:var(--spacing-md, 16px);border-radius:var(--radius-lg, 12px);margin-bottom:var(--spacing-lg, 24px);box-shadow:var(--shadow-sm)}.filter-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md, 16px);align-items:end}.filter-group{display:flex;flex-direction:column;gap:var(--spacing-xs, 8px)}.filter-group select,.filter-group input{padding:var(--spacing-sm, 12px);border:1px solid var(--border-medium, #e5e7eb);border-radius:var(--radius-md, 8px);font-size:var(--text-sm, 14px)}.btn-clear-filters{padding:var(--spacing-sm, 12px) var(--spacing-md, 16px);background:var(--bg-secondary, #f3f4f6);color:var(--text-primary, #111827);border:1px solid var(--border-medium, #e5e7eb);border-radius:var(--radius-md, 8px);font-weight:600;font-size:var(--text-sm, 14px);cursor:pointer;transition:all .2s ease}.btn-clear-filters:hover{background:var(--bg-hover, #e5e7eb)}.commendations-list{background:var(--bg-primary);border-radius:var(--radius-lg, 12px);padding:var(--spacing-lg, 24px);box-shadow:var(--shadow-sm)}.commendations-table-wrapper{background-color:var(--bg-primary, #ffffff);border-radius:var(--radius-lg, 12px);box-shadow:0 1px 3px #0000001a;border:1px solid var(--border-light, #f3f4f6);overflow:hidden}.commendations-table{width:100%;border-collapse:collapse;font-size:var(--text-sm, 14px);table-layout:auto}.commendations-table thead{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#fff}.commendations-table th{padding:var(--spacing-sm, 12px) var(--spacing-md, 16px);text-align:left;font-weight:600;white-space:nowrap}.commendations-table tbody tr.summary-row{border-bottom:1px solid var(--border-light, #f3f4f6);transition:background-color .2s ease;cursor:pointer}.commendations-table tbody tr.summary-row:hover{background-color:var(--bg-hover, #f9fafb)}.commendations-table tbody tr.summary-row.expanded{background-color:var(--color-warning-light)}.commendations-table tbody tr.detail-row{border-bottom:2px solid var(--color-warning);background:var(--color-warning-light)}.commendations-table tbody tr.detail-row td{padding:12px!important}.commendations-table tbody tr:last-child{border-bottom:none}.commendations-table td{padding:var(--spacing-sm, 12px) var(--spacing-md, 16px);text-align:left;color:var(--text-primary, #111827);vertical-align:middle;line-height:1.4}.commendations-table .case-cell{font-weight:600;color:var(--text-primary, #111827)}.commendations-table .date-cell{font-weight:500;white-space:nowrap}.status-badge{padding:4px 12px;border-radius:12px;font-size:var(--text-xs, 12px);font-weight:600;text-transform:capitalize;display:inline-block}.status-completed{background:var(--color-success-light);color:var(--color-success-dark)}.status-draft{background:var(--color-warning-light);color:var(--color-warning-dark)}.status-submitted{background:var(--color-primary-light);color:var(--color-primary-dark)}.status-default{background:var(--bg-secondary, #f3f4f6);color:var(--text-secondary, #6b7280)}.no-officers{color:var(--text-tertiary, #9ca3af);font-style:italic}.detail-content{display:grid;grid-template-columns:repeat(3,1fr);gap:3px;padding:16px;background:var(--bg-primary);border-radius:var(--radius-lg, 12px);box-shadow:var(--shadow-md);border:1px solid color-mix(in srgb,var(--color-warning) 25%,var(--border-light));width:100%;max-width:100%;box-sizing:border-box;align-items:start}.detail-content h3{grid-column:1 / -1;margin:0 0 8px;color:var(--color-warning-dark);font-size:var(--text-xl, 20px);font-weight:700;padding-bottom:8px;border-bottom:2px solid var(--color-warning);display:flex;align-items:center;gap:var(--spacing-sm, 12px)}.detail-content h3:before{content:"⭐";font-size:24px}.detail-section{background:var(--bg-secondary, #f9fafb);padding:10px 12px;border-radius:var(--radius-md, 8px);border:1px solid var(--border-light, #e5e7eb);min-height:auto;overflow:visible}.detail-section.full-width{grid-column:1 / -1}.detail-section.half-width,.detail-section.span-2{grid-column:span 2}.detail-section label{display:flex;align-items:center;gap:var(--spacing-xs, 8px);font-weight:700;font-size:var(--text-sm, 14px);color:#b45309;margin-bottom:4px;text-transform:uppercase;letter-spacing:.5px}.detail-section label:before{content:"";width:4px;height:16px;background:linear-gradient(135deg,#fbbf24,#f59e0b);border-radius:2px}.description-text{background:var(--bg-primary);padding:10px 12px;border-radius:var(--radius-md, 8px);line-height:1.6;white-space:pre-wrap;word-wrap:break-word;overflow-wrap:break-word;word-break:break-word;border:1px solid var(--border-light, #e5e7eb);font-size:var(--text-base, 15px);color:var(--text-primary, #1f2937);box-shadow:inset 0 1px 2px #0000000d;min-height:auto;max-height:none;overflow:visible}.officers-list{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:var(--spacing-sm, 12px)}.officers-list li{padding:var(--spacing-sm, 12px) var(--spacing-md, 16px);background:var(--bg-primary);border-radius:var(--radius-lg, 12px);display:flex;align-items:center;gap:var(--spacing-sm, 12px);border:1px solid var(--border-light, #e5e7eb);font-weight:500;box-shadow:0 1px 3px #0000000d;transition:all .2s ease}.officers-list li:hover{border-color:var(--color-warning);box-shadow:0 2px 8px #fbbf2433}.primary-badge{background:linear-gradient(135deg,#fbbf24,#f59e0b);color:#fff;padding:4px 10px;border-radius:20px;font-size:var(--text-xs, 11px);font-weight:700;text-transform:uppercase;letter-spacing:.5px;box-shadow:0 2px 4px #fbbf244d}.pagination{display:flex;justify-content:center;align-items:center;gap:var(--spacing-md, 16px);padding:var(--spacing-md, 16px);border-top:1px solid var(--border-light, #f3f4f6)}.pagination button{padding:var(--spacing-sm, 12px) var(--spacing-md, 16px);background:var(--bg-primary);border:1px solid var(--border-medium, #e5e7eb);border-radius:var(--radius-md, 8px);cursor:pointer;font-weight:600;transition:all .2s ease}.pagination button:hover:not(:disabled){background:var(--bg-hover, #f9fafb);border-color:var(--color-warning)}.pagination button:disabled{opacity:.5;cursor:not-allowed}.empty-state,.loading{text-align:center;padding:var(--spacing-xl, 48px);color:var(--text-secondary, #6b7280)}.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}.commendation-detail-modal{background:var(--bg-primary);border-radius:var(--radius-lg, 12px);max-width:800px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg, 24px);border-bottom:1px solid var(--border-light, #f3f4f6)}.modal-header h3{margin:0;font-size:var(--text-xl, 20px);font-weight:700}.close-btn{background:none;border:none;font-size:28px;cursor:pointer;color:var(--text-secondary, #6b7280);padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm, 4px);transition:all .2s ease}.close-btn:hover{background:var(--bg-hover, #f9fafb);color:var(--text-primary, #111827)}.modal-body{padding:var(--spacing-lg, 24px)}.detail-section{margin-bottom:var(--spacing-lg, 24px)}.detail-section:last-child{margin-bottom:0}.detail-section label{display:block;font-weight:600;font-size:var(--text-sm, 14px);color:var(--text-primary, #111827);margin-bottom:var(--spacing-xs, 8px)}.detail-row{display:flex;gap:var(--spacing-md, 16px);margin-bottom:var(--spacing-sm, 12px)}.detail-row label{min-width:150px;font-weight:600;color:var(--text-secondary, #6b7280)}.detail-row span{color:var(--text-primary, #111827)}.description-text{background:var(--bg-secondary, #f9fafb);padding:var(--spacing-md, 16px);border-radius:var(--radius-md, 8px);line-height:1.6;white-space:pre-wrap}.officers-list{list-style:none;padding:0;margin:0}.officers-list li{padding:var(--spacing-sm, 12px);background:var(--bg-secondary, #f9fafb);border-radius:var(--radius-md, 8px);margin-bottom:var(--spacing-xs, 8px);display:flex;align-items:center;gap:var(--spacing-sm, 12px)}.primary-badge{background:#fbbf24;color:#fff;padding:2px 8px;border-radius:12px;font-size:var(--text-xs, 12px);font-weight:600}.party-type{color:var(--text-secondary, #6b7280);font-size:var(--text-sm, 14px)}.modal-footer{padding:var(--spacing-lg, 24px);border-top:1px solid var(--border-light, #f3f4f6);display:flex;justify-content:flex-end;gap:var(--spacing-md, 16px)}.btn-secondary{padding:var(--spacing-sm, 12px) var(--spacing-lg, 24px);background:var(--bg-secondary, #f3f4f6);color:var(--text-primary, #111827);border:1px solid var(--border-medium, #e5e7eb);border-radius:var(--radius-md, 8px);font-weight:600;cursor:pointer;transition:all .2s ease}.btn-secondary:hover{background:var(--bg-hover, #e5e7eb)}[data-theme=dark] .commendations-portal{background:var(--bg-secondary, #111827)}[data-theme=dark] .commendations-filters,[data-theme=dark] .commendations-list,[data-theme=dark] .commendation-detail-modal,[data-theme=dark] .commendation-card{background:var(--bg-primary, #1f2937);border-color:var(--border-medium, #374151)}[data-theme=dark] .commendation-card:hover{border-color:#fbbf24}@media (max-width: 1200px){.detail-content{grid-template-columns:repeat(2,1fr)}.detail-section.span-2{grid-column:span 2}}@media (max-width: 768px){.detail-content{grid-template-columns:1fr}.detail-section.span-2{grid-column:1}.commendations-table tbody tr.detail-row td{padding:var(--spacing-md, 16px)!important}}.view-commendation{min-height:100vh;background-color:var(--bg-secondary);padding:0 var(--spacing-md) var(--spacing-md)}.view-commendation-container{max-width:900px;margin:0 auto;padding:2rem}.view-commendation-header{display:flex;align-items:center;gap:1rem;margin-bottom:2rem}.view-commendation-header h1{margin:0;color:var(--text-primary);font-size:var(--text-page-title);font-weight:var(--font-semibold)}.btn-back{padding:.5rem 1rem;background-color:var(--bg-tertiary);color:var(--text-primary);border:none;border-radius:4px;cursor:pointer;font-size:.9rem;transition:background-color .2s}.btn-back:hover{background-color:var(--bg-hover)}.commendation-card{background:var(--bg-primary);border-radius:8px;box-shadow:var(--shadow-sm);border:1px solid var(--border-light);padding:2rem;margin-bottom:1.5rem}.commendation-badge{display:flex;align-items:center;gap:.5rem;margin-bottom:2rem;padding:1rem;background:linear-gradient(135deg,#fbbf24,#f59e0b);border-radius:8px;color:#fff}.badge-icon{font-size:2rem}.badge-text{font-size:1.25rem;font-weight:600}.commendation-details{display:flex;flex-direction:column;gap:1.5rem}.detail-row{display:flex;flex-direction:column;gap:.5rem}.detail-row label{font-weight:600;color:var(--text-secondary, #6b7280);font-size:.875rem;text-transform:uppercase;letter-spacing:.5px}.detail-row span{color:var(--text-primary);font-size:1rem}.detail-section{display:flex;flex-direction:column;gap:.5rem}.detail-section label{font-weight:600;color:var(--text-secondary, #6b7280);font-size:.875rem;text-transform:uppercase;letter-spacing:.5px}.description-text{color:var(--text-primary);font-size:1rem;line-height:1.6;white-space:pre-wrap;padding:1rem;background-color:var(--bg-secondary);border-radius:4px;border-left:3px solid var(--color-warning)}.category-badge{display:inline-block;padding:.25rem .75rem;background-color:var(--color-warning-light);color:var(--color-warning-dark);border-radius:12px;font-size:.875rem;font-weight:500}.status-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.875rem;font-weight:500}.status-completed{background-color:var(--color-success-light);color:var(--color-success-dark)}.status-draft,.status-default{background-color:var(--bg-tertiary);color:var(--text-secondary)}.officers-list{display:flex;flex-wrap:wrap;gap:.5rem}.officer-name{color:var(--text-primary);font-size:1rem}.officer-name:empty{display:none}.primary-badge{color:var(--text-secondary, #6b7280);font-size:.875rem;font-style:italic}.commendation-footer{text-align:center;padding:1.5rem;background-color:var(--bg-secondary);border-radius:8px}.footer-note{color:var(--text-secondary, #6b7280);font-size:.875rem;margin:0}.loading-message,.error-message{text-align:center;padding:2rem;font-size:1.125rem;color:var(--text-color, #333)}.error-message{color:#dc2626;background-color:#fee2e2;border-radius:8px;margin-bottom:1rem}[data-theme=dark] .view-commendation{background-color:#1f2937}[data-theme=dark] .commendation-card{background:#374151;color:#f3f4f6}[data-theme=dark] .view-commendation-header h1,[data-theme=dark] .detail-row span,[data-theme=dark] .officer-name{color:#f3f4f6}[data-theme=dark] .description-text{background-color:#4b5563;color:#f3f4f6}[data-theme=dark] .commendation-footer{background-color:#4b5563}[data-theme=dark] .loading-message{color:#f3f4f6}.audit-log-page{min-height:100vh;background:var(--bg-primary, #f5f5f5);overflow-y:scroll;padding:0 var(--spacing-md) var(--spacing-md)}[data-theme=dark] .audit-log-page{background:var(--bg-primary, #1a1a2e)}.audit-container{max-width:1600px;margin:0 auto;padding:24px}.audit-header{margin-bottom:24px}.audit-header h1{font-size:var(--text-page-title);font-weight:var(--font-semibold);color:var(--text-primary, #1a1a1a);margin:0 0 8px}[data-theme=dark] .audit-header h1{color:var(--text-primary, #ffffff)}.audit-header .subtitle{color:var(--text-secondary, #666);margin:0;font-size:14px}[data-theme=dark] .audit-header .subtitle{color:var(--text-secondary, #a0a0a0)}.audit-tabs{display:flex;gap:4px;background:var(--gray-100, #f1f5f9);padding:12px 16px;border-radius:12px;margin-bottom:24px;box-shadow:0 2px 8px #00000014}[data-theme=dark] .audit-tabs{background:var(--bg-secondary, #252542)}.audit-tabs .tab-button{flex:1;padding:10px 20px;border:none;background:transparent;border-radius:8px;font-size:14px;font-weight:500;color:var(--text-secondary, #64748b);cursor:pointer;transition:all .2s ease}.audit-tabs .tab-button:hover{background:#fffc;color:var(--text-primary, #334155)}[data-theme=dark] .audit-tabs .tab-button:hover{background:#ffffff14;color:var(--text-primary, #ffffff)}.audit-tabs .tab-button.active{background:var(--bg-primary, white);color:var(--primary-color, #3b82f6);box-shadow:0 2px 4px #0000000d}[data-theme=dark] .audit-tabs .tab-button.active{background:var(--bg-primary, #1a1a2e);color:#60a5fa;box-shadow:0 2px 4px #0003}.audit-filters{background:var(--bg-secondary, #ffffff);border-radius:12px;padding:16px;margin-bottom:16px;box-shadow:0 2px 8px #00000014}[data-theme=dark] .audit-filters{background:var(--bg-secondary, #252542)}.filter-row{display:flex;gap:16px;align-items:flex-end;flex-wrap:wrap}.filter-group{display:flex;flex-direction:column;gap:4px}.filter-group label{font-size:12px;font-weight:500;color:var(--text-secondary, #666)}[data-theme=dark] .filter-group label{color:var(--text-secondary, #a0a0a0)}.filter-group select,.filter-group input{padding:8px 12px;border:1px solid var(--border-color, #e0e0e0);border-radius:6px;font-size:14px;background:var(--bg-primary, #ffffff);color:var(--text-primary, #1a1a1a);min-width:150px}[data-theme=dark] .filter-group select,[data-theme=dark] .filter-group input{background:var(--bg-tertiary, #1a1a2e);border-color:var(--border-color, #3a3a5a);color:var(--text-primary, #ffffff)}.filter-group.search-group{flex:1;min-width:200px}.filter-group.search-group input{width:100%}.filter-actions{display:flex;gap:8px;margin-left:auto}.btn-clear,.btn-export{padding:8px 16px;border:none;border-radius:6px;font-size:14px;font-weight:500;cursor:pointer;transition:all .2s ease}.btn-clear{background:var(--bg-tertiary, #f0f0f0);color:var(--text-primary, #1a1a1a)}[data-theme=dark] .btn-clear{background:var(--bg-tertiary, #2a2a4a);color:var(--text-primary, #ffffff)}.btn-export{background:var(--primary-color, #3b82f6);color:#fff}.btn-export:hover{background:var(--primary-hover, #2563eb)}.btn-export:disabled{opacity:.6;cursor:not-allowed}.category-filters{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:12px;padding-top:12px;border-top:1px solid var(--border-color, #e0e0e0)}[data-theme=dark] .category-filters{border-color:var(--border-color, #3a3a5a)}.filter-label{font-size:12px;font-weight:500;color:var(--text-secondary, #666);margin-right:4px}.category-chip{display:flex;align-items:center;gap:4px;padding:6px 12px;border:1px solid var(--border-color, #e0e0e0);border-radius:20px;background:transparent;font-size:12px;color:var(--text-primary, #1a1a1a);cursor:pointer;transition:all .2s ease}[data-theme=dark] .category-chip{border-color:var(--border-color, #3a3a5a);color:var(--text-primary, #ffffff)}.category-chip:hover{border-color:var(--chip-color, #3b82f6)}.category-chip.active{background:var(--chip-color, #3b82f6);border-color:var(--chip-color, #3b82f6);color:#fff}.chip-icon{font-size:14px}.results-summary{display:flex;justify-content:space-between;align-items:center;padding:8px 0;font-size:14px;color:var(--text-secondary, #666)}[data-theme=dark] .results-summary{color:var(--text-secondary, #a0a0a0)}.events-table-container{background:var(--bg-secondary, #ffffff);border-radius:12px;overflow:hidden;box-shadow:0 2px 8px #00000014;min-height:200px}[data-theme=dark] .events-table-container{background:var(--bg-secondary, #252542)}.events-table{width:100%;border-collapse:collapse}.events-table th{text-align:left;padding:12px 16px;font-size:12px;font-weight:600;text-transform:uppercase;color:var(--text-secondary, #666);background:var(--bg-tertiary, #f8f8f8);border-bottom:1px solid var(--border-color, #e0e0e0)}[data-theme=dark] .events-table th{background:var(--bg-tertiary, #1a1a2e);color:var(--text-secondary, #a0a0a0);border-color:var(--border-color, #3a3a5a)}.events-table td{padding:12px 16px;font-size:14px;color:var(--text-primary, #1a1a1a);border-bottom:1px solid var(--border-color, #f0f0f0)}[data-theme=dark] .events-table td{color:var(--text-primary, #ffffff);border-color:var(--border-color, #2a2a4a)}.event-row{cursor:pointer;transition:background .15s ease}.event-row:hover{background:var(--bg-hover, #f8f9fa)}[data-theme=dark] .event-row:hover{background:var(--bg-hover, #2a2a4a)}.event-row.failure{background:#ef44440d}[data-theme=dark] .event-row.failure{background:#ef44441a}.event-row.expanded{background:var(--bg-tertiary, #f0f0f0)}[data-theme=dark] .event-row.expanded{background:var(--bg-tertiary, #1a1a2e)}.col-expand{width:30px}.col-timestamp{width:180px}.col-type{width:200px}.col-actor,.col-target{width:150px}.col-status{width:60px;text-align:center}.expand-icon{color:var(--text-secondary, #666);font-size:10px}.timestamp-full{display:block;font-size:13px}.timestamp-relative{display:block;font-size:11px;color:var(--text-secondary, #888)}.event-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:4px;font-size:12px;font-weight:500;background:color-mix(in srgb,var(--badge-color, #3b82f6) 15%,transparent);color:var(--badge-color, #3b82f6)}.event-icon{font-size:14px}.status-success{color:#10b981;font-weight:600}.status-failure{color:#ef4444;font-weight:600;cursor:help}.event-details-row td{padding:0;background:var(--bg-tertiary, #f8f8f8)}[data-theme=dark] .event-details-row td{background:var(--bg-tertiary, #1a1a2e)}.event-details{display:flex;gap:24px;padding:16px 48px}.values-section{flex:1}.values-section h4{margin:0 0 8px;font-size:12px;font-weight:600;color:var(--text-secondary, #666);text-transform:uppercase}.values-section pre{background:var(--bg-secondary, #ffffff);border:1px solid var(--border-color, #e0e0e0);border-radius:6px;padding:12px;font-size:12px;overflow-x:auto;margin:0}[data-theme=dark] .values-section pre{background:var(--bg-secondary, #252542);border-color:var(--border-color, #3a3a5a)}.old-values h4{color:#ef4444}.new-values h4{color:#10b981}.failure-reason p{margin:0;padding:12px;background:#ef44441a;border-radius:6px;color:#ef4444}.loading-container{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:64px 24px;gap:16px}.loading-container .spinner{width:40px;height:40px;border:3px solid var(--border-color, #e0e0e0);border-top-color:var(--primary-color, #3b82f6);border-radius:50%;animation:spin .8s linear infinite}.loading-container .loading-text{color:var(--text-secondary, #666);font-size:14px}.no-events{padding:48px;text-align:center;color:var(--text-secondary, #666)}.pagination{display:flex;justify-content:center;align-items:center;gap:4px;margin-top:16px;padding:16px}.pagination button{padding:8px 12px;border:1px solid var(--border-color, #e0e0e0);background:var(--bg-secondary, #ffffff);border-radius:6px;font-size:14px;color:var(--text-primary, #1a1a1a);cursor:pointer;transition:all .15s ease}[data-theme=dark] .pagination button{background:var(--bg-secondary, #252542);border-color:var(--border-color, #3a3a5a);color:var(--text-primary, #ffffff)}.pagination button:hover:not(:disabled){background:var(--primary-color, #3b82f6);border-color:var(--primary-color, #3b82f6);color:#fff}.pagination button:disabled{opacity:.4;cursor:not-allowed}.pagination button.active{background:var(--primary-color, #3b82f6);border-color:var(--primary-color, #3b82f6);color:#fff}.page-numbers{display:flex;gap:4px}.audit-dashboard-tab,.audit-security-tab{display:flex;flex-direction:column;gap:24px}.stats-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px}.stat-card{background:var(--bg-secondary, #ffffff);border-radius:12px;padding:20px;text-align:center;box-shadow:0 2px 8px #00000014}[data-theme=dark] .stat-card{background:var(--bg-secondary, #252542)}.stat-card.warning{border-left:4px solid #f59e0b}.stat-value{font-size:36px;font-weight:700;color:var(--primary-color, #3b82f6);line-height:1}.stat-card.warning .stat-value{color:#f59e0b}.stat-label{font-size:13px;color:var(--text-secondary, #666);margin-top:8px}[data-theme=dark] .stat-label{color:var(--text-secondary, #a0a0a0)}.dashboard-section,.security-section{background:var(--bg-secondary, #ffffff);border-radius:12px;padding:20px;box-shadow:0 2px 8px #00000014}[data-theme=dark] .dashboard-section,[data-theme=dark] .security-section{background:var(--bg-secondary, #252542)}.dashboard-section h3,.security-section h3{margin:0 0 16px;font-size:16px;font-weight:600;color:var(--text-primary, #1a1a1a)}[data-theme=dark] .dashboard-section h3,[data-theme=dark] .security-section h3{color:var(--text-primary, #ffffff)}.category-bars{display:flex;flex-direction:column;gap:12px}.category-bar-row{display:flex;align-items:center;gap:12px}.category-bar-row .category-label{width:140px;font-size:14px;color:var(--text-primary, #1a1a1a)}[data-theme=dark] .category-bar-row .category-label{color:var(--text-primary, #ffffff)}.bar-container{flex:1;height:24px;background:var(--bg-tertiary, #f0f0f0);border-radius:4px;overflow:hidden}[data-theme=dark] .bar-container{background:var(--bg-tertiary, #1a1a2e)}.bar-container .bar{height:100%;border-radius:4px;transition:width .3s ease}.category-bar-row .category-count{width:40px;text-align:right;font-size:14px;font-weight:600;color:var(--text-primary, #1a1a1a)}[data-theme=dark] .category-bar-row .category-count{color:var(--text-primary, #ffffff)}.daily-activity-chart{display:flex;align-items:flex-end;justify-content:space-around;height:150px;gap:8px}.day-column{display:flex;flex-direction:column;align-items:center;flex:1;height:100%}.day-bar{width:100%;max-width:60px;background:var(--primary-color, #3b82f6);border-radius:4px 4px 0 0;display:flex;justify-content:center;align-items:flex-start;padding-top:4px;min-height:24px;margin-top:auto}.day-count{font-size:11px;font-weight:600;color:#fff}.day-label{margin-top:8px;font-size:12px;color:var(--text-secondary, #666)}[data-theme=dark] .day-label{color:var(--text-secondary, #a0a0a0)}.top-users-list{display:flex;flex-direction:column;gap:8px}.top-user-row{display:flex;align-items:center;gap:12px;padding:8px 12px;background:var(--bg-tertiary, #f8f8f8);border-radius:6px}[data-theme=dark] .top-user-row{background:var(--bg-tertiary, #1a1a2e)}.user-rank{font-size:14px;font-weight:600;color:var(--primary-color, #3b82f6);width:30px}.user-name{flex:1;font-size:14px;color:var(--text-primary, #1a1a1a)}[data-theme=dark] .user-name{color:var(--text-primary, #ffffff)}.user-actions{font-size:13px;color:var(--text-secondary, #666)}[data-theme=dark] .user-actions{color:var(--text-secondary, #a0a0a0)}.alerts-section{border:2px solid #f59e0b}.alerts-list{display:flex;flex-direction:column;gap:8px}.alert-card{display:flex;align-items:center;gap:12px;padding:12px;border-radius:6px;background:#f59e0b1a}.alert-card.severity-high,.alert-card.severity-critical{background:#ef44441a}.alert-severity{padding:4px 8px;border-radius:4px;font-size:10px;font-weight:700;background:#f59e0b;color:#fff}.alert-card.severity-high .alert-severity,.alert-card.severity-critical .alert-severity{background:#ef4444}.alert-description{flex:1;font-size:14px;color:var(--text-primary, #1a1a1a)}[data-theme=dark] .alert-description{color:var(--text-primary, #ffffff)}.security-table{width:100%;border-collapse:collapse}.security-table th,.security-table td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--border-color, #e0e0e0)}[data-theme=dark] .security-table th,[data-theme=dark] .security-table td{border-color:var(--border-color, #3a3a5a)}.security-table th{font-size:12px;font-weight:600;color:var(--text-secondary, #666);text-transform:uppercase}[data-theme=dark] .security-table th{color:var(--text-secondary, #a0a0a0)}.security-table .failure-row{background:#ef44440d}.recent-events-list{display:flex;flex-direction:column;gap:8px}.recent-event-item{display:flex;align-items:center;gap:12px;padding:10px 12px;background:var(--bg-tertiary, #f8f8f8);border-radius:6px}[data-theme=dark] .recent-event-item{background:var(--bg-tertiary, #1a1a2e)}.recent-event-item.failure{background:#ef44441a}.recent-event-item .event-icon{font-size:18px}.recent-event-item .event-time{font-size:12px;color:var(--text-secondary, #666);width:80px}[data-theme=dark] .recent-event-item .event-time{color:var(--text-secondary, #a0a0a0)}.recent-event-item .event-desc{flex:1;font-size:14px;color:var(--text-primary, #1a1a1a)}[data-theme=dark] .recent-event-item .event-desc{color:var(--text-primary, #ffffff)}.failure-badge{padding:2px 8px;border-radius:4px;font-size:10px;font-weight:700;background:#ef4444;color:#fff}@media (max-width: 1200px){.filter-row{flex-direction:column;align-items:stretch}.filter-actions{margin-left:0;margin-top:12px}}@media (max-width: 768px){.audit-container{padding:16px}.events-table{font-size:12px}.events-table th,.events-table td{padding:8px}.col-actor,.col-target{display:none}.stats-cards{grid-template-columns:repeat(2,1fr)}.event-details{flex-direction:column;padding:16px}}.my-drafts-page{min-height:100vh;background:var(--bg-primary, #f5f5f5);padding:0 var(--spacing-md) var(--spacing-md)}.my-drafts-container{max-width:1200px;margin:0 auto;padding:20px}.my-drafts-header{margin-bottom:24px}.my-drafts-header h1{margin:0 0 8px;font-size:var(--text-page-title);font-weight:var(--font-semibold);color:var(--text-primary)}.drafts-count{margin:0;color:var(--text-secondary, #666);font-size:1rem}.drafts-count .rejected-count{color:var(--color-error, #dc2626);font-weight:600}.error-message{background:var(--color-error-light);color:var(--color-error-dark);padding:12px 16px;border-radius:8px;margin-bottom:24px;border:1px solid var(--color-error)}.loading{text-align:center;padding:40px;color:var(--text-secondary)}.no-drafts{background:var(--bg-primary);border-radius:12px;padding:40px;text-align:center;border:1px solid var(--border-light)}.no-drafts p{margin:8px 0;color:var(--text-primary)}.no-drafts .hint{color:var(--text-secondary, #666);font-size:.9rem}.drafts-list{display:flex;flex-direction:column;gap:16px}.draft-card{background:var(--bg-primary);border-radius:12px;padding:20px;border:1px solid var(--border-light);box-shadow:0 2px 4px #0000000d;display:flex;justify-content:space-between;align-items:flex-start;gap:20px;transition:box-shadow .2s,transform .2s}.draft-card:hover{box-shadow:0 4px 8px #0000001a;transform:translateY(-1px)}.draft-info{flex:1}.draft-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:2px solid var(--border-light)}.draft-header h3{margin:0;font-size:1.25rem;color:var(--text-primary)}.draft-status{background:var(--color-warning);color:var(--text-on-warning);padding:4px 12px;border-radius:12px;font-size:.75rem;font-weight:600;text-transform:uppercase}.draft-status.rejected{background:var(--color-error, #dc2626);color:#fff;animation:pulse-rejected 2s infinite}@keyframes pulse-rejected{0%,to{box-shadow:0 0 #dc262666}50%{box-shadow:0 0 0 6px #dc262600}}.draft-card.rejected{border-left:4px solid var(--color-error, #dc2626);background:var(--color-error-lighter, #fef2f2)}.draft-card.rejected:hover{box-shadow:0 4px 12px #dc262626}.rejected-banner{background:var(--color-warning-light, #fef3c7);color:var(--color-warning-dark, #92400e);padding:10px 14px;border-radius:6px;font-size:.875rem;font-weight:500;margin-bottom:12px;border:1px solid var(--color-warning, #f59e0b);display:flex;align-items:center;gap:8px}.draft-details{display:grid;gap:8px}.detail-row{display:flex;gap:8px}.detail-label{font-weight:600;color:var(--text-secondary, #666);min-width:120px}.detail-value{color:var(--text-primary);flex:1}.description-text{font-style:italic;color:var(--text-secondary, #666)}.draft-actions{display:flex;flex-direction:column;gap:8px;min-width:140px}.btn-edit,.btn-delete{padding:8px 16px;border:none;border-radius:6px;font-size:.9rem;font-weight:500;cursor:pointer;transition:all .2s}.btn-edit{background:var(--color-primary, #007bff);color:#fff}.btn-edit:hover:not(:disabled){background:var(--color-primary-hover, #0056b3);transform:translateY(-1px)}.btn-edit.btn-fix{background:var(--color-error, #dc2626);font-weight:600}.btn-edit.btn-fix:hover:not(:disabled){background:var(--color-error-dark, #b91c1c)}.btn-delete{background:var(--color-error);color:var(--text-inverse)}.btn-delete:hover:not(:disabled){background:var(--color-error-dark);transform:translateY(-1px)}.btn-edit:disabled,.btn-delete:disabled{opacity:.6;cursor:not-allowed}[data-theme=dark] .my-drafts-page{background:var(--bg-primary, #1a1a1a)}[data-theme=dark] .no-drafts,[data-theme=dark] .draft-card{background:var(--bg-primary);border-color:var(--border-light, #444)}[data-theme=dark] .draft-card:hover{box-shadow:0 4px 8px #0000004d}[data-theme=dark] .draft-card.rejected{background:#dc26261a;border-left-color:var(--color-error, #ef4444)}[data-theme=dark] .draft-card.rejected:hover{box-shadow:0 4px 12px #dc262640}[data-theme=dark] .rejected-banner{background:#f59e0b26;border-color:#f59e0b66;color:#fcd34d}[data-theme=dark] .drafts-count .rejected-count{color:#f87171}@media (max-width: 768px){.draft-card{flex-direction:column}.draft-actions{flex-direction:row;width:100%}.btn-edit,.btn-delete{flex:1}}.send-missing-stats-modal{background:var(--bg-primary, #ffffff);border-radius:var(--radius-lg, 12px);box-shadow:0 20px 60px #0000004d;max-width:500px;width:90%;max-height:90vh;overflow-y:auto;position:relative}.modal-header{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-lg, 24px);border-bottom:2px solid var(--border-light, #f3f4f6)}.modal-header h2{margin:0;font-size:var(--text-xl, 20px);font-weight:600;color:var(--text-primary, #111827)}.modal-close-button{background:none;border:none;font-size:28px;color:var(--text-secondary, #6b7280);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm, 4px);transition:all .2s ease}.modal-close-button:hover{background:var(--bg-hover, #f9fafb);color:var(--text-primary, #111827)}.send-missing-stats-form{padding:var(--spacing-lg, 24px)}.form-group{margin-bottom:var(--spacing-lg, 24px)}.form-group label{display:block;margin-bottom:var(--spacing-xs, 8px);font-weight:600;color:var(--text-primary, #111827);font-size:var(--text-sm, 14px)}.form-group select,.form-group input[type=date]{width:100%;padding:var(--spacing-sm, 12px);border:2px solid var(--border-medium, #e5e7eb);border-radius:var(--radius-md, 8px);font-size:var(--text-base, 16px);background:var(--bg-primary, #ffffff);color:var(--text-primary, #111827);transition:border-color .2s ease}.form-group select:focus,.form-group input[type=date]:focus{outline:none;border-color:var(--color-primary, #3b82f6);box-shadow:0 0 0 3px #3b82f61a}.form-group select:disabled,.form-group input[type=date]:disabled{background:var(--bg-secondary, #f9fafb);cursor:not-allowed;opacity:.6}.user-search-input:disabled{background:var(--bg-secondary, #f9fafb);cursor:not-allowed;opacity:.6}.user-dropdown-item{width:100%;padding:var(--spacing-sm, 12px);text-align:left;background:transparent;border:none;border-bottom:1px solid var(--border-light, #f3f4f6);color:var(--text-primary, #111827);font-size:var(--text-base, 16px);cursor:pointer;transition:background-color .2s ease;display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-sm, 12px)}.user-name{flex:1}.user-badges{display:flex;gap:var(--spacing-xs, 8px);align-items:center}.badge{padding:2px 8px;border-radius:4px;font-size:var(--text-xs, 12px);font-weight:600;display:inline-flex;align-items:center;gap:4px}.badge-admin{background:#dbeafe;color:#1e40af}.badge-k9{background:#fef3c7;color:#92400e}.badge-k9 svg{width:12px;height:12px}.form-hint{display:block;margin-top:var(--spacing-xs, 8px);font-size:var(--text-xs, 12px);color:var(--text-secondary, #6b7280)}.form-message{padding:var(--spacing-sm, 12px);border-radius:var(--radius-md, 8px);margin-bottom:var(--spacing-md, 16px);font-size:var(--text-sm, 14px)}.form-error{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}.form-warning{background:#fef3c7;color:#92400e;border:1px solid #fde68a}.modal-actions{display:flex;gap:var(--spacing-md, 16px);justify-content:flex-end;margin-top:var(--spacing-xl, 32px)}.modal-button{padding:var(--spacing-sm, 12px) var(--spacing-lg, 24px);border:2px solid;border-radius:var(--radius-md, 8px);font-size:var(--text-base, 16px);font-weight:600;cursor:pointer;transition:all .2s ease}.modal-button:disabled{opacity:.5;cursor:not-allowed}.modal-button-primary{background:var(--color-primary, #3b82f6);color:#fff;border-color:var(--color-primary, #3b82f6)}.modal-button-primary:hover:not(:disabled){background:var(--color-primary-hover, #2563eb);border-color:var(--color-primary-hover, #2563eb)}.modal-button-secondary{background:transparent;color:var(--text-primary, #111827);border-color:var(--border-medium, #e5e7eb)}.modal-button-secondary:hover:not(:disabled){background:var(--bg-hover, #f9fafb)}[data-theme=dark] .send-missing-stats-modal{background:var(--bg-primary, #1f2937)}[data-theme=dark] .modal-header{border-bottom-color:var(--border-light, #374151)}[data-theme=dark] .modal-header h2{color:var(--text-primary, #f9fafb)}[data-theme=dark] .modal-close-button{color:var(--text-secondary, #9ca3af)}[data-theme=dark] .modal-close-button:hover{background:var(--bg-hover, #374151);color:var(--text-primary, #f9fafb)}[data-theme=dark] .form-group label{color:var(--text-primary, #f9fafb)}[data-theme=dark] .form-group select,[data-theme=dark] .form-group input[type=date]{background:var(--bg-secondary, #374151);border-color:var(--border-medium, #4b5563);color:var(--text-primary, #f9fafb)}[data-theme=dark] .form-group select:disabled,[data-theme=dark] .form-group input[type=date]:disabled{background:var(--bg-secondary, #374151)}[data-theme=dark] .user-search-input{background:var(--bg-primary, #1f2937);border-color:var(--border-medium, #4b5563);color:var(--text-primary, #f9fafb)}[data-theme=dark] .user-search-input:disabled{background:var(--bg-secondary, #374151)}[data-theme=dark] .badge-admin{background:#1e3a8a;color:#bfdbfe}[data-theme=dark] .badge-k9{background:#78350f;color:#fde68a}[data-theme=dark] .form-hint{color:var(--text-secondary, #9ca3af)}[data-theme=dark] .modal-button-secondary{color:var(--text-primary, #f9fafb);border-color:var(--border-medium, #4b5563)}[data-theme=dark] .modal-button-secondary:hover:not(:disabled){background:var(--bg-hover, #374151)}.missing-stats-dashboard{min-height:100vh;background:var(--bg-primary, #f9fafb);padding:0 var(--spacing-md) var(--spacing-md)}.dashboard-container{max-width:1400px;margin:0 auto;padding:var(--spacing-xl, 32px)}.dashboard-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-xl, 32px)}.header-actions{display:flex;gap:var(--spacing-md, 16px);align-items:center}.dashboard-header h1{margin:0;font-size:var(--text-page-title);font-weight:var(--font-semibold);color:var(--text-primary, #111827)}.export-button{padding:var(--spacing-sm, 12px) var(--spacing-lg, 24px);background:var(--bg-primary, #ffffff);color:var(--text-primary, #111827);border:2px solid var(--border-medium, #e5e7eb);border-radius:var(--radius-md, 8px);font-size:var(--text-base, 16px);font-weight:600;cursor:pointer;transition:all .2s ease}.export-button:hover:not(:disabled){background:var(--bg-hover, #f9fafb);border-color:var(--color-primary, #3b82f6);color:var(--color-primary, #3b82f6)}.export-button:disabled{opacity:.5;cursor:not-allowed}.send-request-button{padding:var(--spacing-sm, 12px) var(--spacing-lg, 24px);background:var(--color-primary, #3b82f6);color:#fff;border:none;border-radius:var(--radius-md, 8px);font-size:var(--text-base, 16px);font-weight:600;cursor:pointer;transition:all .2s ease;box-shadow:0 2px 4px #3b82f64d}.send-request-button:hover{background:var(--color-primary-hover, #2563eb);box-shadow:0 4px 8px #3b82f666;transform:translateY(-1px)}.dashboard-message{padding:var(--spacing-md, 16px);border-radius:var(--radius-md, 8px);margin-bottom:var(--spacing-lg, 24px);font-size:var(--text-base, 16px)}.message-success{background:#d1fae5;color:#065f46;border:1px solid #a7f3d0}.message-error{background:#fee2e2;color:#991b1b;border:1px solid #fecaca}.message-info{background:#dbeafe;color:#1e40af;border:1px solid #bfdbfe}.stats-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-lg, 24px);margin-bottom:var(--spacing-xl, 32px)}.stat-card{background:var(--bg-primary, #ffffff);border:2px solid var(--border-light, #f3f4f6);border-radius:var(--radius-lg, 12px);padding:var(--spacing-lg, 24px);text-align:center;box-shadow:0 2px 4px #0000000d}.stat-card.stat-pending{border-color:#f59e0b;background:linear-gradient(135deg,#fef3c7,#fde68a)}.stat-card.stat-completed{border-color:#10b981;background:linear-gradient(135deg,#d1fae5,#a7f3d0)}.stat-card.stat-cancelled{border-color:#ef4444;background:linear-gradient(135deg,#fee2e2,#fecaca)}.stat-label{font-size:var(--text-sm, 14px);font-weight:600;color:var(--text-secondary, #6b7280);margin-bottom:var(--spacing-xs, 8px);text-transform:uppercase;letter-spacing:.5px}.stat-value{font-size:var(--text-3xl, 32px);font-weight:700;color:var(--text-primary, #111827)}.filters-section{display:flex;gap:var(--spacing-lg, 24px);margin-bottom:var(--spacing-xl, 32px);padding:var(--spacing-lg, 24px);background:var(--bg-primary, #ffffff);border-radius:var(--radius-lg, 12px);border:2px solid var(--border-light, #f3f4f6)}.filter-group{display:flex;flex-direction:column;gap:var(--spacing-xs, 8px);flex:1}.filter-group label{font-size:var(--text-sm, 14px);font-weight:600;color:var(--text-primary, #111827)}.filter-group select{padding:var(--spacing-sm, 12px);border:2px solid var(--border-medium, #e5e7eb);border-radius:var(--radius-md, 8px);font-size:var(--text-base, 16px);background:var(--bg-primary, #ffffff);color:var(--text-primary, #111827);cursor:pointer;transition:border-color .2s ease}.filter-group select:focus{outline:none;border-color:var(--color-primary, #3b82f6);box-shadow:0 0 0 3px #3b82f61a}.user-search-dropdown{position:relative}.user-search-input{width:100%;padding:var(--spacing-sm, 12px);border:2px solid var(--border-medium, #e5e7eb);border-radius:var(--radius-md, 8px);font-size:var(--text-base, 16px);background:var(--bg-primary, #ffffff);color:var(--text-primary, #111827);transition:border-color .2s ease}.user-search-input:focus{outline:none;border-color:var(--color-primary, #3b82f6);box-shadow:0 0 0 3px #3b82f61a}.user-dropdown-list{position:absolute;top:calc(100% + 4px);left:0;right:0;max-height:300px;overflow-y:auto;background:var(--bg-primary, #ffffff);border:2px solid var(--border-medium, #e5e7eb);border-radius:var(--radius-md, 8px);box-shadow:0 4px 12px #00000026;z-index:1000}.user-dropdown-item{width:100%;padding:var(--spacing-sm, 12px);text-align:left;background:transparent;border:none;border-bottom:1px solid var(--border-light, #f3f4f6);color:var(--text-primary, #111827);font-size:var(--text-base, 16px);cursor:pointer;transition:background-color .2s ease}.user-dropdown-item:last-child{border-bottom:none}.user-dropdown-item:hover{background-color:var(--bg-hover, #f9fafb)}.user-dropdown-item:first-child{font-weight:600;color:var(--color-primary, #3b82f6)}.requests-table-container{background:var(--bg-primary, #ffffff);border-radius:var(--radius-lg, 12px);border:2px solid var(--border-light, #f3f4f6);overflow:hidden}.loading-message,.empty-message{padding:var(--spacing-xl, 32px);text-align:center;color:var(--text-secondary, #6b7280);font-size:var(--text-base, 16px)}.requests-table{width:100%;border-collapse:collapse}.requests-table thead{background:var(--bg-secondary, #f9fafb);border-bottom:2px solid var(--border-medium, #e5e7eb)}.requests-table th{padding:var(--spacing-md, 16px);text-align:left;font-weight:600;font-size:var(--text-sm, 14px);color:var(--text-primary, #111827);text-transform:uppercase;letter-spacing:.5px}.requests-table tbody tr{border-bottom:1px solid var(--border-light, #f3f4f6);transition:background-color .2s ease}.requests-table tbody tr:hover{background-color:var(--bg-hover, #f9fafb)}.requests-table tbody tr:last-child{border-bottom:none}.requests-table td{padding:var(--spacing-md, 16px);font-size:var(--text-base, 16px);color:var(--text-primary, #111827)}.date-cell{display:flex;flex-direction:column;gap:2px}.relative-date{font-size:var(--text-xs, 12px);color:var(--text-secondary, #6b7280);font-style:italic}.status-badge{display:inline-block;padding:4px 12px;border-radius:12px;font-size:var(--text-xs, 12px);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-pending{background:#fef3c7;color:#92400e}.status-completed{background:#d1fae5;color:#065f46}.status-cancelled{background:#fee2e2;color:#991b1b}.action-button{padding:var(--spacing-xs, 8px) var(--spacing-sm, 12px);border:2px solid;border-radius:var(--radius-sm, 4px);font-size:var(--text-sm, 14px);font-weight:600;cursor:pointer;transition:all .2s ease}.cancel-button{background:transparent;color:#ef4444;border-color:#ef4444}.cancel-button:hover{background:#ef4444;color:#fff}[data-theme=dark] .missing-stats-dashboard{background:var(--bg-primary, #111827)}[data-theme=dark] .dashboard-header h1{color:var(--text-primary, #f9fafb)}[data-theme=dark] .stat-card{background:var(--bg-secondary, #1f2937);border-color:var(--border-light, #374151)}[data-theme=dark] .stat-label{color:var(--text-secondary, #9ca3af)}[data-theme=dark] .stat-value{color:var(--text-primary, #f9fafb)}[data-theme=dark] .filters-section{background:var(--bg-secondary, #1f2937);border-color:var(--border-light, #374151)}[data-theme=dark] .filter-group label{color:var(--text-primary, #f9fafb)}[data-theme=dark] .filter-group select,[data-theme=dark] .user-search-input{background:var(--bg-primary, #1f2937);border-color:var(--border-medium, #4b5563);color:var(--text-primary, #f9fafb)}[data-theme=dark] .user-dropdown-list{background:var(--bg-primary, #1f2937);border-color:var(--border-medium, #4b5563)}[data-theme=dark] .user-dropdown-item{border-bottom-color:var(--border-light, #374151);color:var(--text-primary, #f9fafb)}[data-theme=dark] .user-dropdown-item:hover{background-color:var(--bg-hover, #374151)}[data-theme=dark] .requests-table-container{background:var(--bg-secondary, #1f2937);border-color:var(--border-light, #374151)}[data-theme=dark] .requests-table thead{background:var(--bg-primary, #111827);border-bottom-color:var(--border-medium, #4b5563)}[data-theme=dark] .requests-table th{color:var(--text-primary, #f9fafb)}[data-theme=dark] .requests-table tbody tr{border-bottom-color:var(--border-light, #374151)}[data-theme=dark] .requests-table tbody tr:hover{background-color:var(--bg-hover, #374151)}[data-theme=dark] .requests-table td{color:var(--text-primary, #f9fafb)}[data-theme=dark] .loading-message,[data-theme=dark] .empty-message{color:var(--text-secondary, #9ca3af)}[data-theme=dark] .export-button{background:var(--bg-secondary, #1f2937);color:var(--text-primary, #f9fafb);border-color:var(--border-medium, #4b5563)}[data-theme=dark] .export-button:hover:not(:disabled){background:var(--bg-hover, #374151);border-color:var(--color-primary, #3b82f6);color:var(--color-primary, #60a5fa)}[data-theme=dark] .relative-date{color:var(--text-secondary, #9ca3af)}.shift-analytics-dashboard{padding:20px;max-width:1400px;margin:0 auto}.shift-analytics-dashboard.compact{padding:12px}.shift-analytics-dashboard .dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.shift-analytics-dashboard .dashboard-header h2{margin:0;font-size:1.5rem;color:#1a1a2e}.shift-analytics-dashboard .date-range-display{font-size:.9rem;color:#666;background:#f0f0f0;padding:6px 12px;border-radius:16px}.shift-analytics-dashboard .dashboard-tabs{display:flex;gap:4px;padding:12px 16px;background:var(--gray-100, #f1f5f9);border-bottom:1px solid var(--gray-200, #e2e8f0);margin-bottom:20px}.shift-analytics-dashboard .tab-button{padding:10px 20px;border:none;border-radius:8px;background:transparent;font-size:.9rem;font-weight:500;color:var(--text-secondary, #64748b);cursor:pointer;transition:all .2s ease}.shift-analytics-dashboard .tab-button:hover{background:#fffc;color:var(--text-primary, #334155)}.shift-analytics-dashboard .tab-button.active{background:var(--bg-primary, white);color:#1976d2;box-shadow:0 2px 4px #0000000d}.shift-analytics-dashboard.loading,.shift-analytics-dashboard.error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:300px;color:#666}.shift-analytics-dashboard .loading-spinner{width:40px;height:40px;border:4px solid #e0e0e0;border-top-color:#1976d2;border-radius:50%;animation:spin 1s linear infinite;margin-bottom:16px}.shift-analytics-dashboard .error-message{color:#d32f2f;margin-bottom:16px}.shift-analytics-dashboard.error button{padding:8px 20px;background:#1976d2;color:#fff;border:none;border-radius:6px;cursor:pointer}.shift-analytics-dashboard .shift-cards-section{margin-bottom:24px}.shift-analytics-dashboard .shift-cards-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.shift-analytics-dashboard .shift-cards-header h3{margin:0;font-size:1.1rem;font-weight:600;color:var(--text-primary, #1a1a2e)}.shift-analytics-dashboard .expand-all-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;font-size:.8rem;font-weight:500;color:var(--color-primary, #1976d2);background:transparent;border:1px solid var(--color-primary, #1976d2);border-radius:6px;cursor:pointer;transition:all .2s ease}.shift-analytics-dashboard .expand-all-btn:hover,.shift-analytics-dashboard .expand-all-btn.expanded{background:var(--color-primary, #1976d2);color:#fff}.shift-analytics-dashboard .shift-cards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px}.shift-analytics-dashboard .shift-stat-card{background:#fff;border-radius:10px;box-shadow:0 2px 8px #00000014;padding:12px 14px;border-top:3px solid}.shift-analytics-dashboard .shift-card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.shift-analytics-dashboard .shift-card-header h4{margin:0;font-size:.95rem;color:#1a1a2e}.shift-analytics-dashboard .shift-badge{padding:3px 10px;border-radius:12px;font-size:.75rem;font-weight:600;color:#fff}.shift-analytics-dashboard .shift-card-meta{display:flex;gap:16px;margin-bottom:10px;padding-bottom:8px;border-bottom:1px solid #eee}.shift-analytics-dashboard .meta-item{display:flex;flex-direction:column}.shift-analytics-dashboard .meta-value{font-size:1rem;font-weight:600;color:#1a1a2e}.shift-analytics-dashboard .meta-label{font-size:.7rem;color:#888}.shift-analytics-dashboard .shift-card-stats{display:flex;flex-direction:column;gap:4px}.shift-analytics-dashboard .stat-row{display:flex;justify-content:space-between;align-items:center}.shift-analytics-dashboard .stat-label{font-size:.75rem;color:#555;display:inline-flex;align-items:center;gap:4px}.shift-analytics-dashboard .inline-winner-badge{font-size:.65rem;line-height:1;flex-shrink:0;animation:gentle-glow 2s ease-in-out infinite}.shift-analytics-dashboard .stat-values{display:flex;align-items:baseline;gap:4px;flex-shrink:1;min-width:0}@keyframes gentle-glow{0%,to{filter:drop-shadow(0 0 2px rgba(255,215,0,.5))}50%{filter:drop-shadow(0 0 4px rgba(255,215,0,.8))}}.shift-analytics-dashboard .stat-row.has-badge{background:linear-gradient(90deg,rgba(255,215,0,.1) 0%,transparent 100%);border-radius:4px}.shift-analytics-dashboard .stat-row.has-badge .stat-total{color:#b8860b;font-weight:700}.shift-analytics-dashboard .stat-total{font-size:.85rem;font-weight:600;color:#1a1a2e}.shift-analytics-dashboard .stat-avg{font-size:.65rem;color:#888}.shift-analytics-dashboard .quick-comparisons{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px}.shift-analytics-dashboard .comparison-summary-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:16px}.shift-analytics-dashboard .comparison-summary-card h4{margin:0 0 12px;font-size:1rem;color:#666}.shift-analytics-dashboard .comparison-result{display:flex;flex-direction:column}.shift-analytics-dashboard .leader-name{font-size:1.5rem;font-weight:700;color:#1a1a2e}.shift-analytics-dashboard .leader-detail{font-size:.9rem;color:#666}.shift-analytics-dashboard .comparisons-tab{display:flex;flex-direction:column;gap:24px}.shift-analytics-dashboard .rankings-tab{width:100%}.shift-analytics-dashboard .rankings-filters,.shift-analytics-dashboard .trends-filters{display:flex;gap:16px;margin-bottom:20px;flex-wrap:wrap}.shift-analytics-dashboard .filter-group{display:flex;flex-direction:column;gap:6px}.shift-analytics-dashboard .filter-group label{font-size:.85rem;font-weight:500;color:#555}.shift-analytics-dashboard .filter-group select{padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:.9rem;min-width:180px;background:#fff}.shift-analytics-dashboard .search-action-btn{padding:10px 16px;min-width:104px;border:none;border-radius:10px;font-size:.9rem;font-weight:600;color:#fff;background:linear-gradient(135deg,#1976d2,#1565c0);box-shadow:0 4px 10px #1976d240;cursor:pointer;transition:transform .15s ease,box-shadow .2s ease,filter .2s ease}.shift-analytics-dashboard .search-action-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 14px #1976d24d;filter:brightness(1.03)}.shift-analytics-dashboard .search-action-btn:disabled{opacity:.6;cursor:not-allowed;box-shadow:none;transform:none}.shift-analytics-dashboard .rankings-table-container{display:block;width:100%;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow:hidden}.shift-analytics-dashboard .rankings-table{display:table;width:100%;border-collapse:collapse;table-layout:fixed}.shift-analytics-dashboard .rankings-table th,.shift-analytics-dashboard .rankings-table td{padding:14px 16px;border-bottom:1px solid #eee;vertical-align:middle}.shift-analytics-dashboard .rankings-table th{background:#f5f5f5;font-weight:600;color:#555;border-bottom:2px solid #ddd}.shift-analytics-dashboard .rankings-table .col-rank{width:10%;text-align:center}.shift-analytics-dashboard .rankings-table .col-shift{width:25%;text-align:left}.shift-analytics-dashboard .rankings-table .col-officers{width:13%;text-align:center}.shift-analytics-dashboard .rankings-table .col-total,.shift-analytics-dashboard .rankings-table .col-avg{width:17%;text-align:right;font-variant-numeric:tabular-nums}.shift-analytics-dashboard .rankings-table tr:last-child td{border-bottom:none}.shift-analytics-dashboard .rankings-table tbody tr:hover{background:#fafafa}.shift-analytics-dashboard .rankings-table tr.top-1{background:#fff8e1}.shift-analytics-dashboard .rankings-table tr.top-1:hover{background:#fff3cd}.shift-analytics-dashboard .rankings-table tr.top-2{background:#f5f5f5}.shift-analytics-dashboard .rankings-table tr.top-2:hover{background:#ebebeb}.shift-analytics-dashboard .rankings-table tr.top-3{background:#fff3e0}.shift-analytics-dashboard .rankings-table tr.top-3:hover{background:#ffe0b2}.shift-analytics-dashboard .rankings-table .medal{font-size:1.4rem}.shift-analytics-dashboard .rankings-table .rank-number{font-weight:600;color:#888;font-size:1rem}.shift-analytics-dashboard .rankings-table .shift-indicator{display:inline-block;width:12px;height:12px;border-radius:50%;margin-right:10px;vertical-align:middle}.shift-analytics-dashboard .rankings-table td:nth-child(n+4){font-weight:600;color:#1a1a2e}.shift-analytics-dashboard .trend-display{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:20px}.shift-analytics-dashboard .trend-summary{margin-bottom:24px}.shift-analytics-dashboard .trend-header{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px}.shift-analytics-dashboard .trend-header h4{margin:0;font-size:1.1rem;color:#1a1a2e}.shift-analytics-dashboard .trend-indicator{display:flex;align-items:center;gap:8px;padding:8px 16px;background:#f5f5f5;border-radius:20px}.shift-analytics-dashboard .trend-icon{font-size:1.2rem}.shift-analytics-dashboard .trend-direction{font-weight:600}.shift-analytics-dashboard .trend-direction.increasing{color:#4caf50}.shift-analytics-dashboard .trend-direction.decreasing{color:#f44336}.shift-analytics-dashboard .trend-direction.stable{color:#ff9800}.shift-analytics-dashboard .trend-change{color:#666;font-size:.9rem}.shift-analytics-dashboard .trend-chart{margin-bottom:24px;padding:20px 0}.shift-analytics-dashboard .trend-chart.recharts-container{background:#fff;border-radius:12px;padding:16px;box-shadow:0 2px 8px #0000000f}.shift-analytics-dashboard .recharts-tooltip-wrapper{z-index:100}.shift-analytics-dashboard .recharts-cartesian-grid-horizontal line,.shift-analytics-dashboard .recharts-cartesian-grid-vertical line{stroke:#e5e7eb}.shift-analytics-dashboard .trend-data-table table{width:100%;border-collapse:collapse}.shift-analytics-dashboard .trend-data-table th{text-align:left;padding:10px 12px;background:#f5f5f5;font-weight:600;color:#555;font-size:.85rem}.shift-analytics-dashboard .trend-data-table td{padding:10px 12px;border-bottom:1px solid #eee;font-size:.9rem}[data-theme=dark] .shift-analytics-dashboard .dashboard-header h2{color:#e0e0e0}[data-theme=dark] .shift-analytics-dashboard .date-range-display{background:#2a2a3e;color:#aaa}[data-theme=dark] .shift-analytics-dashboard .dashboard-tabs{background:var(--bg-secondary, #1e1e2e);border-bottom-color:#444}[data-theme=dark] .shift-analytics-dashboard .tab-button{color:#aaa}[data-theme=dark] .shift-analytics-dashboard .tab-button:hover{background:#ffffff14;color:#e0e0e0}[data-theme=dark] .shift-analytics-dashboard .tab-button.active{background:var(--bg-primary, #2a2a2a);color:#64b5f6;box-shadow:0 2px 4px #0003}[data-theme=dark] .shift-analytics-dashboard .shift-stat-card,[data-theme=dark] .shift-analytics-dashboard .comparison-summary-card,[data-theme=dark] .shift-analytics-dashboard .rankings-table-container,[data-theme=dark] .shift-analytics-dashboard .trend-display{background:#1e1e2e;box-shadow:0 2px 8px #0000004d}[data-theme=dark] .shift-analytics-dashboard .shift-card-header h4,[data-theme=dark] .shift-analytics-dashboard .meta-value,[data-theme=dark] .shift-analytics-dashboard .stat-total,[data-theme=dark] .shift-analytics-dashboard .leader-name,[data-theme=dark] .shift-analytics-dashboard .value-cell,[data-theme=dark] .shift-analytics-dashboard .trend-header h4{color:#e0e0e0}[data-theme=dark] .shift-analytics-dashboard .shift-card-meta{border-bottom-color:#333}[data-theme=dark] .shift-analytics-dashboard .meta-label,[data-theme=dark] .shift-analytics-dashboard .stat-avg,[data-theme=dark] .shift-analytics-dashboard .leader-detail{color:#888}[data-theme=dark] .shift-analytics-dashboard .stat-label,[data-theme=dark] .shift-analytics-dashboard .filter-group label{color:#aaa}[data-theme=dark] .shift-analytics-dashboard .filter-group select{background:#2a2a3e;border-color:#444;color:#e0e0e0}[data-theme=dark] .shift-analytics-dashboard .search-action-btn{background:linear-gradient(135deg,#60a5fa,#3b82f6);color:#0b1220;box-shadow:0 4px 10px #3b82f659}[data-theme=dark] .shift-analytics-dashboard .rankings-table th,[data-theme=dark] .shift-analytics-dashboard .trend-data-table th{background:#2a2a3e;color:#aaa;border-bottom-color:#444}[data-theme=dark] .shift-analytics-dashboard .rankings-table td,[data-theme=dark] .shift-analytics-dashboard .trend-data-table td{border-bottom-color:#333}[data-theme=dark] .shift-analytics-dashboard .rankings-table tr:hover{background:#2a2a3e}[data-theme=dark] .shift-analytics-dashboard .rankings-table tr.top-1{background:#3d3a2e}[data-theme=dark] .shift-analytics-dashboard .rankings-table tr.top-2{background:#2a2a3e}[data-theme=dark] .shift-analytics-dashboard .rankings-table tr.top-3{background:#3a2e2a}[data-theme=dark] .shift-analytics-dashboard .rankings-table td:nth-child(n+4){color:#e0e0e0}[data-theme=dark] .shift-analytics-dashboard .rankings-table .rank-number{color:#888}[data-theme=dark] .shift-analytics-dashboard .trend-indicator{background:#2a2a3e}[data-theme=dark] .shift-analytics-dashboard .trend-chart.recharts-container{background:#1e1e2e;box-shadow:0 2px 8px #0000004d}[data-theme=dark] .shift-analytics-dashboard .recharts-cartesian-grid-horizontal line,[data-theme=dark] .shift-analytics-dashboard .recharts-cartesian-grid-vertical line{stroke:#333}[data-theme=dark] .shift-analytics-dashboard .recharts-text{fill:#888!important}[data-theme=dark] .shift-analytics-dashboard .recharts-tooltip-wrapper .recharts-default-tooltip{background:#2a2a3e!important;border-color:#444!important;color:#e0e0e0!important}@media (max-width: 768px){.shift-analytics-dashboard{padding:12px}.shift-analytics-dashboard .dashboard-header{flex-direction:column;align-items:flex-start;gap:8px}.shift-analytics-dashboard .dashboard-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch;padding:8px}.shift-analytics-dashboard .tab-button{padding:8px 12px;font-size:.85rem;white-space:nowrap}.shift-analytics-dashboard .shift-cards-grid{grid-template-columns:1fr}.shift-analytics-dashboard .rankings-filters,.shift-analytics-dashboard .trends-filters{flex-direction:column}.shift-analytics-dashboard .filter-group select{width:100%}.shift-analytics-dashboard .trend-header{flex-direction:column;align-items:flex-start}.shift-analytics-dashboard .chart-bars{height:150px}.shift-analytics-dashboard .rankings-table{font-size:.85rem}.shift-analytics-dashboard .rankings-table th,.shift-analytics-dashboard .rankings-table td{padding:10px 8px}}.shift-analytics-dashboard .comparison-sub-tabs{display:flex;gap:4px;padding:8px 12px;margin-bottom:20px;background:var(--gray-100, #f1f5f9);border-radius:8px}.shift-analytics-dashboard .sub-tab-button{padding:8px 16px;border:none;background:transparent;color:var(--text-secondary, #64748b);font-size:.9rem;font-weight:500;cursor:pointer;border-radius:6px;transition:all .2s ease}.shift-analytics-dashboard .sub-tab-button:hover{background:#fffc;color:var(--text-primary, #334155)}.shift-analytics-dashboard .sub-tab-button.active{background:var(--bg-primary, white);color:#1976d2;box-shadow:0 2px 4px #0000000d}[data-theme=dark] .shift-analytics-dashboard .comparison-sub-tabs{background:var(--bg-secondary, #1e1e2e)}[data-theme=dark] .shift-analytics-dashboard .sub-tab-button{color:#aaa}[data-theme=dark] .shift-analytics-dashboard .sub-tab-button:hover{background:#ffffff14;color:#e0e0e0}[data-theme=dark] .shift-analytics-dashboard .sub-tab-button.active{background:var(--bg-primary, #2a2a2a);color:#64b5f6;box-shadow:0 2px 4px #0003}.shift-analytics-dashboard .k9-comparisons{display:flex;flex-direction:column;gap:20px}.shift-analytics-dashboard .k9-filter{display:flex;align-items:center;gap:12px;padding:8px 12px;background:#f9f9f9;border-radius:8px}.shift-analytics-dashboard .k9-filter label{font-weight:500;color:#555}.shift-analytics-dashboard .k9-filter select{padding:8px 12px;border:1px solid #ddd;border-radius:6px;font-size:.9rem;min-width:200px}.shift-analytics-dashboard .comparison-card.k9-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:20px;border-top:4px solid #8B4513}.shift-analytics-dashboard .comparison-card.k9-card h3{margin:0 0 16px;color:#8b4513;font-size:1.1rem}.shift-analytics-dashboard .comparison-header-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px;padding-bottom:12px;border-bottom:1px solid #eee}.shift-analytics-dashboard .header-label{display:flex;align-items:center;gap:8px;font-weight:500;color:#555}.shift-analytics-dashboard .header-label.left{justify-content:flex-start}.shift-analytics-dashboard .header-label.right{justify-content:flex-end}.shift-analytics-dashboard .shift-dot{width:12px;height:12px;border-radius:50%}.shift-analytics-dashboard .shift-dot.day{background:#ffa726}.shift-analytics-dashboard .shift-dot.night{background:#5c6bc0}.shift-analytics-dashboard .shift-dot.a-side{background:#4caf50}.shift-analytics-dashboard .shift-dot.b-side{background:#2196f3}.shift-analytics-dashboard .k9-comparison-rows{display:flex;flex-direction:column;gap:12px}.shift-analytics-dashboard .k9-comparison-row{display:flex;flex-direction:column;gap:4px}.shift-analytics-dashboard .k9-stat-label{font-size:.85rem;color:#666;font-weight:500}.shift-analytics-dashboard .k9-comparison-bar-container{display:flex;align-items:center;gap:10px}.shift-analytics-dashboard .k9-bar-value{min-width:60px;font-size:.9rem;font-weight:600}.shift-analytics-dashboard .k9-bar-value.left{text-align:right;color:#ffa726}.shift-analytics-dashboard .k9-bar-value.right{text-align:left;color:#5c6bc0}.shift-analytics-dashboard .k9-comparison-bar{flex:1;display:flex;height:24px;border-radius:4px;overflow:hidden;background:#f0f0f0}.shift-analytics-dashboard .k9-bar-segment{height:100%;transition:width .3s ease}.shift-analytics-dashboard .k9-bar-segment.left{background:#ffa72699}.shift-analytics-dashboard .k9-bar-segment.left.winner{background:#ffa726}.shift-analytics-dashboard .k9-bar-segment.right{background:#5c6bc099}.shift-analytics-dashboard .k9-bar-segment.right.winner{background:#5c6bc0}.shift-analytics-dashboard .comparison-totals{display:flex;justify-content:space-between;margin-top:16px;padding-top:12px;border-top:1px solid #eee}.shift-analytics-dashboard .total-item{display:flex;flex-direction:column;gap:2px}.shift-analytics-dashboard .total-label{font-size:.8rem;color:#888}.shift-analytics-dashboard .total-value{font-size:1.2rem;font-weight:700;color:#333}.shift-analytics-dashboard .seizure-comparisons{display:flex;flex-direction:column;gap:20px}.shift-analytics-dashboard .comparison-card.seizure-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:20px;border-top:4px solid #673AB7}.shift-analytics-dashboard .comparison-card.seizure-card h3{margin:0 0 16px;color:#673ab7;font-size:1.1rem}.shift-analytics-dashboard .seizure-comparison-rows{display:flex;flex-direction:column;gap:16px;margin-bottom:20px}.shift-analytics-dashboard .seizure-comparison-row{display:flex;flex-direction:column;gap:4px}.shift-analytics-dashboard .seizure-stat-label{font-size:.9rem;color:#555;font-weight:600}.shift-analytics-dashboard .seizure-comparison-bar-container{display:flex;align-items:center;gap:10px}.shift-analytics-dashboard .seizure-bar-value{min-width:80px;font-size:.9rem;font-weight:600}.shift-analytics-dashboard .seizure-bar-value.left{text-align:right;color:#ffa726}.shift-analytics-dashboard .seizure-bar-value.right{text-align:left;color:#5c6bc0}.shift-analytics-dashboard .seizure-comparison-bar{flex:1;display:flex;height:32px;border-radius:4px;overflow:hidden;background:#f0f0f0}.shift-analytics-dashboard .seizure-bar-segment{height:100%;transition:width .3s ease}.shift-analytics-dashboard .seizure-bar-segment.left{background:#ffa72680}.shift-analytics-dashboard .seizure-bar-segment.left.winner{background:#ffa726}.shift-analytics-dashboard .seizure-bar-segment.right{background:#5c6bc080}.shift-analytics-dashboard .seizure-bar-segment.right.winner{background:#5c6bc0}.shift-analytics-dashboard .seizure-summary-cards{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:16px}.shift-analytics-dashboard .seizure-summary-card{padding:16px;border-radius:8px;background:#f9f9f9}.shift-analytics-dashboard .seizure-summary-card.day{border-left:4px solid #FFA726}.shift-analytics-dashboard .seizure-summary-card.night{border-left:4px solid #5C6BC0}.shift-analytics-dashboard .seizure-summary-card.a-side{border-left:4px solid #4CAF50}.shift-analytics-dashboard .seizure-summary-card.b-side{border-left:4px solid #2196F3}.shift-analytics-dashboard .seizure-summary-card h4{margin:0 0 12px;font-size:.95rem;color:#333}.shift-analytics-dashboard .summary-stat{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px solid #e0e0e0}.shift-analytics-dashboard .summary-stat:last-child{border-bottom:none}.shift-analytics-dashboard .summary-stat .stat-label{color:#666;font-size:.85rem}.shift-analytics-dashboard .summary-stat .stat-value{font-weight:600;color:#333}.shift-analytics-dashboard .no-data-message{text-align:center;padding:40px 20px;color:#888}[data-theme=dark] .shift-analytics-dashboard .k9-filter{background:#2a2a3e}[data-theme=dark] .shift-analytics-dashboard .k9-filter label{color:#aaa}[data-theme=dark] .shift-analytics-dashboard .k9-filter select{background:#1e1e2e;border-color:#444;color:#e0e0e0}[data-theme=dark] .shift-analytics-dashboard .comparison-card.k9-card,[data-theme=dark] .shift-analytics-dashboard .comparison-card.seizure-card{background:#1e1e2e}[data-theme=dark] .shift-analytics-dashboard .comparison-header-row{border-bottom-color:#444}[data-theme=dark] .shift-analytics-dashboard .header-label,[data-theme=dark] .shift-analytics-dashboard .k9-stat-label,[data-theme=dark] .shift-analytics-dashboard .seizure-stat-label{color:#aaa}[data-theme=dark] .shift-analytics-dashboard .k9-comparison-bar,[data-theme=dark] .shift-analytics-dashboard .seizure-comparison-bar{background:#2a2a3e}[data-theme=dark] .shift-analytics-dashboard .comparison-totals{border-top-color:#444}[data-theme=dark] .shift-analytics-dashboard .total-value{color:#e0e0e0}[data-theme=dark] .shift-analytics-dashboard .seizure-summary-card{background:#2a2a3e}[data-theme=dark] .shift-analytics-dashboard .seizure-summary-card h4{color:#e0e0e0}[data-theme=dark] .shift-analytics-dashboard .summary-stat{border-bottom-color:#444}[data-theme=dark] .shift-analytics-dashboard .summary-stat .stat-label{color:#aaa}[data-theme=dark] .shift-analytics-dashboard .summary-stat .stat-value{color:#e0e0e0}[data-theme=dark] .shift-analytics-dashboard .no-data-message{color:#aaa}@media (max-width: 768px){.shift-analytics-dashboard .comparison-sub-tabs{overflow-x:auto;padding-bottom:12px}.shift-analytics-dashboard .sub-tab-button{white-space:nowrap;padding:8px 12px;font-size:.85rem}.shift-analytics-dashboard .k9-filter{flex-direction:column;align-items:flex-start}.shift-analytics-dashboard .k9-filter select{width:100%}.shift-analytics-dashboard .comparison-header-row{flex-direction:column;gap:8px;align-items:flex-start}.shift-analytics-dashboard .k9-bar-value,.shift-analytics-dashboard .seizure-bar-value{min-width:50px;font-size:.8rem}.shift-analytics-dashboard .seizure-summary-cards{grid-template-columns:1fr}}.shift-analytics-dashboard .seizure-compare-mode-selector{display:flex;gap:4px;margin-bottom:20px;background:var(--gray-100, #f1f5f9);padding:6px;border-radius:8px;width:fit-content}.shift-analytics-dashboard .seizure-compare-mode-selector .mode-button{padding:8px 16px;border:none;background:transparent;font-size:.9rem;font-weight:500;color:var(--text-secondary, #64748b);cursor:pointer;border-radius:6px;transition:all .2s ease}.shift-analytics-dashboard .seizure-compare-mode-selector .mode-button:hover{background:#fffc;color:var(--text-primary, #334155)}.shift-analytics-dashboard .seizure-compare-mode-selector .mode-button.active{background:var(--bg-primary, white);color:#673ab7;box-shadow:0 2px 4px #0000000d}.shift-analytics-dashboard .k9-controls-row{display:flex;align-items:center;gap:20px;margin-bottom:20px;flex-wrap:wrap}.shift-analytics-dashboard .k9-compare-mode-selector{display:flex;gap:4px;background:var(--gray-100, #f1f5f9);padding:6px;border-radius:8px;width:fit-content}.shift-analytics-dashboard .k9-compare-mode-selector .mode-button{padding:8px 16px;border:none;background:transparent;font-size:.9rem;font-weight:500;color:var(--text-secondary, #64748b);cursor:pointer;border-radius:6px;transition:all .2s ease}.shift-analytics-dashboard .k9-compare-mode-selector .mode-button:hover{background:#fffc;color:var(--text-primary, #334155)}.shift-analytics-dashboard .k9-compare-mode-selector .mode-button.active{background:var(--bg-primary, white);color:#8b4513;box-shadow:0 2px 4px #0000000d}.shift-analytics-dashboard .all-shifts-card{padding:20px}.shift-analytics-dashboard .all-shifts-winners{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-bottom:24px}.shift-analytics-dashboard .winner-card{display:flex;align-items:center;gap:12px;padding:16px;border-radius:8px;background:linear-gradient(135deg,#f8f9fa,#e9ecef);border:1px solid #dee2e6}.shift-analytics-dashboard .winner-card.currency-winner{background:linear-gradient(135deg,#e8f5e9,#c8e6c9);border-color:#a5d6a7}.shift-analytics-dashboard .winner-card.drugs-winner{background:linear-gradient(135deg,#f3e5f5,#e1bee7);border-color:#ce93d8}.shift-analytics-dashboard .winner-card.k9-winner{background:linear-gradient(135deg,#efebe9,#d7ccc8);border-color:#bcaaa4}.shift-analytics-dashboard .winner-icon{font-size:2rem}.shift-analytics-dashboard .winner-info{display:flex;flex-direction:column;gap:4px}.shift-analytics-dashboard .winner-label{font-size:.8rem;color:#666;text-transform:uppercase;letter-spacing:.5px}.shift-analytics-dashboard .winner-name{font-size:1.1rem;font-weight:600;color:#333}.shift-analytics-dashboard .winner-value{font-size:1.2rem;font-weight:700;color:#673ab7}.shift-analytics-dashboard .all-shifts-table-container{overflow-x:auto}.shift-analytics-dashboard .all-shifts-table{width:100%;border-collapse:collapse;font-size:.9rem}.shift-analytics-dashboard .all-shifts-table.seizure-compare-table th:first-child,.shift-analytics-dashboard .all-shifts-table.seizure-compare-table td:first-child{width:22%}.shift-analytics-dashboard .all-shifts-table.seizure-compare-table .stat-value{font-weight:700}.shift-analytics-dashboard .all-shifts-table.seizure-compare-table{table-layout:fixed}.shift-analytics-dashboard .all-shifts-table.seizure-compare-table th,.shift-analytics-dashboard .all-shifts-table.seizure-compare-table td{vertical-align:middle;white-space:nowrap}.shift-analytics-dashboard .all-shifts-table.seizure-compare-table tbody tr{border-bottom:1px solid #eceef5}.shift-analytics-dashboard .all-shifts-table.seizure-compare-table tbody tr:last-child{border-bottom:none}.shift-analytics-dashboard .leader-pill{display:inline-block;padding:4px 10px;border-radius:999px;font-size:.8rem;font-weight:700;background:#673ab724;color:#5f35ad;text-transform:capitalize}.shift-analytics-dashboard .all-shifts-table th,.shift-analytics-dashboard .all-shifts-table td{padding:12px 16px;text-align:left;border-bottom:1px solid #e0e0e0}.shift-analytics-dashboard .all-shifts-table th{background:#f5f5f5;font-weight:600;color:#333}.shift-analytics-dashboard .all-shifts-table .shift-cell{display:flex;align-items:center;gap:8px}.shift-analytics-dashboard .all-shifts-table .shift-indicator{width:12px;height:12px;border-radius:50%;flex-shrink:0}.shift-analytics-dashboard .all-shifts-table .value-cell{font-weight:500;white-space:nowrap}.shift-analytics-dashboard .all-shifts-table .winner-badge{margin-left:6px}.shift-analytics-dashboard .all-shifts-table .bar-cell{width:150px}.shift-analytics-dashboard .all-shifts-table .mini-bar-container{display:inline-block;width:80px;height:8px;background:#e0e0e0;border-radius:4px;overflow:hidden;vertical-align:middle}.shift-analytics-dashboard .all-shifts-table .mini-bar{height:100%;border-radius:4px;transition:width .3s ease}.shift-analytics-dashboard .all-shifts-table .mini-bar.currency-bar{background:linear-gradient(90deg,#4caf50,#8bc34a)}.shift-analytics-dashboard .all-shifts-table .mini-bar.drugs-bar{background:linear-gradient(90deg,#673ab7,#9575cd)}.shift-analytics-dashboard .all-shifts-table .mini-bar.k9-bar{background:linear-gradient(90deg,#8b4513,sienna)}.shift-analytics-dashboard .all-shifts-table .pct-behind{display:inline-block;font-size:.7rem;color:#999;margin-left:6px;font-weight:500;vertical-align:middle}.shift-analytics-dashboard .all-shifts-table .winner-row{background:linear-gradient(90deg,rgba(255,215,0,.1) 0%,transparent 100%)}.shift-analytics-dashboard .all-shifts-table tfoot .totals-row{background:#f0f0f0;font-weight:600}.shift-analytics-dashboard .k9-stat-comparisons{margin-top:20px;padding-top:20px;border-top:1px solid #e0e0e0}.shift-analytics-dashboard .k9-stat-comparisons h4{margin:0 0 12px;font-size:1rem;color:#666}.shift-analytics-dashboard .stat-comparison-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}.shift-analytics-dashboard .stat-comparison-item{display:flex;flex-direction:column;gap:4px;padding:10px 12px;background:#f9f9f9;border-radius:6px;border-left:3px solid #8B4513}.shift-analytics-dashboard .stat-comparison-item .stat-name{font-size:.85rem;font-weight:600;color:#333}.shift-analytics-dashboard .stat-comparison-item .stat-winner{font-size:.8rem;color:#666}[data-theme=dark] .shift-analytics-dashboard .seizure-compare-mode-selector{background:var(--bg-secondary, #1e1e2e)}[data-theme=dark] .shift-analytics-dashboard .seizure-compare-mode-selector .mode-button{color:#aaa}[data-theme=dark] .shift-analytics-dashboard .seizure-compare-mode-selector .mode-button:hover{background:#ffffff14;color:#e0e0e0}[data-theme=dark] .shift-analytics-dashboard .seizure-compare-mode-selector .mode-button.active{background:var(--bg-primary, #2a2a2a);color:#b39ddb;box-shadow:0 2px 4px #0003}[data-theme=dark] .shift-analytics-dashboard .winner-card{background:linear-gradient(135deg,#2d2d2d,#1a1a1a);border-color:#444}[data-theme=dark] .shift-analytics-dashboard .winner-card.currency-winner{background:linear-gradient(135deg,#1b3d1e,#132913);border-color:#2e7d32}[data-theme=dark] .shift-analytics-dashboard .winner-card.drugs-winner{background:linear-gradient(135deg,#2a1a3a,#1a0f28);border-color:#7b1fa2}[data-theme=dark] .shift-analytics-dashboard .winner-card.k9-winner{background:linear-gradient(135deg,#2e2520,#1a1512);border-color:#6d4c41}[data-theme=dark] .shift-analytics-dashboard .k9-compare-mode-selector{background:var(--bg-secondary, #1e1e2e)}[data-theme=dark] .shift-analytics-dashboard .k9-compare-mode-selector .mode-button{color:#aaa}[data-theme=dark] .shift-analytics-dashboard .k9-compare-mode-selector .mode-button:hover{background:#ffffff14;color:#e0e0e0}[data-theme=dark] .shift-analytics-dashboard .k9-compare-mode-selector .mode-button.active{background:var(--bg-primary, #2a2a2a);color:#d2691e;box-shadow:0 2px 4px #0003}[data-theme=dark] .shift-analytics-dashboard .k9-stat-comparisons{border-top-color:#444}[data-theme=dark] .shift-analytics-dashboard .k9-stat-comparisons h4{color:#999}[data-theme=dark] .shift-analytics-dashboard .stat-comparison-item{background:#2d2d2d;border-left-color:sienna}[data-theme=dark] .shift-analytics-dashboard .stat-comparison-item .stat-name{color:#e0e0e0}[data-theme=dark] .shift-analytics-dashboard .stat-comparison-item .stat-winner,[data-theme=dark] .shift-analytics-dashboard .winner-label{color:#999}[data-theme=dark] .shift-analytics-dashboard .winner-name{color:#e0e0e0}[data-theme=dark] .shift-analytics-dashboard .winner-value{color:#b39ddb}[data-theme=dark] .shift-analytics-dashboard .all-shifts-table th,[data-theme=dark] .shift-analytics-dashboard .all-shifts-table td{border-bottom-color:#444}[data-theme=dark] .shift-analytics-dashboard .all-shifts-table th{background:#2d2d2d;color:#e0e0e0}[data-theme=dark] .shift-analytics-dashboard .all-shifts-table .winner-row{background:linear-gradient(90deg,rgba(255,215,0,.05) 0%,transparent 100%)}[data-theme=dark] .shift-analytics-dashboard .all-shifts-table tfoot .totals-row{background:#2d2d2d}[data-theme=dark] .shift-analytics-dashboard .all-shifts-table .mini-bar-container{background:#444}[data-theme=dark] .shift-analytics-dashboard .all-shifts-table .pct-behind{color:#777}[data-theme=dark] .shift-analytics-dashboard .all-shifts-table.seizure-compare-table tbody tr{border-bottom-color:#2f3553}[data-theme=dark] .shift-analytics-dashboard .leader-pill{background:#8165d83d;color:#d5c6ff}@media (max-width: 768px){.shift-analytics-dashboard .k9-controls-row{flex-direction:column;align-items:stretch;gap:12px}.shift-analytics-dashboard .seizure-compare-mode-selector,.shift-analytics-dashboard .k9-compare-mode-selector{width:100%;justify-content:center}.shift-analytics-dashboard .seizure-compare-mode-selector .mode-button,.shift-analytics-dashboard .k9-compare-mode-selector .mode-button{padding:8px 12px;font-size:.85rem}.shift-analytics-dashboard .k9-filter{width:100%;justify-content:center}.shift-analytics-dashboard .all-shifts-winners{grid-template-columns:1fr}.shift-analytics-dashboard .all-shifts-table .bar-cell{display:none}.shift-analytics-dashboard .stat-comparison-grid{grid-template-columns:1fr}}.shift-insights-section{margin-bottom:var(--spacing-lg)}.shift-insights-section .insights-header{display:flex;align-items:center;gap:var(--spacing-sm);font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary);margin:0 0 var(--spacing-md) 0}.shift-insights-section .insights-icon{font-size:20px}.shift-insights-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--spacing-sm)}@media (max-width: 900px){.shift-insights-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 600px){.shift-insights-grid{grid-template-columns:1fr}}.shift-insight-card{display:flex;align-items:flex-start;gap:var(--spacing-sm);padding:var(--spacing-md);background:var(--bg-primary);border-radius:var(--radius-md);border-left:3px solid var(--color-primary);box-shadow:var(--shadow-sm);transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.shift-insight-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.shift-insight-card.positive{border-left-color:var(--color-success, #10b981)}.shift-insight-card.attention{border-left-color:var(--color-warning, #f59e0b)}.shift-insight-card.neutral{border-left-color:var(--color-primary, #3b82f6)}.shift-insight-icon{font-size:24px;flex-shrink:0;line-height:1}.shift-insight-content{flex:1;min-width:0}.shift-insight-title{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-primary);margin-bottom:4px;line-height:1.3}.shift-insight-description{font-size:var(--text-xs);color:var(--text-secondary);line-height:1.4}.shift-stat-card{transition:transform var(--transition-fast),box-shadow var(--transition-fast),max-height .3s ease-in-out;position:relative}.shift-stat-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.shift-stat-card.expanded{box-shadow:var(--shadow-lg);z-index:10;transform:scale(1.02)}.shift-card-stats{display:flex;flex-direction:column;gap:var(--spacing-sm);overflow:hidden;transition:max-height .3s ease-in-out}.shift-card-stats:not(.expanded){max-height:200px}.shift-card-stats.expanded{max-height:none}.shift-stat-card.expanded .stat-row{padding:var(--spacing-xs) 0;border-bottom:1px solid var(--border-light)}.shift-stat-card.expanded .stat-row:last-child{border-bottom:none}.card-expand-indicator{margin-top:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:1px dashed var(--border-light);text-align:center}.expand-hint,.collapse-hint{font-size:var(--text-xs);color:var(--text-muted);transition:color var(--transition-fast)}.shift-stat-card:hover .expand-hint,.shift-stat-card:hover .collapse-hint,.collapse-hint{color:var(--color-primary)}.shift-stat-card.expanded .shift-card-header{padding-bottom:var(--spacing-sm);border-bottom:2px solid var(--border-light);margin-bottom:var(--spacing-sm)}.shift-stat-card.expanded .shift-badge{animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}[data-theme=dark] .shift-insight-card{background:var(--bg-secondary)}[data-theme=dark] .shift-insight-card.positive{background:linear-gradient(135deg,rgba(16,185,129,.1) 0%,var(--bg-secondary) 100%)}[data-theme=dark] .shift-insight-card.attention{background:linear-gradient(135deg,rgba(245,158,11,.1) 0%,var(--bg-secondary) 100%)}[data-theme=dark] .shift-insight-card.neutral{background:linear-gradient(135deg,rgba(59,130,246,.1) 0%,var(--bg-secondary) 100%)}[data-theme=dark] .shift-stat-card{background:var(--bg-secondary)}[data-theme=dark] .shift-stat-card.expanded{background:var(--bg-primary);border:1px solid var(--border-default)}[data-theme=dark] .card-expand-indicator{border-top-color:var(--border-default)}[data-theme=dark] .shift-stat-card.expanded .stat-row{border-bottom-color:var(--border-default)}.department-totals-bar{background:linear-gradient(135deg,var(--bg-primary) 0%,var(--bg-secondary) 100%);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:var(--spacing-lg);margin-bottom:var(--spacing-lg);box-shadow:var(--shadow-sm)}.department-totals-bar .totals-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-sm);border-bottom:1px solid var(--border-light)}.department-totals-bar .totals-header h3{margin:0;font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary)}.department-totals-bar .period-label{font-size:var(--text-xs);color:var(--text-muted);background:var(--bg-tertiary);padding:4px 10px;border-radius:var(--radius-full)}.totals-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:var(--spacing-md)}@media (max-width: 1100px){.totals-grid{grid-template-columns:repeat(3,1fr)}}@media (max-width: 600px){.totals-grid{grid-template-columns:repeat(2,1fr)}}.total-item{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm);background:var(--bg-primary);border-radius:var(--radius-md);border:1px solid var(--border-light);position:relative}.total-icon{font-size:24px;flex-shrink:0}.total-content{display:flex;flex-direction:column;min-width:0}.total-value{font-size:var(--text-xl);font-weight:var(--font-bold);color:var(--text-primary);line-height:1.1}.total-label{font-size:var(--text-xs);color:var(--text-muted);white-space:nowrap}.change-indicator{position:absolute;top:6px;right:6px;font-size:10px;font-weight:var(--font-semibold);padding:2px 6px;border-radius:var(--radius-sm);background:var(--bg-tertiary);color:var(--text-muted)}.change-indicator.up{color:var(--color-success, #10b981);background:#10b9811a}.change-indicator.down{color:var(--color-warning, #f59e0b);background:#f59e0b1a}.change-indicator.significant.up{background:#10b98133;font-weight:var(--font-bold)}.change-indicator.significant.down{background:#f59e0b33;font-weight:var(--font-bold)}.winner-badges{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:var(--spacing-sm);padding-bottom:var(--spacing-sm);border-bottom:1px dashed var(--border-light)}.winner-badge{display:inline-flex;align-items:center;gap:4px;font-size:10px;font-weight:var(--font-semibold);padding:3px 8px;background:linear-gradient(135deg,#fef3c7,#fde68a);color:#92400e;border-radius:var(--radius-full);white-space:nowrap;box-shadow:0 1px 2px #0000000d}.winner-badge.more{background:var(--bg-tertiary);color:var(--text-muted)}.shift-stat-card:hover .winner-badge{transform:scale(1.05);transition:transform var(--transition-fast)}[data-theme=dark] .department-totals-bar{background:linear-gradient(135deg,var(--bg-secondary) 0%,var(--bg-tertiary) 100%);border-color:var(--border-default)}[data-theme=dark] .total-item{background:var(--bg-primary);border-color:var(--border-default)}[data-theme=dark] .change-indicator{background:var(--bg-tertiary)}[data-theme=dark] .change-indicator.up{background:#10b98133;color:#34d399}[data-theme=dark] .change-indicator.down{background:#f59e0b33;color:#fbbf24}[data-theme=dark] .winner-badge{background:linear-gradient(135deg,#78350f,#92400e);color:#fcd34d}[data-theme=dark] .winner-badge.more{background:var(--bg-tertiary);color:var(--text-secondary)}[data-theme=dark] .winner-badges{border-bottom-color:var(--border-default)}[data-theme=dark] .shift-analytics-dashboard .shift-cards-header h3{color:var(--text-primary)}[data-theme=dark] .shift-analytics-dashboard .expand-all-btn{color:var(--color-primary, #60a5fa);border-color:var(--color-primary, #60a5fa);background:transparent}[data-theme=dark] .shift-analytics-dashboard .expand-all-btn:hover,[data-theme=dark] .shift-analytics-dashboard .expand-all-btn.expanded{background:var(--color-primary, #60a5fa);color:var(--bg-primary)}[data-theme=dark] .shift-analytics-dashboard .stat-row.has-badge{background:linear-gradient(90deg,rgba(255,215,0,.1) 0%,transparent 100%)}[data-theme=dark] .shift-analytics-dashboard .stat-row.has-badge .stat-total{color:#fcd34d}.shift-forecast-tab{padding:12px 0}.shift-forecast-tab .forecast-header{margin-bottom:16px}.shift-forecast-tab .forecast-subtitle{color:var(--text-muted);margin-top:6px}.forecast-controls-panel{margin:14px 0 16px;padding:12px;border:1px solid var(--border-light);background:var(--bg-secondary);border-radius:10px}.forecast-controls-grid{display:flex;flex-direction:column;gap:12px}.forecast-selector{display:flex;flex-direction:column;gap:6px;width:100%}.forecast-toggles-row{display:flex;flex-wrap:wrap;gap:12px}.forecast-selector label{font-size:12px;font-weight:800;color:var(--text-secondary);letter-spacing:.02em;text-transform:uppercase}.forecast-selector select{height:40px;padding:0 12px;border:1px solid var(--border-light);border-radius:10px;background:var(--bg-primary);font-weight:700;color:var(--text-primary)}.forecast-warning-banner{margin:0 0 14px;padding:12px;border-radius:10px;background:var(--color-warning-light);border:1px solid var(--color-warning);color:var(--color-warning-dark);font-size:13px}.forecast-model-report{margin-top:10px;font-size:13px;color:var(--text-secondary)}.forecast-model-report-line code{background:var(--bg-hover);padding:2px 6px;border-radius:6px}.mode-toggle-row{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:14px 0 20px;padding:12px;border:1px solid var(--border-light);background:var(--bg-secondary);border-radius:10px}.forecast-toggles-row .mode-toggle-row{flex:1 1 calc(50% - 6px);min-width:320px;margin:0;background:var(--bg-primary)}.mode-toggle{display:inline-flex;background:var(--bg-primary);border:1px solid var(--border-light);border-radius:999px;overflow:hidden;flex-shrink:0}.mode-btn{border:none;background:transparent;padding:10px 16px;font-weight:700;color:var(--text-secondary);cursor:pointer;white-space:nowrap;flex-shrink:0}.mode-btn.active{background:var(--color-primary);color:var(--text-inverse)}.mode-hint{font-size:13px;color:var(--text-muted)}.forecast-section{margin-top:20px}.forecast-totals-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.forecast-total-card{background:var(--bg-primary);border:1px solid var(--border-light);border-radius:12px;padding:14px}.forecast-total-card .total-icon{font-size:22px}.forecast-total-card .total-period{margin-top:8px;font-weight:700;color:var(--text-primary)}.forecast-total-card .total-value{margin-top:6px;font-size:30px;font-weight:800}.forecast-total-card .total-confidence{margin-top:8px;font-size:12px;color:var(--text-muted)}.forecast-loading,.forecast-error{padding:22px;background:var(--bg-primary);border:1px solid var(--border-light);border-radius:12px}.forecast-loading{display:flex;align-items:center;gap:12px}.loading-spinner{width:18px;height:18px;border:3px solid var(--border-light);border-top-color:var(--text-primary);border-radius:50%;animation:spin 1s linear infinite}.shift-analytics-page{min-height:100vh;background:var(--bg-secondary);padding:0 var(--spacing-md) var(--spacing-md)}.shift-analytics-page .page-container{max-width:1400px;margin:0 auto;padding:20px}.shift-analytics-page .page-header{margin-bottom:24px}.shift-analytics-page .page-header h1{margin:0 0 8px;font-size:var(--text-page-title);font-weight:var(--font-semibold);color:var(--text-primary)}.shift-analytics-page .page-description{margin:0;color:var(--text-secondary);font-size:1rem}.shift-analytics-page .date-controls{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:24px;padding:16px;background:var(--bg-primary);border-radius:12px;box-shadow:var(--shadow-sm);flex-wrap:wrap}.shift-analytics-page .date-inputs{display:flex;gap:16px}.shift-analytics-page .date-field{display:flex;flex-direction:column;gap:6px}.shift-analytics-page .date-field label{font-size:.85rem;font-weight:500;color:var(--text-secondary)}.shift-analytics-page .date-field input{padding:10px 12px;border:1px solid var(--border-medium);border-radius:6px;font-size:.95rem;background:var(--bg-primary);color:var(--text-primary)}.shift-analytics-page .date-presets{display:flex;gap:8px;flex-wrap:wrap}.shift-analytics-page .date-presets button{padding:8px 16px;border:1px solid var(--border-medium);border-radius:20px;background:var(--bg-primary);font-size:.85rem;cursor:pointer;transition:all .2s;color:var(--text-primary)}.shift-analytics-page .date-presets button:hover{background:var(--bg-hover);border-color:var(--border-dark)}@media (max-width: 768px){.shift-analytics-page .date-controls{flex-direction:column;align-items:stretch}.shift-analytics-page .date-inputs{flex-direction:column}.shift-analytics-page .date-presets{justify-content:center}}.k9-analytics-page{min-height:100vh;background:var(--bg-secondary);padding:0 var(--spacing-md) var(--spacing-md)}.k9-analytics-page .page-container{max-width:1400px;margin:0 auto;padding:20px}.k9-analytics-page .page-header{margin-bottom:24px}.k9-analytics-page .page-header h1{margin:0 0 8px;font-size:var(--text-page-title);font-weight:var(--font-semibold);color:var(--text-primary)}.k9-analytics-page .page-description{margin:0;color:var(--text-secondary);font-size:1rem}.k9-analytics-page .date-controls{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:24px;padding:16px;background:var(--bg-primary);border-radius:12px;box-shadow:var(--shadow-sm);flex-wrap:wrap}.k9-analytics-page .date-inputs{display:flex;gap:16px}.k9-analytics-page .date-field{display:flex;flex-direction:column;gap:6px}.k9-analytics-page .date-field label{font-size:.85rem;font-weight:500;color:var(--text-secondary)}.k9-analytics-page .date-field input{padding:10px 12px;border:1px solid var(--border-medium);border-radius:6px;font-size:.95rem;background:var(--bg-primary);color:var(--text-primary)}.k9-analytics-page .date-presets{display:flex;gap:8px;flex-wrap:wrap}.k9-analytics-page .date-presets button{padding:8px 16px;border:1px solid var(--border-medium);border-radius:20px;background:var(--bg-primary);font-size:.85rem;cursor:pointer;transition:all .2s;color:var(--text-primary)}.k9-analytics-page .date-presets button:hover{background:var(--bg-hover);border-color:var(--border-dark)}@media (max-width: 768px){.k9-analytics-page .date-controls{flex-direction:column;align-items:stretch}.k9-analytics-page .date-inputs{flex-direction:column}.k9-analytics-page .date-presets{justify-content:center}}.seizures-analytics-page{min-height:100vh;background:var(--bg-secondary);padding:0 var(--spacing-md) var(--spacing-md)}.seizures-analytics-page .page-container{max-width:1400px;margin:0 auto;padding:20px}.seizures-analytics-page .page-header{margin-bottom:24px}.seizures-analytics-page .page-header h1{margin:0 0 8px;font-size:var(--text-page-title);font-weight:var(--font-semibold);color:var(--text-primary)}.seizures-analytics-page .page-description{margin:0;color:var(--text-secondary);font-size:1rem}.seizures-analytics-page .date-controls{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:24px;padding:16px;background:var(--bg-primary);border-radius:12px;box-shadow:var(--shadow-sm);flex-wrap:wrap}.seizures-analytics-page .date-inputs{display:flex;gap:16px}.seizures-analytics-page .date-field{display:flex;flex-direction:column;gap:6px}.seizures-analytics-page .date-field label{font-size:.85rem;font-weight:500;color:var(--text-secondary)}.seizures-analytics-page .date-field input{padding:10px 12px;border:1px solid var(--border-medium);border-radius:6px;font-size:.95rem;background:var(--bg-primary);color:var(--text-primary)}.seizures-analytics-page .date-presets{display:flex;gap:8px;flex-wrap:wrap}.seizures-analytics-page .date-presets button{padding:8px 16px;border:1px solid var(--border-medium);border-radius:20px;background:var(--bg-primary);font-size:.85rem;cursor:pointer;transition:all .2s;color:var(--text-primary)}.seizures-analytics-page .date-presets button:hover{background:var(--bg-hover);border-color:var(--border-dark)}@media (max-width: 768px){.seizures-analytics-page .date-controls{flex-direction:column;align-items:stretch}.seizures-analytics-page .date-inputs{flex-direction:column}.seizures-analytics-page .date-presets{justify-content:center}}.patrol-analytics-page{min-height:100vh;background:var(--bg-secondary);padding:0 var(--spacing-md) var(--spacing-md)}.patrol-analytics-page .page-container{max-width:1400px;margin:0 auto;padding:20px}.patrol-analytics-page .page-header{margin-bottom:24px}.patrol-analytics-page .page-header h1{margin:0 0 8px;font-size:var(--text-page-title);font-weight:var(--font-semibold);color:var(--text-primary)}.patrol-analytics-page .page-description{margin:0;color:var(--text-secondary);font-size:1rem}.patrol-analytics-page .date-controls{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:24px;padding:16px;background:var(--bg-primary);border-radius:12px;box-shadow:var(--shadow-sm);flex-wrap:wrap}.patrol-analytics-page .date-inputs{display:flex;gap:16px}.patrol-analytics-page .date-field{display:flex;flex-direction:column;gap:6px}.patrol-analytics-page .date-field label{font-size:.85rem;font-weight:500;color:var(--text-secondary)}.patrol-analytics-page .date-field input{padding:10px 12px;border:1px solid var(--border-medium);border-radius:6px;font-size:.95rem;background:var(--bg-primary);color:var(--text-primary)}.patrol-analytics-page .date-presets{display:flex;gap:8px;flex-wrap:wrap}.patrol-analytics-page .date-presets button{padding:8px 16px;border:1px solid var(--border-medium);border-radius:20px;background:var(--bg-primary);font-size:.85rem;cursor:pointer;transition:all .2s;color:var(--text-primary)}.patrol-analytics-page .date-presets button:hover{background:var(--bg-hover);border-color:var(--border-dark)}@media (max-width: 768px){.patrol-analytics-page .date-controls{flex-direction:column;align-items:stretch}.patrol-analytics-page .date-inputs{flex-direction:column}.patrol-analytics-page .date-presets{justify-content:center}}.patrol-analytics-page .loading-container{display:flex;align-items:center;justify-content:center;min-height:400px;background:var(--bg-secondary, white);border-radius:var(--radius-lg, 12px)}.patrol-analytics-page .loading-spinner{color:var(--text-secondary, #6b7280);font-size:var(--text-lg, 1.125rem)}@media (max-width: 768px){.patrol-analytics-page .page-container{padding:var(--spacing-md, 16px)}.patrol-analytics-page .page-header{padding:var(--spacing-md, 16px);margin-bottom:var(--spacing-lg, 24px)}.patrol-analytics-page .page-header h1{font-size:var(--text-xl, 1.5rem)}}.mobile-upload-page{min-height:100vh;min-height:100dvh;background:linear-gradient(135deg,#1a1a2e,#16213e,#0f3460);padding:16px;box-sizing:border-box}.mobile-upload-container{max-width:500px;margin:0 auto;display:flex;flex-direction:column;gap:20px}.mobile-upload-header{text-align:center;padding:16px 0}.mobile-upload-header h1{font-size:26px;font-weight:700;color:#fff;margin:0 0 8px}.session-timer{font-size:14px;color:#94a3b8;margin:0}.session-timer strong{color:#fbbf24;font-family:SF Mono,Monaco,Inconsolata,monospace;font-size:16px}.session-timer.expiring{color:#ef4444;animation:pulse-warning 1s ease-in-out infinite}.session-timer.expiring strong{color:#ef4444}@keyframes pulse-warning{0%,to{opacity:1}50%{opacity:.6}}.loading-spinner{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:60px 20px;gap:16px}.spinner{width:48px;height:48px;border:4px solid rgba(255,255,255,.1);border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite}.spinner-small{width:20px;height:20px;border:2px solid rgba(255,255,255,.2);border-top-color:#3b82f6;border-radius:50%;animation:spin 1s linear infinite}.loading-spinner p{color:#94a3b8;font-size:16px;margin:0}.error-state{text-align:center;padding:40px 20px;background:#ef44441a;border-radius:16px;border:1px solid rgba(239,68,68,.3)}.error-icon{font-size:48px;margin-bottom:16px;display:inline-flex;align-items:center;justify-content:center}.error-state h2{color:#f87171;font-size:22px;margin:0 0 12px}.error-state p{color:#cbd5e1;font-size:16px;margin:0 0 8px;line-height:1.5}.error-hint{color:#94a3b8!important;font-size:14px!important}.session-ended-state{text-align:center;padding:28px 18px;background:#22c55e1a;border-radius:16px;border:1px solid rgba(34,197,94,.25)}.session-ended-icon{font-size:42px;margin-bottom:10px;display:inline-flex;align-items:center;justify-content:center}.session-ended-state h2{color:#86efac;font-size:22px;margin:0 0 10px}.session-ended-state p{color:#cbd5e1;margin:0 0 12px;line-height:1.5}.session-ended-summary{margin:16px auto 10px;max-width:340px;background:#0000002e;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:12px 14px}.session-ended-summary .summary-row{display:flex;justify-content:space-between;align-items:center;font-size:14px;color:#94a3b8;padding:6px 0}.session-ended-summary .summary-row strong{color:#e2e8f0;font-size:16px}.session-ended-hint{margin-top:16px!important;color:#94a3b8!important;font-size:13px!important}.alert{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:12px;font-size:15px;animation:slideIn .3s ease}@keyframes slideIn{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.alert-error{background:#ef444426;border:1px solid rgba(239,68,68,.3);color:#fca5a5}.alert-success{background:#22c55e26;border:1px solid rgba(34,197,94,.3);color:#86efac}.alert-icon{font-size:18px;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center}.alert-dismiss{margin-left:auto;background:none;border:none;color:inherit;font-size:20px;cursor:pointer;padding:0 4px;opacity:.7}.alert-dismiss:hover{opacity:1}.upload-section{background:#ffffff0d;border-radius:16px;padding:20px}.empty-upload-state{background:#ffffff0a;border-radius:16px;padding:20px;border:1px dashed rgba(255,255,255,.2);text-align:center}.empty-upload-state h2{color:#e2e8f0;font-size:18px;margin:0 0 8px}.empty-upload-state p{color:#94a3b8;font-size:14px;margin:0;line-height:1.5}.upload-section h2{color:#e2e8f0;font-size:18px;margin:0 0 4px}.section-hint{color:#64748b;font-size:13px;margin:0 0 16px}.upload-buttons{display:flex;gap:12px}.upload-btn{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;padding:20px 16px;border:2px dashed rgba(255,255,255,.2);border-radius:12px;background:#ffffff08;cursor:pointer;transition:all .2s ease}.upload-btn:hover:not(:disabled),.upload-btn:focus:not(:disabled){border-color:#3b82f6;background:#3b82f61a}.upload-btn:active:not(:disabled){transform:scale(.98)}.upload-btn:disabled{opacity:.5;cursor:not-allowed}.upload-btn-camera{border-color:#3b82f666}.upload-btn-file{border-color:#a855f766}.btn-icon{font-size:28px;display:inline-flex;align-items:center;justify-content:center}.btn-text{font-size:14px;font-weight:600;color:#e2e8f0}.queued-files-section{background:#ffffff0d;border-radius:16px;padding:20px;border:2px solid rgba(59,130,246,.3)}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.section-header h2{color:#e2e8f0;font-size:18px;margin:0}.btn-clear-queue{background:none;border:1px solid rgba(239,68,68,.5);color:#f87171;font-size:12px;padding:6px 12px;border-radius:6px;cursor:pointer;transition:all .2s}.btn-clear-queue:hover{background:#ef44441a}.queued-files-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(100px,1fr));gap:12px;margin-bottom:16px}.queued-file-item{position:relative;background:#0003;border-radius:10px;overflow:hidden}.queued-file-preview{position:relative;aspect-ratio:1;overflow:hidden}.queued-file-preview img{width:100%;height:100%;object-fit:cover}.queued-file-preview .file-icon{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;background:linear-gradient(135deg,#dc2626,#991b1b);color:#fff;flex-direction:column;gap:6px}.queued-file-preview .file-icon svg{font-size:20px}.upload-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#000000b3;display:flex;align-items:center;justify-content:center}.circular-progress{position:relative;width:50px;height:50px}.circular-progress svg{width:100%;height:100%;transform:rotate(-90deg)}.circular-progress .progress-bg{fill:none;stroke:#fff3;stroke-width:3}.circular-progress .progress-fill{fill:none;stroke:#3b82f6;stroke-width:3;stroke-linecap:round;transition:stroke-dasharray .3s ease}.circular-progress .progress-text{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:10px;font-weight:600;color:#fff}.status-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:28px}.status-overlay svg{font-size:24px}.status-overlay.success{background:#22c55ecc;color:#fff;animation:successPop .3s ease}.status-overlay.error{background:#ef4444cc;color:#fff}@keyframes successPop{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}.queued-file-info{padding:8px}.queued-file-info .file-name{color:#e2e8f0;font-size:11px;margin:0 0 2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.queued-file-info .file-size{color:#64748b;font-size:10px;margin:0}.queued-file-info .file-error{color:#f87171;font-size:10px;margin:4px 0 0}.remove-btn{position:absolute;top:4px;right:4px;width:24px;height:24px;border:none;background:#000000b3;color:#fff;border-radius:50%;cursor:pointer;font-size:16px;line-height:1;display:flex;align-items:center;justify-content:center;transition:background .2s}.remove-btn:hover{background:#ef4444cc}.btn-upload-all{width:100%;display:flex;align-items:center;justify-content:center;gap:10px;padding:16px 24px;background:linear-gradient(135deg,#22c55e,#16a34a);border:none;border-radius:12px;color:#fff;font-size:16px;font-weight:600;cursor:pointer;transition:all .2s}.btn-upload-all:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 20px #22c55e66}.btn-upload-all:disabled{background:#475569;cursor:not-allowed;transform:none;box-shadow:none}.uploaded-files-section{background:#ffffff0d;border-radius:16px;padding:20px}.uploaded-files-section h2{color:#86efac;font-size:18px;margin:0 0 16px}.files-list{display:flex;flex-direction:column;gap:12px}.file-item{display:flex;align-items:center;gap:12px;padding:12px;background:#ffffff0d;border-radius:10px}.file-preview{width:56px;height:56px;border-radius:8px;overflow:hidden;flex-shrink:0;background:#ffffff1a}.file-preview img{width:100%;height:100%;object-fit:cover}.file-icon{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#94a3b8;flex-direction:column;gap:4px}.file-icon svg{font-size:18px}.file-icon.pdf{background:linear-gradient(135deg,#dc2626,#991b1b);color:#fff}.file-info{flex:1;min-width:0}.file-name{color:#e2e8f0;font-size:14px;font-weight:500;margin:0 0 4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.file-meta{color:#64748b;font-size:12px;margin:0}.file-delete-btn{background:none;border:none;font-size:20px;cursor:pointer;padding:8px;border-radius:8px;transition:background .2s ease}.file-delete-btn:hover{background:#ef444433}.mobile-upload-footer{text-align:center;padding:16px}.mobile-upload-footer p{color:#64748b;font-size:14px;margin:0 0 4px}.footer-hint{font-size:12px!important;color:#475569!important}@media (max-width: 400px){.mobile-upload-page{padding:12px}.upload-buttons{flex-direction:column;gap:10px}.upload-btn{flex-direction:row;justify-content:flex-start;padding:14px 20px}.btn-icon{font-size:24px}.queued-files-grid{grid-template-columns:repeat(3,1fr);gap:8px}}@supports (padding-bottom: env(safe-area-inset-bottom)){.mobile-upload-page{padding-bottom:calc(16px + env(safe-area-inset-bottom))}}.pin-entry-section{padding:32px 16px;text-align:center}.pin-instruction{font-size:16px;color:#e2e8f0;margin:0 0 24px}.pin-input-group{display:flex;justify-content:center;gap:8px;margin-bottom:20px}.pin-input{width:48px;height:60px;font-size:28px;font-weight:700;font-family:SF Mono,Monaco,monospace;text-align:center;border:2px solid #475569;border-radius:8px;background:#1e293b;color:#fbbf24;caret-color:#fbbf24;transition:border-color .2s,box-shadow .2s}.pin-input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f633}.pin-input.error{border-color:#ef4444;animation:shake .5s ease-in-out}.pin-input:disabled{opacity:.7;cursor:not-allowed}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}50%{transform:translate(5px)}75%{transform:translate(-5px)}}.pin-error{display:flex;align-items:center;justify-content:center;gap:8px;color:#ef4444;font-size:14px;margin-bottom:16px;padding:12px;background:#ef44441a;border-radius:8px}.pin-validating{display:flex;align-items:center;justify-content:center;gap:8px;color:#3b82f6;font-size:14px;margin-bottom:16px}.pin-hint{font-size:14px;color:#64748b;margin:0;padding:0 20px}@media (max-width: 360px){.pin-input{width:40px;height:50px;font-size:24px}.pin-input-group{gap:6px}}#root{min-height:100vh;background:var(--bg-secondary)}.page-transition-enter{opacity:0;transform:translateY(10px)}.page-transition-enter-active{opacity:1;transform:translateY(0);transition:opacity .25s ease-out,transform .25s ease-out}.page-transition-exit{opacity:1}.page-transition-exit-active{opacity:0;transition:opacity .2s ease-in}.app-container{max-width:1400px;margin:0 auto;padding:var(--spacing-lg)}.page-wrapper{background:var(--bg-primary);border-radius:var(--radius-lg);padding:var(--spacing-xl);box-shadow:var(--shadow-sm)}.content-section{margin-bottom:var(--spacing-2xl)}.content-section:last-child{margin-bottom:0}:root{--color-primary: #3b82f6;--color-primary-hover: #2563eb;--color-primary-light: #dbeafe;--color-primary-dark: #1e40af;--color-secondary: #60a5fa;--color-secondary-hover: #3b82f6;--color-secondary-light: #eff6ff;--color-success: #22c55e;--color-success-light: #dcfce7;--color-success-dark: #16a34a;--color-warning: #eab308;--color-warning-light: #fef9c3;--color-warning-dark: #ca8a04;--color-error: #ef4444;--color-error-light: #fee2e2;--color-error-dark: #dc2626;--color-info: #0ea5e9;--color-info-light: #e0f2fe;--color-info-dark: #0284c7;--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;--text-primary: var(--gray-900);--text-secondary: var(--gray-600);--text-muted: var(--gray-500);--text-tertiary: var(--text-muted);--text-disabled: var(--gray-400);--text-inverse: #ffffff;--text-on-warning: #111827;--bg-primary: #ffffff;--bg-secondary: var(--gray-50);--bg-tertiary: var(--gray-100);--bg-hover: var(--gray-100);--bg-active: var(--gray-200);--bg-disabled: var(--gray-100);--border-light: var(--gray-200);--border-medium: var(--gray-300);--border-dark: var(--gray-400);--border-focus: var(--color-primary);--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-base: 0 1px 3px 0 rgba(0, 0, 0, .1), 0 1px 2px 0 rgba(0, 0, 0, .06);--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);--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .25);--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--spacing-3xl: 4rem;--radius-sm: .25rem;--radius-md: .375rem;--radius-lg: .5rem;--radius-xl: .75rem;--radius-2xl: 1rem;--radius-full: 9999px;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .2s cubic-bezier(.4, 0, .2, 1);--transition-slow: .3s cubic-bezier(.4, 0, .2, 1);--text-2xs: .6875rem;--text-xs: .75rem;--text-sm: .875rem;--text-base: 1rem;--text-lg: 1.125rem;--text-xl: 1.25rem;--text-2xl: 1.5rem;--text-3xl: 1.875rem;--text-4xl: 2.25rem;--text-page-title: 1.5rem;--font-family-base: Inter, -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";--icon-sm: 1rem;--icon-md: 1.25rem;--icon-lg: 1.5rem;--icon-xl: 2rem;--font-normal: 400;--font-medium: 500;--font-semibold: 600;--font-bold: 700;--color-danger: var(--color-error);--color-danger-bg: var(--color-error-light);--border-default: var(--border-light);--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070;--color-surface: var(--bg-primary);--color-surface-alt: var(--bg-tertiary);--color-border: var(--border-light);--color-text-primary: var(--text-primary);--color-text-secondary: var(--text-secondary);--color-text-muted: var(--text-muted);--primary-color: var(--color-primary);--border-color: var(--border-light);--card-bg: var(--bg-primary);--input-bg: var(--bg-primary);--bg-color: var(--bg-secondary);--text-color: var(--text-primary);--button-bg: var(--bg-tertiary);--button-hover: var(--bg-hover)}[data-theme=dark]{--color-primary: #60a5fa;--color-primary-hover: #93c5fd;--color-primary-light: #1e3a8a;--color-primary-dark: #3b82f6;--color-secondary: #93c5fd;--color-secondary-hover: #bfdbfe;--color-secondary-light: #1e3a8a;--color-success: #4ade80;--color-success-light: #14532d;--color-success-dark: #22c55e;--color-warning: #fbbf24;--color-warning-light: #713f12;--color-warning-dark: #eab308;--color-error: #f87171;--color-error-light: #7f1d1d;--color-error-dark: #ef4444;--color-info: #38bdf8;--color-info-light: #0c4a6e;--color-info-dark: #0ea5e9;--gray-50: #111827;--gray-100: #1f2937;--gray-200: #374151;--gray-300: #4b5563;--gray-400: #6b7280;--gray-500: #9ca3af;--gray-600: #d1d5db;--gray-700: #e5e7eb;--gray-800: #f3f4f6;--gray-900: #f9fafb;--text-primary: var(--gray-900);--text-secondary: var(--gray-600);--text-muted: var(--gray-500);--text-disabled: var(--gray-400);--text-inverse: #111827;--text-tertiary: var(--text-muted);--text-on-warning: #111827;--bg-primary: #1e1e1e;--bg-secondary: #2d2d2d;--bg-tertiary: #3a3a3a;--bg-hover: #404040;--bg-active: #4a4a4a;--bg-disabled: #2d2d2d;--border-light: #404040;--border-medium: #525252;--border-dark: #666666;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .3);--shadow-base: 0 1px 3px 0 rgba(0, 0, 0, .4), 0 1px 2px 0 rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .4), 0 2px 4px -1px rgba(0, 0, 0, .3);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .5), 0 4px 6px -2px rgba(0, 0, 0, .3);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .6), 0 10px 10px -5px rgba(0, 0, 0, .3);--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .7)}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){--color-primary: #60a5fa;--color-primary-hover: #93c5fd;--color-primary-light: #1e3a8a;--color-primary-dark: #3b82f6;--gray-50: #111827;--gray-100: #1f2937;--gray-200: #374151;--gray-300: #4b5563;--gray-400: #6b7280;--gray-500: #9ca3af;--gray-600: #d1d5db;--gray-700: #e5e7eb;--gray-800: #f3f4f6;--gray-900: #f9fafb;--text-primary: var(--gray-900);--text-secondary: var(--gray-600);--text-muted: var(--gray-500);--text-inverse: #111827;--bg-primary: #1e1e1e;--bg-secondary: #2d2d2d;--bg-tertiary: #3a3a3a;--bg-hover: #404040;--bg-active: #4a4a4a;--border-light: #404040;--border-medium: #525252;--border-dark: #666666}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-md);font-weight:var(--font-medium);font-size:var(--text-sm);line-height:1.5;cursor:pointer;transition:all var(--transition-fast);border:1px solid transparent;text-decoration:none;white-space:nowrap;-webkit-user-select:none;user-select:none}.btn:disabled{opacity:.5;cursor:not-allowed;pointer-events:none}.btn-sm{padding:var(--spacing-xs) var(--spacing-md);font-size:var(--text-xs)}.btn-lg{padding:var(--spacing-md) var(--spacing-xl);font-size:var(--text-base)}.btn-primary{background:var(--color-primary);color:var(--text-inverse);border-color:var(--color-primary)}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover);border-color:var(--color-primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-primary:active:not(:disabled){transform:translateY(0);box-shadow:var(--shadow-sm)}.btn-secondary{background:var(--bg-primary);color:var(--text-primary);border-color:var(--border-medium)}.btn-secondary:hover:not(:disabled){background:var(--bg-hover);border-color:var(--border-dark)}.btn-success{background:var(--color-success);color:var(--text-inverse);border-color:var(--color-success)}.btn-success:hover:not(:disabled){background:var(--color-success-dark);border-color:var(--color-success-dark);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-danger{background:var(--color-error);color:var(--text-inverse);border-color:var(--color-error)}.btn-danger:hover:not(:disabled){background:var(--color-error-dark);border-color:var(--color-error-dark);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-warning{background:var(--color-warning);color:var(--text-on-warning);border-color:var(--color-warning)}.btn-warning:hover:not(:disabled){background:var(--color-warning-dark);border-color:var(--color-warning-dark)}.btn-info{background:var(--color-info);color:var(--text-inverse);border-color:var(--color-info)}.btn-info:hover:not(:disabled){background:var(--color-info-dark);border-color:var(--color-info-dark)}.btn-ghost{background:transparent;color:var(--text-secondary);border-color:transparent}.btn-ghost:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.btn-outline-primary{background:transparent;color:var(--color-primary);border-color:var(--color-primary)}.btn-outline-primary:hover:not(:disabled){background:var(--color-primary);color:var(--text-inverse)}.btn-loading{pointer-events:none;opacity:.85}.btn-loading-content{display:inline-grid;grid-template-areas:"label";align-items:center}.btn-label{grid-area:label}.btn-label-hidden{visibility:hidden}.btn-spinner{width:14px;height:14px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;animation:btn-spin .8s linear infinite}@keyframes btn-spin{to{transform:rotate(360deg)}}.form-input,.form-select,.form-textarea{width:100%;padding:var(--spacing-sm) var(--spacing-md);border:1px solid var(--border-medium);border-radius:var(--radius-md);font-size:var(--text-sm);line-height:1.5;color:var(--text-primary);background:var(--bg-primary);transition:all var(--transition-fast)}.form-input::placeholder,.form-textarea::placeholder{color:var(--text-muted)}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px var(--color-primary-light)}.form-input.error,.form-select.error,.form-textarea.error{border-color:var(--color-error)}.form-input.error:focus,.form-select.error:focus,.form-textarea.error:focus{box-shadow:0 0 0 3px var(--color-error-light)}.form-input.success,.form-select.success,.form-textarea.success{border-color:var(--color-success)}.form-input.success:focus,.form-select.success:focus,.form-textarea.success:focus{box-shadow:0 0 0 3px var(--color-success-light)}.form-input:disabled,.form-select:disabled,.form-textarea:disabled{background:var(--bg-disabled);color:var(--text-disabled);cursor:not-allowed}.form-textarea{min-height:100px;resize:vertical}.form-label{display:block;font-weight:var(--font-medium);font-size:var(--text-sm);color:var(--text-primary);margin-bottom:var(--spacing-xs)}.form-label.required:after{content:" *";color:var(--color-error)}.form-helper{font-size:var(--text-xs);color:var(--text-muted);margin-top:var(--spacing-xs)}.error-message{display:flex;align-items:center;gap:var(--spacing-xs);color:var(--color-error);font-size:var(--text-xs);margin-top:var(--spacing-xs);font-weight:var(--font-medium)}.success-message{display:flex;align-items:center;gap:var(--spacing-xs);color:var(--color-success);font-size:var(--text-xs);margin-top:var(--spacing-xs);font-weight:var(--font-medium)}.form-group{margin-bottom:var(--spacing-lg)}.card{background:var(--bg-primary);border:1px solid var(--border-light);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);transition:all var(--transition-fast)}.card:hover{box-shadow:var(--shadow-md)}.card-header{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--text-primary);margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--border-light)}.card-body{color:var(--text-primary)}.card-footer{margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--border-light);display:flex;justify-content:flex-end;gap:var(--spacing-sm)}.table{width:100%;border-collapse:collapse;background:var(--bg-primary);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-sm)}.table thead{background:var(--bg-tertiary)}.table th{color:var(--text-primary);font-weight:var(--font-semibold);font-size:var(--text-sm);text-align:left;padding:var(--spacing-md);border-bottom:2px solid var(--border-medium)}.table td{padding:var(--spacing-md);border-bottom:1px solid var(--border-light);color:var(--text-primary);font-size:var(--text-sm)}.table tbody tr{transition:background var(--transition-fast)}.table tbody tr:hover{background:var(--bg-hover)}.table tbody tr:last-child td{border-bottom:none}.table-striped tbody tr:nth-child(2n){background:var(--bg-secondary)}.table-striped tbody tr:nth-child(2n):hover{background:var(--bg-hover)}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:var(--z-modal-backdrop);animation:fadeIn var(--transition-base)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:var(--bg-primary);border-radius:var(--radius-xl);box-shadow:var(--shadow-2xl);max-width:90vw;max-height:90vh;overflow:auto;z-index:var(--z-modal);animation:slideUp var(--transition-base)}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-sm{width:400px}.modal-md{width:600px}.modal-lg{width:800px}.modal-xl{width:1200px}.modal-header{padding:var(--spacing-lg);border-bottom:1px solid var(--border-light);display:flex;justify-content:space-between;align-items:center}.modal-title{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--text-primary);margin:0}.modal-body{padding:var(--spacing-lg);color:var(--text-primary)}.modal-footer{padding:var(--spacing-lg);border-top:1px solid var(--border-light);display:flex;justify-content:flex-end;gap:var(--spacing-sm)}.close-btn{background:transparent;border:none;color:var(--text-muted);font-size:var(--text-2xl);cursor:pointer;padding:0;width:2rem;height:2rem;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);transition:all var(--transition-fast)}.close-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.badge{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-full);font-size:var(--text-xs);font-weight:var(--font-medium);line-height:1}.badge-primary{background:var(--color-primary-light);color:var(--color-primary)}.badge-success{background:var(--color-success-light);color:var(--color-success-dark)}.badge-warning{background:var(--color-warning-light);color:var(--color-warning-dark)}.badge-error,.badge-danger{background:var(--color-error-light);color:var(--color-error-dark)}.badge-info{background:var(--color-info-light);color:var(--color-info-dark)}.badge-gray{background:var(--gray-100);color:var(--gray-700)}.nav-button{padding:var(--spacing-sm) var(--spacing-lg);background:transparent;color:var(--text-secondary);border:none;border-radius:var(--radius-md);cursor:pointer;font-weight:var(--font-medium);font-size:var(--text-sm);transition:all var(--transition-fast);text-decoration:none;display:inline-flex;align-items:center;gap:var(--spacing-sm)}.nav-button:hover{background:var(--bg-hover);color:var(--text-primary)}.nav-button.active{background:var(--color-primary);color:var(--text-inverse)}.alert{padding:var(--spacing-md);border-radius:var(--radius-md);border-left:4px solid;display:flex;align-items:start;gap:var(--spacing-md)}.alert-success{background:var(--color-success-light);border-color:var(--color-success);color:var(--color-success-dark)}.alert-warning{background:var(--color-warning-light);border-color:var(--color-warning);color:var(--color-warning-dark)}.alert-error,.alert-danger{background:var(--color-error-light);border-color:var(--color-error);color:var(--color-error-dark)}.alert-info{background:var(--color-info-light);border-color:var(--color-info);color:var(--color-info-dark)}.divider{height:1px;background:var(--border-light);margin:var(--spacing-lg) 0}.divider-vertical{width:1px;background:var(--border-light);margin:0 var(--spacing-lg);align-self:stretch}.spinner{display:inline-block;width:1rem;height:1rem;border:2px solid var(--border-light);border-top-color:var(--color-primary);border-radius:50%;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.spinner-lg{width:2rem;height:2rem;border-width:3px}.skeleton{display:block;background:linear-gradient(90deg,var(--bg-tertiary) 0%,var(--bg-secondary) 50%,var(--bg-tertiary) 100%);background-size:200% 100%;border-radius:10px;opacity:.6}.skeleton-block{border-radius:12px}.skeleton-text{height:12px;border-radius:6px}.skeleton-title{height:18px;border-radius:8px}.skeleton-row{display:flex;gap:12px}.skeleton-stack{display:flex;flex-direction:column;gap:12px}.text-primary{color:var(--text-primary)!important}.text-secondary{color:var(--text-secondary)!important}.text-muted{color:var(--text-muted)!important}.text-success{color:var(--color-success)!important}.text-warning{color:var(--color-warning)!important}.text-error,.text-danger{color:var(--color-error)!important}.text-info{color:var(--color-info)!important}.bg-primary{background:var(--bg-primary)!important}.bg-secondary{background:var(--bg-secondary)!important}.bg-tertiary{background:var(--bg-tertiary)!important}.border{border:1px solid var(--border-light)}.border-top{border-top:1px solid var(--border-light)}.border-bottom{border-bottom:1px solid var(--border-light)}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.mt-sm{margin-top:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}.pt-sm{padding-top:var(--spacing-sm)}.pt-md{padding-top:var(--spacing-md)}.pt-lg{padding-top:var(--spacing-lg)}.pb-sm{padding-bottom:var(--spacing-sm)}.pb-md{padding-bottom:var(--spacing-md)}.pb-lg{padding-bottom:var(--spacing-lg)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{font-family:var(--font-family-base);line-height:1.5;font-weight:400;color-scheme:light;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh;color:var(--text-primary);background-color:var(--bg-secondary);font-size:var(--text-base)}[data-theme=dark]{color-scheme:dark}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){color-scheme:dark}}a{font-weight:500;color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-primary-hover);text-decoration:underline}h1,h2,h3,h4,h5,h6{color:var(--text-primary);font-weight:var(--font-semibold);line-height:1.2}h1{font-size:var(--text-3xl)}h2{font-size:var(--text-2xl)}h3{font-size:var(--text-xl)}h4{font-size:var(--text-lg)}h5{font-size:var(--text-base)}h6{font-size:var(--text-sm)}button{font-family:inherit;cursor:pointer;border:none;background:none;padding:0;color:inherit}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}p{margin-bottom:var(--spacing-md);color:var(--text-primary)}ul,ol{padding-left:var(--spacing-lg)}nav ul{list-style:none;padding:0;margin:0}img{max-width:100%;height:auto;display:block}code{font-family:Courier New,Courier,monospace;background:var(--bg-tertiary);padding:.125rem .25rem;border-radius:var(--radius-sm);font-size:.875em}hr{border:none;border-top:1px solid var(--border-light);margin:var(--spacing-lg) 0}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
