/* AUTO-SPLIT app-shared.css: rregulla pa @media (te perbashketa mes desktop/mobile) + @media qe s'jane pastersisht mobile(<=760) ose desktop(>=761), p.sh. max-width:1100px. Gjenerohet nga static/app.css origjinal, RENDI i brendshem ruhet. */

:root{--bg:#f4f6fb;--card:#fff;--text:#142033;--muted:#657084;--brand:#1f5eff;--line:#dfe4ee;--danger:#b42318}
body:not(.public-app){color-scheme:light}
*{box-sizing:border-box}
body{margin:0;font-family:Inter,Arial,sans-serif;background:var(--bg);color:var(--text)}
a{color:var(--brand);text-decoration:none}
.topbar{height:68px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 28px}
.brand{display:flex;align-items:center;gap:10px;font-weight:800;color:var(--text)}
.brand img{width:38px;height:38px;object-fit:contain}
.topbar nav{display:flex;gap:18px}
.shell{display:grid;grid-template-columns:230px 1fr;min-height:calc(100vh - 68px)}
.sidebar{padding:24px;background:#101828;display:flex;flex-direction:column;gap:8px}
.sidebar a{color:#d0d5dd;padding:11px 12px;border-radius:9px}
.sidebar a:hover{background:#1d2939;color:#fff}
.content,.public-content{padding:30px;max-width:1400px;width:100%;margin:0 auto}
.public-content{max-width:1180px}
.page-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:22px}
.page-head h1{margin:0}
.page-head p{color:var(--muted)}
.button,button{background:var(--brand);color:#fff;border:0;border-radius:9px;padding:11px 16px;font-weight:700;cursor:pointer}
.danger{background:var(--danger);margin-left:8px}
.panel,.auth-card,.search-card,.status-card{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:22px;box-shadow:0 6px 20px rgba(16,24,40,.05)}
.auth-card{max-width:460px;margin:70px auto}
.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:16px}
.stat{background:#fff;border:1px solid var(--line);border-radius:15px;padding:20px}
.stat strong{font-size:28px;display:block}
.stat span{color:var(--muted)}
.table-wrap{overflow:auto}
table{width:100%;border-collapse:collapse}
th,td{text-align:left;padding:12px;border-bottom:1px solid var(--line)}
th{font-size:13px;color:var(--muted)}
.grid-2{display:grid;grid-template-columns:1.5fr 1fr;gap:20px}
.form-grid p,.search-card p,.auth-card p{display:grid;gap:6px}
input,select,textarea{width:100%;padding:11px;border:1px solid #cfd6e3;border-radius:8px;background:#fff}
.hero{padding:50px 0 22px}
.hero h1{font-size:46px;margin:8px 0}
.hero p,.eyebrow{color:var(--muted)}
.search-card{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.search-card button{align-self:end;margin-bottom:14px}
.flight-cards{display:grid;gap:12px;margin-bottom:22px}
.flight-card{display:block;border:1px solid var(--line);border-radius:12px;padding:14px;cursor:pointer}
.flight-card input{width:auto;margin-right:12px}
.flight-card span{display:inline-grid;gap:4px}
.flight-card small{color:var(--muted)}
.passenger-form{border-top:1px solid var(--line);margin-top:20px;padding-top:12px}
.summary{height:max-content}
.status-card{max-width:760px;margin:40px auto}
.status-pill{display:inline-block;background:#e8f0ff;color:#1746a2;border-radius:99px;padding:6px 10px;font-weight:700}
.alert{padding:12px 15px;border-radius:9px;margin-bottom:16px;background:#eef4ff}
.alert.error{background:#fee4e2;color:#912018}
@media(max-width:850px){.shell{grid-template-columns:1fr}.sidebar{display:none}.content,.public-content{padding:18px}.grid-2,.search-card{grid-template-columns:1fr}.hero h1{font-size:34px}}

.form-section{margin-bottom:18px}
.form-section h2{margin-top:0}
.form-grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.field{display:grid;gap:7px}
.field small,.muted{color:var(--muted)}
.stack-form{display:grid;gap:4px}
.bag-preset-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.bag-preset{border:1px solid var(--line);border-radius:14px;padding:16px;display:grid;gap:8px;background:#fff}
.bag-preset>span input{width:auto}
.bag-preset strong{font-size:18px}
.bag-preset small{color:var(--muted);min-height:34px}
.bag-preset div{display:grid;gap:6px}
.secondary{background:#344054}
.airline-badge{display:inline-flex;align-items:center;justify-content:center;min-width:42px;height:34px;border-radius:9px;background:#101828;color:#fff;font-size:12px;font-weight:800;padding:0 8px}
.airline-badge.large{width:56px;height:50px;font-size:15px}
.flight-title{display:flex;align-items:center;gap:14px}
.compact-stats{margin-bottom:20px}
.top-gap{margin-top:20px}
.bag-list{display:grid;gap:10px}
.bag-row{border:1px solid var(--line);border-radius:12px;padding:14px;display:grid;grid-template-columns:1fr auto;gap:12px;align-items:start}
.bag-row p{margin:5px 0}
.bag-row small{color:var(--muted)}
.bag-price{font-weight:800;text-align:right}
.bag-price small{display:block;font-weight:400}
.mini-pill{background:#e8f0ff;color:#1746a2;border-radius:99px;padding:3px 7px;font-size:11px}
.inline-actions{grid-column:1/-1;display:flex;gap:10px}
.link-button{background:transparent;color:var(--brand);padding:0}
.danger-text{color:var(--danger)}
.admin-add{margin-top:16px;border-top:1px solid var(--line);padding-top:12px}
.admin-add summary{cursor:pointer;font-weight:800}
.cards-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.airline-card{display:grid;grid-template-columns:70px 1fr;gap:14px}
.airline-logo-box{width:64px;height:64px;border-radius:13px;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;background:#fff;font-weight:900}
.airline-logo-box img{max-width:58px;max-height:58px;object-fit:contain}
.airline-card h3{margin:0 0 5px}
.airline-card p{margin:0 0 7px;color:var(--muted)}
.filter-bar{display:flex;gap:12px;align-items:end;margin-bottom:16px}
.filter-bar select{max-width:300px}
.booking-layout{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:20px}
.booking-main{display:grid;gap:18px}
.sticky-summary{position:sticky;top:18px}
.summary-line{display:flex;justify-content:space-between;padding:5px 0}
.baggage-table{display:grid;gap:8px}
.baggage-head,.baggage-line{display:grid;grid-template-columns:150px 1fr 1fr;gap:10px;align-items:center}
.baggage-head{font-size:13px;font-weight:800;color:var(--muted);padding:0 6px}
.baggage-line{border:1px solid var(--line);border-radius:10px;padding:10px}
.passenger-status{display:grid;gap:5px;border-bottom:1px solid var(--line);padding:10px 0}
.passenger-status small{color:var(--muted)}

@media(max-width:950px){.form-grid-3,.bag-preset-grid,.cards-3{grid-template-columns:1fr 1fr}.booking-layout{grid-template-columns:1fr}.sticky-summary{position:static}.baggage-head,.baggage-line{grid-template-columns:1fr}.baggage-head{display:none}}

.weekday-box{margin-top:16px;display:grid;gap:10px}
.weekday-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:8px}
.weekday-grid label{border:1px solid var(--line);border-radius:10px;padding:10px;display:flex;gap:7px;align-items:center;background:#fff}
.weekday-grid input{width:auto}
.embed-details{margin-top:7px}
.embed-details summary{cursor:pointer;color:var(--brand);font-weight:700}
.embed-details textarea{margin-top:8px;min-width:330px;font-size:12px}
.embed-mode{background:#fff}
.embed-mode .public-content{padding:12px;max-width:none}
.embed-mode .hero{padding-top:14px}
.embed-mode .hero h1{font-size:32px}
@media(max-width:850px){.weekday-grid{grid-template-columns:1fr 1fr}.embed-details textarea{min-width:240px}}

.button-row,.button-grid{display:flex;flex-wrap:wrap;gap:9px}
.button-grid{margin-top:12px}
.button-grid .button,.button-grid button{flex:1 1 130px;text-align:center}
.public-tabs{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.public-tabs a{background:#fff;border:1px solid var(--line);border-radius:9px;padding:10px 13px;font-weight:700}
.ops-leg{border:1px solid var(--line);border-radius:13px;padding:14px;margin-bottom:14px}
.ops-leg h3{margin-top:0}
.ops-leg table input,.ops-leg table select{min-width:105px}
.action-stack{display:flex;gap:10px;flex-wrap:wrap}
.inline-form{display:flex;gap:10px;align-items:end}
.inline-form input{max-width:420px}
.alert.success{background:#dcfae6;color:#05603a}
.alert.warning{background:#fff3cd;color:#7a5d00}
code{word-break:break-all}
.status-card .button{display:inline-block}
.table-wrap td small{color:var(--muted)}
/* v0.5.0: professional calendar, seven-day flight strip, fare buckets and B2B cashbox */

.compact-hero{padding-bottom:12px}
.compact-hero h1{font-size:38px}
.public-tabs .active{background:var(--brand);color:#fff}
.flight-search-shell{background:#fff;border:1px solid var(--line);border-radius:18px;padding:20px;box-shadow:0 16px 45px rgba(16,24,40,.08)}
.trip-switch{display:flex;gap:12px;margin-bottom:16px}
.trip-switch label{cursor:pointer}
.trip-switch input{position:absolute;opacity:0;pointer-events:none}
.trip-switch span{display:block;border:1px solid var(--line);border-radius:99px;padding:9px 15px;font-weight:800}
.trip-switch input:checked+span{border-color:var(--brand);background:#eaf0ff;color:#1746a2}
.flight-search-grid{display:grid;grid-template-columns:minmax(170px,1fr) 42px minmax(170px,1fr) minmax(240px,1.4fr) minmax(270px,1.4fr) 120px;align-items:stretch;border:1px solid var(--line);border-radius:14px;overflow:hidden}
.search-field{padding:12px 14px;border:0;border-right:1px solid var(--line);background:#fff;text-align:left;display:grid;gap:7px}
.search-field>span,.passenger-search-fields span{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);font-weight:800}
.search-field select{border:0;padding:0;font-size:16px;font-weight:700}
.search-field select:focus{outline:0}
.date-trigger{border-radius:0;color:var(--text);font-weight:400}
.date-trigger strong{font-size:16px}
.route-swap{border-radius:50%;width:34px;height:34px;padding:0;align-self:center;justify-self:center;z-index:2}
.passenger-search-fields{display:grid;grid-template-columns:repeat(3,1fr);gap:6px;padding:10px;border-right:1px solid var(--line)}
.passenger-search-fields label{display:grid;gap:5px}
.passenger-search-fields input{padding:7px;text-align:center}
.flight-search-grid>button[type=submit]{border-radius:0}
.flight-search-grid>button:disabled{opacity:.45;cursor:not-allowed}
.search-help{margin:12px 0 0}
.calendar-open{overflow:hidden}
.calendar-overlay{position:fixed;inset:0;background:rgba(16,24,40,.52);display:flex;align-items:center;justify-content:center;padding:18px;z-index:9999}
.calendar-overlay[hidden]{display:none}
.calendar-dialog{background:#fff;width:min(980px,100%);max-height:92vh;overflow:auto;touch-action:pan-y;border-radius:18px;box-shadow:0 30px 90px rgba(16,24,40,.3)}
.calendar-top,.calendar-footer,.calendar-nav{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid var(--line)}
.calendar-top small{display:block;color:var(--muted);margin-top:5px}
.calendar-close,.calendar-nav button{background:#fff;color:var(--text);border:1px solid var(--line);width:40px;height:40px;border-radius:50%;padding:0;font-size:24px}
.calendar-nav{padding:12px 22px}
.calendar-nav>div{font-weight:800;color:var(--brand)}
.calendar-months{display:grid;grid-template-columns:1fr 1fr;gap:28px;padding:10px 22px 24px}
.calendar-month h3{text-align:center;margin:12px 0 14px}
.calendar-weekdays,.calendar-days{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}
.calendar-weekdays span{text-align:center;font-size:12px;color:var(--muted);font-weight:700;padding:6px}
.calendar-day{min-height:64px;background:#fff;color:var(--text);border:1px solid transparent;border-radius:10px;padding:6px 3px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px}
.calendar-day b{font-size:14px}
.calendar-day small{font-size:10px;color:#087443;font-weight:800}
.calendar-day:not(:disabled):hover{border-color:var(--brand);background:#f0f5ff}
.calendar-day:disabled{background:#f8fafc;color:#c1c7d0;cursor:not-allowed}
.calendar-day.selected{background:var(--brand);color:#fff}
.calendar-day.selected small{color:#fff}
.calendar-day.in-range{background:#eaf0ff;border-radius:0}
.calendar-loading{grid-column:1/-1;padding:50px;text-align:center}
.calendar-footer{border-top:1px solid var(--line);border-bottom:0}
.calendar-footer span{color:var(--muted)}

.booking-steps{display:flex;gap:22px;justify-content:center;margin:10px 0 28px;font-weight:800;color:var(--muted)}
.booking-steps .active{color:var(--brand)}
.result-leg{margin-bottom:40px}
.result-leg-title{display:flex;align-items:end;justify-content:space-between;margin-bottom:12px}
.result-leg-title span{color:var(--muted);font-weight:800;text-transform:uppercase;font-size:12px}
.result-leg-title h1,.result-leg-title h2{margin:5px 0 0}
.date-strip{display:grid;grid-template-columns:repeat(7,minmax(100px,1fr));overflow:auto;touch-action:pan-x;border-bottom:2px solid var(--brand);margin-bottom:0}
.date-option{display:grid;gap:3px;text-align:center;padding:11px 8px;background:#fff;border:1px solid var(--line);border-bottom:0;color:var(--text);min-width:100px}
.date-option>span{font-size:12px;color:var(--muted)}
.date-option strong{font-size:14px}
.date-option small{font-size:11px}
.date-option.active{background:var(--brand);color:#fff}
.date-option.active span{color:#fff}
.date-option.disabled{background:#f8fafc;color:#adb5c2}
.flight-result-list{display:grid;gap:12px;margin-top:12px}
.flight-result-card{position:relative;display:grid;grid-template-columns:38px minmax(150px,1fr) minmax(210px,1.2fr) minmax(180px,1fr) minmax(130px,.7fr);align-items:center;gap:16px;background:#fff;border:2px solid var(--line);border-radius:13px;padding:18px;cursor:pointer}
.flight-result-card:hover{border-color:#9ab5ff}
.flight-result-card>input{position:absolute;opacity:0}
.flight-result-card:has(input:checked){border-color:var(--brand);background:#f7f9ff}
.select-box{width:30px;height:30px;border:2px solid #cdd5df;display:flex;align-items:center;justify-content:center;color:transparent}
.flight-result-card:has(input:checked) .select-box{background:var(--brand);border-color:var(--brand);color:#fff}
.flight-company,.flight-time,.flight-bag,.flight-price{display:grid;gap:4px}
.flight-company small,.flight-time small,.flight-bag small,.flight-price small{color:var(--muted)}
.flight-time{grid-template-columns:auto 24px auto;align-items:center}
.flight-time b{font-size:24px}
.flight-time small{grid-column:1/-1}
.flight-time i{text-align:center;color:var(--brand);font-style:normal;font-size:22px}
.flight-price{text-align:right}
.flight-price strong{font-size:23px;color:var(--brand)}
.result-actions{display:flex;justify-content:flex-end}
.result-actions button{min-width:180px}
.result-actions button:disabled{opacity:.45}
.empty-result{text-align:center;color:var(--muted)}

.fare-editor{margin-top:20px;border-top:1px solid var(--line);padding-top:18px}
.fare-editor-head{display:flex;justify-content:space-between;align-items:center;gap:18px}
.fare-editor-head h3{margin:0}
.fare-editor-head p{margin:5px 0}
.fare-table-head,.fare-table-row{display:grid;grid-template-columns:minmax(140px,1.2fr) minmax(80px,.55fr) repeat(4,minmax(105px,.75fr)) 44px;gap:10px;align-items:center}
.fare-table-head{padding:10px 2px;color:var(--muted);font-size:12px;font-weight:800}
.fare-table-row{margin-bottom:9px}
.fare-remove{background:#fff;color:var(--danger);border:1px solid #f1b5af;padding:0;width:42px;height:42px;font-size:23px}
.fare-total{text-align:right;font-weight:800;color:var(--muted);padding-top:5px}
.fare-total.ok{color:#087443}
.fare-total.bad{color:var(--danger)}

.agency-budget-stats{grid-template-columns:repeat(5,minmax(150px,1fr))}
.budget-total{border-color:#8fb1ff;background:#f3f6ff}
.deposit-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.deposit-grid label{display:grid;gap:6px}
.deposit-note{grid-column:1/-1}
.deposit-grid button{grid-column:1/-1}
.positive-money{color:#087443;font-weight:800}
.negative-money{color:var(--danger);font-weight:800}

@media(max-width:1100px){.flight-search-grid{grid-template-columns:1fr 42px 1fr}.date-trigger,.passenger-search-fields,.flight-search-grid>button[type=submit]{grid-column:span 1}.date-trigger{border-top:1px solid var(--line)}.passenger-search-fields{grid-column:span 2;border-top:1px solid var(--line)}.flight-search-grid>button[type=submit]{border-radius:0}.agency-budget-stats{grid-template-columns:repeat(3,1fr)}.flight-result-card{grid-template-columns:38px 1fr 1fr}.flight-bag,.flight-price{grid-column:2/-1;text-align:left}.date-strip{grid-template-columns:repeat(7,120px)}}
/* v0.6.0: provisional email/payment choices and explicit B2B credit debt */

.payment-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.payment-choice{display:flex;gap:12px;align-items:flex-start;border:1px solid var(--line);border-radius:13px;padding:14px;cursor:pointer;background:#fff}
.payment-choice:has(input:checked){border-color:var(--brand);background:#f3f6ff}
.payment-choice input{width:auto;margin-top:4px}
.payment-choice span{display:grid;gap:5px}
.payment-choice small{color:var(--muted);line-height:1.35}
.payment-instructions{margin-top:20px;padding-top:18px;border-top:1px solid var(--line)}
.payment-box{background:#f8fafc;border:1px solid var(--line);border-radius:12px;padding:14px}
.payment-box p{margin:7px 0}
.payment-pending-card{max-width:680px}
.field-error{color:var(--danger);margin-top:8px}
.agency-budget-stats{grid-template-columns:repeat(7,minmax(140px,1fr))}
@media(max-width:900px){.payment-choice-grid{grid-template-columns:1fr}.agency-budget-stats{grid-template-columns:repeat(2,1fr)}}
/* v0.7.0: multi-tenant control, white-label navigation and wallets */

:root{--brand:var(--tenant-primary,#1f5eff)}

.topbar{border-top:4px solid var(--tenant-primary,#1f5eff)}

.sidebar{background:var(--tenant-secondary,#101828)}

.inline-form{display:inline-flex;margin:0}
.link-button{background:transparent;border:0;color:var(--brand);padding:0;font:inherit;font-weight:700}

.button-row{display:flex;gap:10px;flex-wrap:wrap}
.button.secondary{background:#344054}
.wide-auth{max-width:680px}
.auth-card form p{margin:0 0 14px}
.auth-card ul.errorlist{color:var(--danger);padding-left:18px}

.control-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:18px}
.control-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px}
.control-card h3{margin-top:0}

.permission-list ul{columns:2;list-style:none;padding:0}
.permission-list label{display:flex;gap:8px;align-items:flex-start}
.permission-list input{width:auto;margin-top:3px}

.tenant-badge{display:inline-flex;padding:5px 9px;border-radius:99px;background:#eef4ff;font-weight:800;font-size:12px}
.secret-note{background:#fff7ed;border:1px solid #fed7aa;border-radius:10px;padding:10px}
/* v0.8.5: mobile navigation and responsive admin workspace */

.mobile-menu-toggle,.sidebar-mobile-head,.mobile-menu-backdrop{display:none}


@media(max-width:850px){
  body.admin-app.mobile-nav-open{overflow:hidden}
  .admin-app .topbar{
    min-height:64px;
    height:auto;
    padding:10px 14px;
    gap:10px;
    position:sticky;
    top:0;
    z-index:1100;
  }
  .admin-app .mobile-menu-toggle{
    display:inline-flex;
    align-items:center;
    gap:7px;
    flex:0 0 auto;
    padding:9px 11px;
    border-radius:9px;
    background:var(--tenant-secondary,#101828);
    font-size:14px;
  }
  .admin-app .mobile-menu-toggle span:first-child{font-size:20px;line-height:1}
  .admin-app .brand{min-width:0;flex:1 1 auto}
  .admin-app .brand span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .admin-app .brand img{width:32px;height:32px}
  .admin-app .topbar nav{gap:10px;flex:0 0 auto;align-items:center}
  .admin-app .topbar nav>a{display:none}
  .admin-app .topbar nav .inline-form{display:inline-flex}
  .admin-app .topbar nav .link-button{white-space:nowrap}
  .admin-app .shell{display:block;min-height:calc(100vh - 64px)}
  .admin-app .sidebar{
    display:flex;
    position:fixed;
    z-index:1300;
    left:0;
    top:0;
    bottom:0;
    width:min(86vw,330px);
    padding:14px 16px 28px;
    overflow-y:auto;
    overscroll-behavior:contain;
    transform:translateX(-105%);
    transition:transform .22s ease;
    box-shadow:18px 0 50px rgba(16,24,40,.28);
  }
  body.admin-app.mobile-nav-open .sidebar{transform:translateX(0)}
  .admin-app .sidebar-mobile-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    color:#fff;
    padding:4px 4px 14px;
    margin-bottom:6px;
    border-bottom:1px solid rgba(255,255,255,.14);
  }
  .admin-app .sidebar-close{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    width:38px;
    height:38px;
    padding:0;
    border-radius:50%;
    background:rgba(255,255,255,.1);
    font-size:28px;
    line-height:1;
  }
  .admin-app .mobile-menu-backdrop{
    position:fixed;
    inset:0;
    z-index:1250;
    background:rgba(16,24,40,.56);
    backdrop-filter:blur(2px);
  }
  .admin-app .mobile-menu-backdrop:not([hidden]){display:block}
  .public-app .topbar{
    height:auto;
    min-height:64px;
    padding:10px 14px;
    gap:10px;
    flex-wrap:wrap;
  }
  .public-app .topbar nav{
    width:100%;
    display:flex;
    gap:12px;
    overflow-x:auto;
    padding-bottom:3px;
  }
  .public-app .topbar nav a{white-space:nowrap}
  .content,.public-content{padding:16px;max-width:none;overflow-x:hidden}
  .page-head{align-items:stretch;gap:12px;flex-direction:column}
  .page-head .button,.page-head>button{width:100%;text-align:center}
  .stats,.agency-budget-stats{grid-template-columns:1fr 1fr}
  .grid-2,.form-grid-3,.bag-preset-grid,.cards-3,.control-grid,.payment-choice-grid{grid-template-columns:1fr}
  .panel,.auth-card,.search-card,.status-card,.control-card{border-radius:12px;padding:16px}
  .table-wrap{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
  table{min-width:680px}
  th,td{padding:10px;white-space:nowrap}
  .button-row,.inline-actions{display:grid;grid-template-columns:1fr;width:100%}
  .button-row .button,.inline-actions .button,.inline-actions button{width:100%;text-align:center}
  .danger{margin-left:0}
  .form-grid p,.search-card p,.auth-card p{min-width:0}
  input,select,textarea{font-size:16px}
}
/* v0.9.0: Hotel Core */

.hotel-hero{padding:46px 0 24px;background:linear-gradient(135deg,#eef4ff,#fff7ef);border-radius:24px;margin:22px 0;padding-left:28px;padding-right:28px}
.hotel-hero h1{font-size:44px;margin:7px 0}
.hotel-search-grid{display:grid;grid-template-columns:1.4fr repeat(6,minmax(110px,1fr));gap:12px;align-items:end}
.hotel-search-grid p{margin:0}
.hotel-search-grid button{margin-bottom:0}
.hotel-results,.room-offers{display:grid;gap:18px}
.hotel-result-card{display:grid;grid-template-columns:310px 1fr;background:#fff;border:1px solid var(--line);border-radius:18px;overflow:hidden;box-shadow:0 10px 28px rgba(16,24,40,.07)}
.hotel-result-image,.hotel-card-image,.room-card-image,.room-offer-image{background:#e7ebf2;display:flex;align-items:center;justify-content:center;min-height:190px;font-weight:900;color:var(--muted)}
.hotel-result-image img,.hotel-card-image img,.room-card-image img,.room-offer-image img{width:100%;height:100%;object-fit:cover}
.hotel-result-content{padding:22px}
.hotel-result-content h2{margin:4px 0}
.hotel-stars{color:#e4a11b;letter-spacing:2px;font-weight:900}
.hotel-result-bottom{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-top:18px}
.hotel-result-bottom div{display:grid;gap:4px}
.hotel-result-bottom strong,.room-offer-price strong,.hotel-payment-total{font-size:24px;color:var(--tenant-primary,var(--brand))}
.hotel-detail-hero{display:grid;grid-template-columns:minmax(320px,1.1fr) 1fr;gap:28px;align-items:center;margin-top:24px}
.hotel-detail-hero>div:first-child{height:360px;border-radius:20px;overflow:hidden;background:#e7ebf2}
.hotel-detail-hero img{width:100%;height:100%;object-fit:cover}
.hotel-detail-hero h1{font-size:42px;margin:7px 0}
.hotel-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:12px}
.hotel-gallery figure,.room-gallery figure{margin:0;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:#fff}
.hotel-gallery img{width:100%;height:150px;object-fit:cover}
.hotel-gallery figcaption{padding:8px;font-size:12px;color:var(--muted)}
.admin-gallery img{height:120px}
.hotel-admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(390px,1fr));gap:18px}
.hotel-admin-card{display:grid;grid-template-columns:180px 1fr;gap:18px}
.hotel-admin-card .hotel-card-image{min-height:180px;border-radius:12px;overflow:hidden}
.hotel-admin-card h2{margin:4px 0}
.room-admin-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(290px,1fr));gap:16px}
.room-admin-card{border:1px solid var(--line);border-radius:14px;padding:14px;display:grid;gap:12px;background:#fff}
.room-card-image{height:165px;border-radius:10px;overflow:hidden}
.room-gallery{display:flex;gap:7px;overflow-x:auto}
.room-gallery figure{position:relative;min-width:82px}
.room-gallery img{width:82px;height:65px;object-fit:cover}
.room-gallery form{position:absolute;right:2px;top:0}
.stack-list{display:grid;gap:9px}
.mini-card{border:1px solid var(--line);border-radius:11px;padding:11px;display:grid;gap:4px}
.mini-card span,.mini-card small{color:var(--muted)}
.room-offer{display:grid;grid-template-columns:230px 1fr 190px;gap:18px;align-items:stretch}
.room-offer-image{border-radius:12px;overflow:hidden;min-height:190px}
.room-offer-price{display:flex;flex-direction:column;align-items:flex-end;justify-content:center;gap:9px;text-align:right}
.hotel-book-summary{display:grid;grid-template-columns:230px 1fr;gap:18px}
.hotel-book-summary>div:first-child{height:180px;border-radius:12px;overflow:hidden;background:#e7ebf2}
.hotel-book-summary img{width:100%;height:100%;object-fit:cover}
.hotel-total{font-size:18px;border-top:2px solid var(--line);margin-top:8px;padding-top:12px}
.hotel-status-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0}
.hotel-status-grid>div{background:var(--bg);border-radius:10px;padding:12px;display:grid;gap:5px}
.hotel-status-grid small{color:var(--muted)}

@media(max-width:1100px){.hotel-search-grid{grid-template-columns:repeat(3,1fr)}.room-offer{grid-template-columns:190px 1fr}.room-offer-price{grid-column:1/-1;flex-direction:row;justify-content:space-between;align-items:center}.hotel-result-card{grid-template-columns:240px 1fr}}
/* v0.11.0: minimal reservation, passenger profiles, check-in and Gutschein */

.loyalty-use-panel{border-color:#b7c9ff;background:#f7f9ff}
.wallet-use-choice,.save-profile-choice,.checkbox-row{display:flex;gap:9px;align-items:center}
.wallet-use-choice input,.save-profile-choice input,.checkbox-row input{width:auto}
.wallet-card-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:12px;margin:12px 0}
.wallet-card{display:grid;gap:5px;padding:15px;border:1px solid var(--line);border-radius:12px;background:var(--bg)}
.wallet-card strong{font-size:24px}
.checkin-lookup{display:grid;gap:16px}
.checkin-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.saved-profile-picker{max-width:420px;margin-bottom:12px}
.document-state{display:inline-flex;width:max-content;padding:4px 8px;border-radius:99px;font-size:12px;font-weight:800}
.document-state.complete{background:#dcfae6;color:#05603a}
.document-state.pending{background:#fff3cd;color:#7a5d00}
.inline-edit-form{display:grid;grid-template-columns:minmax(110px,1fr) auto auto;gap:7px;align-items:center}
.field-error,.errorlist{color:var(--danger)}

@media(max-width:850px){.checkin-grid{grid-template-columns:1fr 1fr}.inline-edit-form{grid-template-columns:1fr}}
/* MENAXHERI v0.11.1 — price per passenger breakdown */

.passenger-price-breakdown{display:grid;gap:10px;padding:14px 0 16px}

.passenger-price-breakdown h3{margin:0 0 2px;font-size:1rem}

.passenger-price-row{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:11px 12px;border:1px solid var(--border,#dfe4ea);border-radius:12px;background:var(--surface-soft,#f8fafc)}

.passenger-price-row>span{display:grid;gap:3px;min-width:0}

.passenger-price-row small{color:var(--muted,#667085);line-height:1.35}

.passenger-price-row>strong{white-space:nowrap;font-size:1.02rem}
/* MENAXHERI v0.11.6 — booking categories and advanced admin filters */

.section-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 16px}

.section-tabs a{display:inline-flex;align-items:center;justify-content:center;padding:10px 15px;border:1px solid var(--line);border-radius:10px;background:#fff;font-weight:800;color:var(--secondary)}

.section-tabs a.active{background:var(--tenant-primary,var(--brand));border-color:var(--tenant-primary,var(--brand));color:#fff}

.advanced-filter-grid{display:grid;grid-template-columns:repeat(4,minmax(170px,1fr));gap:14px;align-items:end;margin-bottom:16px}

.advanced-filter-grid label{display:grid;gap:7px;font-weight:700;min-width:0}

.advanced-filter-grid input,.advanced-filter-grid select{width:100%}

.filter-actions{display:flex;gap:9px;align-items:center}

.filter-actions button,.filter-actions .button{margin:0;white-space:nowrap;text-align:center}

@media(max-width:1250px){.advanced-filter-grid{grid-template-columns:repeat(3,minmax(170px,1fr))}}

@media(max-width:900px){.advanced-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* AIRLINE_LOGO_RESULT_CARDS_V01622 */

.airline-badge.has-logo{width:96px;min-width:96px;height:44px;padding:5px 8px;background:#fff;color:var(--text);border:1px solid var(--line);box-shadow:0 2px 8px rgba(15,23,42,.06)}

.airline-badge.has-logo img{display:block;width:100%;height:100%;object-fit:contain}

.flight-company{align-content:center}
/* MENAXHERI v0.16.23 — passenger steppers and mobile calendar shell */

.passenger-stepper-button{-webkit-tap-highlight-color:transparent;touch-action:manipulation}

.calendar-months{scrollbar-gutter:stable}
/* MENAXHERI v0.16.23.1 — Mobile route swap placement fix */

.route-swap{
  display:flex;
  align-items:center;
  justify-content:center;
  background:#fff;
  color:var(--brand);
  border:1px solid var(--brand);
  box-shadow:0 5px 14px rgba(15,23,42,.12);
  font-size:0;
}

.route-swap::before{
  content:"⇄";
  font-size:18px;
  line-height:1;
  font-weight:800;
}
/* MENAXHERI v0.16.25 — AirBaltic-inspired compact mobile flight results */

.date-strip-shell{position:relative}

.date-strip-nav{display:none}

.flight-time{grid-template-columns:1fr;align-items:center}

.flight-route-times{display:grid;grid-template-columns:auto 24px auto;align-items:center}

.flight-point{display:grid;gap:2px}

.flight-point em{display:none;font-style:normal}

.flight-route-times i{text-align:center;color:var(--brand);font-style:normal;font-size:22px}

.flight-route-times b{font-size:24px}

.flight-duration,.flight-mobile-airline,.flight-details-trigger,.mobile-card-continue{display:none}

.flight-details-modal[hidden]{display:none}

.flight-details-modal{position:fixed;inset:0;z-index:10050;display:flex;align-items:center;justify-content:center;padding:22px}

.flight-details-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.58);backdrop-filter:blur(3px)}

.flight-details-dialog{position:relative;width:min(680px,100%);max-height:min(820px,calc(100vh - 44px));overflow:auto;touch-action:pan-y;background:#fff;border-radius:20px;box-shadow:0 26px 80px rgba(15,23,42,.34)}

.flight-details-header{position:sticky;top:0;z-index:2;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:22px 24px;background:#fff;border-bottom:1px solid var(--line)}

.flight-details-header h2{margin:0}

.flight-details-close{width:44px;height:44px;padding:0;border-radius:50%;background:#fff;color:var(--text);border:1px solid var(--line);font-size:30px;line-height:1}

.flight-details-rows{padding:10px 24px}

.flight-details-rows>div{display:grid;grid-template-columns:minmax(170px,.8fr) minmax(220px,1.2fr);gap:24px;align-items:center;padding:15px 0;border-bottom:1px solid var(--line)}

.flight-details-rows span{color:var(--muted)}

.flight-details-rows strong{text-align:right}

.flight-details-duration{display:grid;justify-items:center;gap:7px;padding:22px 24px 28px;background:#f8fafc;text-align:center}

.flight-details-duration span{color:var(--muted)}

.flight-details-duration strong{font-size:30px}

body.flight-details-open{overflow:hidden}
/* MENAXHERI v0.16.25.4 — Clean route heading */

.result-leg-title h1,
.result-leg-title h2{
  display:flex;
  align-items:baseline;
  flex-wrap:wrap;
  gap:.22em;
  margin:0;
}

.result-leg-title .route-label{
  color:var(--text);
  font-size:inherit;
  font-weight:800;
  line-height:inherit;
  text-transform:none;
}
/* MENAXHERI v0.16.27 — Compact cards, bottom continue and standard class */

.fare-class-trigger{display:none}

.fare-class-modal[hidden]{display:none}

.fare-class-modal{position:fixed;inset:0;z-index:10060;display:flex;align-items:center;justify-content:center;padding:22px}

.fare-class-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.58);backdrop-filter:blur(3px);animation:fare-class-backdrop-fade-v1 .6s ease both}

@keyframes fare-class-backdrop-fade-v1{from{opacity:0}to{opacity:1}}

.fare-class-dialog{position:relative;width:min(560px,100%);overflow:hidden;background:#fff;border-radius:20px;box-shadow:0 26px 80px rgba(15,23,42,.34)}

.fare-class-header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px 24px;background:#fff;border-bottom:1px solid var(--line)}

.fare-class-header small{display:block;color:var(--muted);font-weight:750;margin-bottom:4px}

.fare-class-header h2{margin:0}

.fare-class-close{width:44px;height:44px;padding:0;border-radius:50%;background:#fff;color:var(--text);border:1px solid var(--line);font-size:30px;line-height:1}

.fare-class-bundle{margin:22px 24px 26px;border:2px solid var(--brand);border-radius:14px;overflow:hidden;background:#f8fafc}

.fare-class-badge{padding:16px 18px;background:var(--brand);color:#fff;font-size:21px;font-weight:850}

.fare-class-bundle ul{list-style:none;margin:0;padding:18px;display:grid;gap:16px}

.fare-class-bundle li{display:flex;align-items:center;gap:13px;font-size:16px}

.fare-class-bundle li span{font-size:25px}

body.fare-class-open{overflow:hidden}
/* MENAXHERI v0.16.28 — Selected action row, floating fare sheet and mini summary */

.selection-mini-summary{display:none}

.flight-selected-actions{display:none}

.fare-class-handle{display:none}
/* PUBLIC_NO_PINCH_ZOOM_V1: meta viewport user-scalable=no vetëm nuk mjafton (Safari
   modern e injoron), prandaj bllokohet pinch-zoom-i me touch-action në krejt faqen
   publike. pan-x + pan-y mbeten të lejuara (scroll vertikal + kalendari horizontal),
   vetëm pinch-zoom dhe double-tap-zoom bllokohen, njësoj si te dritaret e bagazhit/
   detajeve që tashmë e kishin këtë sjellje. */

body.public-app{touch-action:pan-x pan-y}
/* PUBLIC_RESULTS_SPACING_BACKGROUND_V016295
   Calmer public background, clearer section spacing and 1–2 mm larger cards. */

body.public-app{background:#eef1f5}
/* PUBLIC_MOBILE_CALENDAR_FLIGHT_TUNING_V016296
   Six compact month tabs, stronger page contrast, larger mobile flight cards,
   and a clearer separation between outbound and return sections. */

body.public-app{background:#e5e9ef}
/* PUBLIC_CALENDAR_TRIP_TABS_COMPACT_HEADER_V0162915
   Compact calendar title, visible Back control, AirBaltic-like outbound/return
   selection tabs, and exactly 4 mm removed from the bottom of the public header. */


#calendar-subtitle {
  display: none !important;
}


.calendar-trip-tabs {
  display: grid;
  grid-template-columns: 1fr 1fr;
  background: #fff;
  border-bottom: 1px solid var(--line);
}


.calendar-trip-tabs.one-way {
  grid-template-columns: 1fr;
}


.calendar-trip-tab {
  position: relative;
  min-height: 82px;
  border: 0;
  border-radius: 0;
  border-top: 4px solid transparent;
  border-right: 1px solid var(--line);
  background: #f6f7f9;
  color: var(--text);
  padding: 13px 12px 12px;
  display: grid;
  place-items: center;
  align-content: center;
  gap: 7px;
  text-align: center;
}


.calendar-trip-tab:last-child {
  border-right: 0;
}


.calendar-trip-tab > span {
  font-size: 17px;
  font-weight: 900;
  line-height: 1.1;
}


.calendar-trip-tab > strong {
  color: var(--muted);
  font-size: 14px;
  font-weight: 650;
  line-height: 1.15;
}


.calendar-trip-tab.active {
  border-top-color: var(--tenant-primary);
  background: #fff;
}


.calendar-trip-tab.active > strong {
  color: var(--text);
}


.calendar-trip-tab:disabled {
  cursor: default;
  opacity: .62;
}


.calendar-top-copy {
  min-width: 0;
}


.calendar-back {
  width: auto !important;
  min-width: 96px;
  height: 42px !important;
  border-radius: 999px !important;
  padding: 0 14px !important;
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 7px;
  font-size: 15px !important;
  font-weight: 850;
  white-space: nowrap;
}


.calendar-back > span:first-child {
  font-size: 20px;
  line-height: 1;
}
/* PUBLIC_CALENDAR_FOOTER_COMPACT_V0162916
   Shorter title bar, 2 mm shorter outbound/return tabs and a clear footer
   with selected dates, price per passenger and total price. */


.calendar-footer-summary #calendar-reset,
.calendar-footer-summary #calendar-selection-note {
  display: none !important;
}


.calendar-footer-summary {
  display: grid !important;
  grid-template-columns: 1fr !important;
  gap: 10px !important;
}


.calendar-footer-main {
  display: grid;
  grid-template-columns: minmax(0,1.35fr) minmax(0,.95fr);
  gap: 12px;
  align-items: stretch;
  width: 100%;
}


.calendar-footer-dates {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 8px;
  min-width: 0;
}


.calendar-footer-prices {
  display: grid;
  grid-template-columns: 1fr;
  gap: 7px;
  min-width: 0;
}


.calendar-footer-item,
.calendar-footer-price {
  min-width: 0;
  border: 1px solid #d8dee8;
  border-radius: 10px;
  background: #f7f8fa;
  padding: 8px 9px;
  display: grid;
  align-content: center;
  gap: 4px;
}


.calendar-footer-price.total {
  border-color: color-mix(in srgb,var(--tenant-primary) 38%,#d8dee8);
  background: color-mix(in srgb,var(--tenant-primary) 7%,#fff);
}


.calendar-footer-item > span,
.calendar-footer-price > span {
  max-width: none !important;
  color: var(--muted) !important;
  text-align: left !important;
  font-size: 10px;
  font-weight: 800;
  line-height: 1.1;
  text-transform: uppercase;
  letter-spacing: .04em;
}


.calendar-footer-item > strong,
.calendar-footer-price > strong {
  min-width: 0;
  color: var(--text);
  font-size: 13px;
  font-weight: 850;
  line-height: 1.15;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}


.calendar-footer-price > strong {
  color: var(--tenant-primary);
  text-align: right;
}


.calendar-footer-summary .calendar-search-action {
  width: 100% !important;
  margin: 0 !important;
  min-height: 48px !important;
}
/* PUBLIC_CALENDAR_DATES_TOTAL_BUTTON_V0162917
   Remove the duplicated top trip tabs, keep only two strong clickable date
   boxes above the search button, and show Gesamtpreis inside the button. */


html body.public-app .marketing-home #calendar-trip-tabs {
  display: none !important;
}


html body.public-app .marketing-home .calendar-footer-prices {
  display: none !important;
}


html body.public-app .marketing-home .calendar-footer-main {
  display: block !important;
  width: 100% !important;
}


html body.public-app .marketing-home .calendar-footer-dates {
  display: grid !important;
  grid-template-columns: repeat(2,minmax(0,1fr)) !important;
  gap: 10px !important;
  width: 100% !important;
}


html body.public-app .marketing-home .calendar-footer-item {
  appearance: none !important;
  -webkit-appearance: none !important;
  width: 100% !important;
  min-height: 66px !important;
  border: 1px solid #c7cfda !important;
  border-radius: 11px !important;
  background: #f3f5f8 !important;
  padding: 9px 13px !important;
  display: grid !important;
  align-content: center !important;
  justify-items: start !important;
  gap: 5px !important;
  text-align: left !important;
  cursor: pointer !important;
}


html body.public-app .marketing-home .calendar-footer-item.active {
  border-color: var(--tenant-primary) !important;
  box-shadow: inset 0 3px 0 var(--tenant-primary) !important;
  background: #fff !important;
}


html body.public-app .marketing-home .calendar-footer-item > span {
  color: #334155 !important;
  font-size: 11px !important;
  font-weight: 950 !important;
  line-height: 1.05 !important;
  letter-spacing: .045em !important;
  text-transform: uppercase !important;
}


html body.public-app .marketing-home .calendar-footer-item > strong {
  color: #111827 !important;
  font-size: 15px !important;
  font-weight: 950 !important;
  line-height: 1.08 !important;
  white-space: nowrap !important;
}


html body.public-app .marketing-home .calendar-search-with-total {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) auto !important;
  align-items: center !important;
  gap: 12px !important;
  min-height: 58px !important;
  padding: 7px 12px 7px 18px !important;
  text-align: initial !important;
}


html body.public-app .marketing-home .calendar-search-label {
  color: #fff !important;
  font-size: 16px !important;
  font-weight: 850 !important;
  line-height: 1.1 !important;
  text-align: center !important;
}


html body.public-app .marketing-home .calendar-search-total {
  min-width: 112px !important;
  border-left: 1px solid rgba(255,255,255,.38) !important;
  padding-left: 12px !important;
  display: grid !important;
  justify-items: end !important;
  align-content: center !important;
  gap: 2px !important;
  color: #fff !important;
  text-align: right !important;
}


html body.public-app .marketing-home .calendar-search-total > small {
  color: rgba(255,255,255,.86) !important;
  font-size: 9px !important;
  font-weight: 850 !important;
  line-height: 1 !important;
  letter-spacing: .04em !important;
  text-transform: uppercase !important;
}


html body.public-app .marketing-home .calendar-search-total > strong {
  color: #fff !important;
  font-size: 14px !important;
  font-weight: 950 !important;
  line-height: 1.05 !important;
  white-space: nowrap !important;
}
/* PUBLIC_CALENDAR_PRICE_BUTTON_V0162919
   Preis for one passenger on the LEFT, Flüge suchen on the RIGHT.
   Both halves are exactly equal, with a centered divider and strong white text. */


html body.public-app .marketing-home .calendar-search-with-total {
  display: grid !important;
  grid-template-columns: minmax(0,1fr) minmax(0,1fr) !important;
  align-items: stretch !important;
  gap: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
}


html body.public-app .marketing-home .calendar-search-with-total > * {
  min-width: 0 !important;
  height: 100% !important;
}


html body.public-app .marketing-home .calendar-search-label {
  order: 2 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 14px !important;
  color: #fff !important;
  text-align: center !important;
  font-size: 18px !important;
  font-weight: 950 !important;
  line-height: 1.08 !important;
  text-shadow: 0 1px 0 rgba(0,0,0,.08) !important;
}


html body.public-app .marketing-home .calendar-search-total {
  order: 1 !important;
  min-width: 0 !important;
  border-left: none !important;
  border-right: 1px solid rgba(255,255,255,.42) !important;
  padding: 0 14px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 3px !important;
  color: #fff !important;
  text-align: center !important;
}


html body.public-app .marketing-home .calendar-search-total > small {
  color: #fff !important;
  font-size: 12px !important;
  font-weight: 950 !important;
  line-height: 1 !important;
  letter-spacing: .05em !important;
  text-transform: uppercase !important;
  text-shadow: 0 1px 0 rgba(0,0,0,.06) !important;
}


html body.public-app .marketing-home .calendar-search-total > strong {
  color: #fff !important;
  font-size: 18px !important;
  font-weight: 950 !important;
  line-height: 1.04 !important;
  white-space: nowrap !important;
  text-shadow: 0 1px 0 rgba(0,0,0,.08) !important;
}
/* OPERATOR_APPEARANCE_CALENDAR_CENTER_V0162920
   Center the Hinflug/Rückflug labels and selected dates in both footer boxes. */

html body.public-app .marketing-home .calendar-footer-item {
  justify-items: center !important;
  text-align: center !important;
}

html body.public-app .marketing-home .calendar-footer-item > span,
html body.public-app .marketing-home .calendar-footer-item > strong {
  width: 100% !important;
  text-align: center !important;
}
/* PUBLIC_BOOKING_STEP3_REORDER_CSS_V0162922 */

.booking-layout {
  grid-template-columns: minmax(0,1fr) !important;
  width: min(1080px,calc(100% - 32px)) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}


.booking-layout .booking-main {
  display: flex !important;
  flex-direction: column !important;
  gap: 18px !important;
}


.booking-summary-first { order: 1 !important; position: static !important; }

.booking-payment-panel { order: 2 !important; }

.booking-baggage-panel { order: 3 !important; }

.promotion-panel { order: 4 !important; }

.loyalty-use-panel { order: 5 !important; }

.booking-contact-panel { order: 6 !important; }

.booking-passengers-panel { order: 7 !important; }

.booking-confirm-button { order: 8 !important; }

#automatic-age-status { order: 9 !important; }


.booking-summary-first {
  width: 100% !important;
  max-width: none !important;
  border: 2px solid color-mix(in srgb,var(--tenant-primary) 23%,#e5e7eb) !important;
}


.booking-local-flight-times {
  display: inline-grid !important;
  gap: 3px !important;
  margin: 5px 0 !important;
}


.booking-local-flight-times small {
  color: #475569 !important;
  font-size: 12px !important;
  font-weight: 750 !important;
}


.booking-payment-heading {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;
  margin-bottom: 8px !important;
}


.booking-payment-heading h2 {
  margin: 0 !important;
}


.booking-currency-inline {
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  font-weight: 850 !important;
}


.booking-currency-inline select {
  min-width: 92px !important;
  margin: 0 !important;
}


.booking-fx-note {
  margin: 0 0 15px !important;
}


.booking-confirmation-email {
  margin-top: 15px !important;
  padding: 14px !important;
  border: 1px solid #dfe4eb !important;
  border-radius: 13px !important;
  background: #f8fafc !important;
}


.booking-confirmation-email label,
.booking-confirmation-email small {
  display: block !important;
}


.booking-confirmation-email label {
  margin-bottom: 7px !important;
  font-weight: 900 !important;
}


.booking-confirmation-email input {
  width: 100% !important;
}


.booking-confirmation-email small {
  margin-top: 7px !important;
  color: #64748b !important;
}


.booking-contact-panel[hidden] {
  display: none !important;
}


.booking-confirm-button {
  min-height: 58px !important;
  font-size: 18px !important;
  font-weight: 950 !important;
}
/* PUBLIC_CALENDAR_CLEAR_SELECTION_CSS_V0162923
   The calendar title becomes a clear-selection action only after the date
   selection is complete. The Back button remains unchanged. */


html body.public-app .marketing-home .calendar-title-action {
  appearance: none !important;
  -webkit-appearance: none !important;
  display: inline-block !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  color: #172033 !important;
  font: inherit !important;
  font-size: inherit !important;
  font-weight: 900 !important;
  line-height: 1.15 !important;
  text-align: left !important;
  opacity: 1 !important;
  cursor: default !important;
}


html body.public-app .marketing-home .calendar-title-action.is-clear-action {
  color: var(--tenant-primary) !important;
  cursor: pointer !important;
  text-decoration: underline !important;
  text-decoration-thickness: 1.5px !important;
  text-underline-offset: 4px !important;
}


html body.public-app .marketing-home .calendar-title-action.is-clear-action:hover,
html body.public-app .marketing-home .calendar-title-action.is-clear-action:focus-visible {
  filter: brightness(.88) !important;
}


html body.public-app .marketing-home .calendar-title-action:focus-visible {
  outline: 2px solid color-mix(in srgb,var(--tenant-primary) 65%,white) !important;
  outline-offset: 5px !important;
  border-radius: 4px !important;
}
/* OPERATOR_VISUAL_HEADER_RESIZER_PUBLIC_CSS_V0162924
   Values are stored per operator and supplied as CSS variables by base.html. */

html body.public-app .marketing-home .commercial-hero {
  min-height: var(--tenant-hero-height-desktop,530px) !important;
}

html body.public-app .marketing-home .commercial-hero-inner {
  width: min(var(--tenant-hero-content-width,1220px),calc(100% - 48px)) !important;
}
/* OPERATOR_LOGO_TOPBAR_RESIZER_PUBLIC_CSS_V0162925
   Applies only to the public white topbar that contains logo, brand, languages
   and Login. The admin topbar and the large hero image are not changed here. */

html body.public-app > .topbar {
  height: var(--tenant-topbar-height-desktop,88px) !important;
  min-height: var(--tenant-topbar-height-desktop,88px) !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

html body.public-app > .topbar .brand img {
  width: auto !important;
  height: var(--tenant-topbar-logo-desktop,42px) !important;
  max-width: min(190px,32vw) !important;
  max-height: calc(var(--tenant-topbar-height-desktop,88px) - 16px) !important;
  object-fit: contain !important;
}

@media (max-width:850px) {
  html body.public-app > .topbar {
    height: var(--tenant-topbar-height-mobile,96px) !important;
    min-height: var(--tenant-topbar-height-mobile,96px) !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
  }
  html body.public-app > .topbar .brand img {
    width: auto !important;
    height: var(--tenant-topbar-logo-mobile,34px) !important;
    max-width: min(120px,27vw) !important;
    max-height: calc(var(--tenant-topbar-height-mobile,96px) - 14px) !important;
  }
}
/* OPERATOR_PUBLIC_SHELL_VISIBILITY_CSS_V0162930 */

body.public-app .marketing-home.public-hero-hidden .booking-stage{
  margin-top:0!important;
  padding-top:24px!important;
}

body.public-app .marketing-home.public-hero-hidden .booking-panel{
  box-shadow:0 18px 48px rgba(15,23,42,.11)!important;
}
/* PUBLIC_MOBILE_OFFERS_COMPACT_FOOTER_V0162933
   - Live-Prüfung/Klarer Ablauf/Sichere Buchung hiqen.
   - Ofertat automatike zhvendosen poshtë kërkimit.
   - Në telefon ofertat lëvizin horizontalisht.
   - Footer-i bëhet shirit i zi me 3 butona. */


html body.public-app .marketing-home .trust-strip,
html body.public-app .marketing-home .benefit-band {
  display: none !important;
}


html body.public-app .marketing-home .offers-inline-location {
  width: 100% !important;
  max-width: none !important;
  margin: 18px 0 0 !important;
  padding: 0 !important;
}


html body.public-app .marketing-home .offers-inline-location .section-head {
  margin: 0 0 16px !important;
}


html body.public-app .public-footer.public-footer-compact {
  margin: 0 !important;
  padding: 0 !important;
  background: #111827 !important;
  color: #ffffff !important;
  border-top: 1px solid #263142 !important;
}


html body.public-app .public-footer-compact .public-footer-tabs {
  width: min(100%,1220px);
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  border-left: 1px solid rgba(255,255,255,.12);
  border-right: 1px solid rgba(255,255,255,.12);
}


html body.public-app .public-footer-compact .public-footer-tabs button {
  min-height: 58px;
  margin: 0;
  padding: 12px 8px;
  border: 0;
  border-radius: 0;
  border-right: 1px solid rgba(255,255,255,.14);
  background: #111827;
  color: #ffffff;
  font: inherit;
  font-size: 14px;
  font-weight: 850;
  cursor: pointer;
}


html body.public-app .public-footer-compact .public-footer-tabs button:last-child {
  border-right: 0;
}


html body.public-app .public-footer-compact .public-footer-tabs button.active {
  background: var(--tenant-primary);
  color: #ffffff;
}


html body.public-app .public-footer-compact .public-footer-panels {
  background: #182131;
  border-top: 1px solid rgba(255,255,255,.12);
}


html body.public-app .public-footer-compact .public-footer-panel[hidden] {
  display: none !important;
}


html body.public-app .public-footer-compact .public-footer-panel {
  width: min(100%,1220px);
  margin: 0 auto;
  padding: 22px 20px;
}


html body.public-app .public-footer-compact .public-footer-panel-grid {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 10px 26px;
}


html body.public-app .public-footer-compact .public-footer-panel a {
  display: inline-flex;
  align-items: center;
  min-height: 38px;
  margin: 0;
  color: #ffffff;
  font-weight: 750;
  text-decoration: none;
}


html body.public-app .public-footer-compact .public-footer-contact {
  display: grid;
  justify-items: center;
  gap: 8px;
  text-align: center;
}


html body.public-app .public-footer-compact .public-footer-contact p {
  margin: 2px 0 0;
  color: #cbd3df;
  line-height: 1.55;
}


html body.public-app .public-footer-compact .public-footer-mini {
  padding: 10px 16px 12px;
  border-top: 1px solid rgba(255,255,255,.08);
  color: #909bae;
  text-align: center;
  font-size: 11px;
}
/* PUBLIC_MOBILE_MENU_OFFERS_FIELD_COLORS_V0162934
   - Login-i në telefon zëvendësohet me hamburger menu.
   - Module launcher fshihet në telefon dhe lidhjet dalin në drawer.
   - Ofertat bëhen karta vertikale si në app.
   - 4 fushat e kërkimit marrin ngjyra të pavarura nga paneli. */
/* PUBLIC_MENU_DESKTOP_UNIFIED_V1: kerkesa e qarte - menu-ja (buton + sirtar)
   duhet me qene AKTIVE dhe funksionale ne CDO madhesi ekrani, njesoj si ne
   telefon, jo vetem <=760px. Keto rregulla riprodhojne SAKTE stilin/
   sjelljen qe me pare ekzistonte VETEM brenda @media(max-width:760px) -
   asgje brenda vet media query-t s'osht hequr/ndryshuar (mobile mbetet
   100% i njejte), thjesht e njejta pamje/logjike behet globale. */

html[data-public-template="flori"] body.public-app .public-mobile-menu-toggle {
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  width: 44px;
  height: 44px;
  margin: 0;
  padding: 0;
  border: 1px solid #dfe4eb;
  border-radius: 11px;
  background: #ffffff;
  color: #172033;
  box-shadow: none;
  font: inherit;
  font-size: 24px;
  font-weight: 900;
  line-height: 1;
  cursor: pointer;
}


/* FAST_PATCH_LOGIN_DRAWER_ROOT_CAUSE_V1: this whole block used to be gated
   html[data-public-template="flori"] only. Every OTHER template (aero_blue,
   fly_away, skyline) has its OWN self-contained mobile-drawer markup+CSS on
   its real pages (home/results/etc.), so the gap was invisible there - but
   templates/accounts/login.html (and any other page extending the shared root
   templates/base.html directly, not a per-template base.html) renders THIS
   exact #public-mobile-drawer markup with NO template override to fall back
   on. With the rule flori-only, non-flori operators got zero positioning CSS
   for it: no position:fixed, no visibility:hidden, no off-screen transform -
   so the drawer (giant logo, raw nav links) just sat in normal document flow,
   always visible, pushing the login card down. The JS toggle (aria-hidden/
   aria-expanded/backdrop.hidden/open class) was already template-agnostic and
   correct; only this CSS was mistakenly scoped. This is plain, brand-neutral
   overlay mechanics (fixed position, off-canvas transform, backdrop) with no
   flori-specific colors/assets, so it is safe and correct to apply to every
   template rather than re-duplicating it per template. */
body.public-app .public-mobile-drawer-backdrop {
  display: block;
  position: fixed;
  inset: 0;
  z-index: 1190;
  background: rgba(15,23,42,.58);
  opacity: 1;
  transition: opacity .22s ease;
}


body.public-app .public-mobile-drawer-backdrop[hidden] {
  display: none !important;
}


body.public-app .public-mobile-drawer {
  display: flex;
  position: fixed;
  inset: 0 auto 0 0;
  z-index: 1200;
  width: min(72vw,340px);
  max-width: calc(100vw - 58px);
  height: 100dvh;
  flex-direction: column;
  background: #ffffff;
  color: #172033;
  box-shadow: 22px 0 55px rgba(15,23,42,.24);
  transform: translateX(-105%);
  transition: transform .24s ease;
  visibility: hidden;
  overflow-y: auto;
  overscroll-behavior: contain;
}


body.public-app .public-mobile-drawer.open {
  transform: translateX(0);
  visibility: visible;
}


body.public-app .public-mobile-drawer-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  min-height: 92px;
  padding: calc(16px + env(safe-area-inset-top)) 20px 16px;
  border-bottom: 1px solid #e7eaf0;
}


body.public-app .public-mobile-drawer-brand {
  display: inline-flex;
  align-items: center;
  margin: 0;
}


body.public-app .public-mobile-drawer-brand img {
  display: block;
  width: auto;
  max-width: 170px;
  max-height: 54px;
  object-fit: contain;
}


body.public-app .public-mobile-drawer-close {
  display: grid;
  place-items: center;
  flex: 0 0 auto;
  width: 42px;
  height: 42px;
  margin: 0;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: #f2f4f7;
  color: #172033;
  font: inherit;
  font-size: 30px;
  line-height: 1;
  cursor: pointer;
}


body.public-app .public-mobile-drawer-nav {
  display: grid;
  padding: 8px 0 calc(28px + env(safe-area-inset-bottom));
}


body.public-app .public-mobile-drawer-nav > a,
body.public-app .public-mobile-drawer-nav > form button {
  display: flex;
  align-items: center;
  width: 100%;
  min-height: 56px;
  margin: 0;
  padding: 10px 22px;
  border: 0;
  border-bottom: 1px solid #edf0f4;
  border-radius: 0;
  background: #ffffff;
  color: #263244;
  text-align: left;
  text-decoration: none;
  font: inherit;
  font-size: 16px;
  font-weight: 720;
  cursor: pointer;
}


body.public-app .public-mobile-drawer-nav > a:hover,
body.public-app .public-mobile-drawer-nav > form button:hover {
  background: color-mix(in srgb,var(--tenant-primary) 7%,white);
  color: var(--tenant-primary);
}


body.public-app .public-mobile-drawer-nav > form {
  margin: 0;
}


body.public-app .public-mobile-drawer-divider {
  display: block;
  height: 10px;
  background: #f3f5f8;
  border-top: 1px solid #e8ebf0;
  border-bottom: 1px solid #e8ebf0;
}


/* FAST_PATCH_LOGIN_DRAWER_ROOT_CAUSE_V1: body-side half of the same scroll-lock,
   same reasoning as the drawer block above - was flori-only, now universal. */
html.public-menu-open,
html.public-menu-open body {
  overflow: hidden !important;
}


html[data-public-template="flori"] body.public-app .topbar nav .public-login-link {
  display: none !important;
}


html[data-public-template="flori"] body.public-app .marketing-home .flight-search-grid [data-search-color="origin"] {
  background-color: var(--tenant-search-origin,#FFFFFF) !important;
}


html[data-public-template="flori"] body.public-app .marketing-home .flight-search-grid [data-search-color="destination"] {
  background-color: var(--tenant-search-destination,#FFFFFF) !important;
}


html[data-public-template="flori"] body.public-app .marketing-home .flight-search-grid [data-search-color="passengers"] {
  background-color: var(--tenant-search-passengers,#FFFFFF) !important;
}


html[data-public-template="flori"] body.public-app .marketing-home .flight-search-grid [data-search-color="dates"] {
  background-color: var(--tenant-search-dates,#FFFFFF) !important;
}


html[data-public-template="flori"] body.public-app .marketing-home .flight-search-grid [data-search-color] > select,
html[data-public-template="flori"] body.public-app .marketing-home .flight-search-grid [data-search-color] > button,
html[data-public-template="flori"] body.public-app .marketing-home .flight-search-grid [data-search-color] > label,
html[data-public-template="flori"] body.public-app .marketing-home .flight-search-grid [data-search-color] > .passenger-summary-trigger,
html[data-public-template="flori"] body.public-app .marketing-home .flight-search-grid [data-search-color] .passenger-summary-trigger {
  background-color: transparent !important;
}


html[data-public-template="flori"] body.public-app .marketing-home .flight-search-grid .passenger-picker[data-search-color="passengers"],
html[data-public-template="flori"] body.public-app .marketing-home .flight-search-grid [data-search-color="passengers"] .passenger-summary-trigger {
  background-color: var(--tenant-search-passengers,#FFFFFF) !important;
}
/* PUBLIC_PASSENGER_AIRPORT_HERO_DEVICE_V0162937 */

@media(min-width:681px){
  html body.public-app .public-hero-desktop-hidden .commercial-hero{display:none!important}
  html body.public-app .public-hero-desktop-hidden .booking-stage{margin-top:24px!important}
}
/* PUBLIC_BAGGAGE_COMING_SOON_PERMISSION_UI_V0162949 */

body.public-coming-soon-open{overflow:hidden!important}

.public-coming-soon[hidden]{display:none!important}

.public-coming-soon{position:fixed;inset:0;z-index:10120;display:flex;align-items:center;justify-content:center;padding:20px}

.public-coming-soon-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.58);backdrop-filter:blur(4px)}

.public-coming-soon-sheet{position:relative;width:min(520px,100%);padding:28px;border-radius:24px;background:#fff;box-shadow:0 28px 90px rgba(15,23,42,.34);text-align:center}

.public-coming-soon-handle{display:none}
.public-coming-soon-close{position:absolute;right:16px;top:16px;width:42px;height:42px;padding:0;border:1px solid #dfe4eb;border-radius:50%;background:#fff;color:#172033;font-size:28px}

.public-coming-soon-icon{display:grid;place-items:center;width:64px;height:64px;margin:0 auto 14px;border-radius:20px;background:color-mix(in srgb,var(--tenant-primary) 12%,white);color:var(--tenant-primary);font-size:30px}

.public-coming-soon-sheet small{color:var(--tenant-primary);font-weight:900;letter-spacing:.11em}
.public-coming-soon-sheet h2{margin:8px 0 10px;font-size:30px}
.public-coming-soon-sheet p{margin:0;color:#667085;line-height:1.55}
.public-coming-soon-ok{width:100%;margin-top:22px;min-height:50px;background:var(--tenant-primary)}

.module-coming-soon-page{width:min(760px,calc(100% - 32px));margin:70px auto;display:grid;justify-items:center;gap:12px;padding:48px 28px;border:1px solid #e1e6ec;border-radius:24px;background:#fff;box-shadow:0 20px 60px rgba(15,23,42,.10);text-align:center}
.module-coming-soon-page>span{font-size:48px}
.module-coming-soon-page>small{color:var(--tenant-primary);font-weight:900;letter-spacing:.12em}
.module-coming-soon-page h1{margin:0;font-size:36px}
.module-coming-soon-page p{max-width:560px;margin:0 0 10px;color:#667085;line-height:1.6}

.baggage-selection-copy{padding:14px 18px 0;color:#667085;font-size:13px;line-height:1.45}

.baggage-selection-segments{display:grid;gap:14px;padding:14px 16px 6px}
.baggage-segment{border:1px solid #dfe4eb;border-radius:15px;overflow:hidden;background:#f8fafc}
.baggage-segment h3{margin:0;padding:12px 14px;background:#eef2f6;font-size:14px}
.baggage-passenger-row{display:grid;gap:9px;padding:13px 14px;border-top:1px solid #e1e6ec}
.baggage-passenger-row>strong{font-size:13px}
.baggage-package-choices{display:grid;gap:8px}
.baggage-package-choice{display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:12px;align-items:center;padding:12px 14px;border:1px solid #d8dee7;border-radius:12px;background:#fff;cursor:pointer}
.baggage-package-choice:has(input:checked){border-color:var(--tenant-primary);box-shadow:0 0 0 1px var(--tenant-primary);background:color-mix(in srgb,var(--tenant-primary) 4%,white)}
.baggage-package-choice input{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.baggage-package-icon{display:flex;align-items:center;justify-content:center;width:34px;height:34px;color:var(--tenant-primary)}
.baggage-package-icon svg{width:24px;height:24px}
.baggage-package-choice>span{display:grid;gap:3px;min-width:0}
.baggage-package-choice b{font-size:14px;font-weight:800}
.baggage-package-choice small{color:#667085;font-size:12px;line-height:1.3}
.baggage-package-choice em{font-style:normal;font-size:13px;font-weight:850;color:var(--tenant-primary);white-space:nowrap}
.baggage-package-choices.single-locked .baggage-package-choice{cursor:default}
.baggage-selection-footer{position:sticky;bottom:0;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:center;padding:14px 16px calc(14px + env(safe-area-inset-bottom));border-top:1px solid #dfe4eb;background:#fff;box-shadow:0 -8px 24px rgba(15,23,42,.07)}
.baggage-selection-footer>div{display:grid;gap:3px}
.baggage-selection-footer small{color:#667085;font-size:11px}
.baggage-selection-footer strong{font-size:18px}
.baggage-selection-footer button{min-height:46px;background:var(--tenant-primary)}
.baggage-selection-footer button:disabled,.baggage-selection-footer button.is-disabled{background:#c3cad4!important;color:#8a93a3!important;cursor:not-allowed!important;opacity:1!important}

.baggage-selection-summary{display:grid;gap:8px;margin:0 16px 14px;padding:12px 14px;border:1px solid #dfe4eb;border-radius:12px;background:#f8fafc}
.baggage-selection-summary[hidden]{display:none}
.baggage-overview-row{display:grid;gap:4px}
.baggage-overview-row>strong{font-size:12px;color:#172033}
.baggage-overview-leg{display:block;font-size:14.5px;color:#42505f;line-height:1.5}
.baggage-overview-leg b{color:#172033;font-weight:800}
.baggage-overview-leg em{font-style:normal;font-weight:850;color:var(--tenant-primary)}

.flight-selected-actions .fare-class-trigger{gap:4px}
.flight-selected-actions .fare-class-trigger>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.flight-selected-actions .fare-class-trigger>i{font-style:normal;font-size:15px;line-height:1}

.appearance-platform-control{border-color:color-mix(in srgb,var(--tenant-primary) 32%,#dfe4eb)!important;background:color-mix(in srgb,var(--tenant-primary) 4%,white)!important}
/* PUBLIC_MOBILE_TRIP_SHEET_MULTI_CITY_SYMBOLS_V0162950 */

body.trip-type-sheet-open{overflow:hidden!important}

.trip-type-trigger{display:none;border:0;font:inherit;position:relative;overflow:hidden}

.trip-type-trigger strong,.trip-type-trigger>.trip-type-chevron{position:relative;z-index:1}
/* PUBLIC_TRIP_TYPE_PLANE_ANIMATION_V1: avioni animohet PRAPA tekstit (z-index:0), kurre
   nuk e mbulon apo pengon lexueshmerine e tij. Rruga ndryshon sipas trip_mode. */

.trip-type-plane-track{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}

.trip-type-plane{position:absolute;top:50%;left:0;font-size:14px;line-height:1;opacity:.3;transform:translate(-50%,-50%) rotate(90deg);will-change:transform,left,top}

.trip-type-trigger[data-trip-mode="round_trip"] .trip-type-plane{animation:trip-plane-round-trip-v1 4.8s ease-in-out infinite}

.trip-type-trigger[data-trip-mode="one_way"] .trip-type-plane{animation:trip-plane-one-way-v1 3s ease-in-out infinite}

.trip-type-trigger[data-trip-mode="multi_city"] .trip-type-plane{animation:trip-plane-multi-city-v1 5.6s ease-in-out infinite}

@keyframes trip-plane-round-trip-v1{
  0%{left:2%;top:50%;transform:translate(-50%,-50%) rotate(90deg)}
  46%{left:98%;top:50%;transform:translate(-50%,-50%) rotate(90deg)}
  50%{left:98%;top:50%;transform:translate(-50%,-50%) rotate(-90deg)}
  96%{left:2%;top:50%;transform:translate(-50%,-50%) rotate(-90deg)}
  100%{left:2%;top:50%;transform:translate(-50%,-50%) rotate(90deg)}
}

@keyframes trip-plane-one-way-v1{
  0%{left:2%;top:50%;transform:translate(-50%,-50%) rotate(90deg)}
  88%{left:98%;top:50%;transform:translate(-50%,-50%) rotate(90deg)}
  100%{left:2%;top:50%;transform:translate(-50%,-50%) rotate(90deg)}
}

@keyframes trip-plane-multi-city-v1{
  0%{left:4%;top:92%;transform:translate(-50%,-50%) rotate(45deg)}
  44%{left:96%;top:8%;transform:translate(-50%,-50%) rotate(45deg)}
  50%{left:96%;top:8%;transform:translate(-50%,-50%) rotate(-135deg)}
  94%{left:4%;top:8%;transform:translate(-50%,-50%) rotate(-135deg)}
  100%{left:4%;top:92%;transform:translate(-50%,-50%) rotate(45deg)}
}

.trip-type-sheet[hidden]{display:none!important}

.trip-type-sheet{position:fixed;inset:0;z-index:1400;display:flex;align-items:flex-end;justify-content:center}

.trip-type-sheet-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.52);backdrop-filter:blur(3px)}

.trip-type-sheet-dialog{position:relative;width:min(560px,100%);max-height:62dvh;overflow:auto;touch-action:pan-y;padding:10px 20px calc(20px + env(safe-area-inset-bottom));border-radius:25px 25px 0 0;background:#fff;box-shadow:0 -24px 70px rgba(15,23,42,.28);animation:trip-type-rise-v0162950 .27s cubic-bezier(.2,.78,.25,1) both}

.trip-type-sheet-handle{width:44px;height:5px;margin:0 auto 14px;border-radius:999px;background:#d2d8e1}

.trip-type-sheet-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:0 0 12px;border-bottom:1px solid #e4e8ee}

.trip-type-sheet-head small{display:block;color:#697386;font-size:11px;font-weight:850;letter-spacing:.1em;text-transform:uppercase}
.trip-type-sheet-head h2{margin:3px 0 0;font-size:24px}
.trip-type-sheet-head button{width:42px;height:42px;padding:0;border:1px solid #dfe4eb;border-radius:50%;background:#fff;color:#172033;font-size:28px}

.trip-type-sheet-options{display:grid;gap:2px;padding:10px 0}
.trip-type-option{display:grid;grid-template-columns:28px minmax(0,1fr);gap:12px;align-items:center;width:100%;min-height:68px;padding:10px 4px;border:0;border-bottom:1px solid #e8ebef;border-radius:0;background:#fff;color:#172033;text-align:left}
.trip-type-option>span:last-child{display:grid;gap:4px}
.trip-type-option strong{font-size:17px}
.trip-type-option small{color:#697386;font-size:12px}
.trip-type-radio{width:22px;height:22px;border:2px solid #c6ced9;border-radius:50%;box-shadow:inset 0 0 0 5px #fff}
.trip-type-option.selected .trip-type-radio{border-color:var(--tenant-primary);background:var(--tenant-primary)}
.trip-type-option.selected strong{color:var(--tenant-primary)}
.trip-type-sheet-done{width:100%;min-height:50px;margin-top:7px;background:var(--tenant-primary)}

@keyframes trip-type-rise-v0162950{from{transform:translateY(105%);opacity:.7}to{transform:translateY(0);opacity:1}}


.passenger-summary-trigger #passenger-summary{display:grid;gap:4px!important;white-space:normal!important;overflow:visible!important}

.passenger-symbols{display:flex;align-items:center;gap:10px}
.passenger-symbol{display:inline-flex;align-items:center;gap:3px;color:#172033}
.passenger-symbol svg{width:18px;height:18px;fill:currentColor}
.passenger-symbol b{font-size:14px;font-variant-numeric:tabular-nums}
.passenger-summary-text{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:11px;color:#697386;font-weight:750}

.multi-city-fields{grid-column:1/-1;background:#f7f8fa;border-top:1px solid #dfe4eb;border-bottom:1px solid #dfe4eb}
.multi-city-fields[hidden]{display:none!important}
.multi-city-fields-head{display:flex;align-items:center;justify-content:space-between;padding:9px 14px;border-bottom:1px solid #dfe4eb}
.multi-city-fields-head span{font-size:12px;font-weight:900;color:var(--tenant-primary)}
.multi-city-fields-head small{font-size:11px;color:#697386}
.multi-city-route-grid{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 42px minmax(0,1fr);background:#fff}
.multi-city-route-grid>.search-field{min-width:0}
.multi-city-route-grid>.route-swap{align-self:center;justify-self:center}
/* PUBLIC_MOBILE_VERTICAL_SWAP_PASSENGER_ICONS_AUTOLINK_V0162951 */

.passenger-summary-text-v51{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  clip-path:inset(50%)!important;
  white-space:nowrap!important;
  border:0!important;
}

.passenger-symbols-v51{
  display:flex!important;
  align-items:flex-end!important;
  justify-content:flex-start!important;
  gap:15px!important;
  width:100%!important;
  min-width:0!important;
}

.passenger-symbols-v51 .passenger-symbol{
  display:inline-flex!important;
  align-items:center!important;
  gap:5px!important;
  min-width:0!important;
  color:#172033!important;
}

.passenger-symbols-v51 .passenger-icon{
  display:block!important;
  width:26px!important;
  height:26px!important;
  fill:currentColor!important;
  flex:0 0 auto!important;
}

.passenger-symbols-v51 .passenger-icon-child-v51{
  width:23px!important;
  height:23px!important;
}

.passenger-symbols-v51 .passenger-icon-infant-v51{
  width:29px!important;
  height:25px!important;
}

.passenger-symbols-v51 .passenger-symbol b{
  font-size:16px!important;
  line-height:1!important;
  font-weight:900!important;
  font-variant-numeric:tabular-nums!important;
}
/* PUBLIC_PASSENGER_ICONS_OFFER_APPEARANCE_LAYOUT_V0162952 */

.passenger-symbols-v52{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:14px!important;
  width:100%!important;
  min-width:0!important;
}

.passenger-symbols-v52 .passenger-symbol{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  min-width:0!important;
  color:#172033!important;
}

.passenger-symbols-v52 .passenger-icon-img{
  display:block!important;
  width:29px!important;
  height:29px!important;
  object-fit:contain!important;
  object-position:center!important;
  flex:0 0 auto!important;
  filter:none!important;
}

.passenger-symbols-v52 .passenger-icon-child-v52{width:25px!important;height:25px!important}

.passenger-symbols-v52 .passenger-icon-infant-v52{width:21px!important;height:21px!important}

.passenger-symbols-v52 .passenger-symbol b{
  font-size:16px!important;
  line-height:1!important;
  font-weight:900!important;
  font-variant-numeric:tabular-nums!important;
}
/* FLIGHT_DETAILS_BOTTOM_SHEET_V0162963
   Flugdetails hapet si panel nga poshtë, me sfond të errësuar,
   scroll të brendshëm dhe swipe-down nga header/doreza. */

.flight-details-modal{
  align-items:flex-end;
  justify-content:center;
  padding:22px;
  opacity:0;
  visibility:hidden;
  transition:opacity .24s ease,visibility 0s linear .32s;
}

.flight-details-modal:not([hidden]){visibility:visible}

.flight-details-modal.is-open{
  opacity:1;
  transition-delay:0s;
}

.flight-details-backdrop{
  opacity:0;
  transition:opacity .24s ease;
}

.flight-details-modal.is-open .flight-details-backdrop{opacity:1}

.flight-details-dialog{
  width:min(680px,100%);
  height:auto;
  max-height:min(86dvh,820px);
  overflow:auto;
  overscroll-behavior:contain;
  touch-action:pan-y;
  border-radius:24px;
  opacity:0;
  transform:translateY(calc(100% + 44px));
  transform-origin:center bottom;
  transition:transform .28s cubic-bezier(.2,.78,.25,1),opacity .2s ease;
  will-change:transform;
}

.flight-details-modal.is-open .flight-details-dialog{
  opacity:1;
  transform:translateY(0);
}

.flight-details-dialog.is-dragging{transition:none}

.flight-details-handle{display:none}


@media(prefers-reduced-motion:reduce){
  .flight-details-modal,
  .flight-details-backdrop,
  .flight-details-dialog{transition:none!important}
}
/* BUS_REBUILD_CORE_V0162964 */

.module-launcher .module-tab-bus {
  appearance: none;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 44px;
  padding: 0 18px;
  border: 1px solid transparent;
  border-radius: 12px;
  background: #f6f7f9;
  color: #495365;
  font: inherit;
  font-weight: 800;
  line-height: 1;
  white-space: nowrap;
  cursor: pointer;
}

.module-launcher .module-tab-bus:hover {
  border-color: color-mix(in srgb, var(--tenant-primary) 35%, #dfe3e8);
  color: var(--tenant-primary);
}

.module-launcher .module-tab-bus.active {
  background: var(--tenant-primary);
  color: #fff;
  box-shadow: 0 10px 25px color-mix(in srgb, var(--tenant-primary) 24%, transparent);
}

.bus-search-mode .airport-select option { color: #172033; }

.mobile-airport-option span small {
  display: block;
  max-width: min(70vw, 430px);
  margin-top: 4px;
  color: #6c7586;
  font-size: 12px;
  font-weight: 600;
  line-height: 1.35;
  white-space: normal;
}

.bus-route-stops-table,
.bus-fare-matrix {
  width: 100%;
  border-collapse: collapse;
}

.bus-route-stops-table th,
.bus-route-stops-table td,
.bus-fare-matrix th,
.bus-fare-matrix td {
  padding: 10px;
  border-bottom: 1px solid #e7eaf0;
  text-align: left;
  vertical-align: top;
}

.bus-route-stops-table select { min-width: 250px; max-width: 100%; }

.bus-fare-matrix input[type="number"] { width: 105px; max-width: 100%; }

.bus-fare-matrix .route-pair { min-width: 210px; font-weight: 800; }

.bus-station-detail { display: block; margin-top: 3px; color: #687386; font-size: 12px; }

.bus-admin-note {
  margin: 0 0 16px;
  padding: 12px 14px;
  border: 1px solid #dce4ee;
  border-radius: 12px;
  background: #f7f9fc;
  color: #445064;
  line-height: 1.5;
}
/* BUS_ACTIVE_TAB_STATE_FIX_V0162965
   Vetëm moduli aktiv merr ngjyrën e operatorit.
   Flüge bëhet joaktiv sapo zgjidhet Bus dhe anasjelltas. */

html body.public-app .marketing-home .module-launcher.travel-module-launcher > .module-tab-flights,
html body.public-app .marketing-home .module-launcher.travel-module-launcher > .module-tab-bus {
  background: #f3f5f7 !important;
  color: #263244 !important;
  box-shadow: none !important;
}

html body.public-app .marketing-home .module-launcher.travel-module-launcher > .module-tab-flights.active,
html body.public-app .marketing-home .module-launcher.travel-module-launcher > .module-tab-bus.active {
  background: var(--tenant-primary) !important;
  background: color-mix(in srgb, var(--tenant-primary) 92%, white) !important;
  color: #fff !important;
  border-color: var(--tenant-primary) !important;
  box-shadow: 0 10px 25px color-mix(in srgb, var(--tenant-primary) 24%, transparent) !important;
}

html body.public-app .marketing-home .module-launcher.travel-module-launcher > .module-tab-flights:not(.active):hover,
html body.public-app .marketing-home .module-launcher.travel-module-launcher > .module-tab-bus:not(.active):hover {
  background: #f3f5f7 !important;
  color: var(--tenant-primary) !important;
}
/* BUS_PUBLIC_STABILITY_V0162967 */

html body.public-app [data-offer-mode][hidden]{display:none!important}

html body.public-app #public-search-form.bus-search-mode [data-trip-value="multi_city"],
html body.public-app #public-search-form.bus-search-mode .trip-switch label:has(input[value="multi_city"]),
html body.public-app #public-search-form.bus-search-mode #multi-city-fields{
  display:none!important;
}

html body.public-app .bus-offer-card .offer-route-badge{max-width:calc(100% - 32px);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

html body.public-app .bus-offer-card .offer-meta span:last-child{text-align:right}
/* PUBLIC_RESULTS_PASSENGERS_PRICE_SEARCH_BUTTON_V0163116 */

#search-submit[data-public-flight-search-v0163116]{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
}

#search-submit[data-public-flight-search-v0163116] .search-submit-icon{
  display:inline-grid;
  place-items:center;
  width:22px;
  height:22px;
  line-height:1;
}

#search-submit[data-public-flight-search-v0163116] .search-submit-icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:2.25;stroke-linecap:round;stroke-linejoin:round}

#search-submit[data-public-flight-search-v0163116] .search-submit-label{line-height:1.1}


.change-search-button[data-change-search-button-v0163116]{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  min-height:38px;
  padding:8px 13px;
  border:1px solid color-mix(in srgb,var(--brand) 42%,#d7dee8);
  border-radius:999px;
  background:#fff;
  color:var(--brand);
  box-shadow:0 5px 16px rgba(15,23,42,.07);
  font-weight:800;
  text-decoration:none;
}

.change-search-button[data-change-search-button-v0163116]:hover{background:color-mix(in srgb,var(--brand) 6%,#fff)}


.selection-passenger-button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:5px;
  min-height:36px;
  padding:7px 11px;
  border:1px solid color-mix(in srgb,var(--brand) 45%,#d7dee8);
  border-radius:999px;
  background:#fff;
  color:var(--brand);
  box-shadow:none;
  font-size:12px;
  font-weight:850;
  line-height:1.1;
  white-space:nowrap;
}

.selection-passenger-button>span:first-child{font-size:17px;line-height:.8}

.selection-mini-price-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;margin-top:10px;padding-top:10px;border-top:1px solid var(--line)}

.selection-mini-per-person,.selection-mini-price-grid .selection-mini-total{min-width:0;margin:0!important;padding:0!important;border:0!important}

.selection-mini-per-person small,.selection-mini-price-grid .selection-mini-total small{display:block;color:var(--muted);font-size:10px;font-weight:800}

.selection-mini-per-person strong,.selection-mini-price-grid .selection-mini-total strong{display:block;margin-top:4px;color:var(--text);font-size:17px;font-weight:900;line-height:1.2;overflow-wrap:anywhere}

.selection-mini-price-grid .selection-mini-total{text-align:right!important}

body.public-app .selection-mini-baggage-row{display:block!important;margin:3px 0 7px!important;font-size:15px!important;line-height:1.45!important;color:#475467!important;font-weight:750!important}
.selection-mini-baggage-row b{color:var(--text);font-weight:800}

html[data-public-theme="dark"] body.public-app .selection-mini-baggage-row{color:#c7d0dc!important}
html[data-public-theme="dark"] body.public-app .selection-mini-baggage-row b{color:#f5f7fb!important}

.selection-mini-price-grid .selection-mini-total strong{color:var(--brand);text-align:right!important}


.results-passenger-sheet[hidden]{display:none}

.results-passenger-sheet{position:fixed;inset:0;z-index:10080;display:flex;align-items:center;justify-content:center;padding:22px}

.results-passenger-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.58);backdrop-filter:blur(3px);opacity:0;transition:opacity .28s ease}

.results-passenger-dialog{position:relative;width:min(560px,100%);overflow:hidden;touch-action:pan-y;background:#fff;border-radius:24px;box-shadow:0 28px 85px rgba(15,23,42,.36);transform:translateY(28px);opacity:0;transition:transform .45s cubic-bezier(.2,.78,.25,1),opacity .35s ease}

.results-passenger-sheet.is-open .results-passenger-backdrop{opacity:1}

.results-passenger-sheet.is-open .results-passenger-dialog{transform:translateY(0);opacity:1}

.results-passenger-handle{display:none}

.results-passenger-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 24px;border-bottom:1px solid var(--line)}

.results-passenger-header h2{margin:0;font-size:25px}

.results-passenger-close{display:grid;place-items:center;width:46px;height:46px;padding:0;border-radius:50%;border:1px solid var(--line);background:#fff;color:var(--text);font-size:31px;line-height:1}

.results-passenger-rows{display:grid}

.results-passenger-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:18px;padding:18px 24px;border-bottom:1px solid var(--line)}

.results-passenger-row>span{display:grid;gap:4px}

.results-passenger-row>span strong{font-size:18px}

.results-passenger-row>span small{color:var(--muted);font-size:14px}

.results-passenger-controls{display:grid;grid-template-columns:44px 44px 44px;align-items:center;gap:5px}

.results-passenger-controls button{display:grid;place-items:center;width:44px;height:44px;padding:0;border:1px solid #dbe2ea;border-radius:50%;background:#fff;color:var(--brand);box-shadow:none;font-size:27px;line-height:1}

.results-passenger-controls button:disabled{opacity:.28}

.results-passenger-controls strong{text-align:center;font-size:23px;font-variant-numeric:tabular-nums}

.results-passenger-note{margin:16px 24px 0;color:var(--muted);font-size:12px;line-height:1.45}

.results-passenger-confirm{display:block;width:calc(100% - 48px);margin:18px 24px 24px;min-height:52px;border-radius:999px;font-size:17px;font-weight:850}

body.results-passenger-open{overflow:hidden}
/* PUBLIC_DARK_MODE_CSS_V0163121 */

.public-theme-toggle{display:grid;place-items:center;flex:0 0 auto;width:38px;height:38px;min-width:38px;padding:0;border:1px solid #dfe4eb;border-radius:50%;background:#f7f8fa;color:#172033;box-shadow:none;font-size:20px;line-height:1}

.public-theme-toggle:hover{border-color:var(--tenant-primary);color:var(--tenant-primary)}

.public-theme-toggle .public-theme-moon{display:none}

html[data-public-theme="dark"] .public-theme-toggle .public-theme-sun{display:none}

html[data-public-theme="dark"] .public-theme-toggle .public-theme-moon{display:block}

html[data-public-theme="dark"]{color-scheme:dark}


html[data-public-theme="dark"] body.public-app{--bg:#0b1220!important;--card:#111827!important;--text:#f5f7fb!important;--muted:#aab4c4!important;--line:#2b374a!important;--tenant-page-background:#0b1220!important;--tenant-search-origin:#151f30!important;--tenant-search-destination:#151f30!important;--tenant-search-passengers:#151f30!important;--tenant-search-dates:#151f30!important;background:#0b1220!important;color:#f5f7fb!important}

html[data-public-theme="dark"] body.public-app .public-content,
html[data-public-theme="dark"] body.public-app .marketing-home{background:#0b1220!important;color:#f5f7fb!important}

html[data-public-theme="dark"] body.public-app .topbar{background:rgba(14,22,36,.97)!important;border-color:#2b374a!important;box-shadow:0 8px 30px rgba(0,0,0,.28)!important}

html[data-public-theme="dark"] body.public-app .topbar .brand,
html[data-public-theme="dark"] body.public-app .topbar nav a,
html[data-public-theme="dark"] body.public-app .public-mobile-menu-toggle{color:#f5f7fb!important}

html[data-public-theme="dark"] body.public-app .public-language-switcher,
html[data-public-theme="dark"] body.public-app .public-theme-toggle{background:#151f30!important;border-color:#344156!important;color:#f5f7fb!important}

html[data-public-theme="dark"] body.public-app .topbar nav .public-language-switcher a{color:#b9c3d2!important}

html[data-public-theme="dark"] body.public-app .topbar nav .public-language-switcher a.active{color:#fff!important}

html[data-public-theme="dark"] body.public-app .public-mobile-drawer{background:#111827!important;color:#f5f7fb!important}

html[data-public-theme="dark"] body.public-app .public-mobile-drawer a,
html[data-public-theme="dark"] body.public-app .public-mobile-drawer button{color:#f5f7fb!important;border-color:#2b374a!important}


html[data-public-theme="dark"] body.public-app .booking-panel,
html[data-public-theme="dark"] body.public-app .flight-search-shell,
html[data-public-theme="dark"] body.public-app .flight-search-grid,
html[data-public-theme="dark"] body.public-app .search-area-card,
html[data-public-theme="dark"] body.public-app .module-launcher,
html[data-public-theme="dark"] body.public-app .trust-item,
html[data-public-theme="dark"] body.public-app .offer-card,
html[data-public-theme="dark"] body.public-app .benefit-band,
html[data-public-theme="dark"] body.public-app .benefit-card,
html[data-public-theme="dark"] body.public-app .legal-information,
html[data-public-theme="dark"] body.public-app .legal-box{background:#111827!important;border-color:#2b374a!important;color:#f5f7fb!important}

html[data-public-theme="dark"] body.public-app .module-launcher a:not(.active){background:#172235!important;color:#dce3ed!important;border-color:#2b374a!important}

html[data-public-theme="dark"] body.public-app .marketing-home .flight-search-grid>.search-field,
html[data-public-theme="dark"] body.public-app .marketing-home .flight-search-grid>#passenger-picker,
html[data-public-theme="dark"] body.public-app .marketing-home .flight-search-grid>#date-trigger,
html[data-public-theme="dark"] body.public-app .passenger-summary-trigger{background:#151f30!important;border-color:#344156!important;color:#f5f7fb!important}

html[data-public-theme="dark"] body.public-app select,
html[data-public-theme="dark"] body.public-app input,
html[data-public-theme="dark"] body.public-app textarea{background:#151f30!important;color:#f5f7fb!important;border-color:#344156!important}

html[data-public-theme="dark"] body.public-app .search-field>span,
html[data-public-theme="dark"] body.public-app .passenger-search-fields span,
html[data-public-theme="dark"] body.public-app .section-head p,
html[data-public-theme="dark"] body.public-app .offer-meta,
html[data-public-theme="dark"] body.public-app .benefit-card p,
html[data-public-theme="dark"] body.public-app .legal-information p{color:#aab4c4!important}

html[data-public-theme="dark"] body.public-app .section-head h2,
html[data-public-theme="dark"] body.public-app .offer-route,
html[data-public-theme="dark"] body.public-app .benefit-card h3,
html[data-public-theme="dark"] body.public-app .legal-information h2{color:#f5f7fb!important}


html[data-public-theme="dark"] body.public-app .passenger-popover,
html[data-public-theme="dark"] body.public-app .passenger-sheet,
html[data-public-theme="dark"] body.public-app .calendar-dialog,
html[data-public-theme="dark"] body.public-app .flight-details-dialog,
html[data-public-theme="dark"] body.public-app .fare-class-dialog,
html[data-public-theme="dark"] body.public-app .results-passenger-dialog,
html[data-public-theme="dark"] body.public-app .public-coming-soon-sheet,
html[data-public-theme="dark"] body.public-app .supplier-live-card{background:#111827!important;color:#f5f7fb!important;border-color:#2b374a!important}

html[data-public-theme="dark"] body.public-app .passenger-stepper-button,
html[data-public-theme="dark"] body.public-app .calendar-close,
html[data-public-theme="dark"] body.public-app .calendar-nav button,
html[data-public-theme="dark"] body.public-app .flight-details-close,
html[data-public-theme="dark"] body.public-app .fare-class-close{background:#172235!important;color:#f5f7fb!important;border-color:#344156!important}

html[data-public-theme="dark"] body.public-app .calendar-month-tab{background:#172235!important;color:#f5f7fb!important;border-color:#344156!important}

html[data-public-theme="dark"] body.public-app .calendar-month-tab.active,
html[data-public-theme="dark"] body.public-app .calendar-day.selected{background:var(--tenant-primary)!important;color:#fff!important}

html[data-public-theme="dark"] body.public-app .calendar-day{background:#151f30!important;color:#f5f7fb!important}

html[data-public-theme="dark"] body.public-app .calendar-day:disabled{background:#0f1827!important;color:#5f6d80!important}

html[data-public-theme="dark"] body.public-app .calendar-day.in-range{background:#23324c!important}


html[data-public-theme="dark"] body.public-app #flight-choice-form,
html[data-public-theme="dark"] body.public-app .result-leg{background:#0b1220!important;color:#f5f7fb!important}

html[data-public-theme="dark"] body.public-app .result-leg-title h1,
html[data-public-theme="dark"] body.public-app .result-leg-title h2{color:#f5f7fb!important}

html[data-public-theme="dark"] body.public-app .date-strip-shell,
html[data-public-theme="dark"] body.public-app .date-option,
html[data-public-theme="dark"] body.public-app .flight-result-card,
html[data-public-theme="dark"] body.public-app .selection-mini-summary,
html[data-public-theme="dark"] body.public-app .search-price-summary,
html[data-public-theme="dark"] body.public-app .panel{background:#111827!important;color:#f5f7fb!important;border-color:#2b374a!important}

html[data-public-theme="dark"] body.public-app .date-option.disabled{background:#0f1827!important;color:#687589!important}

html[data-public-theme="dark"] body.public-app .date-option.active{background:var(--tenant-primary)!important;color:#fff!important}

html[data-public-theme="dark"] body.public-app .flight-result-card:has(input:checked){background:#172235!important;border-color:var(--tenant-primary)!important}

html[data-public-theme="dark"] body.public-app .selection-mini-leg,
html[data-public-theme="dark"] body.public-app .search-price-row,
html[data-public-theme="dark"] body.public-app .selection-mini-passengers,
html[data-public-theme="dark"] body.public-app .selection-mini-total{border-color:#344156!important}

html[data-public-theme="dark"] body.public-app .selection-passenger-button{background:#172235!important}

html[data-public-theme="dark"] body.public-app .airline-badge.has-logo{background:#fff!important}

html[data-public-theme="dark"] body.public-app .flight-mobile-airline{color:#c7d0dd!important;background:#263246!important}


html[data-public-theme="dark"] body.public-app .booking-layout .panel,
html[data-public-theme="dark"] body.public-app .auth-card,
html[data-public-theme="dark"] body.public-app .search-card,
html[data-public-theme="dark"] body.public-app .status-card,
html[data-public-theme="dark"] body.public-app .payment-choice,
html[data-public-theme="dark"] body.public-app .payment-box{background:#111827!important;color:#f5f7fb!important;border-color:#2b374a!important}

html[data-public-theme="dark"] body.public-app .public-footer{background:#070c15!important;border-color:#1f2937!important}

html[data-public-theme="dark"] body.public-app .public-footer-tabs button{background:#0f1726!important;color:#e8edf5!important;border-color:#2b374a!important}

html[data-public-theme="dark"] body.public-app .public-footer-panels{background:#0b1220!important;color:#d8dee9!important}
/* PUBLIC_MODAL_ACTIONS_FOOTER_FUNCTIONAL_V0163162 */

.trip-type-sheet-head .trip-type-sheet-confirm{width:auto!important;min-width:118px;height:46px!important;padding:0 22px!important;border:0!important;border-radius:16px!important;background:var(--tenant-primary)!important;color:#fff!important;font-size:16px!important;font-weight:900!important;line-height:1!important}

.trip-type-sheet-close-bottom{display:block;width:100%;min-height:50px;margin-top:10px;border:2px solid var(--tenant-primary);border-radius:999px;background:#fff;color:var(--tenant-primary);font-size:17px;font-weight:900}

.results-passenger-header .results-passenger-confirm-top{display:inline-flex!important;align-items:center;justify-content:center;width:auto!important;min-width:122px;min-height:46px!important;margin:0!important;padding:0 22px!important;border:0!important;border-radius:16px!important;background:var(--tenant-primary)!important;color:#fff!important;font-size:16px!important;font-weight:900!important;line-height:1!important}

.results-passenger-close-bottom{display:block;width:calc(100% - 48px);min-height:52px;margin:18px 24px 24px;border:2px solid var(--tenant-primary);border-radius:999px;background:#fff;color:var(--tenant-primary);font-size:17px;font-weight:900}

html body.public-app .public-footer.public-footer-compact .public-footer-tabs{position:relative;z-index:3}

html body.public-app .public-footer.public-footer-compact .public-footer-tabs button{pointer-events:auto!important;touch-action:manipulation}

html body.public-app .public-footer.public-footer-compact .public-footer-panel[hidden]{display:none!important}

html body.public-app .public-footer.public-footer-compact .public-footer-panel:not([hidden]){display:block!important}

html[data-public-theme="dark"] body.public-app .trip-type-sheet-close-bottom,html[data-public-theme="dark"] body.public-app .results-passenger-close-bottom{background:#17243a!important;color:#ff5b4d!important;border-color:#ff5b4d!important}
/* PUBLIC_RESULTS_CALENDAR_IDENTICAL_BACK_V0163163
   Pamja standarde mbetet si te kalendari, por çdo vlerë kontrollohet nga paneli. */
/* PUBLIC_RESULTS_BACK_PANEL_HEIGHT_FIX_V0163166 */

html body.public-app #flight-choice-form .results-back-button.calendar-back{
  box-sizing:border-box!important;
  width:var(--tenant-results-back-width,86px)!important;
  min-width:0!important;
  max-width:none!important;
  height:var(--tenant-results-back-height,38px)!important;
  min-height:0!important;
  max-height:none!important;
  padding:0 8px!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:6px!important;
  border-radius:var(--tenant-results-back-radius,999px)!important;
  border:var(--tenant-results-back-border-width,1px) solid var(--tenant-results-back-border-color,#CFD6DF)!important;
  background:var(--tenant-results-back-bg,#FFFFFF)!important;
  color:var(--tenant-results-back-text-color,#172033)!important;
  box-shadow:none!important;
  font-size:var(--tenant-results-back-font-size,14px)!important;
  font-weight:var(--tenant-results-back-font-weight,850)!important;
  line-height:1!important;
  white-space:nowrap!important;
  overflow:visible!important;
  transform:translate(var(--tenant-results-back-x,0px),var(--tenant-results-back-y,0px))!important;
}

html body.public-app #flight-choice-form .results-back-button.calendar-back>span:first-child{
  font-size:calc(var(--tenant-results-back-font-size,14px) + 5px)!important;
  line-height:1!important;
}

html[data-public-theme="dark"] body.public-app #flight-choice-form .results-back-button.calendar-back{
  background:var(--tenant-results-back-bg,#172235)!important;
  color:var(--tenant-results-back-text-color,#F5F7FB)!important;
  border-color:var(--tenant-results-back-border-color,#344156)!important;
}
/* PUBLIC_BOOKING_FLAT_CHECKOUT_CSS_V0163163 */

body.public-app .booking-page-head-v63{margin:0 auto 18px;max-width:920px;padding:0}

body.public-app .booking-page-head-v63 h1{font-size:clamp(30px,4vw,46px);line-height:1.05}

body.public-app .booking-layout-v63{display:block!important;max-width:920px;margin:0 auto}

body.public-app .booking-main-v63{display:grid;gap:0!important}

body.public-app .booking-flat-section{padding:24px 0;border:0;border-radius:0;background:transparent;box-shadow:none}

body.public-app .booking-flat-section+ .booking-flat-section{border-top:1px solid #d8dee8}

body.public-app .booking-flat-section h2{margin:0 0 20px;font-size:clamp(25px,3.6vw,37px)}

body.public-app .booking-overview-v63{padding-top:0}

body.public-app .booking-route-v63{display:grid;gap:5px;padding:3px 0}

body.public-app .booking-route-label-v63{color:#667085;font-size:15px;font-weight:900;text-transform:uppercase;letter-spacing:.05em}

body.public-app .booking-route-v63>strong{font-size:clamp(22px,3vw,31px);line-height:1.1}

body.public-app .booking-route-details-v63{display:grid;gap:3px;color:#0d1626;font-weight:900}

body.public-app .booking-route-details-v63 small{font-size:17px;line-height:1.35}

body.public-app .booking-baggage-leg-line-v63{display:block}

body.public-app .booking-baggage-leg-line-v63+.booking-baggage-leg-line-v63{margin-top:4px}

body.public-app .booking-route-divider-v63{height:1px;background:#d8dee8;margin:20px 0}

body.public-app .booking-included-baggage-v63 h3,
body.public-app .booking-price-breakdown-v63 h3{margin:0 0 12px;font-size:20px}

body.public-app .booking-included-intro-v63{margin:0 0 12px;color:#667085;line-height:1.45}

body.public-app .booking-baggage-passenger-list-v63{display:grid;gap:8px}

body.public-app .booking-baggage-passenger-v63{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding:10px 0;border-bottom:1px solid #edf0f5}

body.public-app .booking-baggage-passenger-v63:last-child{border-bottom:0}

body.public-app .booking-baggage-passenger-v63>span{text-align:right;color:#344054;font-weight:750}

body.public-app .booking-baggage-passenger-v63 small{font:inherit;color:inherit}

body.public-app .booking-price-breakdown-v63 .passenger-price-row{border:0;border-bottom:1px solid #edf0f5;border-radius:0;padding:11px 0;background:transparent}

body.public-app .booking-total-lines-v63{display:grid;gap:5px;margin-top:14px}

body.public-app .booking-total-final-v63{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-top:14px;padding-top:16px;border-top:1px solid #172033}

body.public-app .booking-total-final-v63 span{font-size:18px}

body.public-app .booking-total-final-v63 strong{font-size:clamp(27px,4vw,38px);white-space:nowrap}

body.public-app .booking-customer-choice-v63{display:grid;grid-template-columns:1fr 1fr;gap:10px}

body.public-app .booking-customer-choice-v63 button{min-height:58px;border:1px solid #cfd6df;background:#fff;color:#172033;border-radius:14px;font-size:16px}

body.public-app .booking-customer-choice-v63 button.active{border-color:var(--tenant-primary);background:color-mix(in srgb,var(--tenant-primary) 9%,white);color:var(--tenant-primary)}

body.public-app .booking-login-hint-v63{margin-top:14px;padding:15px;border:1px solid #d8dee8;border-radius:13px;background:#f7f9fc}

body.public-app .booking-login-hint-v63 p{margin-top:0;color:#667085}

body.public-app .booking-confirmation-email-v63{display:grid;gap:7px;margin-bottom:22px}

body.public-app .booking-confirmation-email-v63 label,
body.public-app .booking-passengers-v63 label{font-weight:850}

body.public-app .booking-confirmation-email-v63 small{color:#667085;line-height:1.4}

body.public-app .booking-passenger-grid-v63{display:grid;gap:18px}

body.public-app .booking-loyalty-optin-v65{display:flex;align-items:flex-start;gap:12px;margin:0 0 22px;padding:16px;border:1px solid #d8dee8;border-radius:13px;background:#f7f9fc;cursor:pointer}

body.public-app .booking-loyalty-optin-v65 input{flex:0 0 auto;width:20px;height:20px;min-height:0;margin:2px 0 0;padding:0;border-radius:5px;accent-color:var(--tenant-primary)}

body.public-app .booking-loyalty-optin-v65 span{line-height:1.5;color:#344054;font-weight:600}

body.public-app .booking-loyalty-optin-v65:has(input:checked){border-color:var(--tenant-primary);background:color-mix(in srgb,var(--tenant-primary) 6%,white)}

html[data-public-theme="dark"] body.public-app .booking-loyalty-optin-v65{background:#172235;border-color:#344156}

html[data-public-theme="dark"] body.public-app .booking-loyalty-optin-v65 span{color:#e4e9f0}

body.public-app .booking-account-signed-in-v66{margin:0 0 22px;color:#344054}

body.public-app .booking-account-toggle-v66{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:0 0 8px}
body.public-app .passenger-form-v63 p.booking-guest-continue-v67{display:flex;align-items:baseline;gap:4px;margin:0 0 12px;color:#101828;font-size:15px;font-weight:800}
body.public-app .booking-guest-continue-arrow-v67{font-size:11px;opacity:.75}
body.public-app .booking-not-passenger-optin-v68{display:flex;align-items:flex-start;gap:8px;margin:0 0 14px;cursor:pointer;font-size:13px;font-weight:700;color:#344054}
body.public-app .booking-not-passenger-optin-v68 input{flex:0 0 auto;width:20px;height:20px;min-height:0;margin:2px 0 0;padding:0;border-radius:5px;accent-color:var(--tenant-primary)}
body.public-app .booking-not-passenger-fields-v68{margin:0 0 18px}
body.public-app .booking-not-passenger-fields-v68[hidden]{display:none!important}
html[data-public-theme="dark"] body.public-app .booking-not-passenger-optin-v68{color:#c3cad6}
html[data-public-theme="dark"] body.public-app .booking-guest-continue-v67{color:#98a2b3}
body.public-app .booking-account-toggle-v66 span{color:#344054;font-weight:600}
body.public-app .booking-account-toggle-btn-v66{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;height:var(--tenant-book-back-height,38px);padding:0 18px;margin:0 auto;border:0;border-radius:var(--tenant-book-back-radius,999px);background:var(--tenant-primary);color:#fff;font-size:var(--tenant-book-back-font-size,14px);font-weight:var(--tenant-book-back-font-weight,850);line-height:1;white-space:nowrap;cursor:pointer}
body.public-app .booking-account-toggle-btn-v66:hover{filter:brightness(.94)}
body.public-app .baggage-overview-price{color:var(--tenant-primary)!important;font-weight:800}
body.public-app .selection-mini-person-price{color:var(--tenant-primary)!important;font-weight:800}
html[data-public-theme="dark"] body.public-app .baggage-overview-price{color:var(--tenant-primary)!important}
html[data-public-theme="dark"] body.public-app .selection-mini-person-price{color:var(--tenant-primary)!important}
html[data-public-theme="dark"] body.public-app .booking-account-toggle-v66 span{color:#c3cad6}

body.public-app .booking-account-panel-v66{margin:0 0 22px;padding:16px;border:1px solid #d8dee8;border-radius:13px;background:#fff}

body.public-app .booking-account-password-grid-v66{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:12px}

body.public-app .booking-account-password-grid-v66 p{display:grid;gap:7px;margin:0}

body.public-app .booking-account-password-grid-v66 label{font-weight:850}

html[data-public-theme="dark"] body.public-app .booking-account-signed-in-v66{color:#e4e9f0}

html[data-public-theme="dark"] body.public-app .booking-account-panel-v66{background:#111827;border-color:#344156}

body.public-app .passenger-form-v63{border:0;border-top:1px solid #d8dee8;margin:0;padding:18px 0 0}

body.public-app .passenger-form-v63 h3{margin:0 0 14px;font-size:21px}

body.public-app .booking-name-grid-v63{display:grid;grid-template-columns:1fr 1fr;gap:14px}

body.public-app .passenger-form-v63 p{display:grid;gap:7px;margin:0 0 14px}

body.public-app .booking-gender-grid-v65{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:0 0 14px}

body.public-app .booking-gender-option-v65{display:flex;align-items:center;gap:9px;min-width:0;min-height:50px;padding:0 14px;border:1px solid #cfd6df;border-radius:12px;background:#fff;font-weight:800;cursor:pointer}

body.public-app .booking-gender-option-v65:has(input:checked){border-color:var(--tenant-primary);background:color-mix(in srgb,var(--tenant-primary) 9%,white);color:var(--tenant-primary)}

body.public-app .booking-gender-option-v65 input{flex:0 0 auto;width:18px;height:18px;padding:0;margin:0;accent-color:var(--tenant-primary)}

body.public-app .booking-gender-option-v65 span{min-width:0;overflow-wrap:break-word}

body.public-app .booking-contact-info-v65{margin-top:22px;padding-top:18px;border-top:1px solid #d8dee8}

body.public-app .booking-contact-info-v65 h3{margin:0 0 14px;font-size:21px}

body.public-app .booking-contact-grid-v65{display:grid;grid-template-columns:1fr 1fr;gap:14px}

body.public-app .booking-contact-grid-v65 p,
body.public-app .booking-contact-grid-v65 .phone-field-wrap-v65{display:grid;gap:7px;margin:0}

body.public-app .booking-contact-grid-v65 label{font-weight:850}

body.public-app .booking-contact-info-v65>small{display:block;margin-top:10px;color:#667085;line-height:1.4}

body.public-app .phone-field-v65{position:relative;display:flex;align-items:stretch;border:1px solid #cfd6e3;border-radius:8px;background:#fff}

body.public-app .phone-country-trigger-v65{display:flex;align-items:center;gap:4px;flex:0 0 auto;width:auto;height:auto;border:0;border-right:1px solid #e3e7ee;background:transparent;color:#172033;padding:0 8px 0 11px;margin:0;cursor:pointer;font-size:18px;border-radius:8px 0 0 8px}

body.public-app .phone-country-trigger-v65 i{font-style:normal;font-size:11px;color:#657084}

body.public-app .phone-code-input-v65{width:56px;flex:0 0 56px;min-width:0;border:0;border-right:1px solid #e3e7ee;border-radius:0;padding:11px 4px 11px 8px;font-weight:800;background:transparent}

body.public-app .phone-number-input-v65{flex:1 1 auto;width:auto;min-width:0;border:0;border-radius:0;padding:11px 12px 11px 10px;background:transparent}

body.public-app .phone-code-input-v65:focus,
body.public-app .phone-number-input-v65:focus{outline:0}

body.public-app .phone-field-v65:focus-within{border-color:var(--tenant-primary)}

body.public-app .phone-country-list-v65{position:absolute;top:calc(100% + 6px);left:0;z-index:20;width:min(300px,calc(100vw - 48px));max-height:260px;overflow:auto;background:#fff;border:1px solid #d8dee8;border-radius:12px;box-shadow:0 16px 40px rgba(16,24,40,.16);padding:6px;margin:0}

body.public-app .phone-country-list-v65[hidden]{display:none}

body.public-app .phone-country-option-v65{display:flex;align-items:center;gap:9px;width:100%;height:auto;border:0;border-radius:8px;background:transparent;color:#172033;padding:9px 10px;margin:0;text-align:left;font-weight:700;cursor:pointer;font-size:14px}

body.public-app .phone-country-option-v65:hover{background:#f4f6fb}

body.public-app .phone-country-option-v65 small{margin-left:auto;color:#657084;font-weight:800}

html[data-public-theme="dark"] body.public-app .phone-country-trigger-v65{color:#f5f7fb}

html[data-public-theme="dark"] body.public-app .phone-country-option-v65{color:#f5f7fb}

html[data-public-theme="dark"] body.public-app .phone-field-v65{background:#111827;border-color:#344156}

html[data-public-theme="dark"] body.public-app .phone-country-trigger-v65,
html[data-public-theme="dark"] body.public-app .phone-code-input-v65{border-color:#344156;color:#f5f7fb}

html[data-public-theme="dark"] body.public-app .phone-number-input-v65{color:#f5f7fb}

html[data-public-theme="dark"] body.public-app .phone-country-list-v65{background:#172235;border-color:#344156}

html[data-public-theme="dark"] body.public-app .phone-country-option-v65:hover{background:#1f2937}

body.public-app .promotion-panel-v63 .inline-actions{display:grid;grid-template-columns:1fr auto;gap:10px}

body.public-app .loyalty-use-panel-v63{padding-block:20px}

body.public-app .booking-payment-heading-v63{display:flex;justify-content:space-between;align-items:flex-start;gap:20px}

body.public-app .booking-currency-v63{display:grid;gap:5px;min-width:105px;font-weight:850}

body.public-app .booking-demo-payment-grid-v63{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:8px}

body.public-app .booking-demo-payment-grid-v63 button{min-height:94px;padding:14px;border:1px solid #cfd6df;border-radius:15px;background:#fff;color:#172033;display:grid;place-items:center;gap:7px;text-align:center}

body.public-app .booking-demo-payment-grid-v63 button>span{font-size:25px}

body.public-app .booking-demo-payment-grid-v63 button.active{border:2px solid var(--tenant-primary);background:color-mix(in srgb,var(--tenant-primary) 7%,white)}

body.public-app .booking-payment-note-v63{margin-top:14px;padding:13px 15px;border-radius:12px;background:#eef4ff;color:#344054;font-weight:700;line-height:1.4}

body.public-app .booking-confirm-button-v63{width:100%;min-height:62px;margin:22px 0 10px;border-radius:14px;font-size:22px}

body.public-app .booking-hidden-baggage-v63{display:none!important}

html[data-public-theme="dark"] body.public-app .booking-flat-section{color:#f5f7fb}

html[data-public-theme="dark"] body.public-app .booking-flat-section+ .booking-flat-section,
html[data-public-theme="dark"] body.public-app .booking-route-divider-v63,
html[data-public-theme="dark"] body.public-app .passenger-form-v63{border-color:#344156;background-color:transparent}

html[data-public-theme="dark"] body.public-app .booking-customer-choice-v63 button,
html[data-public-theme="dark"] body.public-app .booking-demo-payment-grid-v63 button{background:#111827;color:#f5f7fb;border-color:#344156}

html[data-public-theme="dark"] body.public-app .booking-login-hint-v63,
html[data-public-theme="dark"] body.public-app .booking-payment-note-v63{background:#172235;color:#e4e9f0;border-color:#344156}

html[data-public-theme="dark"] body.public-app .booking-gender-option-v65{background:#111827;color:#f5f7fb;border-color:#344156}

html[data-public-theme="dark"] body.public-app .booking-contact-info-v65{border-color:#344156}
/* PUBLIC_BOOKING_CUSTOMER_MODE_GATE_CSS_V0163164 */

[data-guest-checkout-v64][hidden],
[data-login-hint-v63][hidden]{
  display:none!important;
}

.booking-customer-choice-v63 button[aria-pressed="false"]{
  box-shadow:none;
}
/* WALLET_CUSTOMER_ACCOUNT_V0163186 */

.wallet-action-row{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:8px}
.wallet-action-route{font-size:12px;font-weight:800;opacity:.72;margin-right:2px}
.wallet-action{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:7px 11px;border-radius:9px;text-decoration:none;font-size:12px;font-weight:800;border:1px solid rgba(15,23,42,.14);background:#111827;color:#fff}
.wallet-action.google{background:#fff;color:#111827}
.customer-account-shell{max-width:980px;margin:0 auto;padding:18px 0 38px}
.customer-account-tabs{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px}
.customer-account-tabs a{padding:10px 15px;border-radius:10px;border:1px solid rgba(15,23,42,.14);text-decoration:none;font-weight:800;background:var(--surface,#fff);color:inherit}
.customer-account-tabs a.active{background:#111827;color:#fff}
.customer-wallet-summary{display:flex;align-items:flex-start;gap:14px;flex-wrap:wrap;padding:18px;border:1px solid rgba(15,23,42,.12);border-radius:14px;background:var(--surface,#fff);margin-bottom:20px}
.customer-wallet-summary h1{width:100%;margin:0 0 4px}
.customer-wallet-balance{display:flex;flex-direction:column;min-width:180px;padding:12px 14px;border-radius:12px;background:rgba(15,23,42,.05)}
.customer-wallet-balance strong{font-size:22px}
.customer-trip-list{display:grid;gap:12px}
.customer-trip-card{border:1px solid rgba(15,23,42,.12);border-radius:14px;padding:16px;background:var(--surface,#fff)}
.customer-trip-head{display:flex;justify-content:space-between;gap:12px;align-items:flex-start}
.customer-trip-head h3{margin:3px 0;font-size:20px}
.customer-trip-head p{margin:4px 0}
.customer-trip-meta{display:flex;gap:8px;flex-wrap:wrap;margin:10px 0;font-size:13px}
.customer-trip-meta span{padding:6px 9px;border-radius:8px;background:rgba(15,23,42,.05)}
.customer-trip-wallets{border-top:1px solid rgba(15,23,42,.10);margin-top:12px;padding-top:10px}
.wallet-pass-line{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:8px 0;flex-wrap:wrap}
.wallet-pass-line>div{display:flex;gap:7px;flex-wrap:wrap}
.customer-transaction-list{display:grid;gap:9px}
.customer-transaction-row{display:flex;justify-content:space-between;gap:14px;align-items:center;border:1px solid rgba(15,23,42,.11);border-radius:12px;padding:14px;background:var(--surface,#fff)}
.customer-transaction-row>div:first-child{display:flex;flex-direction:column;gap:4px}
.customer-transaction-row small{display:block;opacity:.68}
.customer-transaction-amount{text-align:right;font-size:18px;font-weight:900}
.customer-transaction-amount.negative{color:#b42318}
.customer-transaction-amount.positive{color:#157347}
/* MODULE_SECONDARY_HIDE_ALWAYS_V1: Check-in / Reisebüro-Login jane tashme
   brenda menuse (☰ drawer), aktive edhe ne desktop tash - s'ka nevoje me u
   perseritur si linqe teksti ne rreshtin e moduleve (Flüge/Bus/Hotel).
   Rregulli i vjeter i fshihte vetem ne mobile (<=760px); ky i ri e ben
   njesoj ne çdo madhesi ekrani. */

html[data-public-template="flori"] body.public-app .marketing-home .module-launcher.travel-module-launcher>.module-secondary{
  display:none!important;
}
/* TRIP_TYPE_PLANE_REMOVE_V1: hiqet animacioni/ikona e vogel e aeroplanit
   brenda butonit Hin- und Rückflug - kerkuar shprehimisht, s'duhet fare. */

html[data-public-template="flori"] .trip-type-trigger .trip-type-plane-track,
html[data-public-template="flori"] .trip-type-trigger .trip-type-plane{
  display:none!important;
}

html[data-public-template="flori"] body.public-app .marketing-home .multi-city-fields-head{
  display:none!important;
}
/* ROUTE_SWAP_MATCH_MOBILE_V1: shigjeta vertikale (⇅), me trashe, ngjyra
   e operatorit - njesoj si ne telefon (jo ⇄ e holle/neutrale). */

html[data-public-template="flori"] body.public-app .marketing-home .flight-search-grid>#route-swap{
  color:var(--tenant-primary)!important;
  background:color-mix(in srgb,var(--tenant-primary) 6%,#ffffff)!important;
  border:1px solid color-mix(in srgb,var(--tenant-primary) 45%,#ffffff)!important;
  font-size:0!important;
}

html[data-public-template="flori"] body.public-app .marketing-home .flight-search-grid>#route-swap::before{
  content:"⇅"!important;
  font-size:20px!important;
  font-weight:900!important;
  line-height:32px!important;
  color:var(--tenant-primary)!important;
}

html[data-public-template="flori"] body.public-app .marketing-home .flight-search-grid{
  display:grid!important;
  position:relative!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  grid-template-rows:auto auto auto auto auto!important;
  overflow:visible!important;
  border-radius:15px!important;
}

html[data-public-template="flori"] body.public-app .marketing-home #primary-origin-field,
html[data-public-template="flori"] body.public-app .marketing-home #primary-destination-field{
  grid-column:1/-1!important;
  width:100%!important;
  height:70px!important;
  min-height:70px!important;
  margin:0!important;
  padding:8px 46px 8px 15px!important;
  border-radius:0!important;
  border-right:0!important;
  align-content:center!important;
  gap:4px!important;
  background:#f1f3f6!important;
}

html[data-public-template="flori"] body.public-app .marketing-home #primary-origin-field{grid-row:1!important;border-bottom:1px solid #dce2e9!important}

html[data-public-template="flori"] body.public-app .marketing-home #primary-destination-field{grid-row:2!important;border-bottom:1px solid #dce2e9!important;background:#fff!important}

html[data-public-template="flori"] body.public-app .marketing-home .flight-search-grid>#route-swap{
  position:absolute!important;left:auto!important;right:13px!important;top:70px!important;
  width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important;
  transform:translateY(-50%)!important;z-index:12!important;
}

html[data-public-template="flori"] body.public-app .marketing-home .multi-city-fields{grid-column:1/-1!important;grid-row:3!important;order:0!important}

html[data-public-template="flori"] body.public-app .marketing-home .multi-city-route-grid{grid-template-columns:minmax(0,1fr) 16px minmax(0,1fr)!important}

html[data-public-template="flori"] body.public-app .marketing-home .multi-city-route-grid>.search-field{height:72px!important;min-height:72px!important;padding:8px 13px!important;align-content:center!important;gap:4px!important;border:0!important;background:#fff!important}

html[data-public-template="flori"] body.public-app .marketing-home .multi-city-route-grid>#second-origin-field{grid-column:1!important;padding-right:25px!important;border-right:1px solid #dfe4eb!important;border-radius:15px 0 0 15px!important}

html[data-public-template="flori"] body.public-app .marketing-home .multi-city-route-grid>#second-destination-field{grid-column:3!important;padding-left:25px!important;border-radius:0 15px 15px 0!important}

html[data-public-template="flori"] body.public-app .marketing-home .multi-city-route-grid>#second-route-swap{position:absolute!important;left:50%!important;top:50%!important;margin:0!important;width:34px!important;height:34px!important;min-width:34px!important;min-height:34px!important;transform:translate(-50%,-50%)!important;z-index:5!important}

html[data-public-template="flori"] body.public-app .marketing-home .flight-search-grid>#passenger-picker,
html[data-public-template="flori"] body.public-app .marketing-home .flight-search-grid>#date-trigger{border-top:1px solid #dfe4eb!important;border-bottom:1px solid #dfe4eb!important}

html[data-public-template="flori"] body.public-app .marketing-home .flight-search-grid>#passenger-picker{grid-column:1!important;grid-row:4!important;min-height:82px!important;border-left:1px solid #dfe4eb!important}

html[data-public-template="flori"] body.public-app .marketing-home .flight-search-grid>#date-trigger{grid-column:2!important;grid-row:4!important;min-height:82px!important;border-right:1px solid #dfe4eb!important}

html[data-public-template="flori"] body.public-app .marketing-home .flight-search-grid>#search-submit{grid-column:1/-1!important;grid-row:5!important;min-height:51px!important}

html[data-public-template="flori"] body.public-app .marketing-home #passenger-trigger,
html[data-public-template="flori"] body.public-app .marketing-home #date-trigger{min-height:82px!important;padding:9px 12px!important}

html[data-public-template="flori"] body.public-app .marketing-home #passenger-summary{font-size:13px!important}
/* MODULE_TAB_PLACEHOLDER_FLUGE_HOTEL_V1: buton dekorativ pa funksion. */

html[data-public-template="flori"] body.public-app .marketing-home .module-launcher button.module-tab{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  min-height:44px!important;padding:0 18px!important;border-radius:12px!important;
  color:#495365!important;background:#f6f7f9!important;font-weight:800!important;
  white-space:nowrap!important;border:1px solid transparent!important;font:inherit!important;
}

html[data-public-template="flori"] body.public-app .marketing-home .module-launcher button.module-tab-placeholder{
  cursor:default!important;opacity:.62!important;
  padding:0 5px!important;font-size:11px!important;letter-spacing:-.02em!important;
}

html[data-public-template="flori"] body.public-app .marketing-home .module-launcher .module-tab-placeholder:hover,
html[data-public-template="flori"] body.public-app .marketing-home .module-launcher .module-tab-placeholder:active,
html[data-public-template="flori"] body.public-app .marketing-home .module-launcher .module-tab-placeholder:focus{
  color:#495365!important;background:#f6f7f9!important;box-shadow:none!important;
}
/* SECOND_ROUTE_SWAP_MATCH_PRIMARY_V1: te dyja butonat e ndrrimit (route
   primar dhe route 2 te Multi City) duhet me qene identike - ngjyra,
   sfondi, trashesia e shigjetes. Perpara, second-route-swap perdorte
   ende stilin baze (border solid, sfond bardh, 800 weight, 18px) - ky
   rregull e barazon me #route-swap (color-mix, 900 weight, 16px). */

html[data-public-template=flori] body.public-app .marketing-home .multi-city-route-grid>#second-route-swap{
  color:var(--tenant-primary)!important;
  background:color-mix(in srgb,var(--tenant-primary) 6%,#ffffff)!important;
  border:1px solid color-mix(in srgb,var(--tenant-primary) 45%,#ffffff)!important;
  font-size:0!important;
}

html[data-public-template=flori] body.public-app .marketing-home .multi-city-route-grid>#second-route-swap::before{
  font-weight:900!important;
  font-size:16px!important;
  line-height:1!important;
  color:var(--tenant-primary)!important;
}


