/* ui536: one visual owner for the Lingxi instrument SVG system. */
:root {
  --ui536-void: #031016;
  --ui536-panel: #0a2029;
  --ui536-signal: #62e7ef;
  --ui536-hot: #efffff;
  --ui536-cold: #a7b5ff;
  --ui536-edge: #4f8792;
  --ui536-quiet: #315764;
  --ui536-alert: #e8b96c;
  --ui536-ease: cubic-bezier(0.16, 1, 0.3, 1);
}

/* Navigation vectors read as instruments, not as decorated emoji. */
:is(#portal-root, #root) svg.cockpit-vector-icon {
  display: block !important;
  width: 32px !important;
  height: 32px !important;
  overflow: visible !important;
  color: var(--ui536-hot) !important;
  shape-rendering: geometricPrecision !important;
  filter: drop-shadow(0 2px 3px rgba(0, 0, 0, 0.58)) !important;
  transition: color 160ms var(--ui536-ease), transform 160ms var(--ui536-ease), filter 160ms var(--ui536-ease) !important;
}

:is(#portal-root, #root) svg.cockpit-vector-icon :is(path, circle, rect) {
  fill: none !important;
  vector-effect: non-scaling-stroke !important;
  stroke-linecap: square !important;
  stroke-linejoin: bevel !important;
}

:is(#portal-root, #root) svg.cockpit-vector-icon .glyph-chassis {
  stroke: var(--ui536-edge) !important;
  stroke-width: 0.72 !important;
  stroke-dasharray: 10 3 2 5 !important;
  animation: ui536ChassisBoot 520ms var(--ui536-ease) both !important;
}

:is(#portal-root, #root) svg.cockpit-vector-icon .glyph-tech-window {
  stroke: var(--ui536-edge) !important;
  stroke-width: 0.48 !important;
  opacity: 0.88 !important;
}

:is(#portal-root, #root) svg.cockpit-vector-icon .glyph-tech-aperture {
  stroke: var(--ui536-signal) !important;
  stroke-width: 0.56 !important;
  stroke-dasharray: 1 4 7 3 !important;
  opacity: 0.82 !important;
  animation: ui536ApertureLock 520ms var(--ui536-ease) 60ms both !important;
}

:is(#portal-root, #root) svg.cockpit-vector-icon :is(.glyph-tech-crosshair, .glyph-tech-vector) {
  stroke: var(--ui536-hot) !important;
  stroke-width: 0.46 !important;
  opacity: 0.72 !important;
}

