/*
Theme Name: AFR | KLM Virtual Airline
Theme URI: https://yoursite.com
Author: AFR | KLM Virtual
Description: Virtual airline management system for Air France-KLM group. Uses Firebase Realtime Database - no server configuration required.
Version: 4.0.0
Requires at least: 5.8
Tested up to: 6.4
Requires PHP: 7.0
License: Private
Text Domain: afr-klm-va
*/

/* Styles are loaded inline via wp_head for reliability */



/* ── THEME VARIABLES ── */
:root {
  --bg:#070c1a; --bg2:#0b1524; --bg3:#040810; --bg4:#080f1e;
  --bdr:#15243a; --bdr2:#0c1a28; --bdr3:#1a3050; --bdr4:#152030;
  --txt:#c8d8f0; --txt2:#8ab0d0; --txt3:#6890b0; --txt4:#4a7090;
  --acc:#00b0ea; --acc2:#0066cc;
  --scroll-bg:#04080f; --scroll-th:#00b0ea33;
  --thead-bg:#070e1c; --hover-bg:#0c1829;
  --modal-bg:#0b1524; --drop-bg:#07111e;
  --input-bg:#080f1e; --input-bdr:#152030;
  --ph:#2a5070;
  --card-bg:#0b1524;
  --hdr-bg:#040810;
}
body.light {
  --bg:#f0f4f8; --bg2:#ffffff; --bg3:#e4ecf5; --bg4:#f8fafc;
  --bdr:#c8d8e8; --bdr2:#d8e4f0; --bdr3:#a8c0d8; --bdr4:#b8cce0;
  --txt:#1a2a3a; --txt2:#2a4a6a; --txt3:#3a6080; --txt4:#5a7898;
  --scroll-bg:#d8e4f0; --scroll-th:#00b0ea55;
  --thead-bg:#ddeeff; --hover-bg:#e8f4ff;
  --modal-bg:#ffffff; --drop-bg:#ffffff;
  --input-bg:#ffffff; --input-bdr:#b0c8e0;
  --ph:#90aec8;
  --card-bg:#ffffff;
  --hdr-bg:#e4ecf5;
}
*{box-sizing:border-box;margin:0;padding:0}
body{background:var(--bg);font-family:'Inter',sans-serif;color:var(--txt);min-height:100vh;transition:background .25s,color .25s}
::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:var(--scroll-bg)}::-webkit-scrollbar-thumb{background:var(--scroll-th);border-radius:3px}
.mono{font-family:'Space Mono',monospace}
.bebas{font-family:'Bebas Neue',sans-serif;letter-spacing:2px}
.tab-btn{background:transparent;border:none;cursor:pointer;padding:10px 18px;font-family:'Space Mono',monospace;font-size:11px;letter-spacing:1px;color:var(--txt3);border-bottom:2px solid transparent;transition:all .2s;text-transform:uppercase;white-space:nowrap}
.tab-btn:hover{color:var(--acc)}.tab-btn.active{color:var(--acc);border-bottom-color:var(--acc)}
.btn{border:none;cursor:pointer;font-family:'Space Mono',monospace;font-size:11px;letter-spacing:1px;text-transform:uppercase;border-radius:2px;transition:all .2s;padding:10px 22px}
.btn-blue{background:linear-gradient(135deg,#00b0ea,#0066cc);color:#fff}.btn-blue:hover{opacity:.85}
.btn-ghost{background:transparent;border:1px solid var(--bdr3);color:var(--txt3)}.btn-ghost:hover{border-color:var(--acc);color:var(--acc)}
.btn-green{background:linear-gradient(135deg,#009955,#006633);color:#fff}.btn-green:hover{opacity:.85}
.btn-red{background:linear-gradient(135deg,#cc2222,#880000);color:#fff}.btn-red:hover{opacity:.85}
.btn-orange{background:linear-gradient(135deg,#dd7700,#aa4400);color:#fff}.btn-orange:hover{opacity:.85}
.btn-purple{background:linear-gradient(135deg,#6644cc,#442299);color:#fff}.btn-purple:hover{opacity:.85}
.btn-sm{padding:5px 13px;font-size:10px}
#theme-btn{background:transparent;border:1px solid var(--bdr3);color:var(--txt3);border-radius:20px;padding:5px 14px;cursor:pointer;font-family:'Space Mono',monospace;font-size:9px;letter-spacing:1px;transition:all .2s}
#theme-btn:hover{border-color:var(--acc);color:var(--acc)}
.field{display:flex;flex-direction:column;gap:5px;position:relative}
.field label{font-family:'Space Mono',monospace;font-size:9px;letter-spacing:2px;color:var(--txt2);text-transform:uppercase;font-weight:600}
.field input,.field select,.field textarea{background:var(--input-bg);border:1px solid var(--input-bdr);color:var(--txt);padding:9px 12px;font-family:'Space Mono',monospace;font-size:12px;border-radius:2px;transition:border-color .2s,background .25s;width:100%}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:#00b0ea55}
.field select option{background:var(--input-bg);color:var(--txt)}
.field input::placeholder,.field textarea::placeholder{color:var(--ph)}
.card{background:var(--card-bg);border:1px solid var(--bdr);border-radius:3px;padding:20px;transition:background .25s,border-color .25s}
.accentcard{position:relative;overflow:hidden}.accentcard::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,#00b0ea,#003cb3)}
.trow{display:grid;padding:11px 16px;border-bottom:1px solid var(--bdr2);font-family:'Space Mono',monospace;transition:background .15s;color:var(--txt)}
.trow:hover{background:var(--hover-bg)}
.thead{background:var(--thead-bg)!important;font-size:9px;letter-spacing:2px;color:var(--txt3);text-transform:uppercase;cursor:default;font-weight:600}
.badge{display:inline-flex;align-items:center;padding:2px 8px;border-radius:2px;font-family:'Space Mono',monospace;font-size:9px;letter-spacing:1px;text-transform:uppercase;white-space:nowrap}
.ok{background:#002a1a;color:#00ee88;border:1px solid #005533;padding:11px 15px;border-radius:2px;font-family:'Space Mono',monospace;font-size:11px}
.err{background:#180000;color:#ff5555;border:1px solid #440000;padding:11px 15px;border-radius:2px;font-family:'Space Mono',monospace;font-size:11px}
body.light .ok{background:#e0fff0;color:#006633;border-color:#009944}
body.light .err{background:#fff0f0;color:#cc0000;border-color:#ee4444}
.pbar{background:var(--bdr2);border-radius:2px;height:5px;overflow:hidden}
.pfill{height:100%;border-radius:2px;transition:width .7s ease}
.active-flight-banner{background:linear-gradient(135deg,#001a0a,#002a10);border:1px solid #00aa6644;border-radius:3px;padding:16px 20px}
body.light .active-flight-banner{background:linear-gradient(135deg,#e0fff0,#c8f0e0);border-color:#00aa6699}
.timer-display{font-family:'Bebas Neue',sans-serif;font-size:48px;color:#00ee88;letter-spacing:6px;line-height:1;text-shadow:0 0 20px #00ee8844}
.dropdown-list{position:absolute;top:calc(100%+2px);left:0;right:0;background:var(--drop-bg);border:1px solid var(--bdr3);border-radius:3px;max-height:240px;overflow-y:auto;z-index:999;box-shadow:0 12px 32px #0006;display:none}
.dropdown-list.open{display:block}
.dropdown-item{padding:8px 14px;cursor:pointer;border-bottom:1px solid var(--bdr2);display:flex;align-items:center;justify-content:space-between;gap:12px;font-family:'Space Mono',monospace;font-size:10px;color:var(--txt)}
.dropdown-item:hover{background:var(--hover-bg)}
.dropdown-item:last-child{border-bottom:none}
.modal-overlay{position:fixed;inset:0;background:#000a;z-index:9000;display:flex;align-items:center;justify-content:center;padding:24px}
.modal-box{background:var(--modal-bg);border:1px solid var(--bdr3);border-radius:4px;width:100%;max-width:520px;max-height:90vh;overflow-y:auto;box-shadow:0 24px 64px #0008}
.section{display:none}.section.active{display:block}
header{background:var(--hdr-bg);border-bottom:1px solid var(--bdr2);position:sticky;top:0;z-index:200;transition:background .25s}
.header-inner{max-width:1140px;margin:0 auto;padding:0 24px;display:flex;align-items:center;justify-content:space-between;height:58px;gap:12px}
.nav-bar{border-top:1px solid var(--bdr2);background:var(--hdr-bg)}
.nav-inner{max-width:1140px;margin:0 auto;padding:0 24px;display:flex;overflow-x:auto}
main{max-width:1140px;margin:0 auto;padding:36px 24px}
footer{border-top:1px solid var(--bdr2);padding:20px 24px;text-align:center}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.grid3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:14px}
.hist-tag{display:inline-flex;align-items:center;gap:5px;padding:3px 8px;border-radius:2px;font-family:'Space Mono',monospace;font-size:8px;letter-spacing:1px;background:var(--bg4);border:1px solid var(--bdr);color:var(--txt3);margin:2px}
.hist-tag.klm{border-color:#00b0ea44;color:#00aadd}
.hist-tag.af{border-color:#e2001a44;color:#cc2233}
@media(max-width:700px){.grid2,.grid3{grid-template-columns:1fr}}

  