/* PUBLIC_TEMPLATE_AERO_BLUE_CSS_V0163182
   Loaded ONLY for operators assigned to Aero Blue.
   Template Flori never loads this file. */

body.public-app{
  /* AERO_BLUE_BRAND_V2 — Skyexpress palette. Primary BLUE #1F5D89, accent ORANGE
     #F26836. Hierarchy stays blue; orange is used only for accents/highlights. */
  --aero-blue:#1F5D89;
  --aero-blue-dark:#17475F;
  --aero-blue-soft:#EAF1F6;
  --aero-orange:#F26836;
  --aero-orange-dark:#D9531F;
  --aero-orange-soft:#FDEEE7;
  --aero-ink:#111c32;
  --aero-border:#d8e0ea;
  --aero-muted:#68758a;
  --tenant-primary:#1F5D89;
  background:#f3f6fa;
}

body.public-app .topbar{
  border-top-color:var(--aero-blue)!important;
  box-shadow:0 1px 0 rgba(17,28,50,.08);
}

body.public-app .marketing-home .travel-module-launcher{display:none!important}

body.public-app .marketing-home .booking-panel{
  border-radius:12px!important;
  border:1px solid #dfe6ef!important;
  box-shadow:0 14px 40px rgba(30,55,90,.08)!important;
  overflow:hidden;
}

.aero-service-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  border:1px solid var(--aero-border);
  border-radius:8px 8px 0 0;
  overflow:hidden;
  background:#fff;
  margin:0 0 14px;
}

.aero-service-card{
  appearance:none;
  border:0;
  border-right:1px solid var(--aero-border);
  background:#fff;
  min-width:0;
  min-height:92px;
  padding:12px 8px 10px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:7px;
  text-align:center;
  color:var(--aero-ink);
  text-decoration:none;
  font:inherit;
  font-weight:800;
  cursor:pointer;
  border-radius:0!important;
  transition:background .16s ease,color .16s ease,box-shadow .16s ease;
}

.aero-service-card:last-child{border-right:0}
.aero-service-card:hover{background:#f7faff;color:var(--aero-blue)}
.aero-service-card.active{
  background:var(--aero-blue-soft);
  color:var(--aero-blue);
  box-shadow:inset 0 -3px 0 var(--aero-blue);
}

.aero-service-icon{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:28px;
  font-size:27px;
  line-height:1;
  font-weight:900;
}
.aero-service-combo{font-size:20px;letter-spacing:-2px}

body.public-app .marketing-home .flight-search-grid,
body.public-app .marketing-home .search-area-card,
body.public-app .marketing-home .search-field,
body.public-app .marketing-home .passenger-date-row{border-radius:7px!important}

body.public-app .marketing-home button[type="submit"],
body.public-app .marketing-home .search-submit,
body.public-app .marketing-home .button.primary{
  border-radius:7px!important;
  background:var(--aero-blue)!important;
  border-color:var(--aero-blue)!important;
}

body.public-app .marketing-home .trip-type-trigger,
body.public-app .marketing-home .field-shell,
body.public-app .marketing-home .date-field,
body.public-app .marketing-home .passenger-field{border-radius:6px!important}

body.public-app .marketing-home .offer-card,
body.public-app .marketing-home .home-offer-card{border-radius:10px!important}

.aero-coming-soon[hidden]{display:none!important}
.aero-coming-soon{
  position:fixed;
  inset:0;
  z-index:10000;
  display:grid;
  place-items:center;
  padding:20px;
}
.aero-coming-soon-backdrop{
  position:absolute;
  inset:0;
  border:0;
  background:rgba(10,18,32,.56)!important;
  border-radius:0!important;
}
.aero-coming-soon-card{
  position:relative;
  width:min(420px,calc(100vw - 32px));
  background:#fff;
  border:1px solid #dbe4ef;
  border-radius:10px;
  padding:28px;
  text-align:center;
  box-shadow:0 24px 80px rgba(10,18,32,.28);
}
.aero-coming-soon-card h2{margin:10px 0 5px;color:var(--aero-ink)}
.aero-coming-soon-card strong{color:var(--aero-blue)}
.aero-coming-soon-card p{color:var(--aero-muted)}
.aero-coming-soon-card>button{
  min-width:130px;
  min-height:44px;
  border:0;
  border-radius:6px!important;
  background:var(--aero-blue)!important;
  color:#fff;
  font-weight:800;
}
.aero-coming-soon-icon{font-size:34px;color:var(--aero-blue)}
html.aero-modal-open,html.aero-modal-open body{overflow:hidden}

@media(max-width:720px){
  body.public-app{background:#f1f4f8}
  body.public-app .marketing-home .booking-panel{border-radius:10px!important}
  .aero-service-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-bottom:10px;border-radius:7px 7px 0 0}
  .aero-service-card{min-height:86px;padding:9px 5px;font-size:12px;line-height:1.15}
  .aero-service-icon{font-size:24px}
  .aero-service-combo{font-size:16px}
}

/* AERO_BLUE_RADIO_TRIP_TYPE_V0163183
   Aero Blue:
   1) katër modulet e reja rrinë lart;
   2) launcher-i i vjetër mobil (Hinflug + Flüge/Bus/Hotel) fshihet krejt;
   3) trip-switch origjinal me 3 radio rikthehet poshtë moduleve.
   Template Flori nuk e ngarkon këtë CSS. */

html body.public-app .marketing-home .module-launcher.travel-module-launcher,
html body.public-app .marketing-home .search-area-card .module-launcher.travel-module-launcher{
  display:none!important;
}

/* Rikthe trip-switch-in real të formës, jo mobile surrogate trigger-in. */
html body.public-app .marketing-home #public-search-form .trip-switch{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  align-items:stretch!important;
  width:100%!important;
  margin:0!important;
  padding:0 8px!important;
  min-height:66px!important;
  background:#fff!important;
  border:0!important;
  border-top:1px solid #e1e6ee!important;
  border-bottom:1px solid #e1e6ee!important;
  border-radius:0!important;
  box-shadow:none!important;
  overflow:visible!important;
  gap:0!important;
}

