@charset "UTF-8";:root{color-scheme:dark;--blue: #008bcf;--light-blue: #66C3E7;--dark-blue: #005E8F;--orange: #F28B20;--green: #6FBA82;--red: #E5484D;--purple: #9B7EDE;--gray-900: #1B1A1B;--gray-700: #2d2a2b;--gray-500: #595858;--gray-300: #a0a0a0;--surface: rgba(11, 19, 27, .78);--surface-border: rgba(255, 255, 255, .1);--surface-hover: rgba(255, 255, 255, .06);--panel-bg: rgba(11, 19, 27, .82);--panel-bg-solid: #0b131b;--panel-blur: 18px;--panel-border: 1px solid rgba(255, 255, 255, .1);--panel-radius: 12px;--panel-shadow: 0 8px 32px rgba(0, 0, 0, .4);--header-height: 44px;--status-bar-height: 32px;--panel-width: 380px;--nav-rail-width: 228px;--nav-rail-collapsed-width: 64px;--app-left-offset: var(--nav-rail-width);--text-primary: #f0f6fc;--text-secondary: #a0b4c8;--text-muted: #6a7a8a;--hud-font-size: .78rem;--dashboard-overlay-z: 30;--map-popup-layer-z: 50;--map-bottom-row-bottom: calc( var(--status-bar-height) + 12px + env(safe-area-inset-bottom, 0px) );--map-bottom-row-clearance: 50px;--map-bottom-row-gap: 10px;--font-display: "Nasalization", "Trebuchet MS", "Segoe UI", sans-serif;--font-body: Candara, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, "Roboto Mono", monospace;--radius-sm: 6px;--radius-md: 10px;--radius-lg: 14px;--space-xs: 4px;--space-sm: 8px;--space-md: 16px;--space-lg: 24px}@font-face{font-family:Nasalization;src:url(/fonts/nasalization-rg.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}.map-label-chip{width:max-content;max-width:180px;padding:2px 5px;border-radius:3px;background:#071018d6;color:#fff;font:600 11px/1.25 sans-serif;text-shadow:0 1px 2px #000;white-space:nowrap}.geospatial-drawing-map-label{pointer-events:none}.geospatial-drawing-map-label--editable{pointer-events:auto;cursor:grab;outline:1px dashed rgba(245,165,36,.95);outline-offset:2px;-webkit-user-select:none;user-select:none}.geospatial-drawing-map-label--editable:active{cursor:grabbing}html,body{height:100%;overflow:hidden;font-family:var(--font-body);background:var(--gray-900);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.map-popup-layer{position:fixed;z-index:var(--map-popup-layer-z);top:calc(var(--header-height) + 12px);right:0;bottom:0;left:var(--app-left-offset);pointer-events:none}.map-popup-layer>*{pointer-events:auto}@media (max-width: 760px){:root{--app-left-offset: 0px}.map-popup-layer{left:0}}h1,h2,h3{font-family:var(--font-display);letter-spacing:.05em;font-weight:400}input,select,textarea{font-family:inherit;font-size:inherit}button{font-family:var(--font-body)!important;font-size:inherit}.titan-button{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:8px 16px;border:1px solid transparent;border-radius:var(--radius-sm);font-family:var(--font-body);font-size:.72rem;line-height:1;letter-spacing:.06em;text-transform:uppercase;white-space:nowrap;cursor:pointer;transition:background .2s,border-color .2s,color .2s,opacity .2s}.titan-button--primary{background:var(--blue);color:#fff}.titan-button--primary:hover:not(:disabled){background:color-mix(in srgb,var(--blue) 85%,#fff)}.titan-button--secondary{border-color:#ffffff1f;background:#ffffff14;color:var(--text-primary)}.titan-button--secondary:hover:not(:disabled){background:#ffffff29}.titan-button:focus-visible{outline:2px solid var(--light-blue);outline-offset:2px}.titan-button:disabled{opacity:.48;cursor:not-allowed}.titan-field{width:100%;min-width:0;box-sizing:border-box;padding:8px 10px;border:1px solid rgba(255,255,255,.11);border-radius:var(--radius-sm);outline:none;background:#ffffff0e;color:var(--text-primary);line-height:1.35;transition:border-color .15s,box-shadow .15s,background .15s}.titan-field::placeholder{color:var(--text-muted);opacity:.72}.titan-field:focus{border-color:#008bcfe6;background:#ffffff13;box-shadow:0 0 0 2px #008bcf2e}select.titan-field{cursor:pointer}select.titan-field option{background:var(--gray-900);color:var(--text-primary)}textarea.titan-field{resize:vertical}input.titan-field[type=color]{min-height:38px;padding:4px;cursor:pointer}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#ffffff40}.glass-panel{background:var(--panel-bg);backdrop-filter:blur(var(--panel-blur));-webkit-backdrop-filter:blur(var(--panel-blur));border:var(--panel-border);border-radius:var(--panel-radius);box-shadow:var(--panel-shadow)}.status-badge{display:inline-flex;align-items:center;gap:6px;font-size:var(--hud-font-size);color:var(--text-secondary)}.status-badge:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--text-muted);flex-shrink:0}.status-badge.connected:before{background:var(--green)}.status-badge.connecting:before{background:var(--orange);animation:pulse-dot 1.2s infinite}.status-badge.disconnected:before{background:var(--text-muted)}.status-badge.error:before{background:#e54d4d}@keyframes pulse-dot{0%,to{opacity:1}50%{opacity:.3}}.detail-alert-list{display:flex;flex-direction:column;min-height:0;padding:var(--space-md);max-height:calc(100vh - var(--header-height) - 60px)}.side-alert-list{min-height:0;overflow-y:auto}.side-alert-class{overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical}.alert-card-source-badge{font-size:.65rem;padding:1px 6px;border-radius:var(--radius-sm);background:#ffaa002e;color:var(--yellow, #ffaa00);text-transform:uppercase;letter-spacing:.04em;font-weight:600;white-space:nowrap}.alert-card-type-badge{font-size:.65rem;padding:1px 6px;border-radius:var(--radius-sm);background:#9c27b02e;color:#ba68c8;text-transform:uppercase;letter-spacing:.04em;font-weight:600;white-space:nowrap}.drone-marker{width:46px;height:46px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;pointer-events:auto;cursor:pointer;--heading-rotation: 0deg;background:transparent}.drone-marker__pointer{width:46px;height:46px;rotate:var(--map-bearing-rotation, 0deg);transform:rotate(var(--heading-rotation));transform-origin:50% 62%;transition:transform .25s ease-out;display:block;filter:drop-shadow(0 2px 6px rgba(0,0,0,.45));overflow:visible}.drone-marker__pointer-shape{fill:var(--orange);stroke:#00000040;stroke-width:1.25;stroke-linejoin:round}.drone-marker__pointer-center{fill:var(--orange);stroke:#00000040;stroke-width:1.1}.drone-marker.fov-visible .drone-marker__pointer{filter:drop-shadow(0 0 5px rgba(25,200,177,.95))}.drone-marker:focus-visible{outline:2px solid rgba(25,200,177,.95);outline-offset:3px;border-radius:8px}.drone-marker__label{font-size:.7rem;font-weight:600;color:#f9fbff;padding:2px 8px;border-radius:999px;background:#0a121ad9;text-transform:uppercase;letter-spacing:.04em;box-shadow:0 2px 5px #00000059;white-space:nowrap}.mission-waypoint-marker{width:24px;height:24px;display:flex;align-items:center;justify-content:center;border-radius:999px;background:#22d3ee;color:#0b131b;font-size:.72rem;font-weight:700;cursor:pointer;box-shadow:0 2px 5px #00000059}.mission-waypoint-marker--takeoff{background:var(--green)}.mission-waypoint-marker--loiter_unlim,.mission-waypoint-marker--loiter_turns,.mission-waypoint-marker--loiter_time{background:#9b7ede}.mission-waypoint-marker--orbit{background:#ec4899}.mission-waypoint-marker--land{background:var(--orange)}.mission-waypoint-marker--rtl{background:var(--red)}.mission-waypoint-marker--selected{box-shadow:0 0 0 3px #ffffffe6,0 2px 5px #00000059}.mission-waypoint-marker--camera:after{content:"";position:absolute;bottom:-2px;right:-2px;width:8px;height:8px;border-radius:999px;background:#fff;border:1px solid #0b131b}.maplibregl-popup.mission-waypoint-popup .maplibregl-popup-content{background:#141820f5;padding:10px 12px}.maplibregl-popup.mission-waypoint-popup.maplibregl-popup-anchor-bottom .maplibregl-popup-tip{border-top-color:#141820f5}.maplibregl-popup.mission-waypoint-popup.maplibregl-popup-anchor-top .maplibregl-popup-tip{border-bottom-color:#141820f5}.maplibregl-popup.mission-waypoint-popup.maplibregl-popup-anchor-left .maplibregl-popup-tip{border-right-color:#141820f5}.maplibregl-popup.mission-waypoint-popup.maplibregl-popup-anchor-right .maplibregl-popup-tip{border-left-color:#141820f5}.maplibregl-popup.mission-waypoint-popup .maplibregl-popup-close-button{color:#cbd5e1;font-size:16px}.remoteid-marker{width:46px;height:46px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;cursor:pointer;background:transparent}.remoteid-marker__icon{width:46px;height:46px;display:block;filter:drop-shadow(0 2px 6px rgba(0,0,0,.45))}.remoteid-marker__icon-shape{fill:var(--red);stroke:var(--red)}.remoteid-marker.friendly .remoteid-marker__icon-shape{fill:var(--green);stroke:var(--green)}.remoteid-marker__label{font-size:.62rem;font-weight:600;color:#f9fbff;padding:1px 6px;border-radius:999px;background:#0a121ad9;letter-spacing:.03em;box-shadow:0 2px 5px #00000059;white-space:nowrap}.operator-marker{width:30px;height:40px;display:flex;align-items:flex-start;justify-content:center;pointer-events:none;background:transparent}.operator-marker__pin{width:28px;height:38px;display:block;filter:drop-shadow(0 2px 6px rgba(0,0,0,.45))}.operator-marker__pin-shape{fill:var(--gray-300);stroke:#0006;stroke-width:1.25}.operator-marker__pin-dot{fill:var(--gray-900)}.adsb-marker{width:46px;height:46px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;cursor:pointer;background:transparent}.adsb-marker__icon{width:46px;height:46px;display:block;rotate:var(--map-bearing-rotation, 0deg);transform:rotate(var(--heading-rotation, 0deg));transform-origin:50% 50%;transition:transform .25s ease-out;filter:drop-shadow(0 2px 6px rgba(0,0,0,.45))}.adsb-marker__icon-shape{fill:var(--purple);stroke:var(--purple)}.adsb-marker__icon-shape--stroke-only{fill:none}.adsb-marker__label{font-size:.62rem;font-weight:600;color:#f9fbff;padding:1px 6px;border-radius:999px;background:#0a121ad9;letter-spacing:.03em;box-shadow:0 2px 5px #00000059;white-space:nowrap}.map-style-toggle{display:flex;gap:4px;padding:4px;background:#0b131bd9;border-radius:999px;box-shadow:0 6px 14px #00000059;border:1px solid rgba(255,255,255,.1)}.map-style-toggle .map-style-btn{min-width:80px;padding:8px 14px;display:inline-flex;align-items:center;justify-content:center;text-align:center;border:none;border-radius:999px;background:transparent;color:#f5fbff;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;cursor:pointer;transition:background .2s,color .2s}.map-style-toggle .map-style-btn:hover{background:var(--blue)}.map-style-toggle .map-style-btn.active{background:var(--blue);color:#fff;box-shadow:inset 0 0 0 1px #ffffff26}.adsb-altitude-filter{display:flex;gap:4px;padding:4px;background:#0b131bd9;border-radius:999px;box-shadow:0 6px 14px #00000059;border:1px solid rgba(255,255,255,.1)}.maplibregl-ctrl-bottom-left .maplibregl-ctrl.adsb-altitude-filter{margin-bottom:var(--map-bottom-row-bottom)}.adsb-altitude-filter .adsb-altitude-filter-btn{min-width:56px;padding:8px 12px;display:inline-flex;align-items:center;justify-content:center;text-align:center;border:none;border-radius:999px;background:transparent;color:#f5fbff;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;cursor:pointer;transition:background .2s,color .2s}.adsb-altitude-filter .adsb-altitude-filter-btn:hover{background:var(--purple)}.adsb-altitude-filter .adsb-altitude-filter-btn.active{background:var(--purple);color:#fff;box-shadow:inset 0 0 0 1px #ffffff26}@media (max-width: 600px){.adsb-altitude-filter .adsb-altitude-filter-btn{min-width:0;padding:6px 8px;font-size:.68rem}}.map-layers{position:relative}.map-layers .map-layers-btn{display:flex;align-items:center;justify-content:center;width:29px;height:29px;padding:0;background:#fff;border:0;color:#1f2937;cursor:pointer}.map-layers .map-layers-btn svg{display:block;color:#1f2937}.map-layers .map-layers-btn:hover{background-color:#0000000f}.map-layers .map-layers-btn:focus-visible{outline:2px solid #008bcf;outline-offset:-2px}.map-layers.expanded .map-layers-btn{background:#008bcf;color:#fff}.map-layers.expanded .map-layers-btn svg{color:#fff}.map-layers-panel{display:none;position:absolute;top:calc(100% + 6px);right:0;min-width:140px;padding:8px;gap:6px;flex-direction:column;background:#0b131beb;border-radius:8px;box-shadow:0 6px 14px #00000059;border:1px solid rgba(255,255,255,.1)}.map-layers.expanded .map-layers-panel{display:flex}.map-layers-row{display:flex;align-items:center;gap:8px;font-size:.78rem;color:#f5fbff;cursor:pointer;white-space:nowrap}.map-layers-row input[type=checkbox]{accent-color:var(--blue);cursor:pointer}html,body{height:auto;min-height:100%;overflow:auto}body{font-size:15px;min-height:100vh}select option{background:var(--panel-bg-solid);color:var(--text-primary)}
