/**
 * Liberté Air Virtual — DisposableTheme v3 Custom Skin
 * Night Navy #0A1628 | Deep Blue #1B3260 | Or #C8A96E | Ivoire #F7F5F0
 */

@import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap');

:root {
  --lba-navy:      #0A1628;
  --lba-navy-mid:  #1B3260;
  --lba-navy-lite: #263F6E;
  --lba-gold:      #C8A96E;
  --lba-gold-dim:  rgba(200,169,110,0.15);
  --lba-gold-pale: #EFE5D0;
  --lba-ivory:     #F7F5F0;
  --lba-border-d:  rgba(255,255,255,0.09);
  --lba-border-l:  #E5E0D8;
  --lba-card-bg:   rgba(10,22,40,0.80);
  --lba-card-head: rgba(5,11,22,0.92);
  --lba-text:      #E8EDF5;
  --lba-muted:     rgba(255,255,255,0.45);
  --radius:        10px;
  --blur:          blur(16px);
  --shadow:        0 4px 28px rgba(0,0,0,0.4);
}

html { height: 100%; margin: 0; }

body {
  font-family: 'Inter', system-ui, -apple-system, sans-serif;
  font-size: 0.875rem;
  font-weight: 400;
  color: var(--lba-text);
  background-color: var(--lba-navy);
  background-image: url('/disposable/theme_bg.jpg');
  background-repeat: no-repeat;
  background-size: cover;
  background-attachment: fixed;
  background-position: center center;
}

body::before {
  content: '';
  position: fixed; inset: 0;
  background: linear-gradient(
    150deg,
    rgba(5,11,22,0.88) 0%,
    rgba(10,22,40,0.72) 50%,
    rgba(5,11,22,0.85) 100%
  );
  z-index: 0; pointer-events: none;
}

#page-container { position: relative; z-index: 1; min-height: 100vh; }
#page-contents  { width: 98% !important; padding-bottom: 3rem; }

h1,h2,h3,h4,h5,h6 { font-weight: 600; color: #fff; }
p { color: var(--lba-text); }
small, .small { font-size: 0.775rem; }

a { text-decoration: none; color: var(--lba-gold); font-weight: 500; transition: color 0.15s; }
a:hover  { color: #fff; }
a:active { color: var(--lba-gold); }

/* ── Navbar ─────────────────────────────────────────────────────────────── */
#Dispo_NavBar {
  background: rgba(5,11,22,0.95);
  backdrop-filter: var(--blur);
  -webkit-backdrop-filter: var(--blur);
  border-bottom: 1px solid var(--lba-border-d);
  box-shadow: 0 1px 24px rgba(0,0,0,0.5);
  margin-bottom: 0;
  padding: 0 16px;
  position: sticky; top: 0; z-index: 1000;
}

#Dispo_NavBar .navbar-brand {
  display: flex; align-items: center; gap: 10px;
  padding: 6px 0; text-decoration: none;
}
#Dispo_NavBar .navbar-brand img {
  height: 32px; width: auto;
  filter: brightness(0) invert(1);
}

.lba-logo-text { display: flex; flex-direction: column; line-height: 1.1; }
.lba-logo-name {
  font-size: 0.82rem; font-weight: 700;
  letter-spacing: 3px; color: #fff; text-transform: uppercase;
}
.lba-logo-name .lba-accent { color: var(--lba-gold); }
.lba-logo-sub {
  font-size: 0.5rem; letter-spacing: 4px;
  color: var(--lba-muted); text-transform: uppercase; margin-top: 2px;
}

#Dispo_NavBar .nav-link,
#Dispo_NavBar a.nav-link {
  color: rgba(255,255,255,0.6) !important;
  font-size: 0.82rem; font-weight: 500;
  letter-spacing: 0.2px;
  padding: 10px 13px !important;
  border-radius: 6px; transition: all 0.15s;
}
#Dispo_NavBar .nav-link:hover { color: #fff !important; background: rgba(255,255,255,0.05); }
#Dispo_NavBar .nav-link.active { color: var(--lba-gold) !important; }