html body.public-app .marketing-home #public-search-form .trip-switch>label{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  min-width:0!important;
  margin:0!important;
  padding:10px 4px!important;
  border:0!important;
  background:#fff!important;
  color:#111827!important;
  cursor:pointer!important;
  border-radius:0!important;
  box-shadow:none!important;
  font-weight:800!important;
  line-height:1.12!important;
  text-align:left!important;
}

/* Rreth radio si në referencë. */
html body.public-app .marketing-home #public-search-form .trip-switch>label>input[type="radio"]{
  -webkit-appearance:none!important;
  appearance:none!important;
  display:block!important;
  flex:0 0 24px!important;
  width:24px!important;
  height:24px!important;
  min-width:24px!important;
  margin:0!important;
  padding:0!important;
  border:3px solid #c8ced8!important;
  border-radius:50%!important;
  background:#fff!important;
  box-shadow:none!important;
  position:relative!important;
}

html body.public-app .marketing-home #public-search-form .trip-switch>label>input[type="radio"]:checked{
  border-color:var(--aero-blue)!important;
  background:
    radial-gradient(circle at center,var(--aero-blue) 0 6px,#fff 6.5px 100%)!important;
}

html body.public-app .marketing-home #public-search-form .trip-switch>label>span{
  display:block!important;
  min-width:0!important;
  color:#111827!important;
  font-size:14px!important;
  font-weight:800!important;
  line-height:1.15!important;
  white-space:nowrap!important;
}

html body.public-app .marketing-home #public-search-form .trip-switch>label:has(input[type="radio"]:checked)>span{
  color:var(--aero-blue)!important;
}

/* Aero Blue mban formën më katrore, por jo rresht të dytë modulesh. */
html body.public-app .marketing-home .aero-service-grid{
  margin-bottom:0!important;
  border-bottom:0!important;
  border-radius:8px 8px 0 0!important;
}

