.top-bar{display:flex;align-items:center;justify-content:space-between;height:56px;padding:0 var(--spacing-lg);background:var(--bg-secondary);border-bottom:1px solid var(--border-primary);z-index:1000}.top-bar-left{display:flex;align-items:center;gap:var(--spacing-lg)}.brand{display:flex;align-items:baseline;gap:var(--spacing-sm)}.brand-name{font-size:24px;font-weight:700;letter-spacing:2px;color:var(--text-primary);margin:0}.brand-sub{font-size:11px;color:var(--text-muted);font-weight:400;letter-spacing:.5px}.region-label{font-size:12px;color:var(--text-secondary);padding:var(--spacing-xs) var(--spacing-md);background:var(--bg-tertiary);border-radius:var(--radius-sm);border:1px solid var(--border-primary)}.top-bar-center{flex:1;display:flex;justify-content:center}.status-pills{display:flex;gap:var(--spacing-md)}.status-pill{display:flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-md);background:var(--bg-tertiary);border-radius:var(--radius-sm);border:1px solid var(--border-primary);font-size:12px}.status-indicator{width:6px;height:6px;border-radius:50%;background:var(--text-muted)}.status-pill.status-live .status-indicator{background:var(--status-live);box-shadow:0 0 6px var(--status-live);animation:pulse 2s infinite}.status-pill.status-stale .status-indicator{background:var(--status-stale)}.status-pill.status-warning .status-indicator{background:var(--accent-orange)}.status-pill.status-error .status-indicator{background:var(--status-error)}.status-pill.status-simulated .status-indicator{background:var(--status-simulated);animation:pulse 3s infinite}.status-pill.status-loading .status-indicator{background:var(--text-muted);animation:pulse 1s infinite}.status-pill.status-neutral .status-indicator{display:none}.status-pill.status-critical{background:var(--red-bg);border-color:var(--risk-critical)}.status-pill.status-critical .status-indicator{background:var(--risk-critical);box-shadow:0 0 8px var(--risk-critical);animation:pulse-alert 1s infinite}.status-pill.status-critical .status-value{color:var(--risk-critical)}.status-pill.status-high-risk{background:var(--orange-bg);border-color:var(--risk-high)}.status-pill.status-high-risk .status-indicator{background:var(--risk-high);box-shadow:0 0 6px var(--risk-high);animation:pulse-alert 1.5s infinite}.status-pill.status-high-risk .status-value{color:var(--risk-high)}@keyframes pulse-alert{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.1)}}.status-label{color:var(--text-muted)}.status-value{color:var(--text-primary);font-weight:500}.top-bar-right{display:flex;align-items:center;gap:var(--spacing-md)}.polling-control{display:flex;align-items:center;gap:var(--spacing-sm);font-size:12px;color:var(--text-secondary)}.polling-control select{padding:var(--spacing-xs) var(--spacing-sm);font-size:12px;min-width:70px}.topbar-activity-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:12px;font-weight:500;cursor:pointer;transition:all .15s ease}.topbar-activity-btn:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--accent-blue)}.topbar-activity-btn.active{background:var(--bg-active);color:var(--accent-blue);border-color:var(--accent-blue)}.topbar-activity-btn svg{flex-shrink:0}.topbar-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;font-size:10px;font-weight:600;background:var(--bg-hover);color:var(--text-secondary);border-radius:var(--radius-full)}.topbar-badge.alert{background:var(--risk-critical-bg);color:var(--risk-critical)}.topbar-badge.active-missions{background:var(--bg-active);color:var(--accent-blue)}.topbar-user{display:flex;align-items:center;gap:6px;padding-left:12px;margin-left:4px;border-left:1px solid var(--border-primary)}.topbar-user-icon{color:var(--text-muted);flex-shrink:0}.topbar-logout-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:none;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;transition:all .15s ease}.topbar-logout-btn:hover{background:var(--bg-hover);border-color:var(--border-primary);color:var(--risk-critical)}.left-panel{width:100%;height:100%;min-height:0;min-width:0;display:flex;flex-direction:column;background:var(--bg-secondary);border-right:1px solid var(--border-primary);overflow:hidden}.lp-header{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-bottom:1px solid var(--border-primary);flex-shrink:0}.lp-header h2{font-size:14px;font-weight:600;color:var(--text-primary);margin:0}.lp-header-right{display:flex;align-items:center;gap:8px}.lp-ais-time{font-size:10px;color:var(--text-muted);font-family:var(--font-mono);white-space:nowrap}.lp-poll-select{padding:2px 4px;font-size:10px;font-family:var(--font-mono);background:var(--bg-tertiary);border:1px solid var(--border-secondary);border-radius:3px;color:var(--text-secondary);cursor:pointer;min-width:42px}.lp-poll-select:focus{outline:none;border-color:var(--accent-blue)}.lp-metrics{display:flex;gap:6px;padding:8px 12px;border-bottom:1px solid var(--border-primary);flex-shrink:0}.lp-metric{flex:1;display:flex;flex-direction:column;align-items:center;padding:5px 4px;background:transparent;border:1px solid var(--border-secondary);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast)}.lp-metric:hover{background:var(--bg-hover)}.lp-metric-val{font-size:14px;font-weight:700;font-family:var(--font-mono);line-height:1.2;color:var(--text-primary)}.lp-metric-lbl{font-size:8px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px}.lp-metric.critical.active{background:var(--red-bg);border-color:var(--accent-red)}.lp-metric.critical.active .lp-metric-val{color:var(--accent-red)}.lp-metric.prioritize.active{background:var(--orange-bg);border-color:var(--accent-orange)}.lp-metric.prioritize.active .lp-metric-val{color:var(--accent-orange)}.lp-metric.monitor.active{background:var(--blue-bg);border-color:var(--accent-blue)}.lp-metric.monitor.active .lp-metric-val{color:var(--accent-blue)}.lp-search{padding:6px 12px;flex-shrink:0}.lp-search-input{width:100%;padding:5px 8px;background:var(--bg-tertiary);border:1px solid var(--border-secondary);border-radius:var(--radius-sm);color:var(--text-primary);font-size:12px}.lp-search-input:focus{outline:none;border-color:var(--accent-blue)}.lp-search-input::placeholder{color:var(--text-muted)}.lp-filter-bar{display:flex;align-items:center;justify-content:space-between;padding:5px 12px;border-bottom:1px solid var(--border-primary);flex-shrink:0;gap:8px}.lp-segments{display:flex;gap:2px;flex-shrink:0}.lp-seg{padding:3px 8px;font-size:10px;font-weight:500;color:var(--text-muted);background:transparent;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-fast);white-space:nowrap}.lp-seg:hover{color:var(--text-secondary);background:var(--bg-hover)}.lp-seg.active{color:var(--text-primary);background:var(--bg-tertiary);font-weight:600}.lp-bar-counts{display:flex;align-items:center;gap:8px;font-size:10px;color:var(--text-muted);white-space:nowrap;flex-shrink:0}.lp-bar-count{cursor:pointer;transition:color var(--transition-fast)}.lp-bar-count:hover{color:var(--text-secondary)}.lp-bar-count.active{color:var(--accent-blue);font-weight:600}.lp-bar-count.alert-hot{color:var(--accent-red)}.lp-sort-row{display:flex;align-items:center;justify-content:space-between;padding:3px 12px;border-bottom:1px solid var(--border-secondary);flex-shrink:0;min-height:22px}.lp-sort-left{display:flex;align-items:center;gap:4px;font-size:10px;color:var(--text-muted)}.lp-sort-select{padding:1px 4px;font-size:10px;background:var(--bg-tertiary);border:1px solid var(--border-secondary);border-radius:3px;color:var(--text-secondary);cursor:pointer}.lp-sort-select:focus{outline:none;border-color:var(--accent-blue)}.lp-sort-help{display:inline-flex;align-items:center;justify-content:center;width:13px;height:13px;font-size:9px;font-weight:700;color:var(--text-muted);background:var(--bg-tertiary);border:1px solid var(--border-secondary);border-radius:50%;cursor:help;flex-shrink:0}.lp-sort-count{font-size:10px;color:var(--text-muted);font-family:var(--font-mono);white-space:nowrap}.lp-layer-notice{display:flex;align-items:center;justify-content:center;gap:8px;padding:5px 12px;background:#c97a3a14;border-bottom:1px solid var(--border-secondary);font-size:10px;color:var(--accent-orange);flex-shrink:0}.lp-layer-enable{padding:2px 8px;font-size:10px;font-weight:600;color:var(--accent-blue);background:transparent;border:1px solid var(--accent-blue);border-radius:var(--radius-sm);cursor:pointer}.lp-layer-enable:hover{background:#4a6fa51a}.lp-track-list{flex:1;overflow-y:auto;min-height:0}.lp-empty{display:flex;align-items:center;justify-content:center;height:80px;color:var(--text-muted);font-size:12px}.lp-row{display:flex;align-items:stretch;border-bottom:1px solid var(--border-secondary);cursor:pointer;transition:background var(--transition-fast);min-height:48px}.lp-row:hover{background:var(--bg-hover)}.lp-row.selected{background:#4a6fa514}.lp-tick{width:2px;flex-shrink:0}.lp-tick.critical{background:var(--accent-red)}.lp-tick.prioritize{background:var(--accent-orange)}.lp-tick.monitor{background:var(--accent-blue)}.lp-tick.none{background:transparent}.lp-row-body{flex:1;display:flex;flex-direction:column;justify-content:center;gap:1px;padding:4px 10px;min-width:0}.lp-line1{display:flex;align-items:flex-start;gap:6px;min-width:0}.lp-type{font-size:12px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:1;min-width:0;line-height:1.4}.lp-spacer{flex:1}.lp-badges{display:flex;flex-direction:column;align-items:flex-end;gap:2px;flex-shrink:0}.lp-chip{padding:1px 5px;font-size:7px;font-weight:700;text-transform:uppercase;letter-spacing:.3px;border-radius:9px;white-space:nowrap;flex-shrink:0;line-height:1.4}.lp-chip.dark{background:#a0a0aa26;color:var(--text-secondary)}.lp-chip.ais{background:#4a6fa51f;color:var(--accent-blue)}.lp-chip.mpa{background:#b54a4a2e;color:var(--accent-red)}.lp-chip.eez{background:#c97a3a26;color:var(--accent-orange)}.lp-primary-meta{font-size:11px;font-weight:600;color:var(--text-secondary);line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lp-secondary-meta{font-size:10px;color:var(--text-muted);line-height:1.3;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lp-preview{flex-shrink:0;background:var(--bg-tertiary);border-bottom:1px solid var(--border-primary);padding:10px 12px}.lp-preview-header{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:6px}.lp-preview-title{display:flex;flex-direction:column;gap:1px;min-width:0;flex:1}.lp-preview-label{font-size:9px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted)}.lp-preview-type{font-size:14px;font-weight:600;color:var(--text-primary);line-height:1.2}.lp-preview-id{font-size:10px;font-family:var(--font-mono);color:var(--text-muted)}.lp-preview-close{width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:13px;color:var(--text-muted);background:none;border:1px solid var(--border-secondary);border-radius:var(--radius-sm);cursor:pointer;flex-shrink:0;margin-left:8px}.lp-preview-close:hover{color:var(--text-primary);border-color:var(--border-primary)}.lp-preview-reason{font-size:13px;font-weight:500;color:var(--text-primary);padding:6px 0;border-top:1px solid var(--border-secondary);border-bottom:1px solid var(--border-secondary);margin-bottom:6px}.lp-preview-facts{display:grid;grid-template-columns:1fr 1fr;gap:3px 12px}.lp-fact{display:flex;justify-content:space-between;align-items:baseline;gap:4px}.lp-fact-label{font-size:10px;color:var(--text-muted);flex-shrink:0}.lp-fact-value{font-size:10px;color:var(--text-secondary);font-family:var(--font-mono);text-align:right}.lp-vessel-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) 52px;align-items:center;min-height:44px;padding:4px 8px 4px 12px;border-bottom:1px solid var(--border-secondary);cursor:pointer;transition:background var(--transition-fast)}.lp-vessel-row:hover{background:var(--bg-hover)}.lp-vessel-name{font-size:11px;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lp-vessel-mmsi{font-size:10px;font-family:var(--font-mono);color:var(--text-muted)}.lp-vessel-type{font-size:10px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.lp-vessel-flag{font-size:10px;color:var(--text-muted)}.lp-vessel-speed{font-size:11px;font-family:var(--font-mono);color:var(--text-secondary);text-align:right;white-space:nowrap}.lp-footer{padding:3px 12px;border-top:1px solid var(--border-secondary);flex-shrink:0}.lp-disclaimer{font-size:9px;color:var(--text-muted);text-align:center;font-style:italic;margin:0}.leaflet-pane,.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-tile-container,.leaflet-pane>svg,.leaflet-pane>canvas,.leaflet-zoom-box,.leaflet-image-layer,.leaflet-layer{position:absolute;left:0;top:0}.leaflet-container{overflow:hidden}.leaflet-tile,.leaflet-marker-icon,.leaflet-marker-shadow{-webkit-user-select:none;-moz-user-select:none;user-select:none;-webkit-user-drag:none}.leaflet-tile::selection{background:transparent}.leaflet-safari .leaflet-tile{image-rendering:-webkit-optimize-contrast}.leaflet-safari .leaflet-tile-container{width:1600px;height:1600px;-webkit-transform-origin:0 0}.leaflet-marker-icon,.leaflet-marker-shadow{display:block}.leaflet-container .leaflet-overlay-pane svg{max-width:none!important;max-height:none!important}.leaflet-container .leaflet-marker-pane img,.leaflet-container .leaflet-shadow-pane img,.leaflet-container .leaflet-tile-pane img,.leaflet-container img.leaflet-image-layer,.leaflet-container .leaflet-tile{max-width:none!important;max-height:none!important;width:auto;padding:0}.leaflet-container img.leaflet-tile{mix-blend-mode:plus-lighter}.leaflet-container.leaflet-touch-zoom{-ms-touch-action:pan-x pan-y;touch-action:pan-x pan-y}.leaflet-container.leaflet-touch-drag{-ms-touch-action:pinch-zoom;touch-action:none;touch-action:pinch-zoom}.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom{-ms-touch-action:none;touch-action:none}.leaflet-container{-webkit-tap-highlight-color:transparent}.leaflet-container a{-webkit-tap-highlight-color:rgba(51,181,229,.4)}.leaflet-tile{filter:inherit;visibility:hidden}.leaflet-tile-loaded{visibility:inherit}.leaflet-zoom-box{width:0;height:0;-moz-box-sizing:border-box;box-sizing:border-box;z-index:800}.leaflet-overlay-pane svg{-moz-user-select:none}.leaflet-pane{z-index:400}.leaflet-tile-pane{z-index:200}.leaflet-shadow-pane{z-index:500}.leaflet-marker-pane{z-index:600}.leaflet-tooltip-pane{z-index:650}.leaflet-popup-pane{z-index:700}.leaflet-map-pane canvas{z-index:100}.leaflet-map-pane svg{z-index:200}.leaflet-vml-shape{width:1px;height:1px}.lvml{behavior:url(#default#VML);display:inline-block;position:absolute}.leaflet-control{position:relative;z-index:800;pointer-events:visiblePainted;pointer-events:auto}.leaflet-top,.leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}.leaflet-top{top:0}.leaflet-right{right:0}.leaflet-bottom{bottom:0}.leaflet-left{left:0}.leaflet-control{float:left;clear:both}.leaflet-right .leaflet-control{float:right}.leaflet-top .leaflet-control{margin-top:10px}.leaflet-bottom .leaflet-control{margin-bottom:10px}.leaflet-left .leaflet-control{margin-left:10px}.leaflet-right .leaflet-control{margin-right:10px}.leaflet-fade-anim .leaflet-popup{opacity:0;-webkit-transition:opacity .2s linear;-moz-transition:opacity .2s linear;transition:opacity .2s linear}.leaflet-fade-anim .leaflet-map-pane .leaflet-popup{opacity:1}.leaflet-zoom-animated{-webkit-transform-origin:0 0;-ms-transform-origin:0 0;transform-origin:0 0}svg.leaflet-zoom-animated{will-change:transform}.leaflet-zoom-anim .leaflet-zoom-animated{-webkit-transition:-webkit-transform .25s cubic-bezier(0,0,.25,1);-moz-transition:-moz-transform .25s cubic-bezier(0,0,.25,1);transition:transform .25s cubic-bezier(0,0,.25,1)}.leaflet-zoom-anim .leaflet-tile,.leaflet-pan-anim .leaflet-tile{-webkit-transition:none;-moz-transition:none;transition:none}.leaflet-zoom-anim .leaflet-zoom-hide{visibility:hidden}.leaflet-interactive{cursor:pointer}.leaflet-grab{cursor:-webkit-grab;cursor:-moz-grab;cursor:grab}.leaflet-crosshair,.leaflet-crosshair .leaflet-interactive{cursor:crosshair}.leaflet-popup-pane,.leaflet-control{cursor:auto}.leaflet-dragging .leaflet-grab,.leaflet-dragging .leaflet-grab .leaflet-interactive,.leaflet-dragging .leaflet-marker-draggable{cursor:move;cursor:-webkit-grabbing;cursor:-moz-grabbing;cursor:grabbing}.leaflet-marker-icon,.leaflet-marker-shadow,.leaflet-image-layer,.leaflet-pane>svg path,.leaflet-tile-container{pointer-events:none}.leaflet-marker-icon.leaflet-interactive,.leaflet-image-layer.leaflet-interactive,.leaflet-pane>svg path.leaflet-interactive,svg.leaflet-image-layer.leaflet-interactive path{pointer-events:visiblePainted;pointer-events:auto}.leaflet-container{background:#ddd;outline-offset:1px}.leaflet-container a{color:#0078a8}.leaflet-zoom-box{border:2px dotted #38f;background:#ffffff80}.leaflet-container{font-family:Helvetica Neue,Arial,Helvetica,sans-serif;font-size:12px;font-size:.75rem;line-height:1.5}.leaflet-bar{box-shadow:0 1px 5px #000000a6;border-radius:4px}.leaflet-bar a{background-color:#fff;border-bottom:1px solid #ccc;width:26px;height:26px;line-height:26px;display:block;text-align:center;text-decoration:none;color:#000}.leaflet-bar a,.leaflet-control-layers-toggle{background-position:50% 50%;background-repeat:no-repeat;display:block}.leaflet-bar a:hover,.leaflet-bar a:focus{background-color:#f4f4f4}.leaflet-bar a:first-child{border-top-left-radius:4px;border-top-right-radius:4px}.leaflet-bar a:last-child{border-bottom-left-radius:4px;border-bottom-right-radius:4px;border-bottom:none}.leaflet-bar a.leaflet-disabled{cursor:default;background-color:#f4f4f4;color:#bbb}.leaflet-touch .leaflet-bar a{width:30px;height:30px;line-height:30px}.leaflet-touch .leaflet-bar a:first-child{border-top-left-radius:2px;border-top-right-radius:2px}.leaflet-touch .leaflet-bar a:last-child{border-bottom-left-radius:2px;border-bottom-right-radius:2px}.leaflet-control-zoom-in,.leaflet-control-zoom-out{font:700 18px Lucida Console,Monaco,monospace;text-indent:1px}.leaflet-touch .leaflet-control-zoom-in,.leaflet-touch .leaflet-control-zoom-out{font-size:22px}.leaflet-control-layers{box-shadow:0 1px 5px #0006;background:#fff;border-radius:5px}.leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABoAAAAaCAQAAAADQ4RFAAACf0lEQVR4AY1UM3gkARTePdvdoTxXKc+qTl3aU5U6b2Kbkz3Gtq3Zw6ziLGNPzrYx7946Tr6/ee/XeCQ4D3ykPtL5tHno4n0d/h3+xfuWHGLX81cn7r0iTNzjr7LrlxCqPtkbTQEHeqOrTy4Yyt3VCi/IOB0v7rVC7q45Q3Gr5K6jt+3Gl5nCoDD4MtO+j96Wu8atmhGqcNGHObuf8OM/x3AMx38+4Z2sPqzCxRFK2aF2e5Jol56XTLyggAMTL56XOMoS1W4pOyjUcGGQdZxU6qRh7B9Zp+PfpOFlqt0zyDZckPi1ttmIp03jX8gyJ8a/PG2yutpS/Vol7peZIbZcKBAEEheEIAgFbDkz5H6Zrkm2hVWGiXKiF4Ycw0RWKdtC16Q7qe3X4iOMxruonzegJzWaXFrU9utOSsLUmrc0YjeWYjCW4PDMADElpJSSQ0vQvA1Tm6/JlKnqFs1EGyZiFCqnRZTEJJJiKRYzVYzJck2Rm6P4iH+cmSY0YzimYa8l0EtTODFWhcMIMVqdsI2uiTvKmTisIDHJ3od5GILVhBCarCfVRmo4uTjkhrhzkiBV7SsaqS+TzrzM1qpGGUFt28pIySQHR6h7F6KSwGWm97ay+Z+ZqMcEjEWebE7wxCSQwpkhJqoZA5ivCdZDjJepuJ9IQjGGUmuXJdBFUygxVqVsxFsLMbDe8ZbDYVCGKxs+W080max1hFCarCfV+C1KATwcnvE9gRRuMP2prdbWGowm1KB1y+zwMMENkM755cJ2yPDtqhTI6ED1M/82yIDtC/4j4BijjeObflpO9I9MwXTCsSX8jWAFeHr05WoLTJ5G8IQVS/7vwR6ohirYM7f6HzYpogfS3R2OAAAAAElFTkSuQmCC);width:36px;height:36px}.leaflet-retina .leaflet-control-layers-toggle{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADQAAAA0CAQAAABvcdNgAAAEsklEQVR4AWL4TydIhpZK1kpWOlg0w3ZXP6D2soBtG42jeI6ZmQTHzAxiTbSJsYLjO9HhP+WOmcuhciVnmHVQcJnp7DFvScowZorad/+V/fVzMdMT2g9Cv9guXGv/7pYOrXh2U+RRR3dSd9JRx6bIFc/ekqHI29JC6pJ5ZEh1yWkhkbcFeSjxgx3L2m1cb1C7bceyxA+CNjT/Ifff+/kDk2u/w/33/IeCMOSaWZ4glosqT3DNnNZQ7Cs58/3Ce5HL78iZH/vKVIaYlqzfdLu8Vi7dnvUbEza5Idt36tquZFldl6N5Z/POLof0XLK61mZCmJSWjVF9tEjUluu74IUXvgttuVIHE7YxSkaYhJZam7yiM9Pv82JYfl9nptxZaxMJE4YSPty+vF0+Y2up9d3wwijfjZbabqm/3bZ9ecKHsiGmRflnn1MW4pjHf9oLufyn2z3y1D6n8g8TZhxyzipLNPnAUpsOiuWimg52psrTZYnOWYNDTMuWBWa0tJb4rgq1UvmutpaYEbZlwU3CLJm/ayYjHW5/h7xWLn9Hh1vepDkyf7dE7MtT5LR4e7yYpHrkhOUpEfssBLq2pPhAqoSWKUkk7EDqkmK6RrCEzqDjhNDWNE+XSMvkJRDWlZTmCW0l0PHQGRZY5t1L83kT0Y3l2SItk5JAWHl2dCOBm+fPu3fo5/3v61RMCO9Jx2EEYYhb0rmNQMX/vm7gqOEJLcXTGw3CAuRNeyaPWwjR8PRqKQ1PDA/dpv+on9Shox52WFnx0KY8onHayrJzm87i5h9xGw/tfkev0jGsQizqezUKjk12hBMKJ4kbCqGPVNXudyyrShovGw5CgxsRICxF6aRmSjlBnHRzg7Gx8fKqEubI2rahQYdR1YgDIRQO7JvQyD52hoIQx0mxa0ODtW2Iozn1le2iIRdzwWewedyZzewidueOGqlsn1MvcnQpuVwLGG3/IR1hIKxCjelIDZ8ldqWz25jWAsnldEnK0Zxro19TGVb2ffIZEsIO89EIEDvKMPrzmBOQcKQ+rroye6NgRRxqR4U8EAkz0CL6uSGOm6KQCdWjvjRiSP1BPalCRS5iQYiEIvxuBMJEWgzSoHADcVMuN7IuqqTeyUPq22qFimFtxDyBBJEwNyt6TM88blFHao/6tWWhuuOM4SAK4EI4QmFHA+SEyWlp4EQoJ13cYGzMu7yszEIBOm2rVmHUNqwAIQabISNMRstmdhNWcFLsSm+0tjJH1MdRxO5Nx0WDMhCtgD6OKgZeljJqJKc9po8juskR9XN0Y1lZ3mWjLR9JCO1jRDMd0fpYC2VnvjBSEFg7wBENc0R9HFlb0xvF1+TBEpF68d+DHR6IOWVv2BECtxo46hOFUBd/APU57WIoEwJhIi2CdpyZX0m93BZicktMj1AS9dClteUFAUNUIEygRZCtik5zSxI9MubTBH1GOiHsiLJ3OCoSZkILa9PxiN0EbvhsAo8tdAf9Seepd36lGWHmtNANTv5Jd0z4QYyeo/UEJqxKRpg5LZx6btLPsOaEmdMyxYdlc8LMaJnikDlhclqmPiQnTEpLUIZEwkRagjYkEibQErwhkTAKCLQEbUgkzJQWc/0PstHHcfEdQ+UAAAAASUVORK5CYII=);background-size:26px 26px}.leaflet-touch .leaflet-control-layers-toggle{width:44px;height:44px}.leaflet-control-layers .leaflet-control-layers-list,.leaflet-control-layers-expanded .leaflet-control-layers-toggle{display:none}.leaflet-control-layers-expanded .leaflet-control-layers-list{display:block;position:relative}.leaflet-control-layers-expanded{padding:6px 10px 6px 6px;color:#333;background:#fff}.leaflet-control-layers-scrollbar{overflow-y:scroll;overflow-x:hidden;padding-right:5px}.leaflet-control-layers-selector{margin-top:2px;position:relative;top:1px}.leaflet-control-layers label{display:block;font-size:13px;font-size:1.08333em}.leaflet-control-layers-separator{height:0;border-top:1px solid #ddd;margin:5px -10px 5px -6px}.leaflet-default-icon-path{background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=)}.leaflet-container .leaflet-control-attribution{background:#fff;background:#fffc;margin:0}.leaflet-control-attribution,.leaflet-control-scale-line{padding:0 5px;color:#333;line-height:1.4}.leaflet-control-attribution a{text-decoration:none}.leaflet-control-attribution a:hover,.leaflet-control-attribution a:focus{text-decoration:underline}.leaflet-attribution-flag{display:inline!important;vertical-align:baseline!important;width:1em;height:.6669em}.leaflet-left .leaflet-control-scale{margin-left:5px}.leaflet-bottom .leaflet-control-scale{margin-bottom:5px}.leaflet-control-scale-line{border:2px solid #777;border-top:none;line-height:1.1;padding:2px 5px 1px;white-space:nowrap;-moz-box-sizing:border-box;box-sizing:border-box;background:#fffc;text-shadow:1px 1px #fff}.leaflet-control-scale-line:not(:first-child){border-top:2px solid #777;border-bottom:none;margin-top:-2px}.leaflet-control-scale-line:not(:first-child):not(:last-child){border-bottom:2px solid #777}.leaflet-touch .leaflet-control-attribution,.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{box-shadow:none}.leaflet-touch .leaflet-control-layers,.leaflet-touch .leaflet-bar{border:2px solid rgba(0,0,0,.2);background-clip:padding-box}.leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}.leaflet-popup-content-wrapper{padding:1px;text-align:left;border-radius:12px}.leaflet-popup-content{margin:13px 24px 13px 20px;line-height:1.3;font-size:13px;font-size:1.08333em;min-height:1px}.leaflet-popup-content p{margin:1.3em 0}.leaflet-popup-tip-container{width:40px;height:20px;position:absolute;left:50%;margin-top:-1px;margin-left:-20px;overflow:hidden;pointer-events:none}.leaflet-popup-tip{width:17px;height:17px;padding:1px;margin:-10px auto 0;pointer-events:auto;-webkit-transform:rotate(45deg);-moz-transform:rotate(45deg);-ms-transform:rotate(45deg);transform:rotate(45deg)}.leaflet-popup-content-wrapper,.leaflet-popup-tip{background:#fff;color:#333;box-shadow:0 3px 14px #0006}.leaflet-container a.leaflet-popup-close-button{position:absolute;top:0;right:0;border:none;text-align:center;width:24px;height:24px;font:16px/24px Tahoma,Verdana,sans-serif;color:#757575;text-decoration:none;background:transparent}.leaflet-container a.leaflet-popup-close-button:hover,.leaflet-container a.leaflet-popup-close-button:focus{color:#585858}.leaflet-popup-scrolled{overflow:auto}.leaflet-oldie .leaflet-popup-content-wrapper{-ms-zoom:1}.leaflet-oldie .leaflet-popup-tip{width:24px;margin:0 auto;-ms-filter:"progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";filter:progid:DXImageTransform.Microsoft.Matrix(M11=.70710678,M12=.70710678,M21=-.70710678,M22=.70710678)}.leaflet-oldie .leaflet-control-zoom,.leaflet-oldie .leaflet-control-layers,.leaflet-oldie .leaflet-popup-content-wrapper,.leaflet-oldie .leaflet-popup-tip{border:1px solid #999}.leaflet-div-icon{background:#fff;border:1px solid #666}.leaflet-tooltip{position:absolute;padding:6px;background-color:#fff;border:1px solid #fff;border-radius:3px;color:#222;white-space:nowrap;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;pointer-events:none;box-shadow:0 1px 3px #0006}.leaflet-tooltip.leaflet-interactive{cursor:pointer;pointer-events:auto}.leaflet-tooltip-top:before,.leaflet-tooltip-bottom:before,.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{position:absolute;pointer-events:none;border:6px solid transparent;background:transparent;content:""}.leaflet-tooltip-bottom{margin-top:6px}.leaflet-tooltip-top{margin-top:-6px}.leaflet-tooltip-bottom:before,.leaflet-tooltip-top:before{left:50%;margin-left:-6px}.leaflet-tooltip-top:before{bottom:0;margin-bottom:-12px;border-top-color:#fff}.leaflet-tooltip-bottom:before{top:0;margin-top:-12px;margin-left:-6px;border-bottom-color:#fff}.leaflet-tooltip-left{margin-left:-6px}.leaflet-tooltip-right{margin-left:6px}.leaflet-tooltip-left:before,.leaflet-tooltip-right:before{top:50%;margin-top:-6px}.leaflet-tooltip-left:before{right:0;margin-right:-12px;border-left-color:#fff}.leaflet-tooltip-right:before{left:0;margin-left:-12px;border-right-color:#fff}@media print{.leaflet-control{-webkit-print-color-adjust:exact;print-color-adjust:exact}}.acoustic-surface{image-rendering:auto}.acoustic-legend{position:absolute;top:12px;right:12px;z-index:800;width:160px;background:var(--bg-2);border:1px solid var(--border-1);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:10px;pointer-events:auto}.acoustic-legend-header{display:flex;align-items:center;margin-bottom:8px}.acoustic-legend-title{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted)}.acoustic-metric-toggle{display:flex;gap:1px;margin-bottom:10px;background:var(--bg-0);border-radius:var(--radius-sm);overflow:hidden}.acoustic-metric-btn{flex:1;padding:4px 0;font-size:10px;font-weight:var(--font-weight-medium);text-align:center;color:var(--text-3);background:var(--bg-3);border:none;cursor:pointer;transition:color var(--transition-fast),background var(--transition-fast)}.acoustic-metric-btn:hover{color:var(--text-1);background:var(--bg-4)}.acoustic-metric-btn.active{color:var(--text-0);background:var(--blue-0)}.acoustic-legend-scale{display:flex;flex-direction:column;gap:4px}.acoustic-legend-gradient{height:8px;border-radius:2px;background:linear-gradient(to right,#a03232a6,#c878288c,#78a03c66,#41874b4d)}.acoustic-legend-labels{display:flex;justify-content:space-between;font-size:9px;color:var(--text-2);letter-spacing:.2px}.acoustic-legend-values{display:flex;justify-content:space-between;font-size:9px;font-family:var(--font-mono);color:var(--text-3)}.acoustic-tooltip{position:absolute;z-index:900;pointer-events:none;background:var(--bg-2);border:1px solid var(--border-1);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:8px 10px;min-width:150px;white-space:nowrap}.acoustic-tooltip-row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:1px 0}.acoustic-tooltip-label{font-size:10px;color:var(--text-2);text-transform:uppercase;letter-spacing:.3px}.acoustic-tooltip-value{font-size:11px;font-family:var(--font-mono);font-weight:var(--font-weight-medium);color:var(--text-1)}.acoustic-q-excellent{color:var(--green-2)}.acoustic-q-good{color:var(--green-1)}.acoustic-q-fair{color:var(--orange-1)}.acoustic-q-poor{color:var(--red-1)}.map-container{flex:1;position:relative;background:var(--bg-primary);width:100%;height:100%;min-height:400px}.leaflet-map{width:100%;height:100%;min-height:400px;background:var(--bg-primary);position:absolute;top:0;left:0;right:0;bottom:0}.vessel-marker{background:transparent!important;border:none!important}.vessel-icon{transition:transform .3s ease}.detection-marker{background:transparent!important;border:none!important}.detection-boat-icon{position:relative;display:flex;align-items:center;justify-content:center;filter:drop-shadow(0 1px 2px rgba(0,0,0,.4))}.detection-boat-icon svg{display:block}.detection-marker.protected-zone .detection-boat-icon,.detection-boat-icon.protected-zone{animation:pulse-boat-critical 2.5s ease-in-out infinite}@keyframes pulse-boat-critical{0%,to{filter:drop-shadow(0 1px 2px rgba(0,0,0,.4))}50%{filter:drop-shadow(0 1px 4px rgba(181,74,74,.4))}}@keyframes pulse-detection{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.05);opacity:.9}}@keyframes pulse-alert{0%,to{transform:scale(1);box-shadow:0 0 10px var(--orange-bg)}50%{transform:scale(1.1);box-shadow:0 0 18px var(--orange-bg)}}@keyframes pulse-critical{0%,to{transform:scale(1);box-shadow:0 0 12px var(--orange-bg)}50%{transform:scale(1.15);box-shadow:0 0 24px var(--orange-bg)}}@keyframes pulse-high{0%,to{transform:scale(1);box-shadow:0 0 10px var(--orange-bg)}50%{transform:scale(1.1);box-shadow:0 0 18px var(--orange-bg)}}@keyframes rotate-ring{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes risk-pulse-expand{0%{transform:scale(1);opacity:.6}to{transform:scale(2);opacity:0}}.vessel-popup .leaflet-popup-content-wrapper,.detection-popup .leaflet-popup-content-wrapper{background:var(--bg-panel);color:var(--text-primary);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);border:1px solid var(--border-primary)}.vessel-popup .leaflet-popup-tip,.detection-popup .leaflet-popup-tip{background:var(--bg-panel);border:1px solid var(--border-primary);border-top:none;border-right:none}.popup-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid var(--border-secondary)}.popup-header strong{font-size:13px}.ais-badge{font-size:9px;font-weight:600;padding:2px 6px;background:var(--green-bg);color:var(--accent-green);border-radius:var(--radius-sm);text-transform:uppercase}.status-badge{font-size:9px;font-weight:600;padding:2px 6px;border-radius:var(--radius-sm);text-transform:uppercase}.simulated-badge{font-size:9px;font-weight:600;padding:2px 6px;background:var(--status-simulated);color:#fff;border-radius:var(--radius-sm);text-transform:uppercase;display:inline-block;margin-bottom:8px}.risk-indicator{font-size:10px;font-weight:600;padding:4px 8px;border-radius:var(--radius-sm);margin-bottom:8px;text-align:center}.risk-indicator.risk-critical{background:var(--red-bg);color:var(--risk-critical);border:1px solid rgba(181,74,74,.4)}.risk-indicator.risk-high{background:var(--orange-bg);color:var(--risk-high);border:1px solid rgba(201,122,58,.4)}.risk-indicator.risk-medium{background:var(--orange-bg);color:var(--risk-medium);border:1px solid rgba(201,122,58,.4)}.risk-indicator.risk-low{background:var(--green-bg);color:var(--risk-low);border:1px solid rgba(74,122,90,.4)}.popup-body{font-size:12px}.popup-row{display:flex;justify-content:space-between;margin-bottom:4px}.popup-row span:first-child{color:var(--text-muted)}.popup-row .mono{font-family:monospace}.popup-row .confidence{font-weight:600}.popup-row .confidence.high{color:var(--confidence-high)}.popup-row .confidence.medium{color:var(--confidence-medium)}.popup-row .confidence.low{color:var(--confidence-low)}.popup-row.indicator{margin-top:6px;padding-top:6px;border-top:1px solid var(--border-secondary);color:var(--accent-orange);font-size:11px}.popup-row.indicator span{color:var(--accent-orange)!important}.boundary-label{background:#1a2332e6!important;border:1px solid var(--border-primary)!important;color:var(--accent-blue)!important;font-size:11px!important;font-weight:500!important;padding:4px 8px!important;border-radius:var(--radius-sm)!important;box-shadow:none!important}.boundary-label:before{display:none!important}.leaflet-control-zoom{border:none!important;margin:20px!important}.leaflet-control-zoom a{width:32px!important;height:32px!important;line-height:32px!important;background:var(--bg-panel)!important;color:var(--text-primary)!important;border:1px solid var(--border-primary)!important;font-size:16px!important}.leaflet-control-zoom a:hover{background:var(--bg-tertiary)!important}.leaflet-control-attribution{background:#0a0e14d9!important;padding:2px 8px!important;font-size:10px!important}.boundary-tooltip{background:#1a2332f2!important;border:1px solid var(--border-primary)!important;border-radius:var(--radius-md)!important;padding:8px 12px!important;font-size:11px!important;color:var(--text-primary)!important;box-shadow:var(--shadow-md)!important;white-space:nowrap!important}.boundary-tooltip strong{display:block;font-size:12px;margin-bottom:4px;color:var(--text-primary)}.boundary-tooltip small{opacity:.7;font-size:9px}.boundary-tooltip:before{border-top-color:#1a2332f2!important}.leaflet-tooltip-left.boundary-tooltip:before{border-left-color:#1a2332f2!important}.leaflet-tooltip-right.boundary-tooltip:before{border-right-color:#1a2332f2!important}.leaflet-tooltip-bottom.boundary-tooltip:before{border-bottom-color:#1a2332f2!important}.buoy-marker{display:flex;flex-direction:column;align-items:center;cursor:grab}.buoy-marker:active{cursor:grabbing}.buoy-marker.selected .buoy-icon svg circle{stroke:var(--blue-1);stroke-width:3;filter:drop-shadow(0 0 6px rgba(74,111,165,.6))}.buoy-icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center}.buoy-icon svg circle{transition:all .2s ease}.buoy-label{font-size:10px;font-weight:600;color:#fff;background:#000000b3;padding:1px 4px;border-radius:3px;margin-top:2px;white-space:nowrap}.buoy-network-popup .leaflet-popup-content-wrapper{background:var(--bg-panel);color:var(--text-primary);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);border:1px solid var(--border-primary)}.buoy-network-popup .leaflet-popup-tip{background:var(--bg-panel);border:1px solid var(--border-primary);border-top:none;border-right:none}.buoy-network-popup .popup-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid var(--border-secondary)}.buoy-network-popup .health-badge{font-size:9px;font-weight:600;padding:2px 6px;border-radius:var(--radius-sm);text-transform:uppercase}.buoy-network-popup .health-badge.ok{background:var(--green-bg);color:var(--accent-green)}.buoy-network-popup .health-badge.warning{background:var(--orange-bg);color:var(--orange-1)}.buoy-network-popup .health-badge.error{background:var(--red-bg);color:var(--accent-red)}.buoy-network-popup .health-badge.unknown{background:var(--surface-tertiary);color:var(--text-muted)}.buoy-network-marker{background:transparent!important;border:none!important}.buoy-marker-container{display:flex;flex-direction:column;align-items:center;pointer-events:none!important;cursor:pointer}.buoy-marker-container.edit-mode{cursor:grab}.buoy-marker-container.edit-mode:active{cursor:grabbing}.buoy-marker-container .buoy-dot{width:14px;height:14px;border-radius:50%;border:2px solid white;transition:transform .2s ease;pointer-events:none!important}.buoy-marker-container:hover .buoy-dot{transform:scale(1.3)}.buoy-marker-container.selected .buoy-dot{transform:scale(1.4);border-color:var(--blue-1);box-shadow:0 0 20px var(--blue-1)!important}.buoy-marker-container .buoy-id-label{margin-top:3px;padding:1px 4px;background:#000000d9;color:var(--blue-1);font-size:9px;font-weight:700;border-radius:3px;white-space:nowrap;font-family:monospace;border:1px solid var(--blue-1);pointer-events:none!important}.leaflet-marker-draggable{cursor:grab!important}.leaflet-marker-dragging,.leaflet-marker-draggable:active{cursor:grabbing!important}.buoy-network-marker{pointer-events:auto!important;cursor:pointer;z-index:1000!important}.buoy-test-marker{pointer-events:auto!important;cursor:grab!important;z-index:1000!important}.buoy-test-marker *{pointer-events:auto!important}.leaflet-marker-icon.buoy-network-marker[style*=draggable],.leaflet-marker-draggable.buoy-network-marker,.buoy-network-marker.leaflet-marker-draggable{cursor:grab!important}.leaflet-marker-dragging.buoy-network-marker,.buoy-network-marker.leaflet-marker-dragging{cursor:grabbing!important;z-index:2000!important}.leaflet-overlay-pane .leaflet-interactive{pointer-events:auto}.leaflet-overlay-pane path:not(.leaflet-interactive){pointer-events:none}.buoy-debug-panel{position:absolute;top:10px;right:240px;z-index:2000;background:#000000e6;border:2px solid var(--blue-1);border-radius:8px;padding:12px;font-size:11px;font-family:monospace;color:var(--blue-1);min-width:180px}.buoy-debug-panel .debug-title{font-weight:700;font-size:12px;margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid var(--blue-1);text-align:center}.buoy-debug-panel .debug-row{display:flex;justify-content:space-between;margin-bottom:4px}.buoy-debug-panel .debug-value{color:var(--blue-2);font-weight:700}.buoy-debug-panel .debug-buoys{margin-top:8px;padding-top:8px;border-top:1px dashed var(--blue-1);max-height:120px;overflow-y:auto}.buoy-debug-panel .debug-buoy-item{color:#aaa;font-size:10px}.leaflet-overlay-pane{z-index:400}.leaflet-zoom-animated path{pointer-events:auto}.map-tooltip{background:#141b26f2!important;border:1px solid var(--border-primary)!important;border-radius:var(--radius-sm)!important;padding:6px 10px!important;box-shadow:var(--shadow-md)!important;font-size:11px!important;color:var(--text-primary)!important;pointer-events:none!important}.map-tooltip:before{border-top-color:#141b26f2!important}.leaflet-tooltip-bottom.map-tooltip:before{border-bottom-color:#141b26f2!important}.map-tooltip .tooltip-content{display:flex;flex-direction:column;gap:2px;max-width:180px}.map-tooltip .tooltip-content strong{font-size:12px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.map-tooltip .tooltip-detail{font-size:10px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.map-tooltip .tooltip-badge{display:inline-block;font-size:8px;font-weight:700;padding:1px 4px;border-radius:2px;text-transform:uppercase;margin-left:6px;vertical-align:middle}.map-tooltip .tooltip-badge.unmatched{background:#b54a4a40;color:var(--accent-red)}.map-tooltip .tooltip-badge.matched,.map-tooltip .tooltip-badge.health-ok{background:#4a7a5a40;color:var(--accent-green)}.map-tooltip .tooltip-badge.health-warning{background:#c97a3a40;color:var(--orange-1)}.map-tooltip .tooltip-badge.health-error{background:#b54a4a40;color:var(--accent-red)}.map-tooltip .tooltip-badge.health-unknown{background:var(--surface-tertiary);color:var(--text-muted)}.map-tooltip.buoy-tooltip{border-color:#4a6fa566!important}.leaflet-tooltip-pane{z-index:650!important}.leaflet-marker-pane{z-index:600!important}.drone-marker{background:transparent!important;border:none!important}.drone-icon{transform-origin:center center;filter:drop-shadow(0 2px 4px rgba(0,0,0,.4))}.drone-icon svg{display:block}.drone-icon.en-route{animation:drone-pulse 2s ease-in-out infinite}.drone-icon.on-station{animation:drone-hover-glow 3s ease-in-out infinite}.drone-icon.returning{animation:drone-return 1.5s ease-in-out infinite}@keyframes drone-return{0%,to{filter:drop-shadow(0 2px 4px rgba(201,122,58,.4))}50%{filter:drop-shadow(0 3px 10px rgba(201,122,58,.8))}}@keyframes drone-pulse{0%,to{filter:drop-shadow(0 2px 4px rgba(93,130,184,.4))}50%{filter:drop-shadow(0 3px 10px rgba(93,130,184,.7))}}@keyframes drone-hover-glow{0%,to{filter:drop-shadow(0 2px 4px rgba(74,122,90,.4))}50%{filter:drop-shadow(0 3px 10px rgba(74,122,90,.8))}}.drone-telemetry-popup .leaflet-popup-content-wrapper{background:#141b26fa!important;border:1px solid rgba(93,130,184,.4)!important;border-radius:var(--radius-md)!important;box-shadow:var(--shadow-lg)!important;padding:0!important}.drone-telemetry-popup .leaflet-popup-content{margin:0!important;min-width:200px!important}.drone-telemetry-popup .leaflet-popup-tip{background:#141b26fa!important;border:1px solid rgba(93,130,184,.4)!important;border-top:none!important;border-right:none!important}.drone-telemetry-popup .leaflet-popup-close-button{color:var(--text-muted)!important;font-size:18px!important;padding:4px 8px!important}.drone-telemetry-popup .leaflet-popup-close-button:hover{color:var(--text-primary)!important}.drone-telemetry-popup .popup-content{padding:10px 14px}.drone-popup-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;padding-bottom:6px;border-bottom:1px solid rgba(255,255,255,.1)}.drone-popup-header strong{font-size:12px;font-weight:600;color:var(--text-primary)}.popup-badge{font-size:9px;font-weight:700;padding:2px 6px;border-radius:3px;text-transform:uppercase}.popup-badge.en-route{background:#5d82b840;color:#5d82b8}.popup-badge.on-station{background:#4a7a5a40;color:var(--accent-green)}.popup-badge.returning{background:#c97a3a40;color:#c97a3a}.drone-telemetry-tooltip .leaflet-tooltip-content{min-width:180px}.drone-tooltip-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px;padding-bottom:4px;border-bottom:1px solid rgba(255,255,255,.15)}.drone-tooltip-header strong{font-size:11px;font-weight:600;color:#e0e6ed}.drone-telemetry{display:flex;flex-direction:column;gap:2px;font-size:10px;font-family:Monaco,Menlo,Consolas,monospace}.telemetry-row{display:flex;align-items:center;gap:4px;white-space:nowrap}.telemetry-label{color:#8b98a5}.telemetry-value{color:#e0e6ed;font-weight:500}.telemetry-value.endurance{color:#5d82b8}.telemetry-value.loiter{color:#48bb78}.telemetry-value.loiter.warning{color:#ed8936;font-weight:600}.telemetry-sep{color:#4a5568;margin:0 2px}.map-tooltip.drone-tooltip{border-color:#5d82b866!important}.map-tooltip .tooltip-badge.en-route{background:#5d82b840;color:#5d82b8}.map-tooltip .tooltip-badge.on-station{background:#4a7a5a40;color:var(--accent-green)}.map-tooltip .tooltip-badge.returning{background:#c97a3a40;color:#c97a3a}.map-hover-tooltip{position:fixed;background:#141b26f2;border:1px solid rgba(93,130,184,.4);border-radius:4px;padding:8px 10px;font-size:11px;color:var(--text-1);z-index:1000;pointer-events:none;min-width:120px;max-width:200px;box-shadow:0 2px 8px #0000004d}.map-hover-tooltip .tooltip-header{font-weight:600;color:#5d82b8;margin-bottom:6px;padding-bottom:4px;border-bottom:1px solid rgba(93,130,184,.2)}.map-hover-tooltip .tooltip-row{display:flex;justify-content:space-between;gap:10px;margin-bottom:3px}.map-hover-tooltip .tooltip-row span:first-child{color:var(--text-2)}.map-hover-tooltip .tooltip-row span:last-child{font-weight:500}.map-hover-tooltip .tooltip-row .warning{color:#c97a3a}.buoy-marker{background:transparent!important;border:none!important}.buoy-icon-container{display:flex;align-items:center;justify-content:center;transition:transform .15s ease}.buoy-icon-container:hover{transform:scale(1.15)}.buoy-label{font-family:JetBrains Mono,monospace;pointer-events:none}.buoy-marker.tracking .buoy-icon-container{filter:drop-shadow(0 0 4px rgba(126,184,255,.6))}.buoy-marker.dimmed .buoy-icon-container{transition:opacity .2s ease}.buoy-marker.tracking.dimmed .buoy-icon-container{opacity:1!important}.clarity-label-marker{background:transparent!important;border:none!important}.clarity-label{display:block;background:#141b26e6;color:#5d82b8;font-size:9px;font-weight:600;font-family:JetBrains Mono,monospace;padding:2px 4px;border-radius:3px;border:1px solid rgba(93,130,184,.3);white-space:nowrap}.live-buoy-marker{background:none!important;border:none!important}@keyframes liveBuoyPulse{0%{transform:scale(.5);opacity:.8}to{transform:scale(1.5);opacity:0}}.isr-assessment-panel{background:var(--bg-secondary);border-radius:var(--radius-md);border:1px solid var(--border-primary);padding:16px;display:flex;flex-direction:column;gap:14px}.assessment-header{display:flex;justify-content:space-between;align-items:center}.header-title{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:600;color:var(--text-primary)}.header-title svg{color:var(--accent-blue)}.assessment-header .close-btn{background:none;border:none;color:var(--text-muted);cursor:pointer;padding:4px;border-radius:var(--radius-sm);transition:var(--transition-fast)}.assessment-header .close-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.assessment-mission-info{display:flex;align-items:center;gap:10px;font-size:12px}.mission-id{font-family:Monaco,Menlo,monospace;color:var(--text-muted)}.mission-status{padding:2px 8px;border-radius:10px;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.3px}.mission-status.on-station{background:#4a7a5a33;color:#4a7a5a}.suspicion-status{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:var(--radius-md);border:2px solid}.suspicion-status.confirmed{background:#4a7a5a1a;border-color:#4a7a5a}.suspicion-status.not-confirmed{background:#5d82b81a;border-color:var(--accent-blue)}.status-icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:50%}.suspicion-status.confirmed .status-icon{background:#4a7a5a4d;color:#4a7a5a}.suspicion-status.not-confirmed .status-icon{background:#5d82b84d;color:var(--accent-blue)}.status-content{flex:1;display:flex;flex-direction:column;gap:2px}.status-label{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px}.status-value{font-size:16px;font-weight:700}.suspicion-status.confirmed .status-value{color:#4a7a5a}.suspicion-status.not-confirmed .status-value{color:var(--accent-blue)}.confidence-badge{font-size:14px;font-weight:600;padding:4px 10px;border-radius:8px;background:var(--bg-tertiary);color:var(--text-primary)}.assessment-reasons{display:flex;flex-direction:column;gap:6px;padding:10px 12px;background:var(--bg-tertiary);border-radius:var(--radius-sm)}.reason-item{display:flex;gap:8px;font-size:12px;color:var(--text-secondary)}.reason-bullet{color:var(--text-muted);flex-shrink:0}.dispatch-btn,.false-positive-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;border-radius:var(--radius-md);font-size:13px;font-weight:600;cursor:pointer;transition:var(--transition-fast);border:none}.dispatch-btn.primary{background:#4a7a5a;color:#fff}.dispatch-btn.primary:hover:not(:disabled){background:#5a8a6a}.dispatch-btn.primary:disabled{opacity:.6;cursor:not-allowed}.false-positive-btn.secondary{background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-primary)}.false-positive-btn.secondary:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.action-completed{display:flex;align-items:center;justify-content:center;gap:8px;padding:12px 16px;border-radius:var(--radius-md);font-size:13px;font-weight:500}.action-completed.dispatch{background:#4a7a5a26;color:#4a7a5a}.action-completed.false-positive{background:#5d82b826;color:var(--accent-blue)}.video-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 16px;background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-md);color:var(--text-secondary);font-size:13px;cursor:pointer;transition:var(--transition-fast)}.video-btn:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--accent-blue)}.prototype-notice{font-size:10px;color:var(--orange-1);text-align:center;padding:6px 8px;background:#c97a3a1a;border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.3px}.video-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:10000}.video-modal{background:#0d1117;border-radius:8px;width:90vw;max-width:800px;overflow:hidden;box-shadow:0 20px 60px #00000080;border:1px solid #2d3748}.video-modal-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#161b22;border-bottom:1px solid #2d3748}.modal-title{font-size:14px;font-weight:600;color:#e0e6ed}.modal-close-btn{background:none;border:none;color:#8b98a5;cursor:pointer;padding:4px;border-radius:4px;transition:all .2s}.modal-close-btn:hover{background:#2d3748;color:#e0e6ed}.video-frame{position:relative;aspect-ratio:16 / 9;background:linear-gradient(180deg,#1a2a3a,#0d1820,#1a2530);overflow:hidden}.ocean-bg{position:absolute;bottom:0;left:0;right:0;height:40%;overflow:hidden}.wave{position:absolute;width:200%;height:100%;background:linear-gradient(180deg,transparent 40%,rgba(74,111,165,.15) 50%,rgba(74,111,165,.25) 100%)}.wave1{animation:wave 8s linear infinite;opacity:.6}.wave2{animation:wave 12s linear infinite;animation-delay:-3s;opacity:.4}.wave3{animation:wave 10s linear infinite;animation-delay:-5s;opacity:.3}@keyframes wave{0%{transform:translate(0)}to{transform:translate(-50%)}}.trawler-animation{position:absolute;width:60%;height:auto;left:20%;bottom:15%;animation:boat-bob 3s ease-in-out infinite}@keyframes boat-bob{0%,to{transform:translateY(0) rotate(0)}25%{transform:translateY(-3px) rotate(.5deg)}50%{transform:translateY(2px) rotate(-.3deg)}75%{transform:translateY(-2px) rotate(.3deg)}}.boom-group{animation:boom-swing 4s ease-in-out infinite;transform-origin:280px 100px}@keyframes boom-swing{0%,to{transform:rotate(0)}50%{transform:rotate(3deg)}}.net{animation:net-move 2s ease-in-out infinite}@keyframes net-move{0%,to{transform:translate(0) translateY(0)}50%{transform:translate(3px) translateY(2px)}}.smoke-group{animation:smoke-rise 3s ease-out infinite}.smoke1{animation:smoke-particle 2s ease-out infinite}.smoke2{animation:smoke-particle 2.5s ease-out infinite;animation-delay:.5s}.smoke3{animation:smoke-particle 3s ease-out infinite;animation-delay:1s}@keyframes smoke-particle{0%{transform:translateY(0) translate(0);opacity:.6}50%{transform:translateY(-15px) translate(5px);opacity:.4}to{transform:translateY(-30px) translate(10px);opacity:0}}.antenna-light{animation:blink 1s ease-in-out infinite}@keyframes blink{0%,to{opacity:1}50%{opacity:.3}}.video-hud{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none}.hud-top-left{position:absolute;top:12px;left:12px;display:flex;flex-direction:column;gap:2px}.hud-label{font-family:Monaco,Menlo,monospace;font-size:12px;color:#4a7a5a;font-weight:600}.hud-value{font-family:Monaco,Menlo,monospace;font-size:11px;color:#4a7a5a}.hud-top-right{position:absolute;top:12px;right:12px}.live-indicator{background:#e53e3e;color:#fff;font-size:10px;font-weight:700;padding:3px 10px;border-radius:3px;letter-spacing:.5px;animation:pulse-live 2s infinite}.hud-bottom-left{position:absolute;bottom:40px;left:12px}.hud-crosshair{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:80px;height:80px}.crosshair-h,.crosshair-v{position:absolute;background:#4a7a5a99}.crosshair-h{width:100%;height:1px;top:50%;left:0}.crosshair-v{width:1px;height:100%;top:0;left:50%}.simulated-label{position:absolute;bottom:10px;left:50%;transform:translate(-50%);background:#000000b3;color:#c97a3a;font-size:11px;font-weight:600;padding:4px 12px;border-radius:4px;text-transform:uppercase;letter-spacing:.5px}.video-modal-footer{padding:10px 16px;background:#161b22;border-top:1px solid #2d3748}.feed-info{font-size:11px;color:#718096;font-family:Monaco,Menlo,monospace}.tap-section{background:var(--bg-tertiary);border:1px solid var(--border-secondary);border-radius:var(--radius-md);padding:var(--spacing-md)}.tap-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--spacing-sm)}.tap-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted)}.tap-refresh{padding:2px;color:var(--text-muted);border-radius:var(--radius-sm)}.tap-refresh:hover{color:var(--accent-blue);background:var(--bg-secondary)}.tap-spinning{animation:tap-spin 1s linear infinite}@keyframes tap-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.tap-clarity-bar{position:relative;height:22px;background:var(--bg-secondary);border-radius:var(--radius-sm);overflow:hidden;margin-bottom:var(--spacing-sm)}.tap-clarity-fill{height:100%;transition:width .3s ease}.tap-clarity-excellent{background:var(--green-1)}.tap-clarity-good{background:var(--accent-blue)}.tap-clarity-fair{background:var(--orange-1)}.tap-clarity-poor{background:var(--accent-red)}.tap-clarity-text{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;color:var(--text-primary);text-shadow:0 1px 2px rgba(0,0,0,.5)}.tap-stats{display:flex;flex-direction:column;gap:4px;margin-bottom:var(--spacing-sm)}.tap-stat{display:flex;justify-content:space-between;align-items:center;padding:2px 0}.tap-stat-label{font-size:10px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px}.tap-stat-value{font-size:12px;color:var(--text-primary)}.tap-stat-value.mono{font-family:var(--font-mono)}.tap-weather{border-top:1px solid var(--border-secondary);padding-top:var(--spacing-sm)}.tap-weather-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.tap-weather-title{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.3px;color:var(--text-muted)}.tap-weather-time{font-size:10px;color:var(--text-dimmed);font-family:var(--font-mono)}.tap-weather-grid{display:flex;flex-wrap:wrap;gap:6px}.tap-wx-item{font-size:11px;color:var(--text-secondary);font-family:var(--font-mono);background:var(--bg-secondary);padding:1px 6px;border-radius:var(--radius-sm)}.tap-weather-fallback{font-size:11px;color:var(--text-muted);display:flex;flex-direction:column;gap:2px}.tap-fallback-note{font-size:10px;color:var(--text-dimmed);font-style:italic}.action-drawer{width:100%;height:100%;min-height:0;min-width:0;background:var(--bg-secondary);border-left:1px solid var(--border-primary);display:flex;flex-direction:column;overflow:hidden}.drawer-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--border-primary);background:var(--bg-tertiary);flex-shrink:0}.drawer-header h2{font-size:16px;font-weight:600;color:var(--text-primary);margin:0}.close-btn{width:28px;height:28px;border-radius:var(--radius-sm);font-size:20px;color:var(--text-muted);display:flex;align-items:center;justify-content:center;transition:var(--transition-fast)}.close-btn:hover{background:var(--bg-secondary);color:var(--text-primary)}.workflow-steps{display:flex;border-bottom:1px solid var(--border-primary);background:var(--bg-tertiary);flex-shrink:0}.workflow-step{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;padding:var(--spacing-sm) var(--spacing-xs);background:none;border:none;border-bottom:2px solid transparent;cursor:pointer;transition:var(--transition-fast)}.workflow-step:hover{background:var(--bg-hover)}.workflow-step.active{border-bottom-color:var(--accent-blue);background:var(--bg-active)}.step-number{width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:600;color:var(--text-muted);background:var(--bg-secondary);border-radius:50%}.workflow-step.active .step-number{background:var(--accent-blue);color:#fff}.step-label{font-size:10px;font-weight:500;color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px}.workflow-step.active .step-label{color:var(--accent-blue)}.drawer-content{flex:1;overflow-y:auto;padding:var(--spacing-md)}.detail-section{margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-lg);border-bottom:1px solid var(--border-secondary)}.detail-section:last-child{border-bottom:none}.section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-md)}.section-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted)}.status-badge{font-size:10px;font-weight:600;padding:3px 8px;border-radius:var(--radius-sm)}.status-badge.unmatched{background:var(--red-bg);color:var(--accent-red)}.status-badge.matched{background:var(--green-bg);color:var(--accent-green)}.status-badge.ais-live{background:var(--blue-bg);color:var(--accent-blue)}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-md)}.detail-item{display:flex;flex-direction:column;gap:2px}.detail-item.full-width{grid-column:1 / -1}.detail-label{font-size:10px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px}.detail-value{font-size:13px;color:var(--text-primary)}.detail-value.mono{font-family:var(--font-mono)}.id-strip{padding-bottom:var(--spacing-md)!important;margin-bottom:var(--spacing-md)!important}.id-strip-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}.id-strip-row{display:flex;gap:12px;margin-bottom:3px}.id-strip-row:last-child{margin-bottom:0}.id-strip-field{display:flex;align-items:baseline;gap:6px;min-width:0}.id-strip-field.right{margin-left:auto;text-align:right}.id-strip-field.full{flex:1}.id-strip-label{font-size:10px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px;white-space:nowrap;flex-shrink:0}.id-strip-value{font-size:12px;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:inline-flex;align-items:center;gap:4px}.id-strip-value.mono{font-family:var(--font-mono)}.id-copy-btn{display:inline-flex;align-items:center;justify-content:center;width:18px;height:18px;background:none;border:1px solid transparent;border-radius:3px;color:var(--text-muted);cursor:pointer;padding:0;flex-shrink:0;transition:all .15s ease}.id-copy-btn:hover{background:var(--bg-hover);border-color:var(--border-primary);color:var(--accent-blue)}.prediction-cards{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-sm)}.prediction-card{background:var(--bg-tertiary);padding:var(--spacing-md);border-radius:var(--radius-sm);display:flex;flex-direction:column;gap:2px}.prediction-label{font-size:10px;color:var(--text-muted);text-transform:uppercase}.prediction-value{font-size:14px;font-weight:600;color:var(--text-primary)}.prediction-value.confidence-high{color:var(--confidence-high)}.prediction-value.confidence-medium{color:var(--confidence-medium)}.prediction-value.confidence-low{color:var(--confidence-low)}.prediction-sub{font-size:10px;color:var(--text-muted)}.track-info{margin-top:var(--spacing-md);padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-tertiary);border-radius:var(--radius-sm);font-size:12px;display:flex;justify-content:space-between}.track-label{color:var(--text-muted)}.track-value{color:var(--text-secondary)}.classification-section{background:var(--bg-tertiary);border:1px solid var(--border-secondary);border-radius:var(--radius-md)}.classification-section .section-header{display:flex;justify-content:space-between;align-items:center}.classification-grid{display:flex;flex-direction:column;gap:8px}.classification-row{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:13px}.class-label{color:var(--text-muted);min-width:60px}.class-value{flex:1;color:var(--text-primary);font-weight:500}.class-conf{font-size:11px;font-weight:600;padding:2px 8px;border-radius:10px;background:var(--bg-secondary)}.class-conf.conf-high{color:var(--green-1);background:#48bb7826}.class-conf.conf-medium{color:var(--yellow-1);background:#ecc94b26}.class-conf.conf-low{color:var(--orange-1);background:#ed893626}.classification-notes{margin-top:8px;padding-top:8px;border-top:1px dashed var(--border-secondary);font-size:12px;color:var(--text-muted);font-style:italic}.gear-cues{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-top:8px;padding-top:8px;border-top:1px dashed var(--border-secondary)}.cues-label{font-size:11px;color:var(--text-muted)}.gear-cue{font-size:11px;color:var(--text-secondary);background:var(--bg-primary);padding:3px 8px;border-radius:var(--radius-sm);border:1px solid var(--border-secondary)}.fishing-method-card{grid-column:1 / -1;background:var(--bg-tertiary);border:1px solid var(--border-secondary);border-radius:var(--radius-md);padding:var(--spacing-md);margin-top:var(--spacing-sm)}.fishing-method-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px;padding-bottom:8px;border-bottom:1px solid var(--border-secondary)}.fishing-method-name{font-size:14px;font-weight:600;color:var(--text-primary)}.fishing-method-card .classification-grid{margin-bottom:0}.fishing-method-card .gear-cues{margin-top:8px;padding-top:8px;border-top:1px dashed var(--border-secondary)}.verification-intro{font-size:13px;color:var(--text-secondary);margin-bottom:var(--spacing-md);line-height:1.5}.verification-options{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.verification-option{display:flex;align-items:flex-start;gap:var(--spacing-md);padding:var(--spacing-md);background:var(--bg-tertiary);border:1px solid var(--border-secondary);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-fast)}.verification-option:hover{border-color:var(--border-primary)}.verification-option.selected{border-color:var(--accent-blue);background:var(--bg-active)}.verification-option input[type=radio]{display:none}.option-icon{width:28px;height:28px;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;border-radius:50%;flex-shrink:0}.option-icon.confirmed{background:#4a7a5a33;color:var(--accent-green)}.option-icon.false-positive{background:#b54a4a33;color:var(--accent-red)}.option-icon.needs-info{background:#c97a3a33;color:var(--accent-yellow)}.option-text{display:flex;flex-direction:column;gap:2px}.option-text strong{font-size:13px;color:var(--text-primary)}.option-text small{font-size:11px;color:var(--text-muted)}.verification-notes{display:flex;flex-direction:column;gap:var(--spacing-xs)}.verification-notes label{font-size:11px;color:var(--text-muted);text-transform:uppercase}.verification-notes textarea{width:100%;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);color:var(--text-primary);font-family:inherit;font-size:13px;resize:vertical}.verification-notes textarea:focus{outline:none;border-color:var(--accent-blue)}.verification-notes textarea::placeholder{color:var(--text-muted)}.decision-notice{display:flex;gap:var(--spacing-md);padding:var(--spacing-md);border-radius:var(--radius-md);margin-bottom:var(--spacing-md)}.decision-notice.confirmed{background:var(--green-bg);border:1px solid rgba(74,122,90,.3)}.decision-notice.false-positive{background:#8b949e1a;border:1px solid rgba(139,148,158,.3)}.decision-notice.needs-info{background:var(--orange-bg);border:1px solid rgba(201,122,58,.3)}.notice-icon{font-size:18px;flex-shrink:0}.decision-notice p{font-size:13px;color:var(--text-secondary);line-height:1.5;margin:0}.documentation-intro{font-size:13px;color:var(--text-secondary);margin-bottom:var(--spacing-md);line-height:1.5}.incident-summary{background:var(--bg-tertiary);border-radius:var(--radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-md)}.summary-row{display:flex;justify-content:space-between;padding:var(--spacing-xs) 0;border-bottom:1px solid var(--border-secondary)}.summary-row:last-child{border-bottom:none}.summary-label{font-size:12px;color:var(--text-muted)}.summary-value{font-size:12px;font-weight:500;color:var(--text-primary)}.summary-value.verification-confirmed{color:var(--accent-green)}.summary-value.verification-false_positive{color:var(--text-muted)}.create-incident-btn{width:100%;padding:var(--spacing-md);background:var(--accent-blue);color:#fff;border:none;border-radius:var(--radius-md);font-size:14px;font-weight:500;cursor:pointer;transition:var(--transition-fast);margin-bottom:var(--spacing-sm)}.create-incident-btn:hover{background:var(--blue-2)}.incident-note{font-size:11px;color:var(--text-muted);text-align:center;font-style:italic}.step-navigation{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--border-secondary)}.back-step-btn{flex:1;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:13px;cursor:pointer;transition:var(--transition-fast)}.back-step-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.next-step-btn{flex:2;padding:var(--spacing-sm) var(--spacing-md);background:var(--accent-blue);border:none;border-radius:var(--radius-sm);color:#fff;font-size:13px;font-weight:500;cursor:pointer;transition:var(--transition-fast)}.next-step-btn:hover:not(:disabled){background:var(--blue-2)}.next-step-btn:disabled{opacity:.5;cursor:not-allowed}.close-drawer-btn{flex:1;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:13px;cursor:pointer;transition:var(--transition-fast)}.close-drawer-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.actions-section{padding-top:var(--spacing-md)}.zoom-btn{width:100%;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:13px;margin-bottom:var(--spacing-md);transition:var(--transition-fast)}.zoom-btn:hover{background:var(--border-primary);color:var(--text-primary)}.action-buttons{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.action-btn{display:flex;align-items:center;gap:var(--spacing-md);padding:var(--spacing-md);border-radius:var(--radius-md);font-size:13px;font-weight:500;transition:var(--transition-fast);border:1px solid transparent}.action-icon{font-size:20px}.action-text{flex:1;text-align:left}.action-btn.drone{background:var(--blue-bg);color:var(--accent-blue);border-color:#4a6fa54d}.action-btn.drone:hover:not(:disabled){background:#4a6fa533}.action-btn.law{background:var(--red-bg);color:var(--accent-red);border-color:#b54a4a4d}.action-btn.law:hover:not(:disabled){background:#b54a4a33}.action-btn.surveillance{background:var(--orange-bg);color:var(--accent-yellow);border-color:#c97a3a4d}.action-btn.surveillance:hover:not(:disabled){background:#c97a3a33}.mission-notes{display:flex;flex-direction:column;gap:var(--spacing-xs)}.mission-notes label{font-size:11px;color:var(--text-muted);text-transform:uppercase}.mission-notes textarea{width:100%;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);color:var(--text-primary);font-family:inherit;font-size:13px;resize:vertical}.mission-notes textarea:focus{outline:none;border-color:var(--accent-blue)}.mission-notes textarea::placeholder{color:var(--text-muted)}.notes-text{font-size:13px;color:var(--text-secondary);line-height:1.5;font-style:italic}.triangulation-badge{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:20px;padding:0 6px;border-radius:10px;font-size:11px;font-weight:700}.triangulation-badge.full{background:var(--accent-green);color:var(--bg-primary)}.triangulation-badge.partial{background:var(--orange-1);color:var(--bg-primary)}.triangulation-badge.insufficient{background:var(--accent-red);color:#fff}.triangulation-status{padding:8px 10px;border-radius:6px;font-size:12px;font-weight:500;text-align:center;margin-bottom:10px}.triangulation-status.full{background:var(--green-bg);color:var(--accent-green);border:1px solid var(--accent-green)}.triangulation-status.partial{background:var(--orange-bg);color:var(--orange-1);border:1px solid var(--orange-1)}.triangulation-status.insufficient{background:var(--red-bg);color:var(--accent-red);border:1px solid var(--accent-red)}.tracking-buoys-table{font-size:11px;border:1px solid var(--border-primary);border-radius:6px;overflow:hidden}.tracking-header{display:grid;grid-template-columns:50px 70px 60px 1fr;gap:4px;padding:6px 8px;background:var(--bg-tertiary);font-weight:600;color:var(--text-muted);text-transform:uppercase;font-size:10px;letter-spacing:.3px}.tracking-row{display:grid;grid-template-columns:50px 70px 60px 1fr;gap:4px;padding:6px 8px;border-top:1px solid var(--border-primary);transition:background .15s}.tracking-row:hover{background:var(--bg-tertiary)}.tracking-row.out-of-range{opacity:.5}.tracking-buoy-id{font-family:monospace;font-weight:600;color:var(--blue-1)}.tracking-distance{font-family:monospace;color:var(--text-secondary)}.tracking-clarity{font-weight:600}.tracking-clarity.good{color:var(--accent-green)}.tracking-clarity.fair{color:var(--orange-1)}.tracking-clarity.poor{color:var(--accent-red)}.tracking-status{font-size:10px;text-transform:uppercase;letter-spacing:.3px}.tracking-status.active{color:var(--accent-green)}.tracking-status.inactive{color:var(--text-muted)}.buoy-status-badge{display:inline-block;padding:3px 10px;border-radius:12px;font-size:11px;font-weight:600;color:#fff;text-transform:uppercase}.health-badge{font-size:9px;font-weight:600;padding:2px 6px;border-radius:var(--radius-sm);text-transform:uppercase}.health-badge.ok{background:#4a7a5a33;color:var(--accent-green)}.health-badge.warning{background:#c97a3a33;color:var(--orange-1)}.health-badge.error{background:#b54a4a33;color:var(--accent-red)}.health-badge.unknown{background:var(--surface-tertiary);color:var(--text-muted)}.detail-value.warning{color:var(--orange-1)!important}.isr-workflow{background:var(--bg-tertiary);border-radius:var(--radius-md);padding:var(--spacing-md);margin-bottom:var(--spacing-md)}.isr-stepper{display:flex;gap:var(--spacing-xs);margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--border-secondary)}.isr-step{flex:1;display:flex;flex-direction:column;align-items:center;gap:4px;padding:var(--spacing-xs);border-radius:var(--radius-sm);transition:var(--transition-fast);position:relative}.isr-step:after{content:"";position:absolute;top:14px;right:-8px;width:12px;height:2px;background:var(--border-primary)}.isr-step:last-child:after{display:none}.isr-step.completed:after{background:var(--accent-green)}.isr-step-number{width:28px;height:28px;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:var(--text-muted);background:var(--bg-secondary);border:2px solid var(--border-primary);border-radius:50%;transition:var(--transition-fast)}.isr-step.active .isr-step-number{background:var(--accent-blue);border-color:var(--accent-blue);color:#fff}.isr-step.completed .isr-step-number{background:var(--accent-green);border-color:var(--accent-green);color:#fff}.isr-step-label{font-size:9px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px;text-align:center}.isr-step.active .isr-step-label{color:var(--accent-blue)}.isr-step.completed .isr-step-label{color:var(--accent-green)}.isr-step-time{font-size:8px;font-family:var(--font-mono);color:var(--text-muted)}.isr-step-content{padding:var(--spacing-sm) 0}.isr-step-content h4{font-size:14px;font-weight:600;color:var(--text-primary);margin:0 0 var(--spacing-sm) 0}.isr-step-content p{font-size:12px;color:var(--text-secondary);margin:0 0 var(--spacing-md) 0;line-height:1.5}.isr-target-summary,.isr-launch-summary{background:var(--bg-secondary);border-radius:var(--radius-sm);padding:var(--spacing-md);margin-bottom:var(--spacing-md)}.isr-target-summary .summary-item,.isr-launch-summary .summary-item,.isr-flight-status .summary-item,.isr-on-station .summary-item{display:flex;justify-content:space-between;padding:var(--spacing-xs) 0;border-bottom:1px solid var(--border-secondary)}.isr-target-summary .summary-item:last-child,.isr-launch-summary .summary-item:last-child,.isr-flight-status .summary-item:last-child,.isr-on-station .summary-item:last-child{border-bottom:none}.summary-item .summary-label{font-size:11px;color:var(--text-muted)}.summary-item .summary-value{font-size:12px;font-weight:500;color:var(--text-primary);font-family:var(--font-mono)}.summary-item .summary-value.eta{color:var(--accent-blue);font-size:14px;font-weight:700}.isr-base-options{display:flex;flex-direction:column;gap:var(--spacing-sm);margin-bottom:var(--spacing-md)}.isr-base-option{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);background:var(--bg-secondary);border:2px solid var(--border-primary);border-radius:var(--radius-md);cursor:pointer;transition:var(--transition-fast)}.isr-base-option:hover{border-color:var(--accent-blue);background:var(--bg-active)}.isr-base-option.selected{border-color:var(--accent-blue);background:var(--blue-bg)}.isr-base-option.recommended{border-style:solid}.base-info{display:flex;flex-direction:column;gap:2px}.base-name{font-size:13px;font-weight:600;color:var(--text-primary)}.base-coords{font-size:10px;font-family:var(--font-mono);color:var(--text-muted)}.base-distance{display:flex;flex-direction:column;align-items:flex-end;gap:2px;font-size:14px;font-weight:600;font-family:var(--font-mono);color:var(--text-primary)}.recommended-badge{font-size:9px;font-weight:600;color:var(--accent-green);text-transform:uppercase}.isr-flight-status{background:var(--bg-secondary);border-radius:var(--radius-sm);padding:var(--spacing-md);margin-bottom:var(--spacing-md)}.flight-progress{margin-bottom:var(--spacing-md)}.progress-bar{height:8px;background:var(--bg-tertiary);border-radius:4px;overflow:hidden}.progress-fill{height:100%;background:var(--accent-blue);border-radius:4px;transition:width .3s ease;animation:progress-pulse 1.5s ease-in-out infinite}@keyframes progress-pulse{0%,to{opacity:1}50%{opacity:.7}}.isr-on-station{background:var(--bg-secondary);border-radius:var(--radius-sm);padding:var(--spacing-md);margin-bottom:var(--spacing-md)}.on-station-indicator{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-md);margin-bottom:var(--spacing-md);background:#4a7a5a1a;border:1px solid var(--accent-green);border-radius:var(--radius-md)}.on-station-indicator span{font-size:12px;font-weight:700;color:var(--accent-green);text-transform:uppercase;letter-spacing:1px}.isr-actions{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-md)}.isr-cancel-btn,.isr-back-btn{flex:1;padding:var(--spacing-sm) var(--spacing-md);background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:13px;font-weight:500;cursor:pointer;transition:var(--transition-fast)}.isr-cancel-btn:hover,.isr-back-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.isr-confirm-btn{flex:2;padding:var(--spacing-sm) var(--spacing-md);background:var(--accent-blue);border:none;border-radius:var(--radius-sm);color:#fff;font-size:13px;font-weight:600;cursor:pointer;transition:var(--transition-fast)}.isr-confirm-btn:hover:not(:disabled){background:var(--blue-2)}.isr-confirm-btn:disabled{opacity:.5;cursor:not-allowed}.isr-launch-btn{flex:2;padding:var(--spacing-sm) var(--spacing-md);background:var(--accent-green);border:none;border-radius:var(--radius-sm);color:#fff;font-size:13px;font-weight:600;cursor:pointer;transition:var(--transition-fast)}.isr-launch-btn:hover:not(:disabled){background:#5a9d6c}.isr-launch-btn:disabled{opacity:.5;cursor:not-allowed}.action-icon-svg{width:20px;height:20px;flex-shrink:0}.notice-icon-svg{width:18px;height:18px;flex-shrink:0}.notice-icon-info{width:18px;height:18px;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;color:var(--text-muted);background:var(--bg-secondary);border-radius:50%;flex-shrink:0}.zoom-icon{margin-right:var(--spacing-xs)}.edit-position-btn{padding:4px 10px;font-size:11px;font-weight:500;background:var(--bg-tertiary);border:1px solid var(--border-secondary);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;transition:all .15s ease}.edit-position-btn:hover{background:var(--blue-1);color:var(--bg-primary);border-color:var(--blue-1)}.position-display{padding:8px 0}.position-display .position-value{font-size:14px;color:var(--text-primary)}.position-edit-form{display:flex;flex-direction:column;gap:12px;padding:12px 0}.position-input-row{display:flex;gap:12px}.position-input-row label{flex:1;display:flex;flex-direction:column;gap:4px}.position-input-row label span{font-size:11px;color:var(--text-muted);text-transform:uppercase;font-weight:500}.position-input-row input{background:var(--bg-secondary);border:1px solid var(--border-secondary);border-radius:var(--radius-sm);padding:8px 10px;font-size:13px;font-family:monospace;color:var(--text-primary)}.position-input-row input:focus{outline:none;border-color:var(--blue-1)}.position-edit-actions{display:flex;gap:8px}.save-position-btn{flex:1;padding:8px 16px;background:var(--blue-1);color:var(--bg-primary);border:none;border-radius:var(--radius-sm);font-size:12px;font-weight:600;cursor:pointer;transition:all .15s ease}.save-position-btn:hover{background:var(--blue-2)}.save-position-btn:disabled{opacity:.6;cursor:not-allowed}.cancel-position-btn{padding:8px 16px;background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-secondary);border-radius:var(--radius-sm);font-size:12px;font-weight:500;cursor:pointer;transition:all .15s ease}.cancel-position-btn:hover{background:var(--bg-secondary);color:var(--text-primary)}.nudge-controls{margin-top:16px;padding-top:16px;border-top:1px solid var(--border-secondary)}.nudge-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.nudge-label{font-size:11px;font-weight:500;color:var(--text-muted);text-transform:uppercase}.nudge-distance-select{padding:4px 8px;background:var(--bg-tertiary);border:1px solid var(--border-secondary);border-radius:var(--radius-sm);color:var(--text-primary);font-size:11px;font-weight:600;cursor:pointer}.nudge-distance-select:hover{border-color:var(--blue-1)}.nudge-distance-select:focus{outline:none;border-color:var(--blue-1)}.nudge-dpad{display:flex;flex-direction:column;align-items:center;gap:4px}.nudge-middle-row{display:flex;align-items:center;gap:4px}.nudge-center-indicator{width:48px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--bg-tertiary);border:1px solid var(--border-secondary);border-radius:var(--radius-sm)}.nudge-center-indicator .distance-indicator{font-size:10px;font-weight:600;color:var(--blue-1)}.nudge-center-indicator .saving-indicator{color:var(--text-muted);animation:pulse .8s infinite}@keyframes pulse{0%,to{opacity:.5}50%{opacity:1}}.nudge-btn{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--bg-tertiary);border:1px solid var(--border-secondary);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;transition:all .15s ease}.nudge-btn:hover{background:var(--blue-1);color:var(--bg-primary);border-color:var(--blue-1);transform:scale(1.05)}.nudge-btn:active{transform:scale(.95)}.nudge-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.nudge-btn svg{width:16px;height:16px}.nudge-btn.north{margin-bottom:2px}.nudge-btn.south{margin-top:2px}.nudge-hint{margin-top:10px;font-size:10px;color:var(--text-muted);text-align:center}.isr-payload-panel{display:flex;flex-direction:column;gap:16px;padding:16px;background:#1a1f2e;border-radius:8px;color:#e0e6ed}.isr-payload-panel.modal{background:#0d1117;max-width:500px;max-height:90vh;overflow-y:auto}.isr-payload-panel .panel-header{display:flex;justify-content:space-between;align-items:center;padding-bottom:12px;border-bottom:1px solid #2d3748}.isr-payload-panel .panel-header h3{display:flex;align-items:center;gap:8px;margin:0;font-size:16px;font-weight:600;color:#e0e6ed}.isr-payload-panel .panel-header .close-btn{background:none;border:none;color:#8b98a5;cursor:pointer;padding:4px;border-radius:4px;transition:all .2s}.isr-payload-panel .panel-header .close-btn:hover{background:#2d3748;color:#e0e6ed}.not-on-station{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 20px;text-align:center;color:#8b98a5}.not-on-station svg{width:48px;height:48px;color:#4a5568;margin-bottom:16px}.not-on-station p{margin:0 0 8px;font-size:16px;font-weight:500;color:#a0aec0}.not-on-station .status-note{font-size:12px;color:#718096}.video-section{display:flex;flex-direction:column;gap:8px}.video-container{position:relative;background:#000;border-radius:6px;overflow:hidden;aspect-ratio:16 / 9}.video-container iframe{width:100%;height:100%}.video-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;background:linear-gradient(135deg,#1a202c,#2d3748);color:#718096}.video-placeholder svg{width:48px;height:48px;margin-bottom:12px;color:#4a5568}.video-placeholder span{font-size:14px}.video-placeholder .placeholder-note{font-size:11px;color:#4a5568;margin-top:4px}.video-overlay{position:absolute;top:8px;left:8px;right:8px;display:flex;justify-content:space-between;align-items:flex-start;pointer-events:none}.live-badge{background:#e53e3e;color:#fff;font-size:10px;font-weight:700;padding:3px 8px;border-radius:3px;letter-spacing:.5px;animation:pulse-live 2s infinite}.video-overlay .timestamp{background:#000000b3;color:#e0e6ed;font-size:11px;font-family:Monaco,Menlo,monospace;padding:3px 8px;border-radius:3px}.video-controls{display:flex;justify-content:flex-end}.stream-btn{display:flex;align-items:center;gap:6px;background:#2d3748;border:1px solid #4a5568;color:#e0e6ed;padding:6px 12px;border-radius:4px;font-size:12px;cursor:pointer;transition:all .2s}.stream-btn:hover:not(:disabled){background:#3d4a5c;border-color:#5d82b8}.stream-btn:disabled{opacity:.5;cursor:not-allowed}.cv-assessment{background:#232b3e;border-radius:6px;padding:12px;border:1px solid #2d3748}.assessment-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;padding-bottom:8px;border-bottom:1px solid #2d3748}.assessment-title{font-size:13px;font-weight:600;color:#5d82b8;text-transform:uppercase;letter-spacing:.5px}.assessment-time{font-size:11px;font-family:Monaco,Menlo,monospace;color:#718096}.assessment-grid{display:flex;flex-direction:column;gap:12px}.assessment-item{display:flex;flex-direction:column;gap:4px}.item-label{display:flex;align-items:center;gap:6px;font-size:11px;color:#718096;text-transform:uppercase;letter-spacing:.3px}.item-label svg{width:14px;height:14px}.item-value{font-size:14px;font-weight:500;color:#e0e6ed;margin-left:20px}.item-confidence{font-size:11px;margin-left:20px}.item-confidence.conf-high{color:#48bb78}.item-confidence.conf-medium{color:#ecc94b}.item-confidence.conf-low{color:#ed8936}.assessment-notes{margin-top:8px;padding-top:8px;border-top:1px dashed #2d3748;font-size:12px;color:#a0aec0;font-style:italic}.propulsion-section,.fishing-section{margin-top:12px;padding-top:12px;border-top:1px solid #2d3748}.section-label{display:flex;align-items:center;gap:6px;font-size:11px;color:#718096;text-transform:uppercase;letter-spacing:.3px;margin-bottom:8px}.section-label svg{width:14px;height:14px}.propulsion-details,.fishing-details{display:flex;flex-wrap:wrap;gap:8px 16px;margin-left:20px}.prop-item,.fishing-method{display:flex;align-items:center;gap:6px;font-size:13px;color:#e0e6ed}.conf-pill{font-size:10px;font-weight:600;padding:2px 6px;border-radius:10px;background:#2d3748}.conf-pill.conf-high{color:#48bb78;background:#48bb7826}.conf-pill.conf-medium{color:#ecc94b;background:#ecc94b26}.conf-pill.conf-low{color:#ed8936;background:#ed893626}.gear-cues{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px;width:100%}.gear-cue{font-size:11px;color:#a0aec0;background:#1e2433;padding:3px 8px;border-radius:4px;border:1px solid #2d3748}.evidence-log{background:#1e2433;border-radius:6px;overflow:hidden;border:1px solid #2d3748}.log-header{display:flex;justify-content:space-between;align-items:center;padding:10px 12px;background:#232b3e;border-bottom:1px solid #2d3748}.log-title{font-size:12px;font-weight:600;color:#a0aec0}.log-count{font-size:11px;color:#718096}.log-entries{max-height:150px;overflow-y:auto}.log-entry{display:flex;align-items:center;gap:10px;padding:8px 12px;border-bottom:1px solid #1a1f2e;font-size:12px}.log-entry:last-child{border-bottom:none}.entry-time{font-family:Monaco,Menlo,monospace;font-size:10px;color:#718096;flex-shrink:0}.entry-content{flex:1;color:#a0aec0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.entry-conf{font-size:10px;font-weight:600;flex-shrink:0}.entry-conf.conf-high{color:#48bb78}.entry-conf.conf-medium{color:#ecc94b}.entry-conf.conf-low{color:#ed8936}.isr-disclaimer{background:#2d3748;padding:10px 12px;border-radius:4px;font-size:11px;color:#a0aec0;border-left:3px solid #ed8936}.isr-disclaimer strong{color:#ed8936}.stream-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:10000}.stream-modal{background:#0d1117;border-radius:8px;width:90vw;max-width:1200px;overflow:hidden;box-shadow:0 20px 60px #00000080}.stream-modal .modal-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#161b22;border-bottom:1px solid #2d3748}.stream-modal .modal-header h3{margin:0;font-size:14px;color:#e0e6ed}.stream-modal .modal-header .close-btn{background:none;border:none;color:#8b98a5;cursor:pointer;padding:4px;border-radius:4px;transition:all .2s}.stream-modal .modal-header .close-btn:hover{background:#2d3748;color:#e0e6ed}.stream-modal .modal-content{aspect-ratio:16 / 9;background:#000}.stream-modal .modal-content iframe{width:100%;height:100%}.log-entries::-webkit-scrollbar,.isr-payload-panel::-webkit-scrollbar{width:6px}.log-entries::-webkit-scrollbar-track,.isr-payload-panel::-webkit-scrollbar-track{background:#1a1f2e}.log-entries::-webkit-scrollbar-thumb,.isr-payload-panel::-webkit-scrollbar-thumb{background:#4a5568;border-radius:3px}.log-entries::-webkit-scrollbar-thumb:hover,.isr-payload-panel::-webkit-scrollbar-thumb:hover{background:#5a6678}.mission-details-drawer{position:fixed;top:var(--layout-topbar-height);left:0;bottom:0;width:calc(var(--layout-right-panel-width, 400px) * .6);max-width:280px;min-width:220px;display:flex;flex-direction:column;background:var(--bg-secondary);border-right:1px solid var(--border-color);box-shadow:4px 0 16px #0000004d;z-index:var(--z-modals, 1000);overflow:hidden}.mission-details-drawer .return-dashboard-btn{display:flex;align-items:center;gap:6px;width:100%;padding:8px 12px;background:transparent;border:none;border-bottom:1px solid var(--border-color);color:var(--text-muted);font-size:11px;font-weight:500;cursor:pointer;transition:all .15s ease}.mission-details-drawer .return-dashboard-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.mission-details-drawer .return-dashboard-btn svg{flex-shrink:0}.mission-details-drawer .drawer-header{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;background:var(--bg-tertiary);border-bottom:1px solid var(--border-color);min-height:44px;gap:8px}.mission-details-drawer .header-left{display:flex;align-items:center;gap:6px;flex:1;min-width:0}.mission-details-drawer .header-right{display:flex;align-items:center;gap:6px;flex-shrink:0}.mission-details-drawer .mission-type-icon{display:flex;align-items:center;justify-content:center;color:var(--accent-blue);flex-shrink:0}.mission-details-drawer .drawer-header h2{margin:0;font-size:13px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mission-details-drawer .close-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:transparent;border:none;border-radius:4px;color:var(--text-muted);cursor:pointer;transition:all .15s ease;flex-shrink:0}.mission-details-drawer .close-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.mission-details-drawer .drawer-content{flex:1;overflow-y:auto;padding:8px}.mission-details-drawer .detail-section{background:var(--bg-tertiary);border-radius:4px;padding:8px 10px;margin-bottom:8px}.mission-details-drawer .detail-section.compact{padding:6px 10px}.mission-details-drawer .section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:6px;gap:8px}.mission-details-drawer .section-title{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}.mission-details-drawer .status-pill{padding:2px 6px;border-radius:8px;font-size:9px;font-weight:600;text-transform:uppercase;white-space:nowrap}.mission-details-drawer .status-pill.status-queued{background:var(--accent-yellow-bg);color:var(--accent-yellow)}.mission-details-drawer .status-pill.status-progress{background:var(--accent-blue-bg);color:var(--accent-blue)}.mission-details-drawer .status-pill.status-completed{background:var(--accent-green-bg);color:var(--accent-green)}.mission-details-drawer .status-pill.status-cancelled{background:var(--bg-hover);color:var(--text-muted)}.mission-details-drawer .drone-status-pill{padding:2px 6px;border-radius:8px;font-size:9px;font-weight:600;white-space:nowrap}.mission-details-drawer .drone-status-pill.drone-en-route{background:var(--accent-blue-bg);color:var(--accent-blue)}.mission-details-drawer .drone-status-pill.drone-on-station{background:var(--accent-green-bg);color:var(--accent-green)}.mission-details-drawer .drone-status-pill.drone-returning{background:var(--accent-yellow-bg);color:var(--accent-yellow)}.mission-details-drawer .drone-status-pill.drone-landed{background:var(--bg-hover);color:var(--text-muted)}.mission-details-drawer .detail-row{display:flex;align-items:center;justify-content:space-between;padding:3px 0;gap:8px}.mission-details-drawer .detail-row:not(:last-child){border-bottom:1px solid var(--border-secondary)}.mission-details-drawer .detail-label{font-size:10px;color:var(--text-muted);flex-shrink:0}.mission-details-drawer .detail-value{font-size:11px;color:var(--text-primary);text-align:right;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mission-details-drawer .detail-value.mono{font-family:var(--font-mono);font-size:10px}.mission-details-drawer .detail-value.eta{color:var(--accent-blue);font-weight:600}.mission-details-drawer .detail-value.endurance{color:var(--accent-green);font-weight:500}.mission-details-drawer .detail-value.loiter{color:var(--accent-blue)}.mission-details-drawer .detail-value.loiter.warning{color:var(--accent-orange);font-weight:600}.mission-details-drawer .detail-value.priority-urgent{color:var(--risk-critical);font-weight:600}.mission-details-drawer .detail-value.priority-high{color:var(--risk-high);font-weight:600}.mission-details-drawer .telemetry-section{border:1px solid var(--accent-blue);background:#4a6fa50d}.mission-details-drawer .telemetry-grid{display:flex;flex-direction:column}.mission-details-drawer .position-row{margin-top:4px;padding-top:6px;border-top:1px solid var(--border-primary)}.mission-details-drawer .no-telemetry{padding:12px 0;text-align:center;font-size:11px;color:var(--text-muted);font-style:italic}.mission-details-drawer .zoom-btn{width:100%;margin-top:6px;padding:5px 8px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-secondary);font-size:10px;cursor:pointer;transition:all .15s ease}.mission-details-drawer .zoom-btn:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--accent-blue)}.mission-details-drawer .mission-notes{font-size:11px;color:var(--text-secondary);line-height:1.4;white-space:pre-wrap}.mission-details-drawer .mission-controls{background:var(--bg-secondary);border:1px solid var(--border-color);padding:8px}.mission-details-drawer .control-buttons{display:flex;flex-direction:column;gap:6px}.mission-details-drawer .control-btn{display:flex;align-items:center;justify-content:center;gap:6px;padding:6px 10px;border:none;border-radius:4px;font-size:11px;font-weight:500;cursor:pointer;transition:all .15s ease}.mission-details-drawer .control-btn:disabled{opacity:.5;cursor:not-allowed}.mission-details-drawer .rtb-btn{background:var(--accent-yellow-bg);color:var(--accent-yellow);border:1px solid var(--accent-yellow)}.mission-details-drawer .rtb-btn:hover:not(:disabled){background:var(--accent-yellow);color:var(--bg-primary)}.mission-details-drawer .close-mission-btn{background:var(--bg-tertiary);color:var(--text-secondary);border:1px solid var(--border-color)}.mission-details-drawer .close-mission-btn:hover:not(:disabled){background:var(--accent-green-bg);color:var(--accent-green);border-color:var(--accent-green)}.mission-details-drawer .undo-banner{display:flex;align-items:center;justify-content:space-between;padding:6px 10px;border-radius:4px;font-size:11px}.mission-details-drawer .undo-banner.rtb{background:var(--accent-yellow-bg);color:var(--accent-yellow);border:1px solid var(--accent-yellow)}.mission-details-drawer .undo-banner.close{background:var(--accent-green-bg);color:var(--accent-green);border:1px solid var(--accent-green)}.mission-details-drawer .undo-btn{padding:3px 10px;background:transparent;border:1px solid currentColor;border-radius:4px;color:inherit;font-size:10px;font-weight:600;cursor:pointer;transition:all .15s ease}.mission-details-drawer .undo-btn:hover{background:#ffffff1a}.mission-details-drawer .isr-payload-section{border:1px solid var(--accent-green);background:#48bb780d}.mission-details-drawer .on-station-badge{display:flex;align-items:center;gap:3px;padding:2px 6px;background:var(--accent-green);color:#fff;font-size:9px;font-weight:600;text-transform:uppercase;border-radius:8px;animation:pulse-badge 2s infinite}@keyframes pulse-badge{0%,to{opacity:1}50%{opacity:.7}}.mission-details-drawer .view-payload-btn{display:flex;align-items:center;justify-content:center;gap:6px;width:100%;padding:6px 10px;background:var(--accent-green);border:none;border-radius:4px;color:#fff;font-size:11px;font-weight:500;cursor:pointer;transition:all .15s ease}.mission-details-drawer .view-payload-btn:hover{background:#38a169}.mission-details-drawer .collapse-payload-btn{width:100%;padding:4px 8px;margin-bottom:6px;background:transparent;border:1px solid var(--border-color);border-radius:4px;color:var(--text-muted);font-size:10px;cursor:pointer;transition:all .15s ease}.mission-details-drawer .collapse-payload-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.mission-details-drawer .drawer-content::-webkit-scrollbar{width:4px}.mission-details-drawer .drawer-content::-webkit-scrollbar-track{background:transparent}.mission-details-drawer .drawer-content::-webkit-scrollbar-thumb{background:var(--border-primary);border-radius:2px}.mission-details-drawer .drawer-content::-webkit-scrollbar-thumb:hover{background:var(--border-secondary)}.isr-feed-panel{position:absolute;left:16px;bottom:16px;z-index:1000;display:flex;flex-direction:column;background:var(--bg-secondary);border-radius:8px;box-shadow:0 4px 20px #0000004d;border:1px solid var(--border-color);max-width:520px;transition:all .2s ease}.isr-feed-panel.open{width:520px}.isr-feed-panel .panel-toggle{display:flex;align-items:center;gap:8px;padding:10px 14px;background:transparent;border:none;color:var(--text-primary);cursor:pointer;font-size:13px;font-weight:500;width:100%;text-align:left}.isr-feed-panel .panel-toggle:hover{background:var(--bg-hover)}.isr-feed-panel .toggle-icon{display:flex;align-items:center;justify-content:center;color:var(--accent-blue)}.isr-feed-panel .toggle-label{flex:1}.isr-feed-panel .live-count{padding:2px 8px;background:var(--accent-green);color:#fff;font-size:10px;font-weight:700;border-radius:10px;animation:pulse-live 2s infinite}@keyframes pulse-live{0%,to{opacity:1}50%{opacity:.7}}.isr-feed-panel .chevron{display:flex;align-items:center;color:var(--text-muted)}.isr-feed-panel .panel-content{border-top:1px solid var(--border-color);max-height:70vh;overflow-y:auto}.isr-feed-panel .panel-header{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;background:var(--bg-tertiary);border-bottom:1px solid var(--border-color)}.isr-feed-panel .panel-header h3{margin:0;font-size:13px;font-weight:600;color:var(--text-primary)}.isr-feed-panel .on-station-count{font-size:11px;color:var(--accent-green);font-weight:500}.isr-feed-panel .no-feeds{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:32px 16px;text-align:center;color:var(--text-muted)}.isr-feed-panel .no-feeds svg{width:32px;height:32px;color:var(--text-disabled);margin-bottom:12px}.isr-feed-panel .no-feeds p{margin:0 0 4px;font-size:13px;color:var(--text-secondary)}.isr-feed-panel .no-feeds .note{font-size:11px;color:var(--text-muted)}.isr-feed-panel .feed-list{padding:0}.isr-feed-panel .feed-tabs{display:flex;gap:4px;padding:8px 12px;background:var(--bg-primary);border-bottom:1px solid var(--border-color);overflow-x:auto}.isr-feed-panel .feed-tab{display:flex;align-items:center;gap:6px;padding:6px 12px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-secondary);font-size:11px;cursor:pointer;transition:all .15s ease;white-space:nowrap}.isr-feed-panel .feed-tab:hover{background:var(--bg-tertiary);color:var(--text-primary)}.isr-feed-panel .feed-tab.active{background:var(--accent-blue-bg);border-color:var(--accent-blue);color:var(--accent-blue)}.isr-feed-panel .feed-tab.selected{box-shadow:0 0 0 2px #4a6fa566}.isr-feed-panel .feed-tab svg{width:12px;height:12px}.isr-feed-panel .tab-label{font-family:var(--font-mono)}.isr-feed-panel .live-indicator{width:6px;height:6px;background:var(--accent-green);border-radius:50%;animation:pulse-indicator 1.5s infinite}@keyframes pulse-indicator{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}.isr-feed-panel .feed-content{padding:0}.isr-feed-panel .feed-header{display:flex;justify-content:space-between;align-items:center;padding:8px 12px;background:var(--bg-tertiary);border-bottom:1px solid var(--border-color)}.isr-feed-panel .feed-title{font-size:12px;font-weight:500;color:var(--text-primary);font-family:var(--font-mono)}.isr-feed-panel .feed-actions{display:flex;align-items:center;gap:8px}.isr-feed-panel .view-details-btn{padding:4px 10px;background:var(--bg-secondary);border:1px solid var(--border-color);border-radius:4px;color:var(--text-secondary);font-size:11px;cursor:pointer;transition:all .15s ease}.isr-feed-panel .view-details-btn:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--accent-blue)}.isr-feed-panel .close-feed-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;background:transparent;border:none;border-radius:4px;color:var(--text-muted);cursor:pointer;transition:all .15s ease}.isr-feed-panel .close-feed-btn:hover{background:var(--bg-hover);color:var(--text-primary)}.isr-feed-panel .select-feed-hint{padding:24px 16px;text-align:center;font-size:12px;color:var(--text-muted)}.isr-feed-panel .panel-disclaimer{padding:8px 12px;background:var(--bg-tertiary);border-top:1px solid var(--border-color);font-size:10px;color:var(--text-muted);text-align:center}.isr-feed-panel .panel-disclaimer strong{color:var(--accent-yellow)}.isr-feed-panel .panel-content::-webkit-scrollbar{width:6px}.isr-feed-panel .panel-content::-webkit-scrollbar-track{background:var(--bg-primary)}.isr-feed-panel .panel-content::-webkit-scrollbar-thumb{background:var(--text-disabled);border-radius:3px}.isr-feed-panel .panel-content::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.legend{width:200px;height:100%;display:flex;flex-direction:column;background:var(--bg-secondary);border-left:1px solid var(--border-primary)}.legend-header{flex-shrink:0;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted);padding:10px 12px 8px;border-bottom:1px solid var(--border-secondary);background:var(--bg-secondary)}.legend-content{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden;padding:8px 10px 12px}.legend-content::-webkit-scrollbar{width:4px}.legend-content::-webkit-scrollbar-track{background:transparent}.legend-content::-webkit-scrollbar-thumb{background:var(--border-primary);border-radius:2px}.legend-content::-webkit-scrollbar-thumb:hover{background:var(--border-secondary)}.layer-list{display:flex;flex-direction:column;gap:4px}.layer-divider{height:1px;background:var(--border-secondary);margin:6px 0}.layer-row{display:flex;align-items:center;gap:6px;height:22px;padding:0 2px}.layer-row.disabled{opacity:.5}.toggle-switch{width:26px;height:13px;padding:0;border:none;background:none;cursor:pointer;flex-shrink:0}.toggle-switch:disabled{cursor:not-allowed}.switch-track{display:block;width:100%;height:100%;background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:7px;position:relative;transition:background .15s ease,border-color .15s ease}.toggle-switch.on .switch-track{background:#4a6fa566;border-color:var(--accent-blue)}.switch-thumb{display:block;position:absolute;top:1px;left:1px;width:9px;height:9px;background:var(--text-muted);border-radius:50%;transition:transform .15s ease,background .15s ease}.toggle-switch.on .switch-thumb{transform:translate(13px);background:var(--accent-blue)}.toggle-switch.disabled .switch-thumb{background:var(--text-placeholder)}.layer-icon{width:12px;height:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.layer-icon svg{display:block;width:12px;height:12px}.icon-dot{width:6px;height:6px;border-radius:50%}.icon-dot.detection{background:var(--accent-blue);border:1px solid rgba(255,255,255,.3)}.icon-line{width:12px;height:2px}.icon-line.dashed{background:repeating-linear-gradient(90deg,var(--accent-green),var(--accent-green) 3px,transparent 3px,transparent 5px)}.icon-rect{width:10px;height:6px;border-radius:2px}.icon-rect.dashed{border:1px dashed var(--accent-blue);opacity:.7}.icon-rect.filled{background:var(--blue-bg);border:1px solid var(--blue-1)}.icon-lines{width:12px;height:5px;background:repeating-linear-gradient(90deg,var(--blue-1),var(--blue-1) 1px,transparent 1px,transparent 4px);opacity:.7}.icon-gradient{width:12px;height:5px;background:linear-gradient(90deg,#7a849480,#3d5a8080,#4a6fa580 66%,#5d82b880);border-radius:2px}.layer-label{flex:1;font-size:11px;color:var(--text-secondary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.layer-count{font-family:var(--font-mono);font-size:9px;color:var(--text-muted);background:var(--bg-tertiary);padding:1px 4px;border-radius:3px;flex-shrink:0}.viz-mode-row{display:flex;align-items:center;gap:6px;margin-left:32px;height:20px}.viz-label{font-size:9px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px}.viz-buttons{display:flex;gap:0;border-radius:3px;overflow:hidden;border:1px solid var(--border-primary)}.viz-btn{padding:2px 5px;font-size:9px;font-weight:500;background:var(--bg-secondary);color:var(--text-muted);border:none;cursor:pointer;transition:all .1s ease}.viz-btn:not(:last-child){border-right:1px solid var(--border-primary)}.viz-btn:hover{background:var(--bg-tertiary);color:var(--text-primary)}.viz-btn.active{background:#5d82b840;color:var(--accent-blue)}@media (max-width: 1200px){.legend{width:180px}}@media (max-width: 900px){.legend{width:160px}.layer-label{font-size:10px}}.ops-drawer{position:fixed;top:var(--layout-topbar-height);right:var(--layout-layers-panel-width);bottom:0;width:480px;max-width:calc(100vw - var(--layout-left-panel-width) - var(--layout-layers-panel-width) - 32px);background:var(--bg-panel);border-left:1px solid var(--border-primary);box-shadow:-4px 0 16px #0000004d;z-index:var(--z-activity-panel);transform:translate(calc(100% + var(--layout-layers-panel-width)));transition:transform .3s ease;display:flex;flex-direction:column}.ops-drawer.open{transform:translate(0)}.app.drawer-open .ops-drawer{z-index:calc(var(--z-activity-panel) + 10)}.ops-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:calc(var(--z-activity-panel) - 1);background:transparent}.ops-header{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border-primary);flex-shrink:0}.ops-header h3{font-size:15px;font-weight:600;color:var(--text-primary);margin:0;letter-spacing:.5px}.ops-close-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background:none;border:1px solid transparent;border-radius:var(--radius-sm);color:var(--text-muted);cursor:pointer;transition:all .15s ease}.ops-close-btn:hover{background:var(--bg-hover);border-color:var(--border-primary);color:var(--text-primary)}.ops-tabs{display:flex;border-bottom:1px solid var(--border-primary);flex-shrink:0}.ops-tab{flex:1;display:flex;align-items:center;justify-content:center;gap:6px;padding:10px 0;background:none;border:none;border-bottom:2px solid transparent;color:var(--text-muted);font-size:13px;font-weight:500;cursor:pointer;transition:all .15s ease}.ops-tab:hover{color:var(--text-secondary);background:var(--bg-hover)}.ops-tab.active{color:var(--accent-blue);border-bottom-color:var(--accent-blue)}.ops-tab-badge{display:inline-flex;align-items:center;justify-content:center;min-width:18px;height:18px;padding:0 5px;font-size:10px;font-weight:600;background:var(--bg-active);color:var(--accent-blue);border-radius:var(--radius-full)}.ops-body{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden}.ops-section{padding:12px 16px 8px;border-bottom:1px solid var(--border-primary)}.ops-section-label{font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:1px;color:var(--text-muted);margin-bottom:8px}.ops-empty-hint{padding:16px;text-align:center;font-size:12px;color:var(--text-muted)}.ops-missions-list{display:flex;flex-direction:column;gap:4px}.ops-mission-card{display:flex;align-items:center;gap:10px;padding:8px 10px;background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);cursor:pointer;transition:all .15s ease}.ops-mission-card:hover{background:var(--bg-hover);border-color:var(--accent-blue)}.ops-mission-card.active{border-left:3px solid var(--accent-blue)}.ops-mission-card.queued{border-left:3px solid var(--accent-orange, #f0a030)}.ops-mission-icon{color:var(--text-muted);flex-shrink:0;display:flex;align-items:center}.ops-mission-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.ops-mission-id{font-size:12px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ops-mission-action{font-size:11px;color:var(--text-muted)}.ops-mission-meta{display:flex;flex-direction:column;align-items:flex-end;gap:2px;flex-shrink:0}.ops-status-chip{display:inline-block;padding:2px 8px;font-size:10px;font-weight:600;border-radius:var(--radius-full);text-transform:uppercase;letter-spacing:.3px}.ops-status-chip.queued{background:#f0a03026;color:var(--accent-orange, #f0a030)}.ops-status-chip.active{background:var(--bg-active);color:var(--accent-blue)}.ops-status-chip.completed{background:#50c8781f;color:var(--accent-green, #50c878)}.ops-status-chip.cancelled{background:var(--bg-hover);color:var(--text-muted)}.ops-age{font-size:11px;color:var(--text-muted);white-space:nowrap}.ops-filter-bar{display:flex;gap:4px;padding:8px 16px;border-bottom:1px solid var(--border-primary);flex-shrink:0;overflow-x:auto}.ops-filter-chip{padding:4px 10px;font-size:11px;font-weight:500;background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-full);color:var(--text-muted);cursor:pointer;white-space:nowrap;transition:all .15s ease}.ops-filter-chip:hover{background:var(--bg-hover);color:var(--text-secondary)}.ops-filter-chip.active{background:var(--bg-active);color:var(--accent-blue);border-color:var(--accent-blue)}.ops-feed-list{display:flex;flex-direction:column}.ops-feed-row{display:flex;align-items:flex-start;gap:10px;padding:10px 16px;border-bottom:1px solid var(--border-subtle, rgba(255,255,255,.04));cursor:pointer;transition:background .12s ease}.ops-feed-row:hover{background:var(--bg-hover)}.ops-feed-row.critical{border-left:3px solid var(--risk-critical)}.ops-feed-row.high{border-left:3px solid var(--risk-high, var(--accent-orange, #f0a030))}.ops-feed-icon{flex-shrink:0;display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:var(--radius-sm);margin-top:1px}.ops-feed-icon.detection{color:var(--accent-blue)}.ops-feed-icon.zone{color:var(--risk-critical)}.ops-feed-icon.mission{color:var(--accent-green, #50c878)}.ops-feed-icon.system{color:var(--text-muted)}.ops-feed-icon.operator{color:var(--accent-blue)}.ops-feed-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.ops-feed-title-row{display:flex;align-items:baseline;gap:8px}.ops-feed-title{flex:1;font-size:12px;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ops-feed-age{flex-shrink:0;font-size:11px;color:var(--text-muted)}.ops-feed-subtitle{font-size:11px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ops-cases-toolbar{display:flex;align-items:center;gap:8px;padding:10px 16px;border-bottom:1px solid var(--border-primary)}.ops-cases-search{flex:1;padding:6px 10px;font-size:12px;background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);color:var(--text-primary);outline:none}.ops-cases-search::placeholder{color:var(--text-muted)}.ops-cases-search:focus{border-color:var(--accent-blue)}.ops-cases-filter{display:flex;gap:4px}.ops-cases-list{display:flex;flex-direction:column}.ops-case-row{display:flex;align-items:center;gap:10px;padding:10px 16px;border-bottom:1px solid var(--border-subtle, rgba(255,255,255,.04));cursor:pointer;transition:background .12s ease}.ops-case-row:hover{background:var(--bg-hover)}.ops-case-row.open{border-left:3px solid var(--accent-blue)}.ops-case-icon{color:var(--text-muted);flex-shrink:0;display:flex;align-items:center}.ops-case-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}.ops-case-title{font-size:12px;font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.ops-case-meta{font-size:11px;color:var(--text-muted)}.ops-case-right{display:flex;flex-direction:column;align-items:flex-end;gap:2px;flex-shrink:0}@media (max-width: 1400px){.ops-drawer{width:420px}}@media (max-width: 900px){.ops-drawer{width:calc(100vw - var(--layout-layers-panel-width) - 16px);right:var(--layout-layers-panel-width)}}.pilot-view-overlay{position:fixed;top:0;left:0;right:0;bottom:0;z-index:9999;background:#0a0c10}.pilot-view{display:flex;flex-direction:column;height:100%;background:#0a0c10;color:#c5cdd8;font-family:JetBrains Mono,SF Mono,Consolas,monospace}.pilot-header{display:flex;align-items:center;justify-content:space-between;padding:8px 16px;background:linear-gradient(180deg,#1a1e26,#12151a);border-bottom:1px solid #2a3040;flex-shrink:0}.pilot-header-left{display:flex;align-items:baseline;gap:12px}.pilot-title{font-size:14px;font-weight:700;color:#5d82b8;letter-spacing:2px}.pilot-subtitle{font-size:11px;color:#6a7a8a;letter-spacing:.5px}.pilot-header-center{display:flex;align-items:center;gap:24px}.camera-mode-selector{display:flex;gap:2px;background:#0a0c10;border-radius:4px;padding:2px}.mode-btn{padding:6px 16px;background:transparent;border:none;color:#6a7a8a;font-size:11px;font-weight:600;letter-spacing:.5px;cursor:pointer;border-radius:3px;transition:all .15s ease}.mode-btn:hover{color:#8a9aaa;background:#ffffff0d}.mode-btn.active{background:#2a3a4a;color:#c5cdd8}.recording-indicator{display:flex;align-items:center;gap:6px;padding:4px 10px;background:#0000004d;border-radius:4px}.rec-dot{width:8px;height:8px;border-radius:50%;background:#4a5568}.recording-indicator.recording .rec-dot{background:#e53e3e;animation:rec-pulse 1s ease-in-out infinite}@keyframes rec-pulse{0%,to{opacity:1}50%{opacity:.4}}.rec-text{font-size:11px;font-weight:600;color:#6a7a8a}.recording-indicator.recording .rec-text{color:#e53e3e}.pilot-header-right{display:flex;align-items:center;gap:12px}.expand-btn,.close-btn{display:flex;align-items:center;gap:6px;padding:6px 12px;background:#0000004d;border:1px solid #2a3040;border-radius:4px;color:#8a9aaa;font-size:11px;cursor:pointer;transition:all .15s ease}.expand-btn:hover,.close-btn:hover{background:#ffffff0d;border-color:#3a4a5a;color:#c5cdd8}.close-btn{color:#c97a3a}.close-btn:hover{background:#c97a3a1a;border-color:#c97a3a}.pilot-content{display:flex;flex:1;min-height:0;overflow:hidden}.target-panel{width:260px;background:#12151a;border-right:1px solid #2a3040;display:flex;flex-direction:column;flex-shrink:0}.target-panel-header{display:flex;align-items:center;gap:8px;padding:12px 14px;background:#0003;border-bottom:1px solid #2a3040;font-size:11px;font-weight:600;color:#8a9aaa;letter-spacing:1px}.target-count{margin-left:auto;padding:2px 6px;background:#2a3a4a;border-radius:3px;font-size:10px;color:#6a7a8a}.target-list{flex:1;overflow-y:auto;padding:8px}.no-targets{padding:24px;text-align:center;color:#4a5568;font-size:12px}.target-item{padding:10px 12px;margin-bottom:6px;background:#0003;border:1px solid #2a3040;border-radius:6px;cursor:pointer;transition:all .15s ease}.target-item:hover{background:#ffffff08;border-color:#3a4a5a}.target-item.selected{background:#5d82b81a;border-color:#5d82b8}.target-item.has-drone{border-left:3px solid #4a7a5a}.target-id-row{display:flex;align-items:center;gap:8px;margin-bottom:6px}.risk-indicator{width:8px;height:8px;border-radius:50%}.risk-indicator.risk-critical{background:#e53e3e}.risk-indicator.risk-high{background:#c97a3a}.risk-indicator.risk-medium{background:#d4a84b}.risk-indicator.risk-low{background:#4a7a5a}.target-id{font-size:12px;font-weight:600;color:#c5cdd8}.drone-badge{display:flex;align-items:center;gap:4px;margin-left:auto;padding:2px 6px;background:#4a7a5a33;border-radius:3px;font-size:9px;color:#4a7a5a}.drone-badge.on-station{background:#4a7a5a4d;color:#6aba6a}.drone-badge.en-route{background:#5d82b833;color:#5d82b8}.drone-badge.returning{background:#c97a3a33;color:#c97a3a}.target-details{display:flex;gap:12px;font-size:10px;color:#6a7a8a;margin-bottom:6px}.target-meta{display:flex;flex-wrap:wrap;gap:6px}.match-status{display:flex;align-items:center;gap:4px;padding:2px 6px;border-radius:3px;font-size:9px;font-weight:600}.match-status.unmatched{background:#c97a3a33;color:#c97a3a}.match-status.matched{background:#4a7a5a33;color:#4a7a5a}.protected-badge{padding:2px 6px;background:#e53e3e33;border-radius:3px;font-size:9px;font-weight:600;color:#e53e3e}.target-actions{padding:12px;border-top:1px solid #2a3040}.assign-isr-btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:10px;background:linear-gradient(135deg,#3a5a8a,#2a4a6a);border:1px solid #4a6a9a;border-radius:6px;color:#c5cdd8;font-size:11px;font-weight:600;cursor:pointer;transition:all .15s ease}.assign-isr-btn:hover{background:linear-gradient(135deg,#4a6a9a,#3a5a7a)}.target-status-info{padding:12px;border-top:1px solid #2a3040;font-size:10px}.status-row{display:flex;justify-content:space-between;margin-bottom:4px}.status-label{color:#6a7a8a}.status-value{color:#8a9aaa;font-weight:600}.status-value.status-on-station{color:#6aba6a}.status-value.status-en-route{color:#5d82b8}.status-value.status-returning{color:#c97a3a}.pilot-main-view{flex:1;position:relative;min-width:0;background:#0a0c10;overflow:hidden}.video-feed{width:100%;height:100%;position:relative}.main-video{width:100%;height:100%;display:flex;align-items:center;justify-content:center}.feed-canvas{width:100%;height:100%;display:block}.no-feed{display:flex;flex-direction:column;align-items:center;gap:8px;color:#4a5568}.no-feed-text{font-size:14px;font-weight:600;letter-spacing:1px}.no-feed-sub{font-size:11px;color:#3a4a5a}.ir-inset{position:absolute;bottom:80px;left:16px;width:200px;height:150px;background:#0a0a0a;border:1px solid #3a3a3a;border-radius:4px;overflow:hidden;z-index:10}.ir-inset.expanded{width:400px;height:300px}.ir-label{position:absolute;top:4px;left:6px;font-size:9px;font-weight:600;color:#6a6a6a;letter-spacing:.5px;z-index:1}.ir-canvas{width:100%;height:100%}.simulated-watermark{position:absolute;bottom:16px;left:50%;transform:translate(-50%);padding:4px 12px;background:#0009;border:1px solid #3a3a3a;border-radius:4px;font-size:10px;font-weight:600;color:#6a6a6a;letter-spacing:1px;z-index:5}.hud-overlay{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none;color:#a5b5c5;font-size:11px;text-shadow:0 0 4px rgba(0,0,0,.8)}.hud-overlay.hud-inactive{display:flex;align-items:center;justify-content:center}.hud-no-target{font-size:16px;font-weight:600;color:#4a5568;letter-spacing:2px}.hud-top{position:absolute;top:12px;left:16px;right:16px;display:flex;justify-content:space-between;align-items:flex-start}.hud-top-left{display:flex;align-items:center;gap:16px}.hud-utc{font-size:13px;font-weight:600;font-family:JetBrains Mono,monospace;letter-spacing:1px}.hud-rec{display:flex;align-items:center;gap:6px;padding:4px 8px;background:#0006;border-radius:3px;cursor:pointer;pointer-events:auto}.rec-indicator{width:8px;height:8px;border-radius:50%;background:#4a5568}.hud-rec.recording .rec-indicator{background:#e53e3e;animation:rec-pulse 1s infinite}.hud-top-center{display:flex;align-items:center}.hud-datalink{display:flex;align-items:center;gap:8px;padding:4px 12px;background:#0006;border-radius:4px}.datalink-label{font-size:9px;color:#6a7a8a;letter-spacing:.5px}.datalink-bars{display:flex;gap:2px;align-items:flex-end}.datalink-bar{width:4px;background:#2a3a4a;border-radius:1px}.datalink-bar:nth-child(1){height:4px}.datalink-bar:nth-child(2){height:6px}.datalink-bar:nth-child(3){height:8px}.datalink-bar:nth-child(4){height:10px}.datalink-bar:nth-child(5){height:12px}.datalink-bar.active{background:#4a7a5a}.datalink-value{font-size:10px;font-weight:600;color:#4a7a5a}.hud-top-right{font-size:10px;color:#6a7a8a}.hud-mission-id{padding:4px 8px;background:#0006;border-radius:3px}.hud-left-tape{position:absolute;left:16px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;align-items:flex-start;gap:8px}.tape-label{font-size:9px;color:#6a7a8a;letter-spacing:1px;padding-left:4px}.tape-container{position:relative;background:#0006;border-radius:4px;padding:8px 4px}.tape-marks{display:flex;flex-direction:column;gap:8px}.tape-mark{font-size:10px;color:#4a5a6a;text-align:right;padding-right:8px}.tape-mark.current{color:#c5cdd8;font-weight:600}.tape-pointer{position:absolute;right:-40px;top:50%;transform:translateY(-50%);display:flex;align-items:baseline;gap:4px;padding:4px 8px;background:#5d82b84d;border:1px solid #5d82b8;border-radius:3px}.tape-value{font-size:12px;font-weight:700;color:#c5cdd8}.tape-unit{font-size:9px;color:#6a7a8a}.hud-bottom-left{position:absolute;bottom:100px;left:16px}.hud-speed-block{display:flex;flex-direction:column;gap:4px;padding:8px 12px;background:#0006;border-radius:4px}.speed-row{display:flex;align-items:baseline;gap:8px}.speed-label{width:24px;font-size:9px;color:#6a7a8a}.speed-value{font-size:14px;font-weight:700;color:#c5cdd8;min-width:32px}.speed-unit{font-size:9px;color:#6a7a8a}.hud-compass{position:absolute;bottom:60px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:4px}.compass-tape{display:flex;gap:20px;padding:4px 16px;background:#0006;border-radius:4px}.compass-mark{font-size:10px;color:#4a5a6a}.compass-mark.current{font-size:12px;font-weight:700;color:#c5cdd8}.compass-pointer{width:0;height:0;border-left:6px solid transparent;border-right:6px solid transparent;border-bottom:8px solid #5d82b8}.compass-track{display:flex;gap:12px;font-size:10px}.track-label,.bearing-label{color:#6a7a8a}.track-value,.bearing-value{font-weight:600;color:#c5cdd8}.hud-right-info{position:absolute;right:280px;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;gap:12px}.target-block,.gimbal-block{padding:8px 12px;background:#0006;border-radius:4px}.info-row{display:flex;align-items:baseline;gap:6px;margin-bottom:2px}.info-label{min-width:40px;font-size:9px;color:#6a7a8a}.info-value{font-size:12px;font-weight:600;color:#c5cdd8}.info-unit{font-size:9px;color:#6a7a8a}.hud-bottom{position:absolute;bottom:12px;left:240px;right:280px;display:flex;justify-content:space-between;gap:16px}.coord-block{display:flex;gap:24px;padding:8px 12px;background:#0006;border-radius:4px}.coord-section{display:flex;flex-direction:column;gap:2px}.coord-label{font-size:9px;color:#6a7a8a;margin-bottom:2px}.coord-value{font-size:10px;color:#c5cdd8;font-family:JetBrains Mono,monospace}.status-block{padding:8px 12px;background:#0006;border-radius:4px}.status-row{display:flex;gap:8px;margin-bottom:2px}.status-block .status-label{min-width:50px;font-size:9px;color:#6a7a8a}.status-block .status-value{font-size:10px;font-weight:600;color:#c5cdd8}.status-block .status-value.status-on-station{color:#6aba6a}.status-block .status-value.status-en-route{color:#5d82b8}.status-block .status-value.status-rtb{color:#c97a3a}.endurance-block{padding:8px 12px;background:#0006;border-radius:4px}.hud-crosshair{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:60px;height:60px}.crosshair-h{position:absolute;top:50%;left:0;right:0;height:1px;background:#a5b5c580}.crosshair-v{position:absolute;left:50%;top:0;bottom:0;width:1px;background:#a5b5c580}.crosshair-center{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:8px;height:8px;border:1px solid rgba(165,181,197,.7);border-radius:50%}.pilot-assessment-panel{width:260px;background:#12151a;border-left:1px solid #2a3040;display:flex;flex-direction:column;flex-shrink:0;overflow-y:auto}.panel-header{display:flex;align-items:center;gap:8px;padding:12px 14px;background:#0003;border-bottom:1px solid #2a3040;font-size:11px;font-weight:600;color:#8a9aaa;letter-spacing:1px}.panel-section{padding:12px 14px;border-bottom:1px solid #1a1e26}.section-label{font-size:9px;font-weight:600;color:#6a7a8a;letter-spacing:.5px;margin-bottom:8px}.target-info .info-row,.classification-info .info-row{display:flex;justify-content:space-between;margin-bottom:4px;font-size:11px}.target-info .label,.classification-info .label{color:#6a7a8a}.target-info .value,.classification-info .value{color:#c5cdd8;font-weight:500}.confidence{margin-left:6px;font-size:9px;color:#6a7a8a}.suspicion-result{display:flex;align-items:center;gap:12px;padding:12px;border-radius:6px;margin-bottom:12px}.suspicion-result.confirmed{background:#4a7a5a26;border:1px solid rgba(74,122,90,.3)}.suspicion-result.not-confirmed{background:#6a7a8a26;border:1px solid rgba(106,122,138,.3)}.result-icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:50%}.suspicion-result.confirmed .result-icon{background:#4a7a5a4d;color:#6aba6a}.suspicion-result.not-confirmed .result-icon{background:#6a7a8a4d;color:#8a9aaa}.result-text{display:flex;flex-direction:column;gap:2px}.result-status{font-size:12px;font-weight:700;letter-spacing:.5px}.suspicion-result.confirmed .result-status{color:#6aba6a}.suspicion-result.not-confirmed .result-status{color:#8a9aaa}.result-confidence{font-size:10px;color:#6a7a8a}.assessment-reasons{margin-bottom:12px}.reason-item{display:flex;gap:8px;font-size:10px;color:#8a9aaa;margin-bottom:4px}.reason-bullet{color:#4a5568}.assessment-actions{display:flex;flex-direction:column;gap:8px}.action-btn{display:flex;align-items:center;justify-content:center;gap:8px;padding:10px;border-radius:6px;font-size:11px;font-weight:600;cursor:pointer;transition:all .15s ease}.action-btn.primary{background:linear-gradient(135deg,#3a5a8a,#2a4a6a);border:1px solid #4a6a9a;color:#c5cdd8}.action-btn.primary:hover{background:linear-gradient(135deg,#4a6a9a,#3a5a7a)}.action-btn.secondary{background:transparent;border:1px solid #3a4a5a;color:#8a9aaa}.action-btn.secondary:hover{background:#ffffff08;border-color:#4a5a6a}.action-btn:disabled{opacity:.5;cursor:not-allowed}.action-result{display:flex;align-items:center;gap:8px;padding:10px;border-radius:6px;font-size:11px;font-weight:600}.action-result.success{background:#4a7a5a26;border:1px solid rgba(74,122,90,.3);color:#6aba6a}.action-result.dismissed{background:#6a7a8a26;border:1px solid rgba(106,122,138,.3);color:#8a9aaa}.waiting-section,.no-drone-section{padding:24px 14px;text-align:center}.waiting-message,.no-drone-message{display:flex;flex-direction:column;gap:4px;color:#6a7a8a;font-size:11px}.waiting-icon{font-size:18px;color:#5d82b8;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:.4}50%{opacity:1}}.waiting-eta{margin-top:8px;font-weight:600;color:#5d82b8}.no-drone-message .sub{font-size:10px;color:#4a5568}.live-stream-btn{display:flex;align-items:center;justify-content:center;gap:8px;margin:12px 14px;padding:10px;background:#0003;border:1px solid #2a3040;border-radius:6px;color:#8a9aaa;font-size:11px;cursor:pointer;transition:all .15s ease}.live-stream-btn:hover:not(:disabled){background:#ffffff08;border-color:#3a4a5a}.live-stream-btn:disabled{opacity:.5;cursor:not-allowed}.stream-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;display:flex;align-items:center;justify-content:center;z-index:10000}.stream-modal{width:600px;background:#12151a;border:1px solid #2a3040;border-radius:8px;overflow:hidden}.stream-modal-header{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#0000004d;border-bottom:1px solid #2a3040;font-size:12px;font-weight:600;color:#c5cdd8}.stream-modal-header button{background:transparent;border:none;color:#8a9aaa;cursor:pointer;padding:4px}.stream-content{height:300px;display:flex;align-items:center;justify-content:center;background:#0a0c10}.stream-placeholder{display:flex;flex-direction:column;align-items:center;gap:8px;color:#4a5568}.placeholder-text{font-size:14px;font-weight:600;letter-spacing:1px}.placeholder-sub{font-size:11px}.stream-modal-footer{padding:8px 16px;background:#0000004d;border-top:1px solid #2a3040}.simulated-label{font-size:9px;color:#6a6a6a;letter-spacing:.5px}.prototype-notice{margin-top:auto;padding:8px 14px;background:#0003;border-top:1px solid #2a3040;font-size:9px;color:#4a5568;text-align:center;letter-spacing:.5px}.pilot-footer{display:flex;justify-content:space-between;align-items:center;padding:8px 16px;background:linear-gradient(180deg,#12151a,#0a0c10);border-top:1px solid #2a3040;font-size:10px;flex-shrink:0}.footer-left,.footer-center,.footer-right{display:flex;align-items:center;gap:8px}.footer-label{color:#4a5568;letter-spacing:.5px}.footer-value{color:#6a7a8a}.footer-divider{color:#2a3040}.target-lock{padding:4px 12px;background:#4a7a5a33;border:1px solid rgba(74,122,90,.3);border-radius:4px;color:#6aba6a;font-weight:600;letter-spacing:.5px}.no-target{color:#4a5568;letter-spacing:.5px}.ops-weather-strip{position:absolute;bottom:24px;left:50%;transform:translate(-50%);z-index:800;height:44px;display:flex;align-items:center;gap:0;padding:0 14px;background:var(--bg-2);border:1px solid var(--border-1);border-radius:var(--radius-md);box-shadow:var(--shadow-md);white-space:nowrap;pointer-events:auto}.ows-cell{display:flex;align-items:center;gap:5px;padding:0 10px}.ows-label{font-size:10px;font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted)}.ows-value{font-size:12px;font-family:var(--font-mono);font-weight:var(--font-weight-medium);color:var(--text-secondary)}.ows-divider{width:1px;height:20px;background:var(--border-0);flex-shrink:0}.ows-readiness{font-size:11px;font-family:var(--font-mono);font-weight:var(--font-weight-semibold);padding:2px 6px;border-radius:var(--radius-sm);letter-spacing:.2px}.ows-readiness.readiness-good{background:var(--green-bg);color:var(--green-2)}.ows-readiness.readiness-mixed{background:var(--orange-bg);color:var(--orange-1)}.ows-readiness.readiness-poor{background:var(--red-bg);color:var(--red-2)}.ows-meta{display:flex;align-items:center;gap:6px;padding-left:10px}.ows-updated{font-size:10px;color:var(--text-3);text-transform:uppercase;letter-spacing:.3px}.ows-refresh{display:flex;align-items:center;justify-content:center;width:22px;height:22px;border:none;border-radius:var(--radius-sm);background:transparent;color:var(--text-muted);cursor:pointer;padding:0;transition:color var(--transition-fast),background var(--transition-fast)}.ows-refresh:hover{background:var(--bg-3);color:var(--text-secondary)}.ops-weather-strip-error{gap:8px;opacity:.7}.ows-unavailable{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px}.ops-weather-strip-loading{gap:0}.ows-skeleton{display:inline-block;width:40px;height:12px;border-radius:3px;background:var(--bg-3);animation:ows-pulse 1.2s ease-in-out infinite}@keyframes ows-pulse{0%,to{opacity:.4}50%{opacity:.8}}@media (max-width: 1200px){.ows-meta .ows-updated{display:none}}@media (max-width: 900px){.ops-weather-strip{height:38px;padding:0 8px}.ows-cell{padding:0 6px}.ows-label{display:none}}.buoy-details-panel{display:grid;grid-template-columns:480px 1fr;height:100%;min-height:0;overflow:hidden;background:var(--bg-primary)}.bdp-inspector{display:flex;flex-direction:column;gap:4px;padding:5px 10px;overflow-y:auto;overflow-x:hidden;border-right:1px solid var(--border-primary);background:var(--bg-secondary);font-variant-numeric:tabular-nums}.bdp-card{background:var(--bg-tertiary);border:1px solid var(--border-secondary);border-radius:var(--radius-md);padding:6px 10px;flex-shrink:0}.bdp-card-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:3px}.bdp-card-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted)}.bdp-card-right{display:flex;align-items:center;gap:6px}.bdp-ts{font-size:10px;color:var(--text-dimmed);font-family:var(--font-mono)}.bdp-icon-btn{padding:2px;color:var(--text-muted);border-radius:var(--radius-sm);background:none;border:none;cursor:pointer}.bdp-icon-btn:hover{color:var(--accent-blue);background:var(--bg-secondary)}.bdp-spin{animation:bdp-spin 1s linear infinite}@keyframes bdp-spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.bdp-back-nav{display:flex;align-items:center;gap:6px;padding:0;font-size:12px;font-weight:600;color:var(--text-muted);background:none;border:none;cursor:pointer;text-transform:uppercase;letter-spacing:.3px;flex-shrink:0}.bdp-back-nav:hover{color:var(--accent-blue)}.bdp-back-arrow{font-size:15px}.bdp-summary-top{display:flex;align-items:center;gap:8px;margin-bottom:2px}.bdp-title{margin:0;font-size:15px;font-weight:600;color:var(--text-primary)}.bdp-id-chip{font-family:var(--font-mono);font-size:12px;color:var(--accent-blue);background:var(--blue-bg);padding:1px 7px;border-radius:var(--radius-sm);font-weight:600}.bdp-chips{display:flex;gap:4px;flex-wrap:wrap;margin-bottom:3px}.bdp-chip{font-size:10px;font-weight:600;padding:1px 7px;border-radius:9px;text-transform:uppercase;letter-spacing:.3px;white-space:nowrap}.bdp-chip-ok{color:var(--accent-green);background:var(--green-bg)}.bdp-chip-warn{color:var(--orange-1);background:#c97a3a26}.bdp-chip-err{color:var(--accent-red);background:var(--red-bg)}.bdp-chip-neutral{color:var(--text-secondary);background:var(--bg-primary)}.bdp-chip-mono{font-family:var(--font-mono);letter-spacing:0}.bdp-penalty-summary{display:flex;align-items:center;gap:6px}.bdp-penalty-text{font-size:11px;color:var(--text-secondary);white-space:nowrap}.bdp-quality-row{display:flex;align-items:center;gap:10px;margin-bottom:5px}.bdp-quality-bar{flex:1;height:8px;background:var(--bg-primary);border-radius:4px;overflow:hidden}.bdp-quality-fill{height:100%;border-radius:4px;transition:width .3s ease}.bdp-qf-excellent{background:var(--accent-green)}.bdp-qf-good{background:var(--accent-blue)}.bdp-qf-fair{background:var(--orange-1)}.bdp-qf-poor{background:var(--accent-red)}.bdp-quality-label{font-size:13px;font-weight:700;font-family:var(--font-mono);white-space:nowrap}.bdp-q-excellent{color:var(--accent-green)}.bdp-q-good{color:var(--accent-blue)}.bdp-q-fair{color:var(--orange-1)}.bdp-q-poor{color:var(--accent-red)}.bdp-penalty-chips{display:flex;flex-wrap:wrap;gap:4px}.bdp-pen{font-size:10px;font-family:var(--font-mono);color:var(--text-dimmed);background:var(--bg-secondary);padding:1px 5px;border-radius:var(--radius-sm);white-space:nowrap}.bdp-mg{display:grid;grid-template-columns:1fr 1fr 1fr;gap:1px 8px}.bdp-mg-secondary{margin-top:4px;padding-top:4px;border-top:1px solid var(--border-secondary)}.bdp-m{display:flex;flex-direction:column;padding:2px 0;border-bottom:1px solid var(--border-secondary)}.bdp-m:nth-last-child(-n+3){border-bottom:none}.bdp-ml{font-size:10px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px;line-height:1.2}.bdp-mv{font-size:13px;font-weight:600;color:var(--text-primary);line-height:1.3;white-space:nowrap}.bdp-na{color:var(--text-dimmed);font-weight:400}.bdp-more-link{display:flex;align-items:center;gap:4px;margin-top:3px;padding:0;font-size:10px;font-weight:600;color:var(--accent-blue);background:none;border:none;cursor:pointer;text-transform:uppercase;letter-spacing:.3px}.bdp-more-link:hover{text-decoration:underline}.bdp-more-arrow{font-size:9px}.bdp-skel .bdp-ml,.bdp-skel .bdp-mv{background:var(--bg-secondary);border-radius:2px;min-height:14px;animation:bdp-pulse 1.5s ease-in-out infinite}@keyframes bdp-pulse{0%,to{opacity:.3}50%{opacity:.7}}.bdp-warn{padding:5px 8px;font-size:12px;color:var(--orange-1);background:#c97a3a1a;border-radius:var(--radius-sm);border:1px solid rgba(201,122,58,.2)}.bdp-briefing{border-left:3px solid var(--accent-blue)}.bdp-brief-rows{display:flex;flex-direction:column;gap:3px}.bdp-brief-row{display:flex;align-items:baseline;gap:8px}.bdp-brief-label{font-size:10px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px;white-space:nowrap;min-width:115px;flex-shrink:0}.bdp-brief-value{font-size:12px;color:var(--text-primary);font-weight:500;line-height:1.3}.bdp-brief-badge{font-size:10px;font-weight:700;padding:1px 8px;border-radius:9px;text-transform:uppercase;letter-spacing:.3px}.bdp-brief-good{color:var(--accent-green);background:var(--green-bg)}.bdp-brief-mixed{color:var(--orange-1);background:#c97a3a26}.bdp-brief-bad{color:var(--accent-red);background:var(--red-bg)}.bdp-brief-takeaway{font-style:italic;color:var(--text-secondary)}.bdp-range-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:12px;margin-bottom:0}.bdp-range-table th{text-align:left;font-size:10px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px;padding:2px 5px;border-bottom:1px solid var(--border-primary);white-space:nowrap;overflow:hidden}.bdp-range-table td{padding:2px 5px;color:var(--text-secondary);border-bottom:1px solid var(--border-secondary);line-height:1.3}.bdp-range-table .bdp-col-source{overflow:hidden;text-overflow:ellipsis}.bdp-range-table .bdp-col-freq,.bdp-range-table .bdp-col-range{white-space:nowrap}.bdp-rt-right{text-align:right;font-weight:600}.range-far{color:var(--accent-green)}.range-mid{color:var(--accent-blue)}.range-near{color:var(--orange-1)}.range-close{color:var(--accent-red)}@media (max-height: 800px){.bdp-card{padding:5px 8px}.bdp-inspector{gap:3px;padding:4px 8px}.bdp-m{padding:1px 0}}@media (max-height: 720px){.bdp-card{padding:4px 7px}.bdp-inspector{gap:2px;padding:3px 7px}.bdp-range-table td,.bdp-range-table th{padding:1px 4px}.bdp-m{padding:1px 0}.bdp-mv,.bdp-quality-label{font-size:12px}.bdp-brief-rows{gap:2px}}.bdp-windy-area{position:relative;display:flex;flex-direction:column;min-height:0;overflow:hidden;background:var(--bg-secondary)}.bdp-windy-loading{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;color:var(--text-muted);font-size:13px}.bdp-overlay-bar{display:flex;gap:2px;padding:5px 10px;background:var(--bg-tertiary);border-bottom:1px solid var(--border-primary);flex-shrink:0}.bdp-pill{padding:3px 10px;border-radius:var(--radius-sm);font-size:12px;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.3px;cursor:pointer;background:none;border:none}.bdp-pill:hover{color:var(--text-primary);background:var(--bg-secondary)}.bdp-pill.active{color:var(--accent-blue);background:var(--blue-bg)}.bdp-windy-frame{flex:1;width:100%;border:none;display:block;min-height:0}.bdp-windy-fallback{flex:1;display:flex;align-items:center;justify-content:center;font-size:14px;color:var(--text-muted);background:var(--bg-tertiary)}.bdp-ft-expanded{margin-top:4px;padding-top:4px;border-top:1px solid var(--border-secondary)}.bdp-ft-subtitle{font-size:10px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.5px;font-weight:600;margin:6px 0 2px;padding-bottom:2px;border-bottom:1px solid var(--border-secondary)}.bdp-ft-subtitle:first-child{margin-top:0}.live-buoy-panel{position:absolute;bottom:80px;right:16px;z-index:800;min-width:220px;max-width:280px;background:var(--bg-2);border:1px solid var(--border-1);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:8px 10px;pointer-events:auto;font-family:var(--font-mono)}.lbp-header{display:flex;align-items:center;gap:6px;margin-bottom:6px}.lbp-indicator{width:6px;height:6px;border-radius:50%;flex-shrink:0}.lbp-indicator.online{background:#4a7a5a;box-shadow:0 0 4px #4a7a5a}.lbp-indicator.offline{background:#7a8494}.lbp-title{font-size:9px;font-weight:700;letter-spacing:1.5px;color:var(--text-muted);text-transform:uppercase}.lbp-buoy{border-top:1px solid var(--border-0);padding-top:5px}.lbp-buoy.stale{opacity:.6}.lbp-id{font-size:10px;font-weight:600;color:var(--text-secondary);margin-bottom:4px}.lbp-grid{display:grid;grid-template-columns:1fr 1fr 1fr 1fr;gap:2px 6px}.lbp-cell{display:flex;flex-direction:column;gap:0px}.lbp-label{font-size:8px;font-weight:600;letter-spacing:.8px;color:var(--text-muted);text-transform:uppercase}.lbp-value{font-size:11px;color:var(--text-primary);font-weight:500}.lbp-value.warn{color:#c97a3a}.lbp-value.dim{color:var(--text-muted)}.lbp-pos{font-size:9px;color:var(--text-secondary)}.lbp-footer{display:flex;justify-content:space-between;align-items:center;margin-top:4px;padding-top:3px;border-top:1px solid var(--border-0)}.lbp-age{font-size:9px;color:var(--text-muted)}.lbp-age.warn{color:#c97a3a}.lbp-seq{font-size:8px;color:var(--text-muted);opacity:.7}:root{--layout-topbar-height: 56px;--layout-left-panel-width: clamp(320px, 22vw, 400px);--layout-right-panel-width: clamp(360px, 28vw, 520px);--layout-layers-panel-width: 200px;--z-map: 1;--z-map-controls: 100;--z-panels: 10;--z-overlays: 500;--z-tooltips: 600;--z-modals: 1000;--z-activity-panel: 800}.app{width:100vw;height:100vh;display:grid;grid-template-rows:var(--layout-topbar-height) 1fr;grid-template-columns:var(--layout-left-panel-width) 1fr var(--layout-layers-panel-width);grid-template-areas:"topbar topbar topbar" "left   center layers";background:var(--bg-primary);overflow:hidden}.app.drawer-open{grid-template-columns:var(--layout-left-panel-width) 1fr var(--layout-layers-panel-width) var(--layout-right-panel-width);grid-template-areas:"topbar topbar topbar topbar" "left   center layers right"}.app.detection-detail-open{grid-template-columns:var(--layout-left-panel-width) 1fr var(--layout-right-panel-width);grid-template-areas:"topbar topbar topbar" "left   center right"}.app.detection-detail-open>.legend{display:none}.app.mission-details-open{grid-template-columns:clamp(220px,calc(var(--layout-right-panel-width) * .6),280px) 1fr var(--layout-layers-panel-width);grid-template-areas:"topbar  topbar topbar" "mission center layers"}.app.mission-details-open>.left-panel{display:none}.app.mission-details-open>.mission-details-drawer{position:relative;grid-area:mission;top:auto;left:auto;bottom:auto;width:auto;min-width:0;max-width:none;box-shadow:none;border-right:1px solid var(--border-primary)}.app.mission-details-open .isr-feed-panel,.app.mission-details-open .ops-drawer{display:none!important}.app.buoy-detail-mode{grid-template-columns:1fr;grid-template-rows:var(--layout-topbar-height) 1fr;grid-template-areas:"topbar" "buoypanel"}.app.buoy-detail-mode>.left-panel,.app.buoy-detail-mode>.legend,.app.buoy-detail-mode>.map-area{display:none!important}.app.buoy-detail-mode>.buoy-details-panel,.app.buoy-detail-mode>.error-boundary-fallback{grid-area:buoypanel;z-index:var(--z-panels);min-height:0;min-width:0;width:100%;height:100%;overflow:hidden}.app>.top-bar{grid-area:topbar;z-index:var(--z-panels);min-height:0;overflow:hidden}.app>.left-panel{grid-area:left;z-index:var(--z-panels);min-height:0;min-width:0;overflow:hidden;display:flex;flex-direction:column}.app>.left-panel>.panel-content{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden}.app>.map-area{grid-area:center;position:relative;z-index:var(--z-map);min-height:0;min-width:0;overflow:hidden}.app>.action-drawer{grid-area:right;z-index:var(--z-panels);min-height:0;min-width:0;overflow:hidden;display:flex;flex-direction:column}.app>.action-drawer>.drawer-content{flex:1;min-height:0;overflow-y:auto;overflow-x:hidden}.app>.legend{grid-area:layers;z-index:var(--z-panels);min-height:0;width:var(--layout-layers-panel-width);height:100%;overflow:hidden}.map-area .activity-buttons{position:absolute;bottom:70px;left:16px;z-index:var(--z-overlays);display:flex;flex-direction:column;gap:8px}.activity-sliding-panel{position:fixed;top:var(--layout-topbar-height);right:var(--layout-layers-panel-width);bottom:0;width:400px;max-width:calc(100vw - var(--layout-left-panel-width) - var(--layout-layers-panel-width) - 32px);background:var(--bg-panel);border-left:1px solid var(--border-primary);box-shadow:-4px 0 16px #0000004d;z-index:var(--z-activity-panel);transform:translate(calc(100% + var(--layout-layers-panel-width)));transition:transform .3s ease;display:flex;flex-direction:column}.activity-sliding-panel.open{transform:translate(0)}.app.drawer-open .activity-sliding-panel{z-index:calc(var(--z-activity-panel) + 10)}.map-area .map-overlays{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:var(--z-map-controls)}.map-area .map-overlays>*{pointer-events:auto}.map-area .buoy-panel-container{position:absolute;top:16px;right:16px;z-index:var(--z-overlays)}.map-area .buoy-panel{position:relative;max-width:min(380px,calc(100vw - var(--layout-left-panel-width) - 48px));max-height:calc(100vh - var(--layout-topbar-height) - 48px)}.map-area .buoy-panel-toggle{position:absolute;top:160px;right:16px;z-index:var(--z-overlays)}.map-area .incidents-panel{position:absolute;left:16px;bottom:16px;z-index:var(--z-overlays);max-width:min(340px,calc(100% - 32px))}.map-area .incidents-content{max-height:calc(100vh - var(--layout-topbar-height) - 100px)}.loading-screen,.error-screen{width:100vw;height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;background:var(--bg-primary);color:var(--text-primary)}.loading-screen h1{font-size:32px;font-weight:700;letter-spacing:4px;margin-bottom:8px}.loading-screen p{color:var(--text-muted);font-size:14px}.loading-spinner{width:32px;height:32px;margin-top:24px;border:2px solid var(--border-primary);border-top-color:var(--accent-blue);border-radius:50%;animation:spin 1s linear infinite}.error-screen h2{color:var(--accent-red);margin-bottom:8px}.error-screen p{color:var(--text-secondary);margin-bottom:4px}.error-screen .error-detail{color:var(--text-muted);font-size:var(--font-size-sm)}@media (max-width: 1400px){:root{--layout-left-panel-width: clamp(290px, 20vw, 360px);--layout-right-panel-width: clamp(340px, 26vw, 440px);--layout-layers-panel-width: 180px}}@media (max-width: 1200px){:root{--layout-left-panel-width: clamp(280px, 26vw, 340px);--layout-right-panel-width: clamp(320px, 40vw, 400px);--layout-layers-panel-width: 180px}.app.buoy-detail-mode{grid-template-columns:1fr;grid-template-rows:var(--layout-topbar-height) 1fr;grid-template-areas:"topbar" "buoypanel"}.app.drawer-open{grid-template-columns:var(--layout-left-panel-width) 1fr var(--layout-layers-panel-width);grid-template-areas:"topbar topbar topbar" "left   center layers"}.app.drawer-open>.action-drawer{position:fixed;top:var(--layout-topbar-height);right:var(--layout-layers-panel-width);bottom:0;width:var(--layout-right-panel-width);max-width:calc(100vw - var(--layout-layers-panel-width) - 32px);z-index:var(--z-modals);box-shadow:-4px 0 24px #00000080}.app.detection-detail-open{grid-template-columns:var(--layout-left-panel-width) 1fr;grid-template-areas:"topbar topbar" "left   center"}.app.detection-detail-open>.action-drawer{position:fixed;top:var(--layout-topbar-height);right:0;bottom:0;width:var(--layout-right-panel-width);max-width:calc(100vw - 32px);z-index:var(--z-modals);box-shadow:-4px 0 24px #00000080}.app.mission-details-open{grid-template-columns:1fr var(--layout-layers-panel-width);grid-template-areas:"topbar topbar" "center layers"}.app.mission-details-open>.left-panel{display:none}.app.mission-details-open>.mission-details-drawer{position:fixed;top:var(--layout-topbar-height);left:0;bottom:0;width:clamp(220px,calc(var(--layout-right-panel-width) * .6),280px);max-width:calc(100vw - var(--layout-layers-panel-width) - 32px);z-index:var(--z-modals);box-shadow:4px 0 24px #00000080}}@media (max-width: 900px){:root{--layout-left-panel-width: 0px;--layout-layers-panel-width: 160px}.app{grid-template-columns:1fr var(--layout-layers-panel-width);grid-template-areas:"topbar topbar" "center layers"}.app.buoy-detail-mode{grid-template-columns:1fr;grid-template-rows:var(--layout-topbar-height) 1fr;grid-template-areas:"topbar" "buoypanel"}.app>.left-panel{position:fixed;top:var(--layout-topbar-height);left:0;bottom:0;width:clamp(308px,80vw,396px);z-index:var(--z-modals);transform:translate(-100%);transition:transform .3s ease;box-shadow:4px 0 24px #00000080}.app.left-open>.left-panel{transform:translate(0)}}.layout-debug .app{outline:2px dashed magenta}.layout-debug .app>.top-bar{outline:2px dashed cyan;outline-offset:-2px}.layout-debug .app>.left-panel{outline:2px dashed lime;outline-offset:-2px}.layout-debug .app>.map-area{outline:2px dashed yellow;outline-offset:-2px}.layout-debug .app>.action-drawer{outline:2px dashed orange;outline-offset:-2px}.layout-debug .activity-sliding-panel.open{outline:2px dashed red;outline-offset:-2px}.layout-debug .app>.legend{outline:2px dashed purple;outline-offset:-2px}.layout-debug .app>.buoy-details-panel{outline:2px dashed aquamarine;outline-offset:-2px}.layout-debug .map-area .buoy-panel,.layout-debug .map-area .incidents-panel{outline:2px dashed white}.layout-debug:after{content:"Grid: " attr(data-layout-info);position:fixed;bottom:8px;left:50%;transform:translate(-50%);background:#000000e6;color:#fff;padding:4px 12px;border-radius:4px;font-size:11px;font-family:monospace;z-index:9999;pointer-events:none}.error-boundary-fallback{display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-height:200px;background:var(--bg-primary);color:var(--text-muted)}.error-boundary-content{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;padding:32px}.error-boundary-content h3{font-size:16px;font-weight:600;color:var(--accent-red, #ff6b6b);margin:0}.error-boundary-content .error-boundary-msg{font-size:12px;color:var(--text-dimmed);max-width:400px;word-break:break-word;margin:0}.error-boundary-retry{margin-top:8px;padding:6px 16px;background:var(--bg-tertiary);border:1px solid var(--border-primary);color:var(--text-secondary);border-radius:var(--radius-sm, 4px);cursor:pointer;font-size:12px}.error-boundary-retry:hover{background:var(--bg-secondary);color:var(--text-primary)}.global-error-screen{width:100vw;height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-primary, #0a0a1e);color:var(--text-primary, #e0e0e0)}.global-error-card{display:flex;flex-direction:column;align-items:center;gap:12px;text-align:center;padding:48px;max-width:520px;background:var(--bg-secondary, #12122a);border:1px solid var(--border-primary, #2a2a4a);border-radius:8px}.global-error-card svg{color:var(--accent-amber, #f5a623)}.global-error-card h2{font-size:20px;font-weight:600;margin:0}.global-error-card .global-error-msg{font-size:13px;color:var(--text-muted, #888);margin:0;word-break:break-word}.global-error-card .global-error-stack{width:100%;max-height:180px;overflow:auto;font-size:11px;font-family:var(--font-mono, monospace);color:var(--text-dimmed, #666);background:var(--bg-primary, #0a0a1e);border:1px solid var(--border-secondary, #1e1e3a);border-radius:4px;padding:8px;text-align:left;white-space:pre-wrap;margin:0}.global-error-btn{margin-top:8px;padding:10px 24px;background:var(--accent-blue, #3b82f6);border:none;color:#fff;border-radius:6px;cursor:pointer;font-size:13px;font-weight:500}.global-error-btn:hover{filter:brightness(1.15)}.toast-notification{position:fixed;bottom:80px;left:50%;transform:translate(-50%);background:#b54a4af2;color:#fff;padding:10px 20px;border-radius:var(--radius-md);display:flex;align-items:center;gap:10px;font-size:13px;font-weight:500;box-shadow:var(--shadow-lg);z-index:9000;animation:toast-slide-up .3s ease-out}.toast-notification .toast-icon{width:20px;height:20px;border-radius:50%;background:#fff3;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:14px}.toast-notification .toast-message{flex:1}@keyframes toast-slide-up{0%{opacity:0;transform:translate(-50%) translateY(20px)}to{opacity:1;transform:translate(-50%) translateY(0)}}.px4-warning-banner{position:fixed;top:60px;left:50%;transform:translate(-50%);background:#b56428f2;color:#fff;padding:14px 24px;border-radius:8px;display:flex;align-items:flex-start;gap:12px;font-size:13px;max-width:600px;box-shadow:0 4px 20px #00000080;z-index:9500;animation:toast-slide-up .3s ease-out;border:1px solid rgba(255,180,80,.4)}.px4-warning-icon{flex-shrink:0;color:#ffd54f;margin-top:2px}.px4-warning-content{flex:1}.px4-warning-content strong{display:block;font-size:14px;margin-bottom:4px;color:#ffd54f}.px4-warning-content p{margin:4px 0;line-height:1.4;font-size:12px;opacity:.9}.px4-fix-instructions{margin-top:8px!important;padding:6px 10px;background:#0003;border-radius:4px;font-family:JetBrains Mono,SF Mono,monospace;font-size:11px!important}.page-container{width:100vw;height:100vh;display:flex;flex-direction:column;background:var(--bg-primary);color:var(--text-primary)}.page-header{display:flex;align-items:center;gap:24px;padding:16px 24px;background:var(--bg-secondary);border-bottom:1px solid var(--border-primary);flex-shrink:0}.back-btn{display:flex;align-items:center;gap:8px;padding:8px 16px;background:transparent;border:1px solid var(--border-primary);border-radius:var(--radius-md);color:var(--text-secondary);font-size:13px;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.back-btn:hover{background:var(--bg-hover);color:var(--text-primary);border-color:var(--accent-blue)}.page-header h1{flex:1;font-size:20px;font-weight:600;color:var(--text-primary);margin:0}.header-actions{display:flex;align-items:center;gap:12px}.refresh-btn{display:flex;align-items:center;gap:6px;padding:8px 16px;background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-md);color:var(--text-secondary);font-size:13px;font-weight:500;cursor:pointer;transition:all var(--transition-fast)}.refresh-btn:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.refresh-btn:disabled{opacity:.5;cursor:not-allowed}.page-filters{display:flex;align-items:center;gap:16px;padding:12px 24px;background:var(--bg-tertiary);border-bottom:1px solid var(--border-secondary);flex-shrink:0}.search-input{flex:1;max-width:400px;padding:8px 12px;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md);color:var(--text-primary);font-size:13px}.search-input:focus{outline:none;border-color:var(--accent-blue)}.search-input::placeholder{color:var(--text-muted)}.filter-select{padding:8px 12px;background:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-md);color:var(--text-primary);font-size:13px;cursor:pointer}.filter-select:focus{outline:none;border-color:var(--accent-blue)}.results-count{color:var(--text-muted);font-size:13px;margin-left:auto}.page-content{flex:1;overflow:auto;padding:24px}.loading-state,.empty-state{display:flex;align-items:center;justify-content:center;height:200px;color:var(--text-muted);font-size:14px}.data-table{width:100%;border-collapse:collapse;background:var(--bg-secondary);border-radius:var(--radius-md);overflow:hidden}.data-table th,.data-table td{padding:12px 16px;text-align:left;border-bottom:1px solid var(--border-secondary)}.data-table th{background:var(--bg-tertiary);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-muted)}.data-table tbody tr{transition:background var(--transition-fast)}.data-table tbody tr:hover{background:var(--bg-hover)}.data-table tbody tr:last-child td{border-bottom:none}.id-cell{font-family:var(--font-mono);font-size:12px;color:var(--text-secondary)}.type-cell{font-size:13px;text-transform:capitalize}.title-cell{font-size:13px;font-weight:500;color:var(--text-primary)}.description-cell{font-size:12px;color:var(--text-secondary);max-width:300px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.target-cell{font-family:var(--font-mono);font-size:12px;color:var(--text-secondary)}.time-cell{font-size:12px;color:var(--text-muted);white-space:nowrap}.notes-cell{font-size:12px;color:var(--text-secondary);max-width:200px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.severity-badge,.status-badge{display:inline-block;font-size:10px;font-weight:600;text-transform:uppercase;padding:3px 8px;border-radius:var(--radius-sm);white-space:nowrap}.severity-badge.critical{background:var(--risk-critical-bg);color:var(--risk-critical)}.severity-badge.alert{background:var(--orange-bg);color:var(--accent-orange)}.severity-badge.warning{background:var(--orange-bg);color:var(--accent-yellow)}.severity-badge.info{background:var(--bg-active);color:var(--accent-blue)}.status-badge.queued{background:var(--orange-bg);color:var(--accent-yellow)}.status-badge.in-progress{background:var(--bg-active);color:var(--accent-blue)}.status-badge.completed{background:var(--green-bg);color:var(--accent-green)}.status-badge.cancelled{background:var(--bg-hover);color:var(--text-muted)}.data-table tbody tr.severity-critical{border-left:3px solid var(--risk-critical)}.data-table tbody tr.severity-alert{border-left:3px solid var(--accent-orange)}.data-table tbody tr.status-in-progress{border-left:3px solid var(--accent-blue)}.data-table tbody tr.status-queued{border-left:3px solid var(--accent-yellow)}@media (max-width: 900px){.page-header{flex-wrap:wrap;gap:12px}.page-header h1{order:-1;width:100%}.page-filters{flex-wrap:wrap}.search-input{max-width:none}.data-table{font-size:12px}.data-table th,.data-table td{padding:8px 12px}.description-cell,.notes-cell{display:none}}:root{--bg-primary: #08090c;--bg-secondary: #0e1015;--bg-tertiary: #14171d;--bg-panel: #14171d;--bg-elevated: #1a1e26;--bg-hover: #22272f;--bg-active: rgba(74, 111, 165, .15);--border-primary: #282e38;--border-secondary: #1e232b;--border-accent: #4a6fa5;--border-muted: #1e232b;--text-primary: #e8ecf0;--text-secondary: #b0b8c4;--text-muted: #7a8494;--text-placeholder: #525a68;--accent-blue: #4a6fa5;--accent-blue-hover: #5d82b8;--accent-blue-dim: #3d5a80;--accent-green: #4a7a5a;--accent-green-muted: #2e4a38;--accent-red: #b54a4a;--accent-red-muted: #6e3030;--accent-yellow: #c97a3a;--accent-yellow-muted: #8c5a2e;--accent-orange: #c97a3a;--accent-purple: #5d82b8;--accent-cyan: #4a6fa5;--status-live: #4a6fa5;--status-stale: #c97a3a;--status-error: #b54a4a;--status-simulated: #7a8494;--status-loading: #7a8494;--risk-critical: #e8944a;--risk-critical-bg: rgba(201, 122, 58, .15);--risk-high: #c97a3a;--risk-high-bg: rgba(201, 122, 58, .15);--risk-medium: #5d82b8;--risk-medium-bg: rgba(74, 111, 165, .12);--risk-low: #7a8494;--risk-low-bg: rgba(122, 132, 148, .1);--confidence-high: #4a6fa5;--confidence-medium: #b0b8c4;--confidence-low: #c97a3a;--match-unmatched: #c97a3a;--match-matched: #4a6fa5;--font-sans: -apple-system, BlinkMacSystemFont, "Segoe UI", "Noto Sans", Helvetica, Arial, sans-serif;--font-mono: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--font-size-xs: 10px;--font-size-sm: 11px;--font-size-base: 12px;--font-size-md: 13px;--font-size-lg: 14px;--font-size-xl: 16px;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 12px;--spacing-lg: 16px;--spacing-xl: 24px;--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--topbar-height: 48px;--right-drawer-width: 380px;--bottom-strip-height: 120px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px rgba(0, 0, 0, .4);--shadow-lg: 0 10px 15px rgba(0, 0, 0, .5);--transition-fast: .1s ease;--transition-normal: .2s ease;--transition-slow: .3s ease}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html,body,#root{width:100%;height:100%;overflow:hidden}body{font-family:var(--font-sans);font-size:var(--font-size-base);line-height:1.5;color:var(--text-primary);background-color:var(--bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-primary);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}button{font-family:inherit;font-size:inherit;cursor:pointer;border:none;background:none;color:inherit}button:disabled{opacity:.5;cursor:not-allowed}input,select,textarea{font-family:inherit;font-size:inherit;background:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);color:var(--text-primary);padding:var(--spacing-sm) var(--spacing-md)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent-blue)}input::placeholder,textarea::placeholder{color:var(--text-muted)}.status-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:600;text-transform:uppercase;letter-spacing:.5px}.status-badge.live{background:var(--blue-bg, rgba(74, 111, 165, .12));color:var(--status-live)}.status-badge.stale{background:var(--orange-bg, rgba(201, 122, 58, .15));color:var(--status-stale)}.status-badge.error{background:var(--red-bg, rgba(181, 74, 74, .15));color:var(--status-error)}.status-badge.simulated{background:#7a84941f;color:var(--status-simulated)}.risk-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:var(--radius-sm);font-size:var(--font-size-xs);font-weight:600}.risk-badge.critical{background:var(--risk-critical-bg);color:var(--risk-critical)}.risk-badge.high{background:var(--risk-high-bg);color:var(--risk-high)}.risk-badge.medium{background:var(--risk-medium-bg);color:var(--risk-medium)}.risk-badge.low{background:var(--risk-low-bg);color:var(--risk-low)}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 16px;background:var(--accent-blue);color:#fff;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:500;transition:background var(--transition-fast)}.btn-primary:hover:not(:disabled){background:var(--accent-blue-hover)}.btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 16px;background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border-primary);border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:500;transition:all var(--transition-fast)}.btn-secondary:hover:not(:disabled){background:var(--bg-hover);border-color:var(--border-secondary)}.btn-danger{display:inline-flex;align-items:center;justify-content:center;gap:6px;padding:8px 16px;background:var(--accent-red-muted);color:#fff;border-radius:var(--radius-md);font-size:var(--font-size-sm);font-weight:500;transition:background var(--transition-fast)}.btn-danger:hover:not(:disabled){background:var(--accent-red)}.btn-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;background:transparent;color:var(--text-secondary);border-radius:var(--radius-sm);transition:all var(--transition-fast)}.btn-icon:hover:not(:disabled){background:var(--bg-hover);color:var(--text-primary)}.mono{font-family:var(--font-mono)}.leaflet-container{background:var(--bg-primary);font-family:var(--font-sans)}.leaflet-popup-content-wrapper{background:var(--bg-panel);color:var(--text-primary);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);border:1px solid var(--border-primary)}.leaflet-popup-tip{background:var(--bg-panel);border:1px solid var(--border-primary);border-top:none;border-right:none}.leaflet-popup-content{margin:var(--spacing-md);font-size:var(--font-size-sm)}.leaflet-popup-close-button{color:var(--text-muted)!important}.leaflet-popup-close-button:hover{color:var(--text-primary)!important}.leaflet-control-zoom{border:none!important;box-shadow:var(--shadow-md)!important}.leaflet-control-zoom a{width:28px!important;height:28px!important;line-height:28px!important;background:var(--bg-panel)!important;color:var(--text-primary)!important;border:1px solid var(--border-primary)!important;font-size:14px!important}.leaflet-control-zoom a:first-child{border-radius:var(--radius-sm) var(--radius-sm) 0 0!important}.leaflet-control-zoom a:last-child{border-radius:0 0 var(--radius-sm) var(--radius-sm)!important;border-top:none!important}.leaflet-control-zoom a:hover{background:var(--bg-hover)!important}.leaflet-control-attribution{background:#0a0e14d9!important;color:var(--text-muted)!important;font-size:9px!important;padding:2px 6px!important}.leaflet-control-attribution a{color:var(--text-secondary)!important}.marker-cluster{background:#4a6fa54d}.marker-cluster div{background:var(--accent-blue);color:#fff;font-weight:600;font-size:11px}.marker-cluster-small{background:#4a7a5a4d}.marker-cluster-small div{background:var(--accent-green)}.marker-cluster-medium{background:#4a6fa54d}.marker-cluster-medium div{background:var(--accent-blue)}.marker-cluster-large{background:#c97a3a4d}.marker-cluster-large div{background:var(--accent-orange)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}@keyframes slideInLeft{0%{transform:translate(-100%);opacity:0}to{transform:translate(0);opacity:1}}.animate-pulse{animation:pulse 2s infinite}.animate-spin{animation:spin 1s linear infinite}