#Dispo_NavBar .dropdown-menu {
  background: rgba(5,11,22,0.98);
  backdrop-filter: var(--blur);
  border: 1px solid var(--lba-border-d);
  border-radius: var(--radius);
  box-shadow: 0 16px 48px rgba(0,0,0,0.6);
  padding: 6px; margin-top: 6px;
}
#Dispo_NavBar .dropdown-item {
  color: rgba(255,255,255,0.6);
  font-size: 0.82rem; border-radius: 6px;
  padding: 8px 12px; transition: all 0.15s;
}
#Dispo_NavBar .dropdown-item:hover {
  background: var(--lba-gold-dim);
  color: var(--lba-gold);
}
#Dispo_NavBar .dropdown-divider { border-color: var(--lba-border-d); }

#utc_clock, #clock {
  font-family: 'JetBrains Mono', monospace;
  font-size: 0.72rem; color: var(--lba-gold);
  letter-spacing: 1px; opacity: 0.7;
}

/* ── Cards ──────────────────────────────────────────────────────────────── */
.card {
  background: var(--lba-card-bg);
  backdrop-filter: var(--blur);
  -webkit-backdrop-filter: var(--blur);
  border: 1px solid var(--lba-border-d);
  border-radius: var(--radius);
  box-shadow: var(--shadow);
  margin-bottom: 14px; overflow: hidden;
  transition: transform 0.2s, box-shadow 0.2s;
}
.card:hover {
  transform: translateY(-1px);
  box-shadow: 0 8px 36px rgba(0,0,0,0.5);
}