@media(max-width:760px){
  html body.public-app .marketing-home #public-search-form .trip-switch{
    min-height:66px!important;
    padding:0 5px!important;
  }

  html body.public-app .marketing-home #public-search-form .trip-switch>label{
    gap:6px!important;
    padding:9px 2px!important;
  }

  html body.public-app .marketing-home #public-search-form .trip-switch>label>input[type="radio"]{
    flex-basis:22px!important;
    width:22px!important;
    height:22px!important;
    min-width:22px!important;
  }

  html body.public-app .marketing-home #public-search-form .trip-switch>label>input[type="radio"]:checked{
    background:
      radial-gradient(circle at center,var(--aero-blue) 0 5px,#fff 5.5px 100%)!important;
  }

  html body.public-app .marketing-home #public-search-form .trip-switch>label>span{
    font-size:clamp(10.5px,3.15vw,13px)!important;
  }
}

@media(max-width:390px){
  html body.public-app .marketing-home #public-search-form .trip-switch>label{
    gap:5px!important;
  }

  html body.public-app .marketing-home #public-search-form .trip-switch>label>span{
    font-size:10.8px!important;
  }
}

/* AERO_BLUE_VISIBLE_TRIP_RADIOS_V0163184
   Rresht i pavarur dhe i dukshëm — nuk varet nga trip-switch mobile i vjetër. */
html body.public-app .marketing-home .aero-trip-radio-row{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  width:100%!important;
  min-height:68px!important;
  margin:0!important;
  padding:0 8px!important;
  align-items:stretch!important;
  background:#fff!important;
  border-top:1px solid #e0e5ed!important;
  border-bottom:1px solid #e0e5ed!important;
  border-radius:0!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}

html body.public-app .marketing-home .aero-trip-radio{
  appearance:none!important;
  -webkit-appearance:none!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:9px!important;
  min-width:0!important;
  min-height:68px!important;
  margin:0!important;
  padding:8px 4px!important;
  border:0!important;
  border-radius:0!important;
  background:#fff!important;
  box-shadow:none!important;
  color:#111827!important;
  font:inherit!important;
  font-weight:800!important;
  cursor:pointer!important;
}

html body.public-app .marketing-home .aero-trip-radio .aero-radio-dot{
  display:block!important;
  position:relative!important;
  flex:0 0 24px!important;
  width:24px!important;
  height:24px!important;
  border:3px solid #c8ced8!important;
  border-radius:50%!important;
  background:#fff!important;
  box-sizing:border-box!important;
}

html body.public-app .marketing-home .aero-trip-radio.active .aero-radio-dot{
  border-color:var(--aero-blue)!important;
}

html body.public-app .marketing-home .aero-trip-radio.active .aero-radio-dot::after{
  content:""!important;
  position:absolute!important;
  left:50%!important;
  top:50%!important;
  width:10px!important;
  height:10px!important;
  transform:translate(-50%,-50%)!important;
  border-radius:50%!important;
  background:var(--aero-blue)!important;
}

html body.public-app .marketing-home .aero-trip-radio .aero-trip-label{
  display:block!important;
  min-width:0!important;
  color:#111827!important;
  font-size:14px!important;
  font-weight:800!important;
  line-height:1.15!important;
  white-space:nowrap!important;
  text-align:left!important;
}

html body.public-app .marketing-home .aero-trip-radio.active .aero-trip-label{
  color:var(--aero-blue)!important;
}

html body.public-app .marketing-home .aero-service-grid{
  margin-bottom:0!important;
}

@media(max-width:760px){
  html body.public-app .marketing-home .aero-trip-radio-row{
    min-height:66px!important;
    padding:0 4px!important;
  }

  html body.public-app .marketing-home .aero-trip-radio{
    min-height:66px!important;
    gap:6px!important;
    padding:7px 2px!important;
  }

  html body.public-app .marketing-home .aero-trip-radio .aero-radio-dot{
    flex-basis:22px!important;
    width:22px!important;
    height:22px!important;
  }

  html body.public-app .marketing-home .aero-trip-radio.active .aero-radio-dot::after{
    width:9px!important;
    height:9px!important;
  }

  html body.public-app .marketing-home .aero-trip-radio .aero-trip-label{
    font-size:clamp(10.5px,3.1vw,13px)!important;
  }
}

@media(max-width:390px){
  html body.public-app .marketing-home .aero-trip-radio{
    gap:4px!important;
  }
  html body.public-app .marketing-home .aero-trip-radio .aero-trip-label{
    font-size:10.7px!important;
  }
}