:is(#portal-root, #root) svg.cockpit-vector-icon .glyph-tech-microticks,
:is(#portal-root, #root) svg.cockpit-vector-icon .glyph-tech-calibration {
  stroke: var(--ui536-cold) !important;
  stroke-width: 0.38 !important;
  stroke-dasharray: 2 3 !important;
  opacity: 0.64 !important;
}

:is(#portal-root, #root) svg.cockpit-vector-icon :is(.glyph-tech-route, .glyph-tech-bus, .glyph-tech-circuit, .glyph-tech-beam) {
  stroke: var(--ui536-signal) !important;
  stroke-width: 0.54 !important;
  stroke-dasharray: 1 4 5 3 !important;
  opacity: 0.86 !important;
  animation: ui536RouteWake 620ms var(--ui536-ease) 90ms both !important;
}

:is(#portal-root, #root) svg.cockpit-vector-icon :is(.glyph-tech-rail, .glyph-tech-connector) {
  stroke: var(--ui536-quiet) !important;
  stroke-width: 0.38 !important;
  stroke-dasharray: 2 4 !important;
  opacity: 0.9 !important;
}

:is(#portal-root, #root) svg.cockpit-vector-icon .glyph-tech-target {
  stroke: var(--ui536-hot) !important;
  stroke-width: 0.52 !important;
  opacity: 0.78 !important;
}

:is(#portal-root, #root) svg.cockpit-vector-icon .glyph-tech-scanline {
  display: none !important;
  stroke: var(--ui536-hot) !important;
  stroke-width: 0.48 !important;
  stroke-dasharray: 2 3 9 4 !important;
}

:is(#portal-root, #root) svg.cockpit-vector-icon :is(.glyph-tech-core-ring, .glyph-tech-orbit, .glyph-tech-pulse) {
  stroke: var(--ui536-cold) !important;
  stroke-width: 0.42 !important;
  stroke-dasharray: 1 5 6 3 !important;
  opacity: 0.64 !important;
}

:is(#portal-root, #root) svg.cockpit-vector-icon :is(.glyph-tech-core, .glyph-node, .glyph-tech-beacon) {
  fill: var(--ui536-hot) !important;
  stroke: var(--ui536-signal) !important;
  stroke-width: 0.62 !important;
  filter: drop-shadow(0 0 4px rgba(98, 231, 239, 0.84)) !important;
}

:is(#portal-root, #root) svg.cockpit-vector-icon .glyph-main {
  stroke: currentColor !important;
  stroke-width: 1.36 !important;
  opacity: 1 !important;
}

:is(#portal-root, #root) svg.cockpit-vector-icon .glyph-signal {
  stroke: var(--ui536-signal) !important;
  stroke-width: 1.74 !important;
  filter: drop-shadow(0 0 3px rgba(98, 231, 239, 0.72)) !important;
}

:is(#portal-root, #root) :is(button, a, summary):is(:hover, :focus-visible) svg.cockpit-vector-icon {
  color: var(--ui536-hot) !important;
  transform: translate3d(1px, -1px, 0) scale(1.045) !important;
  filter: drop-shadow(0 0 8px rgba(98, 231, 239, 0.72)) !important;
}

:is(#portal-root, #root) :is(button, a, summary):is(:hover, :focus-visible) svg.cockpit-vector-icon .glyph-tech-scanline {
  display: block !important;
  animation: ui536ScanLock 360ms var(--ui536-ease) both !important;
}

:is(#portal-root, #root) :is(button.active, a[aria-current="page"]):not(:disabled) svg.cockpit-vector-icon {
  color: var(--ui536-hot) !important;
  filter: drop-shadow(0 0 9px rgba(98, 231, 239, 0.78)) !important;
}

:is(#portal-root, #root) :is(button.active, a[aria-current="page"]):not(:disabled) svg.cockpit-vector-icon .glyph-tech-aperture {
  stroke: var(--ui536-hot) !important;
  animation: ui536ActiveLock 420ms var(--ui536-ease) both !important;
}

/* Chart vectors carry the data arrival: frame, rail, trace, then terminal. */
:is(#portal-root, #root) :is(svg.cockpit-data-vector, svg.chart) {
  isolation: isolate !important;
  background: var(--ui536-void) !important;
  border-color: rgba(98, 231, 239, 0.46) !important;
  box-shadow: inset 0 0 0 1px rgba(239, 255, 255, 0.06), 0 14px 28px rgba(0, 0, 0, 0.34) !important;
}

:is(#portal-root, #root) svg.cockpit-data-vector :is(.vector-frame, .vector-corners, .vector-bracket-inner, .vector-signal-gate) {
  fill: none !important;
  stroke: var(--ui536-edge) !important;
  stroke-width: 0.62 !important;
  stroke-dasharray: 14 4 2 7 !important;
  opacity: 0.94 !important;
}

:is(#portal-root, #root) svg.cockpit-data-vector :is(.vector-grid path, .vector-axis, .vector-ticks, .vector-calibration, .vector-data-rail) {
  fill: none !important;
  stroke: rgba(167, 181, 255, 0.28) !important;
  stroke-width: 0.32 !important;
}

:is(#portal-root, #root) svg.cockpit-data-vector .vector-scan-band {
  fill: rgba(98, 231, 239, 0.06) !important;
  stroke: none !important;
}

:is(#portal-root, #root) svg.cockpit-data-vector .vector-sweep {
  stroke: var(--ui536-hot) !important;
  stroke-width: 0.78 !important;
  filter: drop-shadow(0 0 6px rgba(98, 231, 239, 0.84)) !important;
  animation: ui536TelemetryReceive 720ms var(--ui536-ease) 80ms both !important;
}

:is(#portal-root, #root) svg.cockpit-data-vector :is(.vector-line, .trend-line-main, polyline) {
  fill: none !important;
  stroke: var(--ui536-hot) !important;
  stroke-width: 1.38 !important;
  filter: drop-shadow(0 0 4px rgba(98, 231, 239, 0.72)) !important;
  animation: ui536TraceReceive 820ms var(--ui536-ease) 120ms both !important;
}

:is(#portal-root, #root) svg.cockpit-data-vector :is(.vector-line.competitor, .vector-terminal.competitor, .vector-node.competitor) {
  stroke: var(--ui536-cold) !important;
  filter: none !important;
}

:is(#portal-root, #root) svg.cockpit-data-vector :is(.vector-node, .vector-terminal, .trend-dot) {
  fill: var(--ui536-hot) !important;
  stroke: var(--ui536-signal) !important;
  stroke-width: 0.58 !important;
  filter: drop-shadow(0 0 4px rgba(98, 231, 239, 0.8)) !important;
  animation: ui536NodeReceive 380ms var(--ui536-ease) 200ms both !important;
}

@media (prefers-reduced-motion: reduce) {
  html body #portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root svg.cockpit-data-vector *,
  html body #root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root svg.cockpit-data-vector * {
    animation: none !important;
    transform: none !important;
  }
}