.card .card-header {
  background: var(--lba-card-head);
  border-bottom: 1px solid var(--lba-border-d);
  padding: 10px 16px;
  display: flex; align-items: center; gap: 10px;
}
.card .card-header::before {
  content: '';
  display: inline-block;
  width: 3px; height: 14px;
  background: var(--lba-gold);
  border-radius: 2px; flex-shrink: 0;
}
.card .card-header h5,
.card .card-header .card-title {
  font-size: 0.72rem; font-weight: 600;
  color: rgba(255,255,255,0.8);
  letter-spacing: 1px; text-transform: uppercase; margin: 0;
}
.card .card-header a { color: var(--lba-gold); font-size: 0.78rem; }
.card .card-header a:hover { color: #fff; }
.card .card-body { padding: 16px; color: #C8D4E8; }
.card .card-footer {
  background: rgba(0,0,0,0.25);
  border-top: 1px solid var(--lba-border-d);
  padding: 8px 16px; font-size: 0.78rem;
  color: var(--lba-muted);
}

.card-body h3, .card-body h4 { color: #fff; font-weight: 600; }
.card-body p { color: rgba(255,255,255,0.5); margin: 0; }
.card-body .rotate i { color: rgba(200,169,110,0.07); }

/* Gold left border on stat cards */
.col-6.col-md-3 .card,
.col-sm-6.col-md-3 .card,
.col-lg-3 .card {
  border-left: 2px solid var(--lba-gold);
}

/* ── Tables ─────────────────────────────────────────────────────────────── */
.table { color: #C0CDE0; font-size: 0.82rem; }
.table thead th {
  background: rgba(5,11,22,0.85);
  color: rgba(255,255,255,0.5);
  font-size: 0.68rem; font-weight: 600;
  letter-spacing: 1px; text-transform: uppercase;
  border: none; padding: 10px 14px;
}
.table tbody td {
  border-color: rgba(255,255,255,0.05);
  padding: 10px 14px; vertical-align: middle;
}
.table tbody tr:hover { background: var(--lba-gold-dim); }
.table-striped > tbody > tr:nth-of-type(odd) > * { background: rgba(255,255,255,0.02); }

/* ── Forms ──────────────────────────────────────────────────────────────── */
.form-control, .form-select {
  background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.12);
  border-radius: 7px; color: #E8EDF5;
  font-size: 0.875rem;
  transition: border-color 0.15s, box-shadow 0.15s;
}
.form-control:focus, .form-select:focus {
  background: rgba(255,255,255,0.09);
  border-color: var(--lba-gold);
  box-shadow: 0 0 0 3px rgba(200,169,110,0.15);
  color: #fff;
}
.form-control::placeholder { color: rgba(255,255,255,0.25); }
.form-label {
  font-size: 0.72rem; font-weight: 600;
  color: rgba(255,255,255,0.45);
  letter-spacing: 0.8px; text-transform: uppercase; margin-bottom: 5px;
}
.input-group-text {
  background: rgba(255,255,255,0.05);
  border-color: rgba(255,255,255,0.12);
  color: var(--lba-gold);
}

/* ── Buttons ────────────────────────────────────────────────────────────── */
.btn { border-radius: 7px; font-weight: 500; font-size: 0.82rem; transition: all 0.15s; }
.btn-primary {
  background: var(--lba-gold); border-color: var(--lba-gold);
  color: var(--lba-navy); font-weight: 600;
}
.btn-primary:hover { background: #D4B87A; border-color: #D4B87A; color: var(--lba-navy); }
.btn-secondary {
  background: rgba(255,255,255,0.07);
  border-color: rgba(255,255,255,0.14);
  color: #D0DBE8;
}
.btn-secondary:hover { background: rgba(255,255,255,0.12); color: #fff; }
.btn-success  { background: #10B981; border-color: #10B981; color: #fff; }
.btn-danger   { background: rgba(239,68,68,0.18); border-color: rgba(239,68,68,0.35); color: #FCA5A5; }
.btn-warning  { background: rgba(245,158,11,0.18); border-color: rgba(245,158,11,0.35); color: #FCD34D; }
.btn-info     { background: var(--lba-gold-dim); border-color: rgba(200,169,110,0.35); color: var(--lba-gold); }
.btn-sm { font-size: 0.75rem; padding: 4px 10px; }
.btn-lg { padding: 11px 28px; font-size: 0.9rem; }

/* ── Badges ─────────────────────────────────────────────────────────────── */
.badge { font-weight: 600; font-size: 0.68rem; letter-spacing: 0.5px; border-radius: 5px; }
.bg-primary   { background: var(--lba-gold) !important; color: var(--lba-navy) !important; }
.bg-secondary { background: rgba(255,255,255,0.1) !important; color: #D0DBE8 !important; }
.bg-success   { background: rgba(16,185,129,0.2) !important; color: #6EE7B7 !important; }
.bg-danger    { background: rgba(239,68,68,0.2) !important; color: #FCA5A5 !important; }
.bg-warning   { background: rgba(245,158,11,0.2) !important; color: #FCD34D !important; }
.bg-info      { background: var(--lba-gold-dim) !important; color: var(--lba-gold) !important; }

/* ── Alerts ─────────────────────────────────────────────────────────────── */
.alert { border-radius: var(--radius); border: 1px solid; font-size: 0.875rem; }
.alert-info    { background: var(--lba-gold-dim); border-color: rgba(200,169,110,0.3); color: var(--lba-gold); }
.alert-success { background: rgba(16,185,129,0.1); border-color: rgba(16,185,129,0.3); color: #6EE7B7; }
.alert-warning { background: rgba(245,158,11,0.1); border-color: rgba(245,158,11,0.3); color: #FCD34D; }
.alert-danger  { background: rgba(239,68,68,0.1); border-color: rgba(239,68,68,0.3); color: #FCA5A5; }

/* ── Nav pills & tabs ───────────────────────────────────────────────────── */
.nav-pills .nav-link {
  color: rgba(255,255,255,0.45);
  background: rgba(255,255,255,0.05) !important;
  border-radius: 7px; font-size: 0.82rem;
  font-weight: 500; padding: 7px 16px; transition: all 0.15s;
}
.nav-pills .nav-link.active,
.nav-pills .nav-link:hover {
  background: var(--lba-gold-dim) !important;
  color: var(--lba-gold) !important;
}
.nav-tabs { border-color: var(--lba-border-d); }
.nav-tabs .nav-link {
  color: rgba(255,255,255,0.4); border: none;
  border-bottom: 2px solid transparent;
  border-radius: 0; font-size: 0.82rem;
  padding: 8px 16px; transition: all 0.15s;
}
.nav-tabs .nav-link.active { color: var(--lba-gold); border-bottom-color: var(--lba-gold); }
.nav-tabs .nav-link:hover  { color: #fff; }
.card .nav-tabs .nav-item .nav-link { color: rgba(255,255,255,0.4); }
.card .nav-tabs .nav-item .active   { color: var(--lba-gold); border-bottom-color: var(--lba-gold); }

/* ── Modals ─────────────────────────────────────────────────────────────── */
.modal-content {
  background: rgba(5,11,22,0.98);
  backdrop-filter: var(--blur);
  border: 1px solid var(--lba-border-d);
  border-radius: var(--radius);
  box-shadow: 0 24px 80px rgba(0,0,0,0.7);
  color: #C8D4E8;
}
.modal-header {
  background: rgba(0,0,0,0.35);
  border-bottom: 1px solid var(--lba-border-d);
  border-radius: calc(var(--radius) - 1px) calc(var(--radius) - 1px) 0 0;
}
.modal-title { color: #fff; font-weight: 600; font-size: 0.9rem; }
.modal-header .btn-close { filter: invert(1); opacity: 0.4; }
.modal-body   { background: transparent; }
.modal-footer { background: rgba(0,0,0,0.2); border-top: 1px solid var(--lba-border-d); }

/* ── Accordion ──────────────────────────────────────────────────────────── */
.accordion-button {
  background: rgba(5,11,22,0.85) !important;
  color: rgba(255,255,255,0.8) !important;
  box-shadow: none !important; font-size: 0.875rem; font-weight: 500;
}
.accordion-button.collapsed {
  background: rgba(10,22,40,0.6) !important;
  color: rgba(255,255,255,0.5) !important;
}
.accordion-button::after { filter: invert(1) opacity(0.5); }
.accordion-item  { background: transparent !important; border-color: var(--lba-border-d) !important; }
.accordion-body  { background: rgba(10,22,40,0.4) !important; color: #C0CDE0; }

/* ── Sidebar ────────────────────────────────────────────────────────────── */
#Dispo_SideBar .offcanvas {
  background: rgba(5,11,22,0.98);
  backdrop-filter: var(--blur);
  border-right: 1px solid var(--lba-border-d);
}
#Dispo_SideBar .offcanvas-header {
  background: rgba(0,0,0,0.35);
  border-bottom: 1px solid var(--lba-border-d);
}
#Dispo_SideBar .nav-link { color: rgba(255,255,255,0.55); border-radius: 6px; }
#Dispo_SideBar .nav-link:hover { background: var(--lba-gold-dim); color: var(--lba-gold); }
#Dispo_SideBar .dropdown-item { color: rgba(255,255,255,0.5); font-size: 0.82rem; }
#Dispo_SideBar .dropdown-item:hover { background: var(--lba-gold-dim); color: var(--lba-gold); }

/* ── Progress ───────────────────────────────────────────────────────────── */
.progress { background: rgba(255,255,255,0.07); border-radius: 20px; height: 5px; }
.progress-bar { background: var(--lba-gold); border-radius: 20px; }

/* ── Pagination ─────────────────────────────────────────────────────────── */
.pag-items {
  background: rgba(255,255,255,0.06) !important;
  border-radius: 6px; color: #C8D4E8 !important;
  border-color: rgba(255,255,255,0.12) !important;
}
.pag-items-curr {
  background: var(--lba-gold) !important;
  border-radius: 6px; color: var(--lba-navy) !important;
  border-color: var(--lba-gold) !important; font-weight: 600;
}

/* ── Select2 ────────────────────────────────────────────────────────────── */
.select2-container { margin-top: 2px; }
.input-group .select2-container { margin: 0; width: auto; flex: 1 1 auto; }
.input-group .select2-container .select2-selection--single {
  height: 100%; line-height: inherit; border-radius: 0 7px 7px 0;
}
.select2-container--default .select2-selection--single {
  background: rgba(255,255,255,0.06);
  border-color: rgba(255,255,255,0.12);
  border-radius: 7px; height: 36px;
}
.select2-container--default .select2-selection--single .select2-selection__rendered {
  color: #E8EDF5; line-height: 36px;
}
.select2-dropdown {
  background: rgba(5,11,22,0.98);
  border-color: rgba(255,255,255,0.12);
}
.select2-results__option { color: rgba(255,255,255,0.65); }
.select2-results__option--highlighted { background: var(--lba-gold) !important; color: var(--lba-navy) !important; font-weight: 600; }
.select2-search--dropdown input {
  background: rgba(255,255,255,0.06);
  border-color: rgba(255,255,255,0.12); color: #E8EDF5;
}

/* ── Footer ─────────────────────────────────────────────────────────────── */
#footer { font-size: 0.78rem; }
#footer .card {
  background: rgba(5,11,22,0.95) !important;
  backdrop-filter: var(--blur);
  border-color: var(--lba-border-d) !important;
}
#footer .card * { color: rgba(255,255,255,0.3) !important; }
#footer .card a:hover { color: var(--lba-gold) !important; }

/* ── Map ────────────────────────────────────────────────────────────────── */
.map-info-box  { background: rgba(5,11,22,0.95); color: #E8EDF5; }
.map-info-label { background: rgba(5,11,22,0.95); color: var(--lba-gold); font-size: 0.72rem; letter-spacing: 1px; }
.leaflet-popup-content-wrapper {
  background: rgba(5,11,22,0.98) !important;
  border: 1px solid var(--lba-border-d) !important;
  border-radius: var(--radius) !important;
  color: #C8D4E8 !important;
  box-shadow: 0 8px 32px rgba(0,0,0,0.6) !important;
}
.leaflet-popup-tip { background: rgba(5,11,22,0.98) !important; }

/* ── Cookie banner ──────────────────────────────────────────────────────── */
.cc-window { background: rgba(5,11,22,0.98) !important; color: rgba(255,255,255,0.8) !important; }
.cc-btn.cc-allow { background: var(--lba-gold) !important; color: var(--lba-navy) !important; font-weight: 600; }

/* ── Overflow ───────────────────────────────────────────────────────────── */
.overflow-auto { max-height: 30vh; scrollbar-width: thin; scrollbar-color: var(--lba-navy-mid) transparent; }
.overflow-auto::-webkit-scrollbar { width: 4px; }
.overflow-auto::-webkit-scrollbar-thumb { background: var(--lba-navy-mid); border-radius: 2px; }

/* ── Misc ───────────────────────────────────────────────────────────────── */
.card-body .rotate { z-index:8; float:right; height:100%; }
.card-body .rotate i { color: rgba(200,169,110,0.06); position:absolute; left:auto; right:-10px; bottom:0; display:block; transform:rotate(-45deg); }
.HoverImage{position:relative}.HoverImage a{position:absolute;bottom:0;left:2;z-index:1978}
.HoverImage img{display:none}.HoverImage:hover img{display:block;opacity:0.99;z-index:1978}
#stage a{position:relative}#stage a img{border:none;background:transparent}
#stage a:nth-of-type(1){animation-name:fader;animation-duration:10s;z-index:2100}
#stage a:nth-of-type(2){z-index:2200;display:none}
@keyframes fader{0%{opacity:0}25%{opacity:1}75%{opacity:1}100%{opacity:0}}
#page-container{position:relative;min-height:100vh}
#footer{position:absolute;bottom:0;width:100%;height:2.2rem}
.img-h20{width:auto;height:20px}.img-h25{width:auto;height:25px}.img-h30{width:auto;height:30px}
.img-h35{width:auto;height:35px}.img-h40{width:auto;height:40px}.img-h45{width:auto;height:45px}
.img-h50{width:auto;height:50px}.img-h60{width:auto;height:60px}.img-h70{width:auto;height:70px}
.img-h80{width:auto;height:80px}.img-h100{width:auto;height:100px}.img-h125{width:auto;height:125px}
.img-h150{width:auto;height:150px}.img-h175{width:auto;height:175px}.img-h200{width:auto;height:200px}
.img-mh20{width:auto;max-height:20px}.img-mh25{width:auto;max-height:25px}.img-mh30{width:auto;max-height:30px}
.img-mh35{width:auto;max-height:35px}.img-mh40{width:auto;max-height:40px}.img-mh50{width:auto;max-height:50px}
.img-mh60{width:auto;max-height:60px}.img-mh80{width:auto;max-height:80px}.img-mh100{width:auto;max-height:100px}
.img-mh125{width:auto;max-height:125px}.img-mh150{width:auto;max-height:150px}.img-mh200{width:auto;max-height:200px}
@media(max-width:768px){body{font-size:14px}.card .card-header{padding:8px 12px}.lba-logo-name{font-size:0.72rem;letter-spacing:1.5px}}