/* =====================================================================
   AERO_BLUE_SERVICE_ICONS_SVG_V1
   The module icons are now inline <svg> line icons instead of Unicode
   glyphs (✈ ▰ ▣ ✈＋▰). Size them here; colour comes from currentColor
   so they follow .aero-service-card state (ink / hover-blue / active-blue).
   ===================================================================== */
.aero-service-icon{font-size:0!important}
.aero-service-icon svg{width:26px;height:26px;display:block}
.aero-service-icon.aero-service-combo svg{width:30px;height:26px}
.aero-coming-soon-icon{font-size:0!important}
.aero-coming-soon-icon svg{width:42px;height:42px;display:block;margin:0 auto;color:var(--aero-blue)}
@media(max-width:760px){
  .aero-service-icon svg{width:24px;height:24px}
  .aero-service-icon.aero-service-combo svg{width:28px;height:24px}
}

/* =====================================================================
   AERO_BLUE_MOBILE_DRAWER_V1
   The shared off-canvas drawer mechanism lives in app-shared.css /
   app-mobile.css scoped to [data-public-template="flori"], and the copy
   in skyline.css is scoped to [data-public-template="skyline"]. Neither
   matches Aero Blue (<html data-public-template="aero_blue">), so
   #public-mobile-drawer was rendering inline as a normal <aside> block
   (big brand logo + "×" + all nav links) between the header and the
   booking module, and .public-mobile-menu-toggle had no neutral styling
   so it looked permanently "active". This re-applies the drawer + toggle
   rules for Aero Blue only. Model: the flori shared implementation, with
   the skyline visual language.
   ===================================================================== */
html[data-public-template="aero_blue"] body.public-app .public-mobile-drawer-backdrop{
  display:block!important;position:fixed!important;inset:0!important;z-index:1190!important;
  background:rgba(15,23,42,.46)!important;opacity:1;transition:opacity .22s ease;
}
html[data-public-template="aero_blue"] body.public-app .public-mobile-drawer-backdrop[hidden]{display:none!important}

html[data-public-template="aero_blue"] body.public-app .public-mobile-drawer{
  display:flex!important;position:fixed!important;inset:0 auto 0 0!important;z-index:1200!important;
  flex-direction:column!important;
  width:min(82vw,360px)!important;max-width:calc(100vw - 48px)!important;height:100dvh!important;
  background:#fff!important;color:var(--aero-ink)!important;
  box-shadow:16px 0 44px rgba(15,23,42,.2)!important;
  transform:translateX(-105%)!important;transition:transform .24s ease!important;
  visibility:hidden!important;overflow-y:auto!important;overscroll-behavior:contain!important;
  border:0!important;border-radius:0!important;
}
html[data-public-template="aero_blue"] body.public-app .public-mobile-drawer.open{
  transform:translateX(0)!important;visibility:visible!important;
}
html[data-public-template="aero_blue"] body.public-app .public-mobile-drawer-head{
  display:flex!important;align-items:center!important;justify-content:space-between!important;flex:0 0 auto!important;
  min-height:72px!important;padding:14px 18px!important;border-bottom:1px solid var(--aero-border)!important;background:#fff!important;
}
html[data-public-template="aero_blue"] body.public-app .public-mobile-drawer-brand{
  display:inline-flex!important;align-items:center!important;min-width:0!important;padding:0!important;border:0!important;background:transparent!important;
}
html[data-public-template="aero_blue"] body.public-app .public-mobile-drawer-brand img{
  max-width:130px!important;max-height:34px!important;object-fit:contain!important;
}
html[data-public-template="aero_blue"] body.public-app .public-mobile-drawer-close{
  display:grid!important;place-items:center!important;width:40px!important;height:40px!important;min-width:40px!important;padding:0!important;
  border:0!important;border-radius:50%!important;background:#eef2f8!important;color:#5a6577!important;
  font-size:26px!important;font-weight:400!important;line-height:1!important;box-shadow:none!important;cursor:pointer;
}
html[data-public-template="aero_blue"] body.public-app .public-mobile-drawer-nav{
  display:flex!important;flex-direction:column!important;flex:1 1 auto!important;
  padding:0 0 calc(16px + env(safe-area-inset-bottom))!important;overflow-y:auto!important;overscroll-behavior:contain!important;background:#fff!important;
}
html[data-public-template="aero_blue"] body.public-app .public-mobile-drawer-nav>a,
html[data-public-template="aero_blue"] body.public-app .public-mobile-drawer-nav>form button{
  display:flex!important;align-items:center!important;width:100%!important;min-height:56px!important;margin:0!important;padding:0 22px!important;
  border:0!important;border-bottom:1px solid #edf1f6!important;border-radius:0!important;background:#fff!important;color:var(--aero-ink)!important;
  font:inherit!important;font-size:16px!important;font-weight:750!important;text-align:left!important;text-decoration:none!important;box-shadow:none!important;cursor:pointer;
}
html[data-public-template="aero_blue"] body.public-app .public-mobile-drawer-nav>a:hover,
html[data-public-template="aero_blue"] body.public-app .public-mobile-drawer-nav>a:focus-visible{
  background:var(--aero-blue-soft)!important;color:var(--aero-blue)!important;
}
html[data-public-template="aero_blue"] body.public-app .public-mobile-drawer-nav>form{margin:0!important}
html[data-public-template="aero_blue"] body.public-app .public-mobile-drawer-divider{
  display:block!important;width:100%!important;height:12px!important;margin:0!important;border:0!important;background:#f2f5f9!important;
}