/* Login and server-rendered report SVGs share the same instrument language. */
html body .wrap :is(svg.login-vector, .login-link-card svg) {
  color: var(--ui536-hot) !important;
  filter: drop-shadow(0 0 7px rgba(98, 231, 239, 0.5)) !important;
}

html body .wrap svg.login-vector :is(.login-vector-frame, .login-vector-window, .login-vector-aperture, .login-vector-grid, .login-vector-calibration, .login-vector-vector, .login-vector-lock, .login-vector-bus) {
  fill: none !important;
  stroke: var(--ui536-edge) !important;
  vector-effect: non-scaling-stroke !important;
  stroke-linecap: square !important;
  stroke-linejoin: bevel !important;
}

html body .wrap svg.login-vector .login-vector-frame {
  stroke: var(--ui536-signal) !important;
  stroke-width: 0.68 !important;
  stroke-dasharray: 8 3 2 5 !important;
}

html body .wrap svg.login-vector .login-vector-signal {
  stroke: var(--ui536-hot) !important;
  stroke-width: 1.36 !important;
  filter: drop-shadow(0 0 4px rgba(98, 231, 239, 0.8)) !important;
}

html body .wrap svg.login-vector .login-vector-core {
  fill: rgba(98, 231, 239, 0.14) !important;
  stroke: var(--ui536-hot) !important;
  stroke-width: 0.82 !important;
  filter: drop-shadow(0 0 4px rgba(98, 231, 239, 0.8)) !important;
}

@keyframes ui536ChassisBoot { from { stroke-dashoffset: 28; opacity: 0.18; } to { stroke-dashoffset: 0; opacity: 1; } }
@keyframes ui536ApertureLock { from { stroke-dashoffset: 24; opacity: 0.1; transform: scale(0.78); transform-origin: center; } to { stroke-dashoffset: 0; opacity: 0.82; transform: scale(1); transform-origin: center; } }
@keyframes ui536RouteWake { from { stroke-dashoffset: 24; opacity: 0.08; } to { stroke-dashoffset: 0; opacity: 0.86; } }
@keyframes ui536ScanLock { from { stroke-dashoffset: 20; opacity: 0.12; } to { stroke-dashoffset: -20; opacity: 1; } }
@keyframes ui536ActiveLock { from { opacity: 0.1; transform: scale(0.76); transform-origin: center; } 72% { opacity: 1; transform: scale(1.06); transform-origin: center; } to { opacity: 1; transform: scale(1); transform-origin: center; } }
@keyframes ui536TelemetryReceive { from { stroke-dashoffset: 1; opacity: 0.08; } to { stroke-dashoffset: 0; opacity: 0.96; } }
@keyframes ui536TraceReceive { from { stroke-dashoffset: 1; opacity: 0.08; } to { stroke-dashoffset: 0; opacity: 1; } }
@keyframes ui536NodeReceive { from { opacity: 0.14; transform: scale(0.76); transform-origin: center; } to { opacity: 1; transform: scale(1); transform-origin: center; } }

@media (prefers-reduced-motion: reduce) {
  html body :is(#portal-root, #root, .wrap) :is(svg.cockpit-vector-icon, svg.cockpit-vector-icon *, svg.cockpit-data-vector, svg.cockpit-data-vector *, svg.chart, svg.chart *, svg.login-vector, svg.login-vector *) {
    animation: none !important;
    transform: none !important;
    transition: none !important;
  }
}

/* The repository still ships historical cascade layers with repeated-id
   selectors. Keep this small final block stronger than those layers so the
   current instrument language is actually rendered in production. */
html body #portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root svg.cockpit-vector-icon,
html body #root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root svg.cockpit-vector-icon {
  color: var(--ui536-hot) !important;
  animation: none !important;
  filter: drop-shadow(0 2px 3px rgba(0, 0, 0, 0.58)) !important;
}

html body #portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root svg.cockpit-vector-icon .glyph-tech-scanline,
html body #root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root svg.cockpit-vector-icon .glyph-tech-scanline {
  display: none !important;
  animation: none !important;
}

html body #portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root :is(button, a, summary):is(:hover, :focus-visible) svg.cockpit-vector-icon .glyph-tech-scanline,
html body #root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root :is(button, a, summary):is(:hover, :focus-visible) svg.cockpit-vector-icon .glyph-tech-scanline {
  display: block !important;
  stroke: var(--ui536-hot) !important;
  stroke-width: 0.48 !important;
  stroke-dasharray: 2 3 9 4 !important;
  animation: ui536ScanLock 360ms var(--ui536-ease) both !important;
}

html body #portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root :is(button.active, a[aria-current="page"]):not(:disabled) svg.cockpit-vector-icon .glyph-tech-aperture,
html body #root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root :is(button.active, a[aria-current="page"]):not(:disabled) svg.cockpit-vector-icon .glyph-tech-aperture {
  stroke: var(--ui536-hot) !important;
  animation: ui536ActiveLock 420ms var(--ui536-ease) both !important;
}

