/* flight.navo24.com: the schedules.navo24.com layout, accents in the Air colour (#7044EC, Navo mode palette). */
body.nv-apps[data-app=flight] { --air: #7044EC; --air-dk: #4B23B8; --air-wash: #F0EBFE; }
.xa-ic-plane { --i: url(/example-site/icons/plane.svg); }
.xa-ic-takeoff { --i: url(/example-site/icons/plane-takeoff.svg); }
.xa-ic-landing { --i: url(/example-site/icons/plane-landing.svg); }
.xa-ic-hash { --i: url(/example-site/icons/hash.svg); }
body[data-app=flight] .xa-sail-bar::before { background: var(--air); }
body[data-app=flight] .xa-sail-bar i, body[data-app=flight] .xa-sail-bar em { border-color: var(--air); }
body[data-app=flight] .tab-pill.active { color: var(--air-dk); }
.fl-num { font-weight: 600; color: var(--text-primary); }
.fl-al { color: var(--text-secondary); font-weight: 500; }
.fl-code { font-variant-numeric: tabular-nums; color: var(--text-tertiary); font-size: var(--fs-1); }
.fl-t { font-size: var(--fs-4, 20px); font-weight: 600; color: var(--text-primary); font-variant-numeric: tabular-nums; }
.fl-row { display: grid; grid-template-columns: 64px minmax(0, 1fr) auto; gap: var(--sp-5); align-items: center; padding: var(--sp-5) var(--sp-7); border-bottom: 1px solid var(--divider); }
.fl-row:last-child { border-bottom: 0; }
.fl-board { padding: 0; overflow: hidden; }
.fl-empty { padding: var(--sp-8); color: var(--text-secondary); }
.fl-foot { color: var(--text-tertiary); font-size: var(--fs-1); padding-top: var(--sp-6); padding-bottom: var(--sp-8); }
.fl-foot a { color: inherit; }
.ac-ovl { position: fixed; inset: 0; z-index: 90; display: grid; place-items: center; background: rgba(11, 13, 16, .45); padding: 16px; }
.ac-ovl[hidden] { display: none; }
.ac-ovl-card { max-width: 420px; padding: var(--sp-8); display: flex; flex-direction: column; gap: var(--sp-5); }
.ac-ovl-card p { margin: 0; color: var(--text-secondary); }
.xa-ac { position: absolute; left: 0; right: 0; top: calc(100% + 4px); z-index: 20; background: var(--bg-base, #fff); border: 1px solid var(--divider); border-radius: 10px; box-shadow: 0 8px 24px rgba(0,0,0,.08); max-height: 280px; overflow: auto; }
.xa-ac[hidden] { display: none; }
.xa-ac button { display: flex; gap: 8px; width: 100%; text-align: left; padding: 8px 12px; background: none; border: 0; font: inherit; cursor: pointer; }
.xa-ac button:hover, .xa-ac button.on { background: var(--air-wash); }
.field-shell { position: relative; }

/* ===== Navo mobile app mode (html.in-app): 320-430px, no horizontal scroll, no AI Mode. ===== */
html.in-app, html.in-app body { overflow-x: hidden; max-width: 100%; }
html.in-app .xa-cols { grid-template-columns: 1fr; }
html.in-app .xa-filters { position: static; }
html.in-app .xa-search { grid-template-columns: 1fr; }
html.in-app .xa-search .mini-input { font-size: 16px; }
html.in-app .fl-foot, html.in-app .nai-btn, html.in-app .nai-wrap { display: none !important; }
@media (max-width: 760px) {
  .xa-cols { grid-template-columns: 1fr; }
  .xa-filters { position: static; }
  .fl-row { grid-template-columns: 52px minmax(0, 1fr); }
  .fl-row > :last-child { grid-column: 2; }
}
