/* ═══════════════════════════════════════════════════════════════════════════
   Fleet Register & SELCAL — Compass Virtual Airlines
   user/themes/compass-virtual/css/aircraft-register.css

   ⚑ Lifted out of the page on 2026-09-16 so it carries no <style> or <script>
   tag, which Grav 2's markdown tagfilter escapes.

   ⚑ Class prefix fr- and used by this page alone.

   ⚑ THE BADGE CLASSES ARE BUILT FROM DATA. fr-badge-Pax, -Regional, -Freighter
   and -Executive are composed in JavaScript as 'fr-badge-' + a.role, so the
   role values in fleet.json have to match these class names exactly. Add a new
   division to the fleet and it needs a rule here or its badge renders unstyled.
   Note fr-badge-Executive is the ExJet one — black and champagne rather than
   the Compass teal, which is deliberate.
   ═══════════════════════════════════════════════════════════════════════════ */

#fleet-register { font-size: 13px; }
.fr-controls { display: flex; flex-wrap: wrap; gap: 10px; margin-bottom: 12px; align-items: center; }
#fr-search {
    flex: 1; min-width: 200px; padding: 8px 12px;
    border: 1px solid #dde0e4; border-radius: 6px;
    font-size: 13px; outline: none;
}
#fr-search:focus { border-color: #6d97a8; box-shadow: 0 0 0 2px rgba(109,151,168,0.15); }
.fr-filters { display: flex; gap: 6px; flex-wrap: wrap; }
.fr-btn {
    padding: 6px 12px; border: 1px solid #dde0e4; border-radius: 5px;
    background: white; font-size: 12px; cursor: pointer; color: #555;
    transition: all 0.15s;
}
.fr-btn:hover { border-color: #6d97a8; color: #4a7a8a; }
.fr-btn.active { background: #6d97a8; border-color: #6d97a8; color: white; }
.fr-count { font-size: 11px; opacity: 0.8; }
.fr-summary { font-size: 12px; color: #8a9099; margin-bottom: 8px; }
.fr-table { width: 100%; border-collapse: collapse; }
.fr-table th {
    background: #e8f0f3; color: #4a7a8a; font-size: 11px; font-weight: 500;
    text-transform: uppercase; letter-spacing: 0.5px; padding: 8px 10px;
    text-align: left; border-bottom: 1px solid #c8d8e0; white-space: nowrap;
}
.fr-table th.sortable { cursor: pointer; user-select: none; }
.fr-table th.sortable:hover { background: #d8eaf0; }
.sort-icon { color: #9ab8c4; font-size: 10px; }
.fr-table th.sort-asc .sort-icon::after { content: ' ↑'; }
.fr-table th.sort-desc .sort-icon::after { content: ' ↓'; }
.fr-table td { padding: 7px 10px; border-bottom: 0.5px solid #f0f2f3; vertical-align: middle; }
.fr-table tr:hover td { background: #f7fafc; }
.fr-reg { font-family: monospace; font-weight: 600; color: #4a7a8a; font-size: 13px; }
.fr-flag { font-size: 14px; margin-right: 4px; }
.fr-icao { font-family: monospace; font-size: 12px; color: #4a7a8a; font-weight: 600; }
.fr-selcal { font-family: monospace; font-size: 12px; color: #666; letter-spacing: 1px; }
.fr-badge {
    display: inline-block; padding: 2px 8px; border-radius: 10px;
    font-size: 11px; font-weight: 500;
}
.fr-badge-Pax { background: #e8f0f3; color: #4a7a8a; }
.fr-badge-Regional { background: #e8f5ec; color: #2a7a40; }
.fr-badge-Freighter { background: #fff3e0; color: #c8962e; }
.fr-badge-Executive { background: #1a1a1a; color: #d4b876; }
