/* MT-04 reusable flight radar. Scoped to flight cards in Concierge and Driver. */
.flight-radar-card {
  --flight-accent: #326acb;
  --flight-track: #b5cdee;
  --flight-ink: var(--bs-heading-color, #172e55);
  --flight-muted: var(--bs-secondary-color, #6b7c97);
  --flight-line: var(--bs-border-color, #dfe7f2);
  --flight-soft: var(--bs-tertiary-bg, #f5f8fd);
  --flight-surface: var(--bs-body-bg, #fff);
  min-width: 0;
  display: grid;
  gap: 11px;
  align-content: start;
  padding: 13px 14px;
  background: var(--flight-soft);
  border: 1px solid var(--flight-line);
  border-radius: 13px;
  color: var(--flight-ink);
}
.flight-radar-card--success { --flight-accent: #159451; --flight-track: #b7ddc6; }
.flight-radar-card--danger { --flight-accent: #bb4854; --flight-track: #edd0d3; }
.flight-radar-card--warning { --flight-accent: #b87f29; --flight-track: #eddbb3; }
.flight-radar-card__header {
  display: flex; align-items: center; justify-content: space-between;
  flex-wrap: wrap; gap: 8px; min-width: 0;
}
.flight-radar-card__identity { display: grid; gap: 2px; min-width: 0; }
.flight-radar-card__flight {
  font-size: 1rem; font-weight: 850; line-height: 1.2;
  letter-spacing: -.018em; color: var(--flight-ink); overflow-wrap: anywhere;
}
.flight-radar-card__subtitle { font-size: .72rem; color: var(--flight-muted); }
.flight-radar-card__status {
  padding: 5px 9px; border-radius: 999px; line-height: 1.25;
  font-size: .69rem; font-weight: 800;
  background: #eaf1ff; color: #2855a7; white-space: nowrap;
}
.flight-radar-card--success .flight-radar-card__status { background: #e2f5ea; color: #126c48; }
.flight-radar-card--danger .flight-radar-card__status { background: #fce8ec; color: #a43449; }
.flight-radar-card--warning .flight-radar-card__status { background: #fff0d3; color: #936114; }
.flight-radar-card--neutral .flight-radar-card__status { background: #e9edf4; color: #52647e; }
.flight-radar-card__route {
  display: flex; align-items: center; min-width: 0; gap: 9px;
  padding: 12px;
  background: var(--flight-surface);
  border: 1px solid var(--flight-line);
  border-radius: 11px;
}
.flight-radar-card__airport {
  display: grid; align-content: center; flex: 0 1 150px;
  gap: 2px; min-width: 0;
}
.flight-radar-card__destination { text-align: right; }
.flight-radar-card__airport-label {
  font-size: .64rem; font-weight: 750; color: var(--flight-muted);
}
.flight-radar-card__airport-code {
  font-size: 1.1rem; font-weight: 850; line-height: 1.2;
  color: var(--flight-ink); overflow-wrap: anywhere;
}
.flight-radar-card__airport-place {
  color: var(--flight-muted);
  font-size: .69rem;
  line-height: 1.35;
  overflow-wrap: anywhere;
  hyphens: auto;
}
.flight-radar-card__airport-time {
  font-size: .95rem; font-weight: 820; color: var(--flight-accent);
  font-variant-numeric: tabular-nums;
}
.flight-radar-card__route-line {
  position: relative; container-type: inline-size;
  flex: 1 1 70px; min-width: 35px; height: 40px;
}
.flight-radar-card__route-line::before,
.flight-radar-card__route-line::after {
  content: ''; position: absolute; left: 0; right: 0; top: 50%;
  height: 5px; border-radius: 99px; transform: translateY(-50%);
}
.flight-radar-card__route-line::before { background: var(--flight-track); }
.flight-radar-card__route-line::after {
  background: var(--flight-accent);
  transform-origin: left center;
  transform: translateY(-50%) scaleX(var(--flight-progress, 0));
}
.flight-radar-card__plane {
  position: absolute; left: 0; top: 50%; z-index: 1;
  display: grid; place-items: center; width: 30px; height: 30px;
  color: var(--flight-accent);
  background: transparent;
  transform: translate3d(var(--flight-plane-from, 0px), -50%, 0);
}
.flight-radar-card__plane svg {
  display: block; width: 30px; height: 30px;
  transform: rotate(90deg);
  filter: drop-shadow(0 2px 2px rgba(18, 45, 92, .2));
}
.flight-radar-card__route-line[data-motion="running"] .flight-radar-card__plane {
  animation: flight-radar-card-plane-travel var(--flight-duration, 0s) linear both;
}
.flight-radar-card__route-line[data-motion="running"]::after {
  animation: flight-radar-card-progress-fill var(--flight-duration, 0s) linear both;
}
@keyframes flight-radar-card-plane-travel {
  from { transform: translate3d(var(--flight-plane-from, 0px), -50%, 0); }
  to { transform: translate3d(calc(94cqw - 28.2px), -50%, 0); }
}
@keyframes flight-radar-card-progress-fill {
  from { transform: translateY(-50%) scaleX(var(--flight-progress, 0)); }
  to { transform: translateY(-50%) scaleX(.94); }
}
.flight-radar-card__terminal-meta {
  display: flex; flex-wrap: wrap; align-items: baseline;
  gap: 4px 18px; min-width: 0;
  padding-bottom: 8px; border-bottom: 1px solid var(--flight-line);
  color: var(--flight-muted); font-size: .7rem; font-weight: 650;
}
.flight-radar-card__terminal-meta span { overflow-wrap: anywhere; }
.flight-radar-card__note {
  margin: 0; color: var(--flight-muted);
  font-size: .7rem; line-height: 1.45;
}
.flight-radar-card__metrics {
  display: grid; grid-template-columns: repeat(auto-fit, minmax(min(100%, 142px), 1fr));
  gap: 8px; min-width: 0;
}
.flight-radar-card__metric {
  display: grid; align-content: start; gap: 5px;
  min-width: 0; padding: 10px 11px;
  background: var(--flight-surface);
  border: 1px solid var(--flight-line);
  border-radius: 9px;
}
.flight-radar-card__metric-label {
  color: var(--flight-muted); font-size: .68rem; line-height: 1.3;
}
.flight-radar-card__metric-value {
  color: var(--flight-ink); font-size: .88rem; font-weight: 820;
  line-height: 1.25; font-variant-numeric: tabular-nums; overflow-wrap: anywhere;
}
.flight-radar-card--mobile { padding: 11px; gap: 9px; }
.flight-radar-card--mobile .flight-radar-card__route { padding: 10px 8px; gap: 6px; }
.flight-radar-card--mobile .flight-radar-card__airport { flex-basis: 116px; }
.flight-radar-card--mobile .flight-radar-card__airport-place { font-size: .65rem; }
.flight-radar-card--mobile .flight-radar-card__airport-code { font-size: 1rem; }
.flight-radar-card--mobile .flight-radar-card__airport-time { font-size: .88rem; }
.flight-radar-card--mobile .flight-radar-card__metric { padding: 10px; }
@media (max-width: 420px) {
  .flight-radar-card { padding: 11px; }
  .flight-radar-card__route { gap: 6px; padding: 10px 8px; }
  .flight-radar-card__airport { flex-basis: 105px; }
  .flight-radar-card__airport-code { font-size: 1rem; }
  .flight-radar-card__airport-time { font-size: .84rem; }
  .flight-radar-card__metric-value { font-size: .84rem; }
  .flight-radar-card__metrics { grid-template-columns: repeat(auto-fit, minmax(min(100%, 126px), 1fr)); }
}
html[data-theme="dark"] .flight-radar-card,
html[data-bs-theme="dark"] .flight-radar-card,
.app-admin-shell[data-theme="dark"] .flight-radar-card {
  --flight-ink: #e5edf9;
  --flight-muted: #b7c4d8;
  --flight-line: #3b4d69;
  --flight-soft: #212f45;
  --flight-surface: #1b263a;
  --flight-track: #4e6488;
}
html[data-theme="dark"] .flight-radar-card__status,
html[data-bs-theme="dark"] .flight-radar-card__status {
  color: #c1d7ff; background: #273c62;
}
html[data-theme="dark"] .flight-radar-card--success .flight-radar-card__status,
html[data-bs-theme="dark"] .flight-radar-card--success .flight-radar-card__status {
  color: #a6eac4; background: #234b3a;
}
html[data-theme="dark"] .flight-radar-card--danger .flight-radar-card__status,
html[data-bs-theme="dark"] .flight-radar-card--danger .flight-radar-card__status {
  color: #ffbdc9; background: #56313f;
}
@media (prefers-reduced-motion: reduce) {
  .flight-radar-card__route-line[data-motion="running"] .flight-radar-card__plane,
  .flight-radar-card__route-line[data-motion="running"]::after {
    animation: none !important;
  }
}
