/* ============================================================
   SkyWave Airlines — Global Stylesheet
   Full animations, modern dark luxury theme
   ============================================================ */

/* ===== FONTS & VARS ===== */
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:wght@400;700;900&family=Outfit:wght@300;400;500;600;700;900&display=swap');

:root{
  --bg:#07091a; --bg2:#0b0f28; --bg3:#10162f; --bg4:#161d3a;
  --card:#11172e; --card2:#16203a;
  --white:#f0f4ff; --off:#c8d0e8; --gray:#7b8aab; --gray2:#4e5d80;
  --gold:#c9a84c; --gold2:#d4af58; --goldDim:rgba(201,168,76,.1); --goldB:rgba(201,168,76,.25);
  --ok:#00d4a0; --warn:#ffa502; --bad:#ff4757; --info:#00b4d8;
  --r:12px; --r2:18px;
  --tr:all .25s cubic-bezier(.25,.46,.45,.94);
  --fd:'Playfair Display',Georgia,serif;
  --fb:'Outfit',system-ui,sans-serif;
  --shadow:0 4px 24px rgba(0,0,0,.4);
  --shadow2:0 12px 48px rgba(0,0,0,.6);
}

/* ===== RESET ===== */
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--fb);background:var(--bg);color:var(--white);line-height:1.65;overflow-x:hidden}
a{color:inherit;text-decoration:none}
ul{list-style:none}
input,select,textarea,button{font-family:var(--fb)}
img{max-width:100%;display:block}

/* ===== SCROLLBAR ===== */
::-webkit-scrollbar{width:6px}
::-webkit-scrollbar-track{background:var(--bg2)}
::-webkit-scrollbar-thumb{background:var(--goldB);border-radius:3px}
::-webkit-scrollbar-thumb:hover{background:var(--gold)}

/* ===== ANIMATIONS ===== */
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes fadeUp{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:translateY(0)}}
@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes popIn{0%{transform:scale(.6);opacity:0}70%{transform:scale(1.06)}100%{transform:scale(1);opacity:1}}
@keyframes slideInDown{from{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}
@keyframes slideInLeft{from{opacity:0;transform:translateX(-28px)}to{opacity:1;transform:translateX(0)}}
@keyframes slideInRight{from{opacity:0;transform:translateX(28px)}to{opacity:1;transform:translateX(0)}}
@keyframes shimmer{0%{background-position:-600px 0}100%{background-position:600px 0}}
@keyframes glowBorder{0%,100%{border-color:rgba(201,168,76,.25)}50%{border-color:rgba(201,168,76,.6);box-shadow:0 0 28px rgba(201,168,76,.2)}}
@keyframes goldPulse{0%,100%{color:var(--gold)}50%{color:var(--gold2);text-shadow:0 0 20px rgba(201,168,76,.5)}}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
@keyframes planeFly{0%{transform:translateX(-30px) rotate(-5deg);opacity:0}100%{transform:translateX(0) rotate(0);opacity:1}}
@keyframes progressBar{from{width:0}to{width:var(--progress,100%)}}
@keyframes ripple{0%{transform:scale(0);opacity:.4}100%{transform:scale(4);opacity:0}}
@keyframes borderDash{to{stroke-dashoffset:0}}
@keyframes navSlide{from{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}

/* ===== NAVBAR ===== */
.navbar{position:fixed;top:0;left:0;right:0;z-index:999;padding:0 36px;height:68px;display:flex;align-items:center;justify-content:space-between;transition:all .4s ease;animation:navSlide .6s ease}
.navbar.scrolled{background:rgba(7,9,26,.96);border-bottom:1px solid var(--goldB);backdrop-filter:blur(20px);box-shadow:0 4px 30px rgba(0,0,0,.4)}
.nav-logo{display:flex;align-items:center;gap:10px;cursor:pointer;text-decoration:none}
.logo-icon{font-size:24px;animation:float 4s ease-in-out infinite}
.logo-text{font-family:var(--fd);font-size:22px;font-weight:900;letter-spacing:-.5px}
.logo-text span{color:var(--gold)}
.nav-links{display:flex;align-items:center;gap:6px}
.nav-links a{padding:8px 14px;border-radius:8px;font-size:13px;font-weight:500;color:var(--off);transition:var(--tr);position:relative}
.nav-links a:hover,.nav-links a.active{color:var(--white);background:rgba(255,255,255,.06)}
.nav-links a.active::after{content:'';position:absolute;bottom:4px;left:50%;transform:translateX(-50%);width:16px;height:2px;background:var(--gold);border-radius:1px}
.nav-cta{background:var(--goldDim)!important;border:1px solid var(--goldB)!important;color:var(--gold)!important;padding:9px 20px!important;border-radius:10px!important;font-weight:700!important;transition:all .25s!important}
.nav-cta:hover{background:var(--gold)!important;color:var(--bg)!important;transform:translateY(-2px);box-shadow:0 8px 24px rgba(201,168,76,.3)!important}
.hamburger{display:none;flex-direction:column;gap:5px;cursor:pointer;padding:5px}
.hamburger span{width:22px;height:2px;background:var(--white);border-radius:1px;transition:var(--tr);display:block}
@media(max-width:820px){
  .hamburger{display:flex}
  .nav-links{display:none;position:absolute;top:68px;left:0;right:0;background:rgba(7,9,26,.98);flex-direction:column;padding:18px 22px;gap:3px;border-bottom:1px solid var(--goldB);backdrop-filter:blur(20px)}
  .nav-links.mobile-open{display:flex;animation:slideInDown .3s ease}
  .nav-links a{width:100%;padding:11px 14px;border-radius:10px}
  .navbar{padding:0 22px}
}

/* ===== FORM CONTROLS ===== */
.form-group{display:flex;flex-direction:column;gap:5px}
.form-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--gray)}
.form-control{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:var(--r);padding:11px 14px;color:var(--white);font-size:14px;outline:none;transition:var(--tr);width:100%}
.form-control:focus{border-color:var(--gold);background:rgba(201,168,76,.06);box-shadow:0 0 0 3px rgba(201,168,76,.12)}
.form-control::placeholder{color:var(--gray2)}
.form-control:hover:not(:focus){border-color:rgba(255,255,255,.18)}
select.form-control option{background:var(--bg2);color:var(--white)}
.form-control.highlight{animation:glowBorder .6s ease}