html body #portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root svg.cockpit-data-vector,
html body #root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root svg.cockpit-data-vector {
  background: var(--ui536-void) !important;
  border-color: rgba(98, 231, 239, 0.46) !important;
  box-shadow: inset 0 0 0 1px rgba(239, 255, 255, 0.06), 0 14px 28px rgba(0, 0, 0, 0.34) !important;
}

html body #portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root svg.cockpit-data-vector .vector-sweep,
html body #root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root svg.cockpit-data-vector .vector-sweep {
  stroke: var(--ui536-hot) !important;
  animation: ui536TelemetryReceive 720ms var(--ui536-ease) 80ms both !important;
}

html body #portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root svg.cockpit-data-vector :is(.vector-line, .trend-line-main, polyline),
html body #root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root svg.cockpit-data-vector :is(.vector-line, .trend-line-main, polyline) {
  stroke: var(--ui536-hot) !important;
  animation: ui536TraceReceive 820ms var(--ui536-ease) 120ms both !important;
}

html body #portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root svg.cockpit-data-vector :is(.vector-node, .vector-terminal, .trend-dot),
html body #root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root svg.cockpit-data-vector :is(.vector-node, .vector-terminal, .trend-dot) {
  fill: var(--ui536-hot) !important;
  stroke: var(--ui536-signal) !important;
  animation: ui536NodeReceive 380ms var(--ui536-ease) 200ms both !important;
}

@media (prefers-reduced-motion: reduce) {
  html body #portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root#portal-root :is(svg.cockpit-vector-icon, svg.cockpit-data-vector, svg.chart) *,
  html body #root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root#root :is(svg.cockpit-vector-icon, svg.cockpit-data-vector, svg.chart) * {
    animation: none !important;
    transform: none !important;
    transition: none !important;
  }
}
/* Server-rendered analytics pages live under .wrap rather than an app root. */
html body .wrap :is(svg.cockpit-data-vector, svg.chart) {
  isolation: isolate !important;
  background: var(--ui536-void) !important;
  border-color: rgba(98, 231, 239, 0.46) !important;
  box-shadow: inset 0 0 0 1px rgba(239, 255, 255, 0.06), 0 14px 28px rgba(0, 0, 0, 0.34) !important;
}

html body .wrap :is(svg.cockpit-data-vector, svg.chart) :is(.vector-frame, .vector-corners, .vector-bracket-inner, .vector-signal-gate) {
  fill: none !important;
  stroke: var(--ui536-edge) !important;
  stroke-width: 0.62 !important;
  stroke-dasharray: 14 4 2 7 !important;
}

html body .wrap :is(svg.cockpit-data-vector, svg.chart) :is(.vector-grid path, .vector-axis, .vector-ticks, .vector-calibration, .vector-data-rail) {
  fill: none !important;
  stroke: rgba(167, 181, 255, 0.28) !important;
  stroke-width: 0.32 !important;
}

html body .wrap :is(svg.cockpit-data-vector, svg.chart) .vector-scan-band {
  fill: rgba(98, 231, 239, 0.06) !important;
  stroke: none !important;
}

html body .wrap :is(svg.cockpit-data-vector, svg.chart) .vector-sweep {
  stroke: var(--ui536-hot) !important;
  stroke-width: 0.78 !important;
  filter: drop-shadow(0 0 6px rgba(98, 231, 239, 0.84)) !important;
  animation: ui536TelemetryReceive 720ms var(--ui536-ease) 80ms both !important;
}

html body .wrap :is(svg.cockpit-data-vector, svg.chart) :is(.vector-line, .trend-line-main, polyline) {
  fill: none !important;
  stroke: var(--ui536-hot) !important;
  stroke-width: 1.38 !important;
  filter: drop-shadow(0 0 4px rgba(98, 231, 239, 0.72)) !important;
  animation: ui536TraceReceive 820ms var(--ui536-ease) 120ms both !important;
}

html body .wrap :is(svg.cockpit-data-vector, svg.chart) :is(.vector-node, .vector-terminal, .trend-dot, .vector-bar-cap) {
  fill: var(--ui536-hot) !important;
  stroke: var(--ui536-signal) !important;
  stroke-width: 0.58 !important;
  filter: drop-shadow(0 0 4px rgba(98, 231, 239, 0.8)) !important;
  animation: ui536NodeReceive 380ms var(--ui536-ease) 200ms both !important;
}

@media (prefers-reduced-motion: reduce) {
  html body .wrap :is(svg.cockpit-data-vector, svg.chart) * {
    animation: none !important;
    transform: none !important;
  }
}
