.fm-app-shell { min-height: calc(100vh - 48px); }
.fm-shell-content { min-height: calc(100vh - var(--fm-shell-header-height, 64px) - 48px); }
.fm-product-client {
  color: inherit;
  font-size: .85rem;
  font-weight: 600;
  max-width: 30vw;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.fm-product-client-legacy { margin-left: auto; margin-right: 1rem; color: #fff; }
/* Window onto the original aircraft/runway graphic; the wordmark stays outside.
   Source: 2172 x 724. Graphic viewport: x=120, y=80, width=525, height=550. */
.fm-product-logo,
.fm-shell-brand-mark,
.navbar-brand .brand-mark:has(img[src="/assets/images/flight-matrix-logo-v1.png"]) {
  display: inline-block;
  position: relative;
  overflow: hidden;
  flex: 0 0 2.7rem;
  width: 2.7rem;
  height: 2.7rem;
  padding: 0;
  background: #fff;
  border-radius: .4rem;
}
.fm-product-logo { margin-right: .65rem; vertical-align: middle; }
.fm-product-logo img,
.fm-shell-brand-mark img,
.navbar-brand .brand-mark img[src="/assets/images/flight-matrix-logo-v1.png"] {
  position: absolute;
  max-width: none;
  width: 413.7143%;
  height: 131.6364%;
  left: -22.8571%;
  top: -14.5455%;
  object-fit: fill;
}
.fm-product-footer {
  background: #f4f7fa;
  border-top: 1px solid #dbe3ec;
  color: #526176;
  font: 400 .75rem/1.6 system-ui, sans-serif;
  padding: .85rem 1rem;
  text-align: center;
}
.fm-product-footer a { color: #174f76; text-decoration: underline; }
body:has(.fm-app-shell) > .fm-product-footer { margin-left: 288px; }
@media (max-width: 991.98px) {
  body:has(.fm-app-shell) > .fm-product-footer { margin-left: 0; }
}
@media (max-width: 575.98px) {
  .fm-shell-brand strong { max-width: 5.5rem; font-size: .8rem; }
  .fm-shell-header-actions { gap: .4rem; min-width: 0; }
  .fm-shell-brand-mark,
  .navbar-brand .brand-mark:has(img[src="/assets/images/flight-matrix-logo-v1.png"]) { flex-basis: 2.2rem; width: 2.2rem; height: 2.2rem; }
  .fm-product-client { max-width: 25vw; font-size: .75rem; }
  .fm-product-client-legacy { margin-right: .4rem; }
}
@media print { .fm-product-footer { display: none !important; } }