/* ===== BUTTONS ===== */
.btn{display:inline-flex;align-items:center;gap:8px;padding:10px 22px;border-radius:var(--r);border:none;font-size:14px;font-weight:700;cursor:pointer;transition:all .25s;position:relative;overflow:hidden;text-decoration:none;font-family:var(--fb)}
.btn::after{content:'';position:absolute;inset:50% 50%;background:rgba(255,255,255,.15);border-radius:50%;transition:all .5s}
.btn:active::after{inset:-50%;border-radius:50%}
.btn-gold{background:linear-gradient(135deg,var(--gold),var(--gold2));color:#070918;box-shadow:0 4px 18px rgba(201,168,76,.3)}
.btn-gold:hover{background:linear-gradient(135deg,var(--gold2),var(--gold));transform:translateY(-2px);box-shadow:0 8px 30px rgba(201,168,76,.45)}
.btn-dark{background:var(--card);border:1px solid rgba(255,255,255,.1);color:var(--white)}
.btn-dark:hover{background:var(--card2);border-color:rgba(255,255,255,.2);transform:translateY(-2px)}
.btn-outline{background:transparent;border:2px solid var(--goldB);color:var(--gold)}
.btn-outline:hover{background:var(--goldDim);border-color:var(--gold);transform:translateY(-2px)}
.btn-danger{background:var(--bad);color:#fff;border:none}
.btn-danger:hover{background:#ff2233;transform:translateY(-2px)}
.btn-success{background:var(--ok)!important;color:var(--bg)!important;border:none!important}
.btn-lg{padding:13px 28px;font-size:15px;border-radius:14px}
.btn-sm{padding:7px 14px;font-size:12px;border-radius:8px}
.btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}

/* ===== CARDS ===== */
.card{background:var(--card);border:1px solid rgba(255,255,255,.06);border-radius:var(--r2);padding:22px;transition:var(--tr)}
.card:hover{border-color:rgba(255,255,255,.1)}
.card2{background:var(--card2);border:1px solid rgba(255,255,255,.06);border-radius:var(--r);padding:16px}

/* ===== BADGES ===== */
.badge{display:inline-block;padding:3px 10px;border-radius:50px;font-size:11px;font-weight:700}
.badge-success{background:rgba(0,212,160,.12);color:var(--ok);border:1px solid rgba(0,212,160,.25)}
.badge-warn{background:rgba(255,165,2,.12);color:var(--warn);border:1px solid rgba(255,165,2,.25)}
.badge-bad{background:rgba(255,71,87,.12);color:var(--bad);border:1px solid rgba(255,71,87,.25)}
.badge-info{background:rgba(0,180,216,.12);color:var(--info);border:1px solid rgba(0,180,216,.25)}
.badge-gold{background:var(--goldDim);color:var(--gold);border:1px solid var(--goldB)}

/* ===== ALERTS ===== */
.alert{padding:12px 16px;border-radius:var(--r);font-size:13px;margin:10px 0}
.alert-success{background:rgba(0,212,160,.08);border:1px solid rgba(0,212,160,.2);color:var(--ok)}
.alert-danger{background:rgba(255,71,87,.08);border:1px solid rgba(255,71,87,.2);color:var(--bad)}
.alert-info{background:rgba(0,180,216,.08);border:1px solid rgba(0,180,216,.2);color:var(--info)}
.alert-warn{background:rgba(255,165,2,.08);border:1px solid rgba(255,165,2,.2);color:var(--warn)}

/* ===== MODALS ===== */
.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,.75);z-index:1000;display:flex;align-items:center;justify-content:center;padding:16px;opacity:0;pointer-events:none;transition:all .3s;backdrop-filter:blur(6px)}
.modal-overlay.show{opacity:1;pointer-events:all}
.modal{background:var(--card);border:1px solid var(--goldB);border-radius:24px;padding:0;width:100%;box-shadow:0 32px 80px rgba(0,0,0,.7);max-height:90vh;overflow:hidden;transform:scale(.95);transition:all .3s;display:flex;flex-direction:column}
.modal-overlay.show .modal{transform:scale(1)}
.modal-header{display:flex;justify-content:space-between;align-items:center;padding:22px 26px;border-bottom:1px solid rgba(255,255,255,.06);flex-shrink:0}
.modal-header h3{font-size:19px}
.modal-close{width:32px;height:32px;background:rgba(255,255,255,.07);border:none;color:var(--white);border-radius:8px;font-size:16px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:var(--tr)}
.modal-close:hover{background:var(--bad);color:#fff}
.modal>*:not(.modal-header){padding:22px 26px}

/* ===== TABLE ===== */
.table-wrap{overflow-x:auto;border-radius:var(--r);border:1px solid rgba(255,255,255,.05)}
table{width:100%;border-collapse:collapse;font-size:13px}
thead tr{background:var(--bg3)}
th{padding:12px 14px;text-align:left;font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:1px;color:var(--gray);white-space:nowrap}
td{padding:12px 14px;border-bottom:1px solid rgba(255,255,255,.03);vertical-align:middle}
tr:last-child td{border-bottom:none}
tbody tr{transition:var(--tr)}
tbody tr:hover{background:rgba(255,255,255,.03)}

/* ===== SPINNER ===== */
.spinner{width:38px;height:38px;border:3px solid rgba(201,168,76,.15);border-top-color:var(--gold);border-radius:50%;animation:spin .75s linear infinite;margin:0 auto}

/* ===== GOLD TEXT ===== */
.gold{color:var(--gold)}
.gold-anim{animation:goldPulse 2.5s ease-in-out infinite}

/* ===== PAGE LOADER ===== */
#pageLoader{position:fixed;inset:0;background:rgba(7,9,26,.88);display:flex;align-items:center;justify-content:center;z-index:9999;backdrop-filter:blur(8px)}

/* ===== GLOBAL SECTION PADDING ===== */
.container{max-width:1280px;margin:0 auto;padding:0 22px}

