/* ============================================================
   Confluence Air — Airport page  (cfe-airport.css)
   ------------------------------------------------------------
   Route: frontend.airports.show  →  body[data-route="frontend.airports.show"]
   (route name VERIFIED via router match, not guessed.)
   Scoped by the data-route hook in confluence_v3/app.blade.php.
   Pure CSS: info panel + map card headers + all the flight/
   aircraft/pilot/report tables + the DBasic::Map red bar.
   REVERT: remove the cfe-airport.css <link> from app.blade.php.
   ============================================================ */

@import url('https://fonts.googleapis.com/css2?family=Archivo:wght@600;700;800&family=Source+Sans+3:wght@400;600;700&family=Roboto+Mono:wght@400;500&display=swap');

body[data-route="frontend.airports.show"]{
  --cfe-navy:#012773;
  --cfe-navy-600:#0a3a8f;
  --cfe-navy-050:#eef1f9;
  --cfe-gold:#f5dc0f;
  --cfe-gold-deep:#c9b400;
  --cfe-ink:#141922;
  --cfe-slate:#5b6576;
  --cfe-line:rgba(1,39,115,.12);
  --cfe-good:#1f7a52;
  --cfe-good-bg:#e6f3ec;
}

/* ---- cards (every panel on the page) ---- */
body[data-route="frontend.airports.show"] .card{
  border:1px solid var(--cfe-line);
  border-radius:16px;
  box-shadow:0 1px 2px rgba(1,39,115,.06), 0 8px 24px rgba(1,39,115,.06);
  overflow:hidden;
}
body[data-route="frontend.airports.show"] .card-header{
  background:var(--cfe-navy);
  color:#fff;
  border-bottom:0;
  font-weight:700;
}
body[data-route="frontend.airports.show"] .card-header h1,
body[data-route="frontend.airports.show"] .card-header h2,
body[data-route="frontend.airports.show"] .card-header h3,
body[data-route="frontend.airports.show"] .card-header h4,
body[data-route="frontend.airports.show"] .card-header h5{ font-family:"Archivo",sans-serif; color:#fff; }
body[data-route="frontend.airports.show"] .card-header i{ color:var(--cfe-gold); }
body[data-route="frontend.airports.show"] .card-footer{
  background:var(--cfe-navy-050);
  border-top:1px solid var(--cfe-line);
  color:var(--cfe-slate);
}

/* ---- tables (info panel + flights/aircraft/pilots/reports) ---- */
body[data-route="frontend.airports.show"] .table{ font-size:13px; }
body[data-route="frontend.airports.show"] .table thead th{
  font-family:"Archivo",sans-serif;
  font-size:11px;
  text-transform:uppercase;
  letter-spacing:.04em;
  color:var(--cfe-slate);
  border-bottom:1px solid var(--cfe-line);
  vertical-align:middle;
}
body[data-route="frontend.airports.show"] .table thead th a{ color:var(--cfe-navy) !important; text-decoration:none; }
body[data-route="frontend.airports.show"] .table thead th a:hover{ text-decoration:underline; }
body[data-route="frontend.airports.show"] .table tbody td{ vertical-align:middle; }
body[data-route="frontend.airports.show"] .table tbody td a{ color:var(--cfe-navy); text-decoration:none; font-weight:600; }
body[data-route="frontend.airports.show"] .table tbody td a:hover{ text-decoration:underline; }
body[data-route="frontend.airports.show"] .table-striped > tbody > tr:nth-of-type(odd) > *{ background-color:rgba(1,39,115,.03); }
body[data-route="frontend.airports.show"] .table tbody tr:hover > *{ background-color:rgba(245,220,15,.10); }

/* info-panel row labels are <th> used as content, not column headers —
   don't force-uppercase or slate them like a header row */
body[data-route="frontend.airports.show"] .table tbody th{
  font-family:"Source Sans 3",sans-serif;
  text-transform:none;
  letter-spacing:0;
  color:var(--cfe-ink);
  font-weight:600;
}

/* ---- buttons ---- */
/* Map / WX Map / Weather & NOTAMs toggle row (primary/secondary/info) → brand */
body[data-route="frontend.airports.show"] .btn-primary{
  background:var(--cfe-navy) !important; border-color:var(--cfe-navy) !important; color:#fff !important;
}
body[data-route="frontend.airports.show"] .btn-primary:hover{
  background:var(--cfe-navy-600) !important; border-color:var(--cfe-navy-600) !important;
}
body[data-route="frontend.airports.show"] .btn-secondary{
  background:var(--cfe-navy-050) !important; border-color:var(--cfe-line) !important; color:var(--cfe-navy) !important; font-weight:700;
}
body[data-route="frontend.airports.show"] .btn-secondary:hover{
  background:#e2e8f6 !important; color:var(--cfe-navy) !important;
}
body[data-route="frontend.airports.show"] .btn-info{
  background:var(--cfe-gold) !important; border-color:var(--cfe-gold-deep) !important; color:var(--cfe-navy) !important; font-weight:700;
}
/* Flights Map bar (DBasic::Map widget) — de-red. Only .btn-danger here that
   is NOT a .save_flight bid button (airport page has no bid buttons, but keep
   the guard consistent with the flights page). */
body[data-route="frontend.airports.show"] .btn-danger:not(.save_flight):not([x-saved-class]){
  background:var(--cfe-navy) !important; border-color:var(--cfe-navy) !important; color:#fff !important;
}
body[data-route="frontend.airports.show"] .btn-danger:not(.save_flight):not([x-saved-class]):hover{
  background:var(--cfe-navy-600) !important; border-color:var(--cfe-navy-600) !important;
}

/* ---- badges ---- */
body[data-route="frontend.airports.show"] .badge.bg-success{ background:var(--cfe-good-bg) !important; color:var(--cfe-good) !important; }
