:root{--night-ops-black:#0e0f0f;--gunmetal-grey:#2b2f33;--slate-navy:#2e3b4e;--stealth-olive:#3a4a3f;--ranger-green:#4f5f4a;--coyote-brown:#8b7355;--nvg-safe-green:#7ba46c;--signal-amber:#c9a24a;--infrared-red:#b43a3a;--text-primary:#e3e3e3;--text-secondary:#a6abb0;--text-muted:#a0a5aa;--button-text:#f3f3f3;--secondary-button-text:#c0c4c7;--border-color:#32363a;--border-subtle:#1e2124;--shadow-sm:0 1px 2px 0 #0006;--shadow-md:0 2px 4px 0 #00000080;--shadow-lg:0 4px 8px 0 #0009;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--bs-body-bg:var(--night-ops-black);--bs-body-color:var(--text-primary);--bs-secondary-color:var(--text-muted);--light-surface:#fff;--light-surface-text:#212529;--light-border:#dee2e6;--pure-white:#fff;--pure-black:#000;--info-blue:#4a90e2;--info-blue-muted:#4a6a8a;--surface-deep:#020617;--surface-slate:#1e293b;--surface-sunken:#151c26;--surface-raised:#1a2332;--border-slate:#334155;--border-slate-light:#475569;--text-slate:#94a3b8;--viewer-image-bg:#111;--report-gold:#d4a726;--report-gold-light:#e5b82a;--report-gold-dark:#c5961f;--report-gold-border:#b8891b;--report-gold-deep:#a67c18;--report-gold-text:#1a1a1a;--alert-red:#ef4444;--alert-red-light:#f87171;--alert-red-dark:#dc2626;--alert-red-darker:#b91c1c;--alert-red-darkest:#991b1b;--map-control-text:#5f6368;--map-control-hover:#f1f3f4;--map-control-active-bg:#e8f0fe;--map-control-active:#1a73e8;--map-control-divider:#dadce0;--accent-cyan:#0dcaf0;--accent-teal-blue:#17a2b8;--accent-purple:#6f42c1;--accent-pink:#e83e8c;--accent-indigo:#6610f2;--accent-teal-dark:#0f766e;--accent-teal:#0d9488;--accent-blue:#0d6efd;--accent-green:#198754;--accent-orange:#fd7e14;--accent-mint:#20c997;--accent-red:red;--accent-sky:#1da1f2;--accent-danger:#dc3545;--accent-warning:#ffc107;--map-info-heading:#333;--map-info-label:#555;--map-info-muted:#666;--map-info-border:#ddd;--map-info-link:#007bff;--map-btn-green:#28a745;--map-btn-grey:#6c757d;--marker-red:red;--marker-green:#0f0;--marker-blue:#00f;--marker-yellow:#ff0;--marker-magenta:#f0f;--marker-cyan:#0ff;--marker-orange:orange;--marker-purple:purple;--route-selected-text:#4cff7a;--route-selected-meta:#90ee90;--route-meta:#adb5bd;--map-btn-green-rgb:40, 167, 69;--map-btn-grey-rgb:108, 117, 125;--accent-cyan-rgb:13, 202, 240;--accent-danger-rgb:220, 53, 69;--accent-warning-rgb:255, 193, 7;--black-rgb:0, 0, 0;--white-rgb:255, 255, 255;--stealth-olive-rgb:58, 74, 63;--gunmetal-grey-rgb:43, 47, 51;--panel-overlay-rgb:30, 35, 40;--charcoal-rgb:33, 37, 41;--sea-green-rgb:60, 179, 113;--neon-green-rgb:0, 255, 136;--report-gold-rgb:212, 167, 38;--alert-red-rgb:239, 68, 68;--infrared-red-rgb:180, 58, 58;--nvg-safe-green-rgb:123, 164, 108;--signal-amber-rgb:201, 162, 74;--slate-navy-rgb:46, 59, 78;--dashboard-blue:#5c9fd6;--dashboard-red-text:#e07070;--dashboard-blue-rgb:92, 159, 214;--dashboard-grey-rgb:107, 112, 117}body{font-family:Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif}:focus-visible:not(.form-control):not(.form-select):not(.form-check-input):not(.chat-textarea):not(.system-message-textarea){outline:2px solid var(--signal-amber);outline-offset:2px}.skip-link:focus,.skip-link:focus-within{z-index:1090;background:var(--gunmetal-grey);color:var(--text-primary);border:1px solid var(--signal-amber);border-radius:var(--radius-md);padding:.5rem 1rem;top:.5rem;left:.5rem;position:fixed!important}main[tabindex="-1"]:focus{outline:none}.card{--bs-card-bg:var(--gunmetal-grey);--bs-card-color:var(--text-primary);--bs-card-cap-bg:var(--slate-navy);--bs-card-cap-color:var(--text-primary);box-shadow:var(--shadow-md);border:1px solid var(--border-color)!important}.card-header{border-bottom-color:var(--border-color);background-color:var(--slate-navy)!important}.card-body{background-color:var(--gunmetal-grey)}.navbar{background-color:var(--slate-navy);border-bottom:1px solid var(--border-color)}.navbar-brand{font-weight:600;color:var(--text-primary)!important}.navbar-brand:hover{color:var(--nvg-safe-green)!important}.sidebar{background-color:var(--gunmetal-grey);border-right:1px solid var(--border-color);min-height:100vh}.sidebar .nav-link{border-radius:var(--radius-sm);transition:all .2s;color:var(--text-secondary)!important}.sidebar .nav-link:hover{background-color:var(--stealth-olive);color:var(--text-primary)!important}.sidebar .nav-link.active{background-color:var(--ranger-green);color:var(--button-text)!important}.btn{--bs-body-color:var(--light-surface-text)}.btn-primary{font-weight:500;background-color:var(--stealth-olive)!important;border-color:var(--stealth-olive)!important;color:var(--button-text)!important}.btn-primary:hover,.btn-primary:active{background-color:var(--ranger-green)!important;border-color:var(--ranger-green)!important;color:var(--button-text)!important}.btn-primary:disabled{opacity:.6;background-color:var(--border-color)!important;border-color:var(--border-color)!important;color:var(--text-muted)!important}.btn-secondary,.btn-outline-secondary{border-color:var(--coyote-brown)!important;color:var(--secondary-button-text)!important;background-color:#0000!important}.btn-secondary:hover,.btn-outline-secondary:hover{background-color:var(--coyote-brown)!important;border-color:var(--coyote-brown)!important;color:var(--button-text)!important}.btn-success{background-color:var(--nvg-safe-green)!important;border-color:var(--nvg-safe-green)!important;color:var(--night-ops-black)!important}.btn-warning{background-color:var(--signal-amber)!important;border-color:var(--signal-amber)!important;color:var(--night-ops-black)!important}.btn-danger{background-color:var(--infrared-red)!important;border-color:var(--infrared-red)!important;color:var(--button-text)!important}.btn-outline-primary{border-color:var(--stealth-olive)!important;color:var(--text-primary)!important;background-color:#0000!important}.btn-outline-primary:hover{background-color:var(--stealth-olive)!important;color:var(--button-text)!important}.btn-outline-warning{border-color:var(--signal-amber)!important;color:var(--signal-amber)!important;background-color:#0000!important}.btn-outline-warning:hover{background-color:var(--signal-amber)!important;color:var(--night-ops-black)!important}.btn-outline-danger{border-color:var(--infrared-red)!important;color:var(--infrared-red)!important;background-color:#0000!important}.btn-outline-danger:hover{background-color:var(--infrared-red)!important;color:var(--button-text)!important}.form-control,.form-select{border:1px solid var(--border-color)!important}.form-control:disabled,.form-select:disabled{background-color:var(--bs-body-bg)}.form-control:focus,.form-select:focus{background-color:var(--gunmetal-grey)!important;border-color:var(--stealth-olive)!important;color:var(--text-primary)!important;box-shadow:0 0 0 .2rem var(--nvg-safe-green)!important}.form-control::placeholder{color:var(--text-muted)!important}.form-label{color:var(--text-secondary);font-weight:500}.input-group-text{background-color:var(--gunmetal-grey);color:var(--text-secondary);border:1px solid var(--border-color)!important}.form-check-input{background-color:var(--night-ops-black)!important;border-color:var(--border-color)!important}.form-check-input:checked{background-color:var(--stealth-olive)!important;border-color:var(--stealth-olive)!important}.form-check-label{color:var(--text-secondary)!important}.table{--bs-table-bg:var(--light-surface);--bs-table-color:var(--light-surface-text);--bs-table-hover-color:var(--light-surface-text);--bs-table-striped-color:var(--light-surface-text);--bs-table-active-color:var(--light-surface-text);color:var(--text-primary);border-color:var(--border-color)}.table thead{background-color:var(--slate-navy);color:var(--text-primary)}.table tbody tr{background-color:var(--gunmetal-grey);border-bottom:1px solid var(--border-subtle)}.table tbody tr:hover{background-color:var(--stealth-olive)}.table-light{background-color:var(--slate-navy);color:var(--text-primary)}.badge{font-weight:500}.badge.bg-success,.badge.bg-warning{color:var(--night-ops-black)!important}.badge.bg-info{background-color:var(--slate-navy)!important}.alert{--bs-alert-border-color:var(--border-color);border:1px solid var(--bs-alert-border-color)!important}.alert-success{--bs-alert-bg:rgba(var(--nvg-safe-green-rgb), .15);--bs-alert-border-color:var(--nvg-safe-green);--bs-alert-color:var(--nvg-safe-green)}.alert-warning{--bs-alert-bg:rgba(var(--signal-amber-rgb), .15);--bs-alert-border-color:var(--signal-amber);--bs-alert-color:var(--signal-amber)}.alert-danger{--bs-alert-bg:rgba(var(--infrared-red-rgb), .15);--bs-alert-border-color:var(--infrared-red);--bs-alert-color:var(--infrared-red)}.alert-info{--bs-alert-bg:rgba(var(--slate-navy-rgb), .3);--bs-alert-border-color:var(--slate-navy);--bs-alert-color:var(--text-primary)}.modal-content{--bs-modal-bg:var(--gunmetal-grey);border:1px solid var(--border-color)!important;color:var(--text-primary)!important}.modal-header{background-color:var(--slate-navy);border-bottom:1px solid var(--border-color)!important}.modal-footer{border-top:1px solid var(--border-color)!important}.modal-backdrop{background-color:var(--pure-black)}.modal-backdrop.show{opacity:.7}.dropdown-menu{--bs-dropdown-bg:var(--gunmetal-grey);--bs-dropdown-border-color:var(--border-color);--bs-dropdown-link-hover-bg:var(--stealth-olive);--bs-dropdown-divider-bg:var(--border-color);box-shadow:var(--shadow-lg)}.dropdown-item{color:var(--text-primary)!important}.dropdown-item:hover,.dropdown-item:focus{color:var(--button-text)!important}.nav-tabs{border-bottom:1px solid var(--border-color)!important}.nav-tabs .nav-link{color:var(--text-secondary)!important;background-color:#0000!important;border:none!important}.nav-tabs .nav-link:hover{color:var(--text-primary)!important;border-bottom:2px solid var(--stealth-olive)!important}.nav-tabs .nav-link.active{font-weight:600;color:var(--nvg-safe-green)!important;border-bottom:2px solid var(--nvg-safe-green)!important;background-color:#0000!important}.pagination{--bs-pagination-bg:var(--gunmetal-grey);--bs-pagination-border-color:var(--border-color);--bs-pagination-hover-bg:var(--stealth-olive);--bs-pagination-hover-border-color:var(--border-color);--bs-pagination-focus-bg:var(--gunmetal-grey);--bs-pagination-active-bg:var(--ranger-green);--bs-pagination-active-border-color:var(--ranger-green);--bs-pagination-disabled-bg:var(--gunmetal-grey);--bs-pagination-disabled-border-color:var(--border-color)}.pagination .page-link{color:var(--text-primary)!important}.pagination .page-link:hover{color:var(--button-text)!important}.progress{--bs-progress-bg:var(--night-ops-black);--bs-progress-bar-bg:var(--stealth-olive);border:1px solid var(--border-color)}.spinner-border{color:var(--stealth-olive)!important}.spinner-border-sm{width:1rem;height:1rem}.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(--nvg-safe-green)!important}.text-warning{color:var(--signal-amber)!important}.text-danger{color:var(--infrared-red)!important}.bg-primary{background-color:var(--stealth-olive)!important}.bg-secondary{background-color:var(--coyote-brown)!important}.bg-success{background-color:var(--nvg-safe-green)!important}.bg-warning{background-color:var(--signal-amber)!important}.bg-danger{background-color:var(--infrared-red)!important}.bg-light{background-color:var(--gunmetal-grey)!important}.bg-dark{background-color:var(--night-ops-black)!important}.border{border-color:var(--border-color)!important}hr{border-color:var(--border-color);opacity:1}a{text-decoration:none;color:var(--nvg-safe-green)!important}a:hover{color:var(--ranger-green)!important}.list-group-item{--bs-list-group-bg:var(--gunmetal-grey);--bs-list-group-color:var(--text-primary);--bs-list-group-border-color:var(--border-color);--bs-list-group-active-bg:var(--ranger-green);--bs-list-group-active-border-color:var(--ranger-green);border:1px solid var(--border-color)!important}.list-group-item:hover{background-color:var(--stealth-olive)!important}.list-group-item.active{background-color:var(--ranger-green)!important;border-color:var(--ranger-green)!important}.tooltip-inner{background-color:var(--slate-navy);color:var(--text-primary)}.popover{--bs-popover-bg:var(--gunmetal-grey);--bs-popover-border-color:var(--border-color);--bs-popover-header-bg:var(--slate-navy);--bs-popover-header-color:var(--text-primary);--bs-popover-body-color:var(--text-primary)}.kb-video-setting-help{vertical-align:middle;opacity:.65;line-height:1;text-decoration:none!important}.kb-video-setting-help:hover,.kb-video-setting-help:focus{opacity:1;color:var(--text-primary)!important}.kb-video-setting-popover.popover{max-width:min(340px,100vw - 2rem)}.kb-video-setting-popover .popover-body{font-size:.8125rem;line-height:1.45}.kb-video-setting-popover .popover-body p:last-child{margin-bottom:0}.stat-card{transition:transform .2s,box-shadow .2s}.stat-card:hover{box-shadow:0 4px 12px rgba(var(--black-rgb), .5);transform:translateY(-5px)}.stat-icon{opacity:.3;font-size:2.5rem}.refresh-btn{animation:none}.refresh-btn.spinning{animation:1s linear infinite dashboardRefreshSpin}@keyframes dashboardRefreshSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.ops-section-title{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;border-bottom:1px solid var(--border-subtle);margin-bottom:1rem;padding-bottom:.4rem;font-size:.7rem;font-weight:600}.ops-stat-row{grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:.5rem;margin-bottom:1.5rem;display:grid}.ops-stat-row.ops-stat-row-fixed{grid-template-columns:repeat(7,1fr)}.ops-stat-chip{background:var(--gunmetal-grey);border:1px solid var(--border-color);border-radius:var(--radius-sm);padding:.6rem .875rem}.ops-stat-chip .chip-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em;font-size:.68rem}.ops-stat-chip .chip-num{color:var(--text-primary);font-size:1.6rem;font-weight:600;line-height:1.1}.ops-stat-chip .chip-sub{color:var(--text-muted);margin-top:1px;font-size:.65rem}.chip-num.chip-red{color:var(--infrared-red)}.chip-num.chip-amber{color:var(--signal-amber)}.chip-num.chip-green{color:var(--nvg-safe-green)}.chip-num.chip-blue{color:var(--dashboard-blue)}.ops-panel{background:var(--gunmetal-grey);border:1px solid var(--border-color);border-radius:var(--radius-md);margin-bottom:1rem;overflow:hidden}.ops-panel.ops-panel-stack{flex-direction:column;display:flex}.ops-panel.ops-panel-stack.flex-grow-1{min-height:0}.ops-panel.ops-panel-stack.flex-grow-1 .ops-row:only-child{flex:1;align-items:center}.ops-panel-header{border-bottom:1px solid var(--border-color);background:var(--slate-navy);justify-content:space-between;align-items:center;padding:.5rem .875rem;display:flex}.ops-panel-title{color:var(--text-primary);text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:6px;margin:0;font-size:.72rem;font-weight:600;display:flex}.ops-panel-link{color:var(--nvg-safe-green);font-size:.68rem;text-decoration:none}.ops-panel-link:hover{color:var(--text-primary)}.ops-row{border-bottom:1px solid var(--border-subtle);align-items:flex-start;gap:9px;padding:.55rem .875rem;transition:background .1s;display:flex}.ops-row:last-child{border-bottom:none}.ops-row:hover{background:var(--stealth-olive)}.ops-dot{border-radius:50%;flex-shrink:0;width:7px;height:7px;margin-top:5px}.dot-red{background:var(--infrared-red)}.dot-amber{background:var(--signal-amber)}.dot-green{background:var(--nvg-safe-green)}.dot-blue{background:var(--dashboard-blue)}.dot-gray{background:var(--text-muted)}.ops-row-body{flex:1;min-width:0}.ops-row-title{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.78rem;overflow:hidden}.ops-row-meta{color:var(--text-muted);margin-top:1px;font-size:.68rem}.ops-row-preview{color:var(--text-secondary);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:2px;font-size:.68rem;display:-webkit-box;overflow:hidden}.ops-badge{white-space:nowrap;border-radius:3px;flex-shrink:0;padding:2px 6px;font-size:.62rem;font-weight:600}.obadge-red{background:rgba(var(--infrared-red-rgb), .25);color:var(--dashboard-red-text);border:1px solid rgba(var(--infrared-red-rgb), .4)}.obadge-amber{background:rgba(var(--signal-amber-rgb), .2);color:var(--signal-amber);border:1px solid rgba(var(--signal-amber-rgb), .4)}.obadge-green{background:rgba(var(--nvg-safe-green-rgb), .2);color:var(--nvg-safe-green);border:1px solid rgba(var(--nvg-safe-green-rgb), .35)}.obadge-blue{background:rgba(var(--dashboard-blue-rgb), .2);color:var(--dashboard-blue);border:1px solid rgba(var(--dashboard-blue-rgb), .35)}.obadge-gray{background:rgba(var(--dashboard-grey-rgb), .2);color:var(--text-secondary);border:1px solid rgba(var(--dashboard-grey-rgb), .3)}.op-pills{flex-wrap:wrap;flex-shrink:0;justify-content:flex-end;gap:3px;display:flex}.threat-row{border-bottom:1px solid var(--border-subtle);align-items:center;gap:8px;padding:.45rem .875rem;display:flex}.threat-row:last-child{border-bottom:none}.threat-name{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;flex-shrink:0;width:130px;font-size:.72rem;overflow:hidden}.threat-bar-wrap{background:var(--slate-navy);border-radius:2px;flex:1;height:5px;overflow:hidden}.threat-bar{border-radius:2px;height:100%}.threat-count{color:var(--text-muted);text-align:right;flex-shrink:0;width:20px;font-size:.68rem}@media (width<=767.98px){.main-content{padding:20px 15px 15px}.main-content h1.h3{font-size:1.25rem}.main-content p.text-muted{font-size:.85rem}.navbar{padding:8px 12px}.navbar-brand img{height:28px}.navbar-brand span{font-size:1rem}.stat-card .card-body{padding:1rem}.stat-card h2{font-size:1.5rem}.stat-card .stat-icon{font-size:1.8rem}.sidebar{z-index:1050;width:250px;height:100vh;padding-top:60px;transition:transform .3s;position:fixed;top:0;left:0;overflow-y:auto;transform:translate(-100%)}.sidebar.show{transform:translate(0)}.sidebar-overlay{background:rgba(var(--black-rgb), .5);z-index:1045;opacity:0;visibility:hidden;width:100%;height:100%;transition:opacity .3s,visibility .3s;position:fixed;top:0;left:0}.sidebar-overlay.show{opacity:1;visibility:visible}}@media (width<=575.98px){.main-content{padding:15px 12px 12px}.main-content h1.h3{font-size:1.1rem}.main-content .btn-outline-primary{padding:6px 12px;font-size:.85rem}.stat-card .card-body{padding:.75rem}.stat-card h6{font-size:.75rem}.stat-card h2{font-size:1.3rem}.stat-card small{font-size:.7rem}}.youtube-preview-grid{flex-wrap:wrap;gap:12px;display:flex}.youtube-preview-grid .video-result-card{flex:calc(50% - 6px);min-width:220px;margin-top:0!important;margin-bottom:0!important}.report-progress-panel{z-index:9998;pointer-events:none;flex-direction:column;gap:8px;width:340px;max-width:calc(100vw - 2rem);display:flex;position:fixed;bottom:1rem;right:1rem}.report-progress-item{background:var(--gunmetal-grey);border:1px solid var(--border-color);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);pointer-events:auto;align-items:flex-start;gap:10px;padding:12px 12px 10px;display:flex}.report-progress-item .report-progress-icon{color:var(--text-secondary);flex:none;margin-top:2px;font-size:1.1rem}.report-progress-item .report-progress-body{flex:auto;min-width:0}.report-progress-item .report-progress-title{color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;font-size:.85rem;font-weight:600;overflow:hidden}.report-progress-item .report-progress-stage{color:var(--text-secondary);white-space:nowrap;text-overflow:ellipsis;margin-top:1px;font-size:.75rem;overflow:hidden}.report-progress-item .report-progress-track{background:var(--border-subtle);border-radius:2px;height:4px;margin-top:8px;position:relative;overflow:hidden}.report-progress-item .report-progress-bar{background:var(--nvg-safe-green);border-radius:2px;width:40%;animation:1.4s ease-in-out infinite reportProgressSlide;position:absolute;top:0;bottom:0}.report-progress-item.is-failed .report-progress-stage{white-space:normal}.report-progress-item.is-done .report-progress-bar,.report-progress-item.is-failed .report-progress-bar{width:100%;animation:none;left:0}.report-progress-item.is-failed .report-progress-bar{background:var(--infrared-red)}.report-progress-item .report-progress-dismiss{color:var(--text-muted);background:0 0;border:0;flex:none;padding:0;font-size:.9rem;line-height:1}.report-progress-item .report-progress-dismiss:hover{color:var(--text-primary)}@keyframes reportProgressSlide{0%{left:-40%}to{left:100%}}@media (prefers-reduced-motion:reduce){.report-progress-item .report-progress-bar{width:100%;animation:none;left:0}.report-progress-item:not(.is-done):not(.is-failed) .report-progress-bar{opacity:.5}}.auth-card a:not(.btn){color:var(--text-secondary)!important}.auth-card a:not(.btn):hover,.auth-card a:not(.btn):focus-visible{color:var(--text-primary)!important}
