:root{--color-primary: #1a2332;--color-secondary: #2d4059;--color-accent: #3a5a78;--color-highlight: #4a90e2;--color-urgent: #dc3545;--color-warning: #ffc107;--color-success: #28a745;--color-info: #17a2b8;--severity-1: #28a745;--severity-2: #90ee90;--severity-3: #ffc107;--severity-4: #ff8c00;--severity-5: #dc3545;--color-bg-dark: #0d1117;--color-bg: #161b22;--color-bg-light: #1f2937;--color-bg-lighter: #374151;--color-border: #30363d;--color-text: #e6edf3;--color-text-secondary: #9ca3af;--color-text-muted: #6b7280;--font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: "SF Mono", Monaco, "Cascadia Code", "Courier New", monospace;--font-size-xs: .75rem;--font-size-sm: .875rem;--font-size-base: 1rem;--font-size-lg: 1.125rem;--font-size-xl: 1.25rem;--font-size-2xl: 1.5rem;--font-size-3xl: 1.875rem;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--radius-sm: .25rem;--radius-md: .375rem;--radius-lg: .5rem;--radius-xl: .75rem;--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1), 0 2px 4px -1px rgba(0, 0, 0, .06);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1), 0 4px 6px -2px rgba(0, 0, 0, .05);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1), 0 10px 10px -5px rgba(0, 0, 0, .04);--transition-fast: .15s ease-in-out;--transition-base: .2s ease-in-out;--transition-slow: .3s ease-in-out;--header-height: 60px;--tab-nav-height: 50px;--sidebar-width: 250px;--content-max-width: 1400px;--z-dropdown: 1000;--z-modal: 2000;--z-notification: 3000}*{margin:0;padding:0;box-sizing:border-box}body{font-family:var(--font-family);background-color:var(--color-bg-dark);color:var(--color-text);line-height:1.6;overflow-x:hidden}#app{min-height:100vh;display:flex;flex-direction:column}.command-header{height:var(--header-height);background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 100%);border-bottom:2px solid var(--color-highlight);display:flex;align-items:center;justify-content:space-between;padding:0 var(--spacing-lg);box-shadow:var(--shadow-lg);position:sticky;top:0;z-index:100}.header-left,.header-center,.header-right{display:flex;align-items:center;gap:var(--spacing-md)}.header-title{display:flex;align-items:center;gap:var(--spacing-sm)}.badge-icon{font-size:var(--font-size-xl)}.header-main-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);letter-spacing:.5px;color:var(--color-text)}.badge-number{font-family:var(--font-mono);font-size:var(--font-size-sm);background:#ffffff1a;padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-md);border:1px solid rgba(255,255,255,.2)}.current-time{font-family:var(--font-mono);font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);color:var(--color-highlight);letter-spacing:1px}.active-cases-count{display:flex;gap:var(--spacing-sm);background:#ffffff1a;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-md)}.count-label{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.count-value{font-family:var(--font-mono);font-size:var(--font-size-lg);font-weight:var(--font-weight-bold);color:var(--color-text)}.count-value.high-count{color:var(--color-urgent);animation:pulse 2s infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.7}}.tab-nav{background:var(--color-bg);border-bottom:1px solid var(--color-border);box-shadow:var(--shadow-sm);position:sticky;top:var(--header-height);z-index:90}.tab-list{list-style:none;display:flex;gap:var(--spacing-xs);padding:0 var(--spacing-lg);max-width:var(--content-max-width);margin:0 auto}.tab-button{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md) var(--spacing-lg);background:transparent;border:none;color:var(--color-text-secondary);cursor:pointer;font-size:var(--font-size-base);font-weight:var(--font-weight-medium);transition:all var(--transition-base);border-bottom:3px solid transparent}.tab-button:hover{background:var(--color-bg-light);color:var(--color-text)}.tab-button.active{color:var(--color-highlight);border-bottom-color:var(--color-highlight);background:var(--color-bg-light)}.tab-icon{font-size:var(--font-size-lg)}.main-content{flex:1;padding:var(--spacing-xl);max-width:var(--content-max-width);width:100%;margin:0 auto}.notifications-container{position:fixed;top:calc(var(--header-height) + var(--spacing-md));right:var(--spacing-md);display:flex;flex-direction:column;gap:var(--spacing-sm);z-index:var(--z-notification);max-width:400px}.notification{display:flex;align-items:center;justify-content:space-between;padding:var(--spacing-md);border-radius:var(--radius-md);background:var(--color-bg-light);border-left:4px solid var(--color-info);box-shadow:var(--shadow-lg);animation:slideIn .3s ease-out}@keyframes slideIn{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.notification-info{border-left-color:var(--color-info)}.notification-success{border-left-color:var(--color-success)}.notification-warning{border-left-color:var(--color-warning)}.notification-error{border-left-color:var(--color-urgent)}.notification-message{flex:1;font-size:var(--font-size-sm)}.notification-close{background:none;border:none;color:var(--color-text-secondary);font-size:var(--font-size-xl);cursor:pointer;padding:0 var(--spacing-sm);line-height:1;transition:color var(--transition-fast)}.notification-close:hover{color:var(--color-text)}@media(max-width:768px){.header-main-title{font-size:var(--font-size-sm)}.current-time{font-size:var(--font-size-base)}.tab-list{overflow-x:auto}.tab-button{white-space:nowrap}.main-content{padding:var(--spacing-md)}}.btn{padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-md);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);cursor:pointer;transition:all var(--transition-base);border:none;display:inline-flex;align-items:center;gap:var(--spacing-sm);text-decoration:none}.btn-primary{background:var(--color-highlight);color:#fff}.btn-primary:hover{background:#3a7bc8;transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-secondary{background:var(--color-bg-lighter);color:var(--color-text);border:1px solid var(--color-border)}.btn-secondary:hover{background:var(--color-accent)}.btn-success{background:var(--color-success);color:#fff}.btn-warning{background:var(--color-warning);color:var(--color-bg-dark)}.btn-danger{background:var(--color-urgent);color:#fff}.btn:disabled{opacity:.5;cursor:not-allowed}.card{background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:var(--spacing-lg);box-shadow:var(--shadow-sm);transition:box-shadow var(--transition-base)}.card:hover{box-shadow:var(--shadow-md)}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-border)}.card-title{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:var(--color-text)}.card-body{color:var(--color-text-secondary)}.card-footer{margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--color-border);display:flex;gap:var(--spacing-sm);justify-content:flex-end}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000b3;display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);opacity:0;transition:opacity var(--transition-slow)}.modal-overlay.active{opacity:1}.modal-container{background:var(--color-bg);border-radius:var(--radius-xl);max-width:800px;width:90%;max-height:90vh;overflow:hidden;box-shadow:var(--shadow-xl);border:1px solid var(--color-border);transform:scale(.9);transition:transform var(--transition-slow)}.modal-overlay.active .modal-container{transform:scale(1)}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-lg);border-bottom:1px solid var(--color-border);background:var(--color-bg-light)}.modal-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold)}.modal-close{background:none;border:none;font-size:var(--font-size-2xl);color:var(--color-text-secondary);cursor:pointer;padding:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);transition:all var(--transition-fast)}.modal-close:hover{background:var(--color-bg-lighter);color:var(--color-text)}.modal-body{padding:var(--spacing-lg);overflow-y:auto;max-height:calc(90vh - 200px)}.modal-footer{padding:var(--spacing-lg);border-top:1px solid var(--color-border);display:flex;gap:var(--spacing-sm);justify-content:flex-end;background:var(--color-bg-light)}.badge{display:inline-flex;align-items:center;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.5px}.badge-severity-1{background:var(--severity-1);color:#fff}.badge-severity-2{background:var(--severity-2);color:var(--color-bg-dark)}.badge-severity-3{background:var(--severity-3);color:var(--color-bg-dark)}.badge-severity-4{background:var(--severity-4);color:#fff}.badge-severity-5{background:var(--severity-5);color:#fff}.badge-status-reported{background:var(--color-info);color:#fff}.badge-status-investigating{background:var(--color-warning);color:var(--color-bg-dark)}.badge-status-solved{background:var(--color-success);color:#fff}.badge-status-cold{background:var(--color-text-muted);color:#fff}.form-group{margin-bottom:var(--spacing-md)}.form-label{display:block;margin-bottom:var(--spacing-xs);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.form-input,.form-select,.form-textarea{width:100%;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg-light);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text);font-size:var(--font-size-base);font-family:var(--font-family);transition:border-color var(--transition-fast)}.form-input:focus,.form-select:focus,.form-textarea:focus{outline:none;border-color:var(--color-highlight)}.form-textarea{resize:vertical;min-height:100px}.grid{display:grid;gap:var(--spacing-md)}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}@media(max-width:768px){.grid-cols-2,.grid-cols-3,.grid-cols-4{grid-template-columns:1fr}}.empty-state{text-align:center;padding:var(--spacing-2xl);color:var(--color-text-muted)}.empty-state-icon{font-size:4rem;margin-bottom:var(--spacing-md);opacity:.5}.empty-state-title{font-size:var(--font-size-xl);font-weight:var(--font-weight-semibold);margin-bottom:var(--spacing-sm);color:var(--color-text-secondary)}.empty-state-description{font-size:var(--font-size-base);margin-bottom:var(--spacing-lg)}.loading-spinner{display:inline-block;width:40px;height:40px;border:4px solid var(--color-bg-lighter);border-top-color:var(--color-highlight);border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.text-center{text-align:center}.text-right{text-align:right}.text-muted{color:var(--color-text-muted)}.text-secondary{color:var(--color-text-secondary)}.mt-0{margin-top:0}.mt-sm{margin-top:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.mb-0{margin-bottom:0}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}.hidden{display:none!important}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}.gap-sm{gap:var(--spacing-sm)}.gap-md{gap:var(--spacing-md)}.view-header{margin-bottom:var(--spacing-xl);display:flex;justify-content:space-between;align-items:center}.view-title{font-size:var(--font-size-2xl);font-weight:var(--font-weight-bold);color:var(--color-text);display:flex;align-items:center;gap:var(--spacing-sm)}.crime-card{transition:transform var(--transition-base)}.crime-card:hover{transform:translateY(-2px)}.crime-details{margin-top:var(--spacing-md)}.crime-details p{margin-bottom:var(--spacing-sm);font-size:var(--font-size-sm)}.crime-details strong{color:var(--color-text)}.case-card{border-left:4px solid var(--color-highlight)}@media(max-width:768px){.view-header{flex-direction:column;align-items:flex-start;gap:var(--spacing-md)}}.progress-bar{width:100%}.progress-label{font-size:var(--font-size-sm);color:var(--color-text-secondary);margin-bottom:var(--spacing-xs);font-weight:var(--font-weight-medium)}.progress-track{width:100%;height:8px;background:var(--color-bg-lighter);border-radius:var(--radius-md);overflow:hidden}.progress-fill{height:100%;background:linear-gradient(90deg,var(--color-highlight),#5aa3f0);transition:width var(--transition-slow);border-radius:var(--radius-md)}.case-info p{margin-bottom:var(--spacing-xs);font-size:var(--font-size-sm);color:var(--color-text-secondary)}.case-info strong{color:var(--color-text)}