/* menu toggle: neutral by default (like the sun / language / account controls);
   the primary-colour "active" look appears only while the drawer is open
   (JS sets aria-expanded="true" on open). */
html[data-public-template="aero_blue"] body.public-app .public-mobile-menu-toggle{
  display:grid!important;place-items:center!important;
  border:1px solid var(--aero-border)!important;border-radius:12px!important;
  background:#fff!important;color:var(--aero-ink)!important;box-shadow:none!important;
}
html[data-public-template="aero_blue"] body.public-app .public-mobile-menu-toggle span{
  font-size:19px!important;line-height:1!important;
}
html[data-public-template="aero_blue"] body.public-app .public-mobile-menu-toggle:hover{
  background:var(--aero-blue-soft)!important;color:var(--aero-blue)!important;border-color:#c7d9f2!important;
}
html[data-public-template="aero_blue"] body.public-app .public-mobile-menu-toggle[aria-expanded="true"]{
  background:var(--aero-blue)!important;border-color:var(--aero-blue)!important;color:#fff!important;
}

/* =====================================================================
   AERO_BLUE_ORANGE_ACCENT_V1
   Skyexpress secondary colour #F26836 (var --aero-orange). The system stays
   BLUE-dominant; orange is used ONLY as an accent: the thin top strip that
   echoes the logo swoosh, the active-module underline, focus rings and a few
   small highlights. Buttons / links / active states remain blue.
   ===================================================================== */
html[data-public-template="aero_blue"] body.public-app .topbar{
  border-top-color:var(--aero-orange)!important;   /* thin accent strip, like the logo swoosh */
}
/* active module tab: blue face, ORANGE underline accent */
html[data-public-template="aero_blue"] body.public-app .aero-service-card.active{
  box-shadow:inset 0 -3px 0 var(--aero-orange)!important;
}
/* focus rings -> orange accent (keeps blue as the resting/hover colour) */
html[data-public-template="aero_blue"] body.public-app a:focus-visible,
html[data-public-template="aero_blue"] body.public-app button:focus-visible,
html[data-public-template="aero_blue"] body.public-app input:focus-visible,
html[data-public-template="aero_blue"] body.public-app select:focus-visible,
html[data-public-template="aero_blue"] body.public-app [tabindex]:focus-visible,
html[data-public-template="aero_blue"] body.public-app .aero-service-card:focus-visible{
  outline:2px solid var(--aero-orange)!important;
  outline-offset:2px!important;
}
/* small highlights: the loading plane + calendar month plane pick up the accent */
html[data-public-template="aero_blue"] body.public-app .flight-search-loading-plane,
html[data-public-template="aero_blue"] body.public-app .calendar-month-plane{
  color:var(--aero-orange)!important;
}
/* soft orange wash behind the "coming soon" icon so the modal isn't all-blue */
html[data-public-template="aero_blue"] body.public-app .aero-coming-soon-icon{
  color:var(--aero-orange)!important;
}
