:root{--crimson:#d71920;--crimson-dark:#8b0000;--crimson-light:#e8434a;--gold:#c9a962;--gold-light:#e8d5a3;--gold-dark:#a68b4b;--white:#fff;--off-white:#faf8f5;--cream:#f5f0e8;--text:#1a1a1a;--text-muted:#6b6b6b;--text-light:#ffffffd9;--glass-bg:#ffffffb8;--glass-border:#ffffff73;--glass-shadow:0 8px 32px #8b000014;--radius-sm:8px;--radius-md:14px;--radius-lg:20px;--radius-xl:28px;--font-display:"Playfair Display", Georgia, serif;--font-body:"Inter", system-ui, sans-serif;--nav-height:72px;--header-height:64px;--safe-bottom:env(safe-area-inset-bottom,0px)}[data-theme=dark]{--text:#f5f0e8;--text-muted:#a8a8a8;--text-light:#ffffffe6;--off-white:#1a1a1a;--cream:#121212;--white:#2a2a2a;--glass-bg:#1e1e1ed1;--glass-border:#ffffff1f;--glass-shadow:0 8px 32px #00000059;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=dark] body{background:linear-gradient(165deg,#121212 0%,#1a1a1a 40%,#1f1214 100%)}[data-theme=dark] .field__input,[data-theme=dark] .field__select{color:var(--text);background:#2a2a2a;border-color:#ffffff1f}[data-theme=dark] .glass-card{background:var(--glass-bg);border-color:var(--glass-border)}[data-theme=dark] .profile-menu__item,[data-theme=dark] .settings-pref,[data-theme=dark] .security-pref,[data-theme=dark] .notifications-pref{background:#282828bf;border-color:#ffffff1a}[data-theme=dark] .app{background:#1a1a1a}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{font-family:var(--font-body);color:var(--text);background:linear-gradient(165deg, var(--cream) 0%, var(--off-white) 40%, #fff5f5 100%);-webkit-font-smoothing:antialiased;min-height:100dvh;font-size:15px;line-height:1.5;overflow-x:hidden}#root{min-height:100dvh}button{cursor:pointer;background:0 0;border:none;font-family:inherit}input,select{font-family:inherit;font-size:inherit}.app{flex-direction:column;max-width:480px;min-height:100dvh;margin:0 auto;display:flex;position:relative}.main-content{padding:0 0 calc(var(--nav-height) + var(--safe-bottom) + 16px);flex:1;overflow-y:auto}.main-content--full{padding:0 16px calc(var(--nav-height) + var(--safe-bottom) + 16px)}.app--booking .main-content--full{padding-bottom:16px}.header{z-index:100;background:linear-gradient(135deg, var(--crimson) 0%, var(--crimson-dark) 100%);padding:12px 16px;position:sticky;top:0;box-shadow:0 4px 20px #d719204d}.header--app{justify-content:space-between;align-items:center;display:flex}.header__brand{align-items:center;gap:10px;display:flex}.header__logo{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);width:36px;height:36px;color:var(--gold);background:#ffffff26;border:1px solid #c9a96266;border-radius:50%;justify-content:center;align-items:center;display:flex}.header__text{flex-direction:column;line-height:1.1;display:flex}.header__name{font-family:var(--font-display);color:var(--white);letter-spacing:.02em;font-size:1.1rem;font-weight:600}.header__name-sub{color:var(--gold-light);letter-spacing:.15em;text-transform:uppercase;font-size:.65rem}.header__tagline{color:var(--gold-light);letter-spacing:.12em;text-transform:uppercase;font-size:.7rem;display:block}.header__profile{color:var(--white);background:#ffffff1f;border:1px solid #fff3;border-radius:24px;align-items:center;gap:6px;padding:4px;transition:background .2s;display:flex}.header__profile:hover{background:#fff3}.header__avatar{background:var(--gold);width:32px;height:32px;color:var(--crimson-dark);border-radius:50%;justify-content:center;align-items:center;font-size:.85rem;font-weight:700;display:flex}.header__menu-icon{opacity:.7;margin-right:4px}.bottom-nav{background:var(--glass-bg);-webkit-backdrop-filter:blur(20px);border-top:1px solid var(--glass-border);width:100%;max-width:480px;padding:8px 16px calc(8px + var(--safe-bottom));z-index:100;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%);box-shadow:0 -4px 24px #0000000f}.bottom-nav__item{color:var(--text-muted);flex-direction:column;flex:1;align-items:center;gap:4px;padding:8px;font-size:.7rem;font-weight:500;transition:color .25s,transform .2s;display:flex}.bottom-nav__item--active{color:var(--crimson)}.bottom-nav__item--active .bottom-nav__icon-wrap{color:var(--crimson);background:#d719201a}.bottom-nav__icon-wrap{border-radius:var(--radius-md);justify-content:center;align-items:center;width:40px;height:32px;transition:background .25s;display:flex;position:relative}.bottom-nav__badge{background:var(--crimson);min-width:16px;height:16px;color:var(--white);border-radius:8px;justify-content:center;align-items:center;padding:0 4px;font-size:.6rem;font-weight:700;display:flex;position:absolute;top:-2px;right:2px}.glass-card{background:var(--glass-bg);-webkit-backdrop-filter:blur(16px);border:1px solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--glass-shadow);text-align:left;width:100%;padding:20px;transition:transform .25s,box-shadow .25s}.glass-card--highlight:hover,.glass-card--highlight:focus-visible{transform:translateY(-2px);box-shadow:0 12px 40px #d719201f}button.glass-card{cursor:pointer}.hero-banner{background:linear-gradient(135deg, var(--crimson-dark) 0%, var(--crimson) 50%, #b01018 100%);height:180px;margin:0 -16px 20px;position:relative;overflow:hidden}.hero-banner__overlay{background:radial-gradient(at 80% 20%,#c9a96240 0%,#0000 50%),radial-gradient(at 20% 80%,#ffffff14 0%,#0000 40%);position:absolute;inset:0}.hero-banner__content{flex-direction:column;justify-content:center;height:100%;padding:32px 24px;display:flex;position:relative}.hero-banner__title{font-family:var(--font-display);color:var(--white);margin-bottom:8px;font-size:1.75rem;font-weight:700;line-height:1.2}.hero-banner__subtitle{color:var(--gold-light);max-width:260px;font-size:.85rem}.search-card{z-index:2;position:relative}.search-card--compact{border-radius:var(--radius-lg);margin:0}.trip-type{border-radius:var(--radius-md);background:#0000000a;gap:8px;margin-bottom:16px;padding:4px;display:flex}.trip-type__btn{border-radius:var(--radius-sm);color:var(--text-muted);flex:1;padding:10px;font-size:.85rem;font-weight:500;transition:all .25s}.trip-type__btn--active{background:var(--white);color:var(--crimson);box-shadow:0 2px 8px #00000014}.search-row{align-items:flex-end;gap:12px;margin-bottom:14px;display:flex}.search-row--dates{flex-wrap:wrap}.field{flex-direction:column;flex:1;gap:6px;min-width:0;display:flex}.field__label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:4px;font-size:.75rem;font-weight:600;display:flex}.field__input-wrap{position:relative}.field__select,.field__input{border-radius:var(--radius-md);background:var(--white);width:100%;color:var(--text);appearance:none;border:1.5px solid #00000014;padding:12px 32px 12px 14px;transition:border-color .2s,box-shadow .2s}.field__input{padding-right:14px}.field__select:focus,.field__input:focus{border-color:var(--crimson);outline:none;box-shadow:0 0 0 3px #d719201a}.field__chevron{pointer-events:none;color:var(--text-muted);position:absolute;top:50%;right:12px;transform:translateY(-50%)}.swap-btn{background:linear-gradient(135deg, var(--gold) 0%, var(--gold-dark) 100%);width:40px;height:40px;color:var(--white);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-bottom:2px;transition:transform .3s;display:flex;box-shadow:0 4px 12px #c9a96266}.swap-btn:active{transform:rotate(180deg)}.stepper{background:var(--white);border-radius:var(--radius-md);border:1.5px solid #00000014;align-items:center;gap:12px;padding:8px 12px;display:flex}.stepper__btn{width:32px;height:32px;color:var(--crimson);background:#d7192014;border-radius:50%;justify-content:center;align-items:center;transition:background .2s;display:flex}.stepper__btn:hover:not(:disabled){background:#d7192026}.stepper__btn:disabled{opacity:.35;cursor:not-allowed}.stepper__value{text-align:center;min-width:24px;font-size:1.1rem;font-weight:600}.btn{border-radius:var(--radius-md);justify-content:center;align-items:center;gap:8px;padding:14px 24px;font-size:.95rem;font-weight:600;transition:all .25s;display:inline-flex}.btn--full{width:100%}.btn--primary{background:linear-gradient(135deg, var(--crimson) 0%, var(--crimson-dark) 100%);color:var(--white);box-shadow:0 4px 16px #d7192059}.btn--primary:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 24px #d7192073}.btn--primary:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn--gold{background:linear-gradient(135deg, var(--gold) 0%, var(--gold-dark) 100%);color:var(--white);box-shadow:0 4px 16px #c9a96266}.btn--gold:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 24px #c9a96280}.btn--logout{color:var(--crimson);background:#d719200f;border:1.5px solid #d7192026;margin-top:8px}.btn--logout:hover{background:#d719201a}.btn--secondary{background:var(--white);color:var(--crimson);border:1.5px solid #d7192033}.btn--secondary:hover{background:#d719200a}.btn--sm{flex:1;padding:10px 16px;font-size:.8rem}.page-header{align-items:center;gap:12px;padding:16px 0 20px;display:flex}.page-header__title{font-family:var(--font-display);color:var(--text);font-size:1.35rem;font-weight:600}.page-header__meta{color:var(--text-muted);font-size:.8rem}.back-btn,.filter-toggle{background:var(--white);width:40px;height:40px;color:var(--text);border:1px solid #0000000f;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:background .2s;display:flex}.back-btn:hover,.filter-toggle:hover{color:var(--crimson);background:#d719200f}.filter-toggle{margin-left:auto}.flight-card{margin-bottom:12px;animation:.4s both slideUp}.flight-card__header{justify-content:space-between;margin-bottom:16px;display:flex}.flight-card__number{color:var(--crimson);font-size:.85rem;font-weight:700}.flight-card__aircraft{color:var(--text-muted);font-size:.75rem}.flight-card__route{align-items:center;gap:8px;margin-bottom:16px;display:flex}.flight-card__time-block{flex-direction:column;flex:1;display:flex}.flight-card__time-block--right{text-align:right}.flight-card__time{color:var(--text);font-size:1.25rem;font-weight:700}.flight-card__code{color:var(--crimson);font-size:.8rem;font-weight:600}.flight-card__city{color:var(--text-muted);font-size:.7rem}.flight-card__connector{flex-direction:column;flex-shrink:0;align-items:center;gap:4px;min-width:80px;display:flex}.flight-card__duration{color:var(--text-muted);align-items:center;gap:4px;font-size:.65rem;display:flex}.flight-card__line{background:linear-gradient(90deg, var(--crimson), var(--gold));border-radius:1px;width:100%;height:2px;position:relative}.flight-card__plane-icon{color:var(--gold);background:var(--white);padding:2px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)rotate(90deg)}.flight-card__stops{color:var(--gold-dark);font-size:.65rem;font-weight:500}.flight-card__footer{border-top:1px solid #0000000f;justify-content:space-between;align-items:center;padding-top:12px;display:flex}.flight-card__seats{color:var(--text-muted);font-size:.75rem}.flight-card__price{text-align:right}.flight-card__price-from{color:var(--text-muted);text-transform:uppercase;font-size:.65rem;display:block}.flight-card__price-amount{color:var(--crimson);font-size:1.35rem;font-weight:700}.filters-panel{background:var(--glass-bg);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--glass-border);border-radius:var(--radius-lg);margin-bottom:16px;padding:16px}.filters-panel__group{margin-bottom:14px}.filters-panel__group:last-child{margin-bottom:0}.filters-panel__label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px;font-size:.75rem;font-weight:600;display:block}.chip-group{flex-wrap:wrap;gap:6px;display:flex}.chip{background:var(--white);color:var(--text-muted);border:1px solid #00000014;border-radius:20px;padding:8px 14px;font-size:.78rem;font-weight:500;transition:all .2s}.chip--active{background:var(--crimson);color:var(--white);border-color:var(--crimson)}.chip:disabled{opacity:.4;cursor:not-allowed}.results-count{color:var(--text-muted);margin-bottom:12px;font-size:.8rem}.results-list{flex-direction:column;display:flex}.detail-card__route{align-items:center;gap:12px;display:flex}.detail-card__airport{flex-direction:column;flex:1;gap:2px;display:flex}.detail-card__airport--right{text-align:right}.detail-card__code{color:var(--crimson);font-size:1.5rem;font-weight:700}.detail-card__city{font-size:.9rem;font-weight:600}.detail-card__name{color:var(--text-muted);font-size:.7rem}.detail-card__time{margin-top:4px;font-size:1.1rem;font-weight:700}.detail-card__connector{color:var(--gold-dark);flex-direction:column;align-items:center;gap:4px;font-size:.75rem;display:flex}.detail-card__stops{color:var(--text-muted)}.info-grid{flex-direction:column;gap:14px;margin-top:12px;display:flex}.info-item{color:var(--crimson);align-items:center;gap:12px;display:flex}.info-item__label{color:var(--text-muted);text-transform:uppercase;font-size:.7rem;display:block}.info-item__value{color:var(--text);font-weight:600}.price-summary{border-radius:var(--radius-md);background:#c9a96214;border:1px solid #c9a96233;margin:20px 0;padding:16px}.price-summary__row{color:var(--text-muted);justify-content:space-between;margin-bottom:8px;font-size:.85rem;display:flex}.price-summary__total{justify-content:space-between;align-items:center;font-weight:600;display:flex}.price-summary__amount{color:var(--crimson);font-size:1.5rem;font-weight:700}.price-summary--final{background:linear-gradient(135deg,#d719200f 0%,#c9a9621a 100%)}.seat-map-card{padding:16px;overflow-x:auto}.seat-map__nose{text-align:center;margin-bottom:16px}.seat-map__nose-shape{background:linear-gradient(180deg, var(--crimson) 0%, var(--crimson-dark) 100%);opacity:.3;border-radius:50% 50% 0 0;width:60px;height:30px;margin:0 auto 8px}.seat-map__nose span{color:var(--text-muted);text-transform:uppercase;letter-spacing:.1em;font-size:.7rem}.seat-map__cols{text-align:center;color:var(--text-muted);grid-template-columns:24px repeat(3,36px) 16px repeat(3,36px);gap:4px;margin-bottom:8px;padding-left:0;font-size:.7rem;font-weight:600;display:grid}.seat-map__grid{flex-direction:column;gap:6px;display:flex}.seat-map__row{grid-template-columns:24px repeat(3,36px) 16px repeat(3,36px);align-items:center;gap:4px;display:grid}.seat-map__row-num{color:var(--text-muted);text-align:center;font-size:.7rem}.seat-map__aisle{width:16px}.seat{width:36px;height:36px;color:var(--crimson);background:#d7192014;border:1.5px solid #d7192026;border-radius:8px 8px 4px 4px;justify-content:center;align-items:center;font-size:.65rem;font-weight:600;transition:all .2s;display:flex}.seat:hover:not(:disabled){background:#d7192026;transform:scale(1.05)}.seat--selected{background:var(--crimson);color:var(--white);border-color:var(--crimson);box-shadow:0 4px 12px #d7192059}.seat--occupied{color:#999;cursor:not-allowed;background:#e0e0e0;border-color:#ccc}.seat--legend-available{pointer-events:none}.seat--legend-selected{background:var(--crimson);color:var(--white);pointer-events:none}.seat--legend-occupied{color:#999;pointer-events:none;background:#e0e0e0}.seat-legend{color:var(--text-muted);justify-content:center;gap:16px;margin:16px 0;font-size:.75rem;display:flex}.seat-legend__item{align-items:center;gap:6px;display:flex}.seat-legend .seat{width:24px;height:24px}.seat-selected-info{justify-content:space-between;align-items:center;margin-bottom:16px;font-weight:600;display:flex}.seat-selected-info__fee{color:var(--gold-dark)}.addon-section{margin-bottom:12px}.addon-section__header{color:var(--crimson);align-items:center;gap:10px;margin-bottom:14px;display:flex}.addon-section__header h3{color:var(--text);font-size:1rem;font-weight:600}.addon-options{flex-direction:column;gap:8px;display:flex}.addon-option{border-radius:var(--radius-md);background:var(--white);text-align:left;border:1.5px solid #0000000f;justify-content:space-between;align-items:center;width:100%;padding:12px 14px;font-size:.85rem;transition:all .2s;display:flex}.addon-option--active{border-color:var(--crimson);background:#d719200a}.addon-option__price{color:var(--gold-dark);font-size:.8rem;font-weight:600}.addon-toggles{flex-direction:column;gap:12px;display:flex}.addon-toggle{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;display:flex}.addon-toggle__info{color:var(--crimson);align-items:center;gap:12px;display:flex}.addon-toggle__title{color:var(--text);font-size:.85rem;font-weight:600;display:block}.addon-toggle__desc{color:var(--text-muted);font-size:.75rem;display:block}.addon-toggle__control{flex-shrink:0;align-items:center;gap:10px;display:flex}.addon-toggle__price{color:var(--gold-dark);font-size:.8rem;font-weight:600}.toggle{appearance:none;cursor:pointer;background:#ddd;border-radius:12px;width:44px;height:24px;transition:background .25s;position:relative}.toggle:after{content:"";background:var(--white);border-radius:50%;width:20px;height:20px;transition:transform .25s;position:absolute;top:2px;left:2px;box-shadow:0 2px 4px #00000026}.toggle:checked{background:var(--crimson)}.toggle:checked:after{transform:translate(20px)}.review-card{margin-bottom:12px}.review-card__title{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:12px;font-size:.75rem;font-weight:600}.review-card__flight{justify-content:space-between;align-items:center;display:flex}.review-card__route{font-size:1rem;font-weight:600;display:block}.review-card__meta{color:var(--text-muted);font-size:.8rem;display:block}.review-card__time{color:var(--crimson);font-weight:700}.review-card__rows{flex-direction:column;gap:8px;display:flex}.review-card__row{justify-content:space-between;font-size:.85rem;display:flex}.review-card__row span:first-child{color:var(--text-muted)}.review-card__row span:last-child{font-weight:500}.booking-success{text-align:center;padding:24px 0;position:relative;overflow:hidden}.confetti{pointer-events:none;z-index:200;position:fixed;inset:0;overflow:hidden}.confetti__piece{border-radius:2px;width:8px;height:8px;animation:3s ease-in forwards confettiFall;position:absolute;top:-10px}@keyframes confettiFall{0%{opacity:1;transform:translateY(0)rotate(0)}to{opacity:0;transform:translateY(100vh)rotate(720deg)}}.success-hero{margin-bottom:32px}.success-hero__icon-wrap{justify-content:center;align-items:center;width:120px;height:120px;margin:0 auto 24px;display:flex;position:relative}.success-hero__ring{border:2px solid var(--gold);border-radius:50%;animation:2s infinite ringPulse;position:absolute}.success-hero__ring--1{opacity:.3;width:100%;height:100%}.success-hero__ring--2{opacity:.15;width:130%;height:130%;animation-delay:.5s}@keyframes ringPulse{0%,to{opacity:.3;transform:scale(1)}50%{opacity:.5;transform:scale(1.05)}}.success-hero__icon{color:var(--crimson);animation:.6s cubic-bezier(.34,1.56,.64,1) both iconPop}@keyframes iconPop{0%{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}.success-hero__sparkle{color:var(--gold);animation:1.5s infinite sparkle;position:absolute}.success-hero__sparkle--1{top:0;right:0}.success-hero__sparkle--2{animation-delay:.7s;bottom:10px;left:0}@keyframes sparkle{0%,to{opacity:.4;transform:scale(1)}50%{opacity:1;transform:scale(1.2)}}.success-hero__title{font-family:var(--font-display);color:var(--crimson);margin-bottom:8px;font-size:1.75rem;font-weight:700}.success-hero__subtitle{color:var(--text-muted);font-size:.9rem}.confirmation-code{border-radius:var(--radius-md);border:1px dashed var(--gold);background:linear-gradient(135deg,#c9a96226 0%,#d7192014 100%);margin-top:24px;padding:16px 24px;display:inline-block}.confirmation-code__label{text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted);margin-bottom:4px;font-size:.7rem;display:block}.confirmation-code__value{font-family:var(--font-display);color:var(--crimson);letter-spacing:.15em;font-size:1.75rem;font-weight:700}.success-details{background:var(--glass-bg);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border:1px solid var(--glass-border);border-radius:var(--radius-lg);text-align:left;margin-bottom:24px;padding:20px}.success-details__row{border-bottom:1px solid #0000000d;justify-content:space-between;padding:10px 0;font-size:.9rem;display:flex}.success-details__row:last-child{border-bottom:none}.success-details__row span:first-child{color:var(--text-muted)}.success-details__row--total{border-top:2px solid #c9a9624d;margin-top:4px;padding-top:14px;font-size:1rem;font-weight:700}.success-details__row--total span:last-child{color:var(--crimson);font-size:1.25rem}.success-actions{flex-direction:column;gap:10px;display:flex}.my-trips__title{font-family:var(--font-display);padding:16px 0 4px;font-size:1.5rem;font-weight:600}.my-trips__subtitle{color:var(--text-muted);margin-bottom:20px;font-size:.85rem}.trips-list{flex-direction:column;gap:12px;display:flex}.trip-card{animation:.4s both slideUp}.trip-card__header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.trip-card__code{font-family:var(--font-display);color:var(--crimson);letter-spacing:.08em;font-weight:700}.trip-card__status{border-radius:12px;align-items:center;gap:4px;padding:4px 10px;font-size:.75rem;font-weight:600;display:flex}.trip-card__status--confirmed{color:var(--gold-dark);background:#c9a96226}.trip-card__status--checked-in{color:#228b22;background:#228b221f}.trip-card__route{align-items:center;gap:12px;margin-bottom:12px;display:flex}.trip-card__airport{font-size:1.25rem;font-weight:700;display:block}.trip-card__city{color:var(--text-muted);font-size:.75rem;display:block}.trip-card__connector{color:var(--gold);flex-direction:column;align-items:center;gap:2px;font-size:.7rem;display:flex}.trip-card__dest{text-align:right}.trip-card__meta{color:var(--text-muted);border-top:1px solid #0000000f;flex-wrap:wrap;gap:8px 16px;margin-bottom:14px;padding-top:12px;font-size:.75rem;display:flex}.trip-card__meta span{align-items:center;gap:4px;display:flex}.trip-card__actions{gap:8px;display:flex}.boarding-pass-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:300;background:#00000080;justify-content:center;align-items:flex-end;padding:16px;display:flex;position:fixed;inset:0}.boarding-pass{background:var(--white);border-radius:var(--radius-xl) var(--radius-xl) var(--radius-lg) var(--radius-lg);width:100%;max-width:448px;overflow:hidden;box-shadow:0 -8px 40px #0003}.boarding-pass__header{background:linear-gradient(135deg, var(--crimson) 0%, var(--crimson-dark) 100%);color:var(--white);font-family:var(--font-display);align-items:center;gap:10px;padding:16px 20px;font-weight:600;display:flex}.boarding-pass__body{padding:24px 20px}.boarding-pass__route{justify-content:center;align-items:center;gap:20px;margin-bottom:20px;display:flex}.boarding-pass__airport{text-align:center}.boarding-pass__code{color:var(--crimson);font-size:2rem;font-weight:700;display:block}.boarding-pass__city{color:var(--text-muted);font-size:.8rem}.boarding-pass__arrow{color:var(--gold);font-size:1.5rem}.boarding-pass__details{justify-content:center;gap:24px;margin-bottom:20px;display:flex}.boarding-pass__detail{color:var(--text-muted);align-items:center;gap:6px;font-size:.85rem;display:flex}.boarding-pass__info{background:var(--cream);border-radius:var(--radius-md);grid-template-columns:1fr 1fr;gap:12px;margin-bottom:20px;padding:16px;display:grid}.boarding-pass__info>div{flex-direction:column;gap:2px;display:flex}.boarding-pass__label{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);font-size:.65rem}.boarding-pass__qr{text-align:center;border-radius:var(--radius-md);color:var(--text);border:2px dashed #c9a96266;padding:16px}.boarding-pass__code-text{font-family:var(--font-display);letter-spacing:.12em;color:var(--crimson);margin-top:8px;font-weight:700;display:block}.boarding-pass__footer{padding:16px 20px calc(16px + var(--safe-bottom));border-top:1px solid #0000000f;gap:10px;display:flex}.boarding-pass__footer .btn{flex:1}.empty-state{text-align:center;color:var(--text-muted);padding:48px 24px}.empty-state svg{color:var(--gold);opacity:.6;margin-bottom:16px}.empty-state h3{font-family:var(--font-display);color:var(--text);margin-bottom:8px;font-size:1.25rem}.empty-state p{margin-bottom:24px;font-size:.9rem}.animate-in{animation:.35s both fadeIn}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:.8s linear infinite spin}.auth-screen{justify-content:center;align-items:center;min-height:100dvh;padding:24px 20px;display:flex;position:relative;overflow:hidden}.auth-screen__bg{z-index:0;pointer-events:none;position:fixed;inset:0}.auth-screen__gradient{background:linear-gradient(160deg, var(--crimson-dark) 0%, var(--crimson) 40%, #a01018 100%);position:absolute;inset:0}.auth-screen__pattern{opacity:.06;background-image:radial-gradient(circle at 20% 30%, var(--gold) 1px, transparent 1px), radial-gradient(circle at 80% 70%, var(--gold) 1px, transparent 1px);background-size:40px 40px;position:absolute;inset:0}.auth-screen__content{z-index:1;pointer-events:auto;width:100%;max-width:400px;position:relative}.auth-brand{text-align:center;margin-bottom:32px}.auth-brand__logo{width:72px;height:72px;color:var(--gold);background:#ffffff1f;border:2px solid #c9a96280;border-radius:50%;justify-content:center;align-items:center;margin:0 auto 16px;display:flex;box-shadow:0 8px 32px #0003}.auth-brand__name{font-family:var(--font-display);color:var(--white);margin-bottom:6px;font-size:2rem;font-weight:700}.auth-brand__tagline{color:var(--gold-light);letter-spacing:.05em;font-size:.9rem}.auth-card{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);border-radius:var(--radius-xl);z-index:2;background:#fffffff2;padding:24px;position:relative;box-shadow:0 20px 60px #00000040}.auth-tabs{border-radius:var(--radius-md);background:#0000000a;gap:4px;margin-bottom:24px;padding:4px;display:flex}.auth-tabs__btn{border-radius:var(--radius-sm);color:var(--text-muted);flex:1;padding:12px;font-size:.9rem;font-weight:600;transition:all .25s}.auth-tabs__btn--active{background:var(--white);color:var(--crimson);box-shadow:0 2px 8px #00000014}.auth-form{flex-direction:column;gap:14px;display:flex}.auth-field{align-items:center;display:flex;position:relative}.auth-field__icon{color:var(--text-muted);pointer-events:none;position:absolute;left:14px}.auth-field__input{border-radius:var(--radius-md);background:var(--off-white);border:1.5px solid #00000014;width:100%;padding:14px 44px;transition:border-color .2s,box-shadow .2s}.auth-field__input:focus{border-color:var(--crimson);background:var(--white);outline:none;box-shadow:0 0 0 3px #d719201a}.auth-field__toggle{color:var(--text-muted);padding:4px;position:absolute;right:12px}.auth-error{color:var(--crimson);text-align:center;font-size:.8rem}.auth-success{color:#228b22;text-align:center;border-radius:var(--radius-md);background:#228b2214;border:1px solid #228b2233;justify-content:center;align-items:center;gap:8px;padding:10px;font-size:.85rem;font-weight:600;display:flex}.form-feedback{border-radius:var(--radius-md);margin-bottom:14px;padding:12px 14px;font-size:.85rem;line-height:1.4}.form-feedback--error{color:var(--crimson);background:#d7192014;border:1px solid #d7192033}.form-feedback--success{color:#1b5e20;background:#228b2214;border:1px solid #228b2233}.welcome-toast{border-radius:var(--radius-md);color:var(--text);background:linear-gradient(135deg,#c9a9622e 0%,#228b221a 100%);border:1px solid #c9a96266;justify-content:space-between;align-items:center;gap:12px;margin:0 16px 12px;padding:12px 14px;font-size:.85rem;font-weight:500;animation:.35s both slideUp;display:flex}.welcome-toast__close{width:28px;height:28px;color:var(--text-muted);background:#0000000d;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.auth-forgot{color:var(--crimson);align-self:flex-end;font-size:.8rem;font-weight:500}.auth-submit{cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent;z-index:2;margin-top:4px;position:relative}.auth-footer{text-align:center;color:var(--text-muted);margin-top:20px;font-size:.85rem}.auth-footer button{color:var(--crimson);font-weight:600}.auth-legal{text-align:center;color:#ffffff80;margin-top:20px;font-size:.7rem;line-height:1.4}.home-screen{padding-bottom:8px}.featured-banner{background:linear-gradient(160deg, var(--crimson-dark) 0%, var(--crimson) 60%, #b01018 100%);margin-bottom:-20px;padding:24px 20px 16px;position:relative;overflow:hidden}.featured-banner__visual{position:absolute;inset:0;overflow:hidden}.featured-banner__sky{background:radial-gradient(at 70% 20%,#c9a96233 0%,#0000 50%),radial-gradient(at 30% 80%,#ffffff0d 0%,#0000 40%);position:absolute;inset:0}.featured-banner__cloud{background:#ffffff0f;border-radius:50%;position:absolute}.featured-banner__cloud--1{width:120px;height:40px;top:20%;right:-20px}.featured-banner__cloud--2{width:80px;height:30px;bottom:30%;left:10%}.featured-banner__plane{color:#c9a96259;animation:6s ease-in-out infinite planeFloat;position:absolute;top:18%;right:15%;transform:rotate(-15deg)}@keyframes planeFloat{0%,to{transform:rotate(-15deg)translateY(0)}50%{transform:rotate(-12deg)translateY(-8px)}}.featured-banner__content{z-index:1;position:relative}.featured-banner__eyebrow{color:var(--gold);text-transform:uppercase;letter-spacing:.12em;align-items:center;gap:6px;margin-bottom:8px;font-size:.7rem;font-weight:600;display:inline-flex}.featured-banner__title{font-family:var(--font-display);color:var(--white);margin-bottom:6px;font-size:1.65rem;font-weight:700;line-height:1.2}.featured-banner__subtitle{color:var(--text-light);max-width:280px;font-size:.85rem}.travel-updates{z-index:1;margin-top:20px;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000,#000 10% 90%,#0000);mask-image:linear-gradient(90deg,#0000,#000 10% 90%,#0000)}.travel-updates__track{white-space:nowrap;gap:32px;animation:25s linear infinite ticker;display:flex}@keyframes ticker{0%{transform:translate(0)}to{transform:translate(-50%)}}.travel-updates__item{color:#ffffffbf;flex-shrink:0;align-items:center;gap:6px;font-size:.75rem;display:inline-flex}.travel-updates__date{color:var(--gold-light);margin-left:4px;font-size:.65rem}.home-section{padding:20px 16px 0}.home-section--search{z-index:2;padding-top:0;position:relative}.home-section--last{padding-bottom:8px}.section-header{justify-content:space-between;align-items:center;margin-bottom:14px;display:flex}.section-header__title{font-family:var(--font-display);color:var(--text);font-size:1.15rem;font-weight:600}.section-header__link{color:var(--crimson);align-items:center;gap:2px;font-size:.8rem;font-weight:600;display:flex}.destinations-carousel{position:relative}.destinations-scroll{scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;gap:12px;margin:0 -16px;padding-bottom:8px;padding-left:16px;padding-right:16px;display:flex;overflow-x:auto}.destinations-scroll-btn{z-index:5;width:44px;height:44px;color:var(--white);background:#8b0000b8;border:1.5px solid #c9a9628c;border-radius:50%;justify-content:center;align-items:center;transition:transform .2s,background .2s,box-shadow .2s;display:flex;position:absolute;top:50%;transform:translateY(-50%);box-shadow:0 4px 20px #00000047,inset 0 1px #ffffff26}.destinations-scroll-btn--prev{left:6px}.destinations-scroll-btn--next{right:6px}.destinations-scroll-btn:hover{background:#d71920e0;transform:translateY(-50%)scale(1.05);box-shadow:0 6px 24px #8b000059,inset 0 1px #fff3}.destinations-scroll-btn:active{transform:translateY(-50%)scale(.96)}.destinations-scroll::-webkit-scrollbar{display:none}.destination-card{scroll-snap-align:start;border-radius:var(--radius-lg);text-align:left;border:1px solid #ffffff1f;flex:0 0 220px;height:280px;transition:transform .25s,box-shadow .25s;position:relative;overflow:hidden;box-shadow:0 8px 32px #0003}.destination-card:active{transform:scale(.98)}.destination-card__bg{object-fit:cover;object-position:center;width:100%;height:100%;position:absolute;inset:0;transform:translateZ(0)}.destination-card__code{z-index:2;letter-spacing:.08em;color:var(--gold-light);background:#00000080;border:1px solid #c9a96266;border-radius:4px;padding:3px 8px;font-size:.7rem;font-weight:700;position:absolute;top:12px;left:12px}.destination-card__gradient{z-index:1;pointer-events:none;background:linear-gradient(#0000 0%,#0003 35%,#0000008c 65%,#000000d1 100%);height:58%;position:absolute;bottom:0;left:0;right:0}.destination-card__content{z-index:2;flex-direction:column;padding:16px;display:flex;position:absolute;bottom:0;left:0;right:0}.destination-card__city{font-family:var(--font-display);color:var(--gold);text-shadow:0 1px 3px #00000080;margin-bottom:2px;font-size:1.2rem;font-weight:700;line-height:1.2}.destination-card__country{color:var(--white);text-shadow:0 1px 2px #00000073;margin-bottom:6px;font-size:.75rem}.destination-card__tagline{color:#ffffffd9;text-shadow:0 1px 2px #0006;margin-bottom:10px;font-size:.72rem;font-style:italic;line-height:1.3}.destination-card__price{color:#ffffffbf;text-shadow:0 1px 2px #0006;border-top:1px solid #c9a9624d;align-items:baseline;gap:4px;padding-top:10px;font-size:.72rem;display:flex}.destination-card__price strong{font-family:var(--font-display);color:var(--gold);font-size:1.2rem;font-weight:700}.cabin-scroll{scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;gap:12px;margin:0 -16px;padding-bottom:8px;padding-left:16px;padding-right:16px;display:flex;overflow-x:auto}.cabin-scroll::-webkit-scrollbar{display:none}.cabin-card{scroll-snap-align:start;border-radius:var(--radius-lg);color:var(--white);flex-direction:column;flex:0 0 260px;min-height:220px;padding:20px;display:flex}.cabin-card__accent{text-transform:uppercase;letter-spacing:.08em;margin-bottom:6px;font-size:.7rem;font-weight:600}.cabin-card__name{font-family:var(--font-display);margin-bottom:8px;font-size:1.25rem;font-weight:700}.cabin-card__desc{opacity:.85;margin-bottom:auto;font-size:.78rem;line-height:1.4}.cabin-card__features{flex-wrap:wrap;gap:6px;margin-top:14px;list-style:none;display:flex}.cabin-card__features li{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff26;border-radius:12px;padding:4px 10px;font-size:.65rem;font-weight:600}.skywards-banner{border-radius:var(--radius-xl);background:linear-gradient(135deg, #1a0a0a 0%, var(--crimson-dark) 50%, var(--crimson) 100%);padding:24px 20px;position:relative;overflow:hidden}.skywards-banner__glow{background:radial-gradient(circle,#c9a9624d 0%,#0000 70%);border-radius:50%;width:200px;height:200px;position:absolute;top:-40%;right:-20%}.skywards-banner__content{z-index:1;position:relative}.skywards-banner__logo{font-family:var(--font-display);color:var(--gold);margin-bottom:8px;font-size:1.5rem;font-weight:700;display:block}.skywards-banner__title{color:var(--white);margin-bottom:6px;font-size:1rem;font-weight:600}.skywards-banner__text{color:#ffffffb3;margin-bottom:16px;font-size:.8rem;line-height:1.4}.skywards-banner__stats{gap:24px;margin-bottom:16px;display:flex}.skywards-banner__stat-value{font-family:var(--font-display);color:var(--gold);font-size:1.35rem;font-weight:700;display:block}.skywards-banner__stat-label{color:#ffffff80;text-transform:uppercase;letter-spacing:.05em;font-size:.65rem}.profile-screen{padding:16px}.profile-header{align-items:center;gap:16px;margin-bottom:20px;display:flex}.profile-header__avatar{background:linear-gradient(135deg, var(--crimson) 0%, var(--crimson-dark) 100%);width:64px;height:64px;color:var(--white);font-family:var(--font-display);border-radius:50%;justify-content:center;align-items:center;font-size:1.5rem;font-weight:700;display:flex;box-shadow:0 4px 16px #d719204d}.profile-header__name{font-family:var(--font-display);font-size:1.35rem;font-weight:600}.profile-header__email{color:var(--text-muted);font-size:.85rem}.profile-skywards{text-align:left;border-radius:var(--radius-lg);cursor:pointer;background:linear-gradient(135deg,#c9a9621f 0%,#d719200f 100%);border:1px solid #c9a96240;justify-content:space-between;align-items:center;width:100%;margin-bottom:20px;padding:16px;transition:transform .2s,box-shadow .2s,border-color .2s;display:flex}.profile-skywards:hover{border-color:#c9a96273;box-shadow:0 4px 20px #c9a96226}.profile-skywards:active{transform:scale(.99)}.profile-skywards__tier{color:var(--gold-dark);align-items:center;gap:12px;display:flex}.profile-skywards__label{color:var(--text);font-size:.95rem;font-weight:700;display:block}.profile-skywards__miles{color:var(--text-muted);font-size:.8rem}.profile-skywards__link{color:var(--crimson);align-items:center;gap:2px;font-size:.8rem;font-weight:600;display:flex}.profile-menu{flex-direction:column;gap:4px;margin-bottom:20px;display:flex}.profile-menu__item{border-radius:var(--radius-md);background:var(--white);text-align:left;border:1px solid #0000000a;align-items:center;gap:14px;width:100%;padding:14px;transition:background .2s;display:flex}.profile-menu__item:hover{background:#d7192008}.profile-menu__icon{width:40px;height:40px;color:var(--crimson);background:#d719200f;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;display:flex}.profile-menu__text{flex:1;min-width:0}.profile-menu__label{font-size:.9rem;font-weight:600;display:block}.profile-menu__desc{color:var(--text-muted);font-size:.75rem;display:block}.profile-menu__chevron{color:var(--text-muted);flex-shrink:0}.profile-member-since{text-align:center;color:var(--text-muted);margin-top:16px;font-size:.75rem}.main-content--tabs{padding-left:0;padding-right:0}.my-trips{padding:0 16px}body.skywards-modal-open,body.destinations-modal-open,body.personal-details-modal-open,body.notifications-modal-open,body.language-region-modal-open,body.privacy-security-modal-open,body.app-settings-modal-open,body.help-support-modal-open{overflow:hidden}body.skywards-modal-open .bottom-nav,body.destinations-modal-open .bottom-nav,body.personal-details-modal-open .bottom-nav,body.notifications-modal-open .bottom-nav,body.language-region-modal-open .bottom-nav,body.privacy-security-modal-open .bottom-nav,body.app-settings-modal-open .bottom-nav,body.help-support-modal-open .bottom-nav{visibility:hidden;pointer-events:none}.skywards-modal-overlay{-webkit-backdrop-filter:blur(6px);z-index:1000;background:#0000008c;justify-content:center;align-items:stretch;padding:0;display:flex;position:fixed;inset:0}.skywards-modal{-webkit-backdrop-filter:blur(24px);background:#ffffffeb;border:none;border-top:1px solid #c9a96259;border-radius:0;flex-direction:column;width:100%;max-width:480px;height:100dvh;max-height:100dvh;display:flex;overflow:hidden;box-shadow:0 -12px 48px #8b000033}.skywards-modal__header{background:linear-gradient(135deg, var(--crimson-dark) 0%, var(--crimson) 100%);color:var(--white);flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:12px;padding:20px 20px 16px;display:flex}.skywards-modal__eyebrow{color:var(--gold-light);text-transform:uppercase;letter-spacing:.1em;align-items:center;gap:6px;margin-bottom:4px;font-size:.7rem;font-weight:600;display:inline-flex}.skywards-modal__title{font-family:var(--font-display);font-size:1.4rem;font-weight:700;line-height:1.2}.skywards-modal__close{width:40px;height:40px;color:var(--white);background:#ffffff26;border:1px solid #ffffff40;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:background .2s,transform .2s;display:flex}.skywards-modal__close:hover{background:#ffffff40;transform:scale(1.05)}.skywards-modal__body{padding:20px 16px calc(var(--nav-height) + var(--safe-bottom) + 32px);-webkit-overflow-scrolling:touch;overscroll-behavior:contain;flex:1;overflow-y:auto}.skywards-modal__scroll-spacer{height:calc(var(--nav-height) + var(--safe-bottom) + 24px);flex-shrink:0}.skywards-modal__section--last{margin-bottom:0;padding-bottom:8px}.skywards-modal__status{color:var(--gold-dark);align-items:center;gap:14px;margin-bottom:20px;display:flex;background:linear-gradient(135deg,#c9a96226 0%,#d719200f 100%)!important;border-color:#c9a96259!important;padding:16px!important}.skywards-modal__status-tier{font-family:var(--font-display);color:var(--text);font-size:1.05rem;font-weight:700;display:block}.skywards-modal__status-miles{color:var(--text-muted);font-size:.8rem}.skywards-modal__section{margin-bottom:24px}.skywards-modal__section:last-child{margin-bottom:0}.skywards-modal__section-title{font-family:var(--font-display);color:var(--crimson);align-items:center;gap:8px;margin-bottom:12px;font-size:1.05rem;font-weight:600;display:flex}.skywards-tiers{flex-direction:column;gap:10px;display:flex}.skywards-tier{border-radius:var(--radius-md);background:#fff9;border:1px solid #0000000f;padding:14px;transition:border-color .2s,box-shadow .2s}.skywards-tier--active{background:#c9a96214;border-color:#c9a96299;box-shadow:0 4px 16px #c9a96233}.skywards-tier__badge{color:var(--white);letter-spacing:.05em;border-radius:12px;margin-bottom:6px;padding:4px 12px;font-size:.75rem;font-weight:700;display:inline-block}.skywards-tier__requirement{color:var(--gold-dark);margin-bottom:8px;font-size:.72rem;font-weight:600;display:block}.skywards-tier__perks{flex-direction:column;gap:4px;list-style:none;display:flex}.skywards-tier__perks li{color:var(--text-muted);padding-left:14px;font-size:.78rem;position:relative}.skywards-tier__perks li:before{content:"✦";color:var(--gold);font-size:.6rem;position:absolute;top:2px;left:0}.skywards-perks-list{flex-direction:column;gap:10px;display:flex}.skywards-perk{padding:14px!important}.skywards-perk h4{color:var(--text);margin-bottom:4px;font-size:.9rem;font-weight:600}.skywards-perk p{color:var(--text-muted);font-size:.78rem;line-height:1.4}.skywards-redemption{flex-direction:column;gap:10px;display:flex}.skywards-redemption__item{padding:14px!important}.skywards-redemption__header{justify-content:space-between;align-items:center;gap:8px;margin-bottom:6px;display:flex}.skywards-redemption__header h4{color:var(--text);font-size:.9rem;font-weight:600}.skywards-redemption__miles{color:var(--gold-dark);background:#c9a96226;border:1px solid #c9a9624d;border-radius:12px;flex-shrink:0;padding:4px 10px;font-size:.72rem;font-weight:700}.skywards-redemption__item p{color:var(--text-muted);font-size:.78rem;line-height:1.4}.destinations-modal-overlay{-webkit-backdrop-filter:blur(6px);z-index:1000;background:#0000008c;justify-content:center;align-items:stretch;padding:0;display:flex;position:fixed;inset:0}.destinations-modal{-webkit-backdrop-filter:blur(24px);background:#ffffffeb;border:none;border-top:1px solid #c9a96259;border-radius:0;flex-direction:column;width:100%;max-width:480px;height:100dvh;max-height:100dvh;display:flex;overflow:hidden;box-shadow:0 -12px 48px #8b000033}.destinations-modal__header{background:linear-gradient(135deg, var(--crimson-dark) 0%, var(--crimson) 100%);color:var(--white);flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:12px;padding:20px 20px 16px;display:flex}.destinations-modal__eyebrow{color:var(--gold-light);text-transform:uppercase;letter-spacing:.1em;align-items:center;gap:6px;margin-bottom:4px;font-size:.7rem;font-weight:600;display:inline-flex}.destinations-modal__title{font-family:var(--font-display);font-size:1.4rem;font-weight:700;line-height:1.2}.destinations-modal__close{width:40px;height:40px;color:var(--white);background:#ffffff26;border:1px solid #ffffff40;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:background .2s,transform .2s;display:flex}.destinations-modal__close:hover{background:#ffffff40;transform:scale(1.05)}.destinations-modal__body{padding:20px 16px calc(var(--nav-height) + var(--safe-bottom) + 32px);-webkit-overflow-scrolling:touch;overscroll-behavior:contain;flex:1;overflow-y:auto}.destinations-modal__grid{grid-template-columns:repeat(2,1fr);gap:12px;display:grid}.destinations-modal__card{border-radius:var(--radius-lg);text-align:left;border:1px solid #fff3;height:220px;transition:transform .2s,box-shadow .2s;position:relative;overflow:hidden;box-shadow:0 8px 32px #0000002e;padding:0!important}.destinations-modal__card:active{transform:scale(.98)}.destinations-modal__card-bg{object-fit:cover;object-position:center;width:100%;height:100%;position:absolute;inset:0}.destinations-modal__card-code{z-index:2;letter-spacing:.08em;color:var(--gold-light);background:#00000080;border:1px solid #c9a96266;border-radius:4px;padding:3px 7px;font-size:.65rem;font-weight:700;position:absolute;top:10px;left:10px}.destinations-modal__card-gradient{z-index:1;pointer-events:none;background:linear-gradient(#0000 0%,#00000080 60%,#000000d9 100%);height:62%;position:absolute;bottom:0;left:0;right:0}.destinations-modal__card-content{z-index:2;flex-direction:column;gap:2px;padding:12px;display:flex;position:absolute;bottom:0;left:0;right:0}.destinations-modal__card-city{font-family:var(--font-display);color:var(--gold);text-shadow:0 1px 3px #00000080;font-size:1rem;font-weight:700;line-height:1.2}.destinations-modal__card-country{color:#ffffffe6;text-shadow:0 1px 2px #00000073;margin-bottom:8px;font-size:.68rem}.destinations-modal__card-price{color:var(--gold-dark);-webkit-backdrop-filter:blur(8px);background:#ffffffeb;border:1px solid #c9a96259;border-radius:12px;align-self:flex-start;padding:4px 10px;font-size:.68rem;font-weight:700;box-shadow:0 2px 8px #00000026}.destinations-modal__scroll-spacer{height:calc(var(--nav-height) + var(--safe-bottom) + 24px);flex-shrink:0}.personal-details-modal-overlay{-webkit-backdrop-filter:blur(6px);z-index:1000;background:#0000008c;justify-content:center;align-items:stretch;padding:0;display:flex;position:fixed;inset:0}.personal-details-modal{-webkit-backdrop-filter:blur(24px);background:#ffffffeb;border:none;border-top:1px solid #c9a96259;border-radius:0;flex-direction:column;width:100%;max-width:480px;height:100dvh;max-height:100dvh;display:flex;overflow:hidden;box-shadow:0 -12px 48px #8b000033}.personal-details-modal__header{background:linear-gradient(135deg, var(--crimson-dark) 0%, var(--crimson) 100%);color:var(--white);flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:12px;padding:20px 20px 16px;display:flex}.personal-details-modal__eyebrow{color:var(--gold-light);text-transform:uppercase;letter-spacing:.1em;align-items:center;gap:6px;margin-bottom:4px;font-size:.7rem;font-weight:600;display:inline-flex}.personal-details-modal__title{font-family:var(--font-display);font-size:1.4rem;font-weight:700;line-height:1.2}.personal-details-modal__close{width:40px;height:40px;color:var(--white);background:#ffffff26;border:1px solid #ffffff40;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:background .2s,transform .2s;display:flex}.personal-details-modal__close:hover{background:#ffffff40;transform:scale(1.05)}.personal-details-modal__body{padding:20px 16px calc(var(--nav-height) + var(--safe-bottom) + 32px);-webkit-overflow-scrolling:touch;overscroll-behavior:contain;flex:1;overflow-y:auto}.personal-details-modal__success{border-radius:var(--radius-md);color:#1b6b1b;background:#228b221f;border:1px solid #228b2240;align-items:center;gap:8px;margin-bottom:16px;padding:12px 14px;font-size:.85rem;font-weight:600;display:flex}.personal-details-form{flex-direction:column;gap:20px;display:flex}.personal-details-form__section{border:none;flex-direction:column;gap:12px;margin:0;padding:0;display:flex}.personal-details-form__legend{font-family:var(--font-display);color:var(--crimson);margin-bottom:4px;padding:0;font-size:1rem;font-weight:600}.personal-details-form__field{flex:none}.personal-details-modal__scroll-spacer{height:calc(var(--nav-height) + var(--safe-bottom) + 24px);flex-shrink:0}.notifications-modal-overlay{-webkit-backdrop-filter:blur(6px);z-index:1000;background:#0000008c;justify-content:center;align-items:stretch;padding:0;display:flex;position:fixed;inset:0}.notifications-modal{-webkit-backdrop-filter:blur(24px);background:#ffffffeb;border:none;border-top:1px solid #c9a96259;border-radius:0;flex-direction:column;width:100%;max-width:480px;height:100dvh;max-height:100dvh;display:flex;overflow:hidden;box-shadow:0 -12px 48px #8b000033}.notifications-modal__header{background:linear-gradient(135deg, var(--crimson-dark) 0%, var(--crimson) 100%);color:var(--white);flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:12px;padding:20px 20px 16px;display:flex}.notifications-modal__eyebrow{color:var(--gold-light);text-transform:uppercase;letter-spacing:.1em;align-items:center;gap:6px;margin-bottom:4px;font-size:.7rem;font-weight:600;display:inline-flex}.notifications-modal__title{font-family:var(--font-display);font-size:1.4rem;font-weight:700;line-height:1.2}.notifications-modal__close{width:40px;height:40px;color:var(--white);background:#ffffff26;border:1px solid #ffffff40;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:background .2s,transform .2s;display:flex}.notifications-modal__close:hover{background:#ffffff40;transform:scale(1.05)}.notifications-modal__body{padding:20px 16px calc(var(--nav-height) + var(--safe-bottom) + 32px);-webkit-overflow-scrolling:touch;overscroll-behavior:contain;flex:1;overflow-y:auto}.notifications-modal__section{margin-bottom:24px}.notifications-modal__section-title{font-family:var(--font-display);color:var(--crimson);margin-bottom:12px;font-size:1rem;font-weight:600}.notifications-list{flex-direction:column;gap:10px;display:flex}.notifications-item{align-items:flex-start;gap:12px;display:flex;padding:14px!important}.notifications-item--unread{background:linear-gradient(135deg,#d719200a 0%,#ffffffd9 100%)!important;border-color:#d7192040!important}.notifications-item__icon{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:36px;height:36px;display:flex}.notifications-item__icon--flight{color:var(--crimson);background:#d719201f}.notifications-item__icon--promo{color:var(--gold-dark);background:#c9a9622e}.notifications-item__icon--alert{color:#1565c0;background:#2196f31f}.notifications-item__content{flex:1;min-width:0}.notifications-item__meta{justify-content:space-between;align-items:center;gap:8px;margin-bottom:4px;display:flex}.notifications-item__category{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-size:.68rem;font-weight:700}.notifications-item__time{color:var(--text-muted);flex-shrink:0;font-size:.68rem}.notifications-item__title{color:var(--text);margin-bottom:4px;font-size:.88rem;font-weight:600;line-height:1.3}.notifications-item__message{color:var(--text-muted);font-size:.78rem;line-height:1.45}.notifications-prefs{flex-direction:column;gap:12px;display:flex}.notifications-pref{border-radius:var(--radius-md);cursor:pointer;background:#ffffffb3;border:1px solid #c9a96233;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.notifications-pref__info{flex-direction:column;gap:2px;display:flex}.notifications-pref__title{color:var(--text);font-size:.85rem;font-weight:600}.notifications-pref__desc{color:var(--text-muted);font-size:.72rem}.notifications-modal__scroll-spacer{height:calc(var(--nav-height) + var(--safe-bottom) + 24px);flex-shrink:0}.language-region-modal-overlay{-webkit-backdrop-filter:blur(6px);z-index:1000;background:#0000008c;justify-content:center;align-items:stretch;padding:0;display:flex;position:fixed;inset:0}.language-region-modal{-webkit-backdrop-filter:blur(24px);background:#ffffffeb;border:none;border-top:1px solid #c9a96259;border-radius:0;flex-direction:column;width:100%;max-width:480px;height:100dvh;max-height:100dvh;display:flex;overflow:hidden;box-shadow:0 -12px 48px #8b000033}.language-region-modal__header{background:linear-gradient(135deg, var(--crimson-dark) 0%, var(--crimson) 100%);color:var(--white);flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:12px;padding:20px 20px 16px;display:flex}.language-region-modal__eyebrow{color:var(--gold-light);text-transform:uppercase;letter-spacing:.1em;align-items:center;gap:6px;margin-bottom:4px;font-size:.7rem;font-weight:600;display:inline-flex}.language-region-modal__title{font-family:var(--font-display);font-size:1.4rem;font-weight:700;line-height:1.2}.language-region-modal__close{width:40px;height:40px;color:var(--white);background:#ffffff26;border:1px solid #ffffff40;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:background .2s,transform .2s;display:flex}.language-region-modal__close:hover{background:#ffffff40;transform:scale(1.05)}.language-region-modal__body{padding:20px 16px calc(var(--nav-height) + var(--safe-bottom) + 32px);-webkit-overflow-scrolling:touch;overscroll-behavior:contain;flex:1;overflow-y:auto}.language-region-modal__section{margin-bottom:24px}.language-region-modal__section-title{font-family:var(--font-display);color:var(--crimson);margin-bottom:12px;font-size:1rem;font-weight:600}.locale-options{flex-direction:column;gap:10px;display:flex}.locale-option{text-align:left;justify-content:space-between;align-items:center;gap:12px;width:100%;transition:border-color .2s,box-shadow .2s,transform .2s;display:flex;padding:14px 16px!important}.locale-option:active{transform:scale(.99)}.locale-option--selected{box-shadow:0 4px 16px #c9a9622e;background:linear-gradient(135deg,#c9a96224 0%,#ffffffe0 100%)!important;border-color:#c9a9628c!important}.locale-option__text{flex-direction:column;gap:2px;display:flex}.locale-option__label{color:var(--text);font-size:.9rem;font-weight:600}.locale-option__native{color:var(--text-muted);font-size:.75rem}.locale-option__check{background:var(--crimson);width:28px;height:28px;color:var(--white);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;display:flex}.language-region-modal__scroll-spacer{height:calc(var(--nav-height) + var(--safe-bottom) + 24px);flex-shrink:0}.privacy-security-modal-overlay{-webkit-backdrop-filter:blur(6px);z-index:1000;background:#0000008c;justify-content:center;align-items:stretch;padding:0;display:flex;position:fixed;inset:0}.privacy-security-modal{-webkit-backdrop-filter:blur(24px);background:#ffffffeb;border:none;border-top:1px solid #c9a96259;border-radius:0;flex-direction:column;width:100%;max-width:480px;height:100dvh;max-height:100dvh;display:flex;overflow:hidden;box-shadow:0 -12px 48px #8b000033}.privacy-security-modal__header{background:linear-gradient(135deg, var(--crimson-dark) 0%, var(--crimson) 100%);color:var(--white);flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:12px;padding:20px 20px 16px;display:flex}.privacy-security-modal__eyebrow{color:var(--gold-light);text-transform:uppercase;letter-spacing:.1em;align-items:center;gap:6px;margin-bottom:4px;font-size:.7rem;font-weight:600;display:inline-flex}.privacy-security-modal__title{font-family:var(--font-display);font-size:1.4rem;font-weight:700;line-height:1.2}.privacy-security-modal__close{width:40px;height:40px;color:var(--white);background:#ffffff26;border:1px solid #ffffff40;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:background .2s,transform .2s;display:flex}.privacy-security-modal__close:hover{background:#ffffff40;transform:scale(1.05)}.privacy-security-modal__body{padding:20px 16px calc(var(--nav-height) + var(--safe-bottom) + 32px);-webkit-overflow-scrolling:touch;overscroll-behavior:contain;flex:1;overflow-y:auto}.privacy-security-modal__success{border-radius:var(--radius-md);color:#1b6b1b;background:#228b221f;border:1px solid #228b2240;align-items:center;gap:8px;margin-bottom:16px;padding:12px 14px;font-size:.85rem;font-weight:600;display:flex}.privacy-security-modal__error{border-radius:var(--radius-md);color:var(--crimson-dark);background:#d7192014;border:1px solid #d7192033;align-items:center;gap:8px;margin-bottom:12px;padding:12px 14px;font-size:.82rem;font-weight:600;display:flex}.privacy-security-modal__section{margin-bottom:24px}.privacy-security-modal__section-title{font-family:var(--font-display);color:var(--crimson);margin-bottom:12px;font-size:1rem;font-weight:600}.privacy-security-form{flex-direction:column;gap:12px;display:flex}.privacy-security-form__field{flex:none}.security-prefs{flex-direction:column;gap:12px;display:flex}.security-pref{border-radius:var(--radius-md);cursor:pointer;background:#ffffffb3;border:1px solid #c9a96233;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.security-pref__info{flex-direction:column;gap:2px;display:flex}.security-pref__title{color:var(--text);font-size:.85rem;font-weight:600}.security-pref__desc{color:var(--text-muted);font-size:.72rem}.privacy-security-modal__scroll-spacer{height:calc(var(--nav-height) + var(--safe-bottom) + 24px);flex-shrink:0}.app-settings-modal-overlay{-webkit-backdrop-filter:blur(6px);z-index:1000;background:#0000008c;justify-content:center;align-items:stretch;padding:0;display:flex;position:fixed;inset:0}.app-settings-modal{-webkit-backdrop-filter:blur(24px);background:#ffffffeb;border:none;border-top:1px solid #c9a96259;border-radius:0;flex-direction:column;width:100%;max-width:480px;height:100dvh;max-height:100dvh;display:flex;overflow:hidden;box-shadow:0 -12px 48px #8b000033}.app-settings-modal__header{background:linear-gradient(135deg, var(--crimson-dark) 0%, var(--crimson) 100%);color:var(--white);flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:12px;padding:20px 20px 16px;display:flex}.app-settings-modal__eyebrow{color:var(--gold-light);text-transform:uppercase;letter-spacing:.1em;align-items:center;gap:6px;margin-bottom:4px;font-size:.7rem;font-weight:600;display:inline-flex}.app-settings-modal__title{font-family:var(--font-display);font-size:1.4rem;font-weight:700;line-height:1.2}.app-settings-modal__close{width:40px;height:40px;color:var(--white);background:#ffffff26;border:1px solid #ffffff40;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:background .2s,transform .2s;display:flex}.app-settings-modal__close:hover{background:#ffffff40;transform:scale(1.05)}.app-settings-modal__body{padding:20px 16px calc(var(--nav-height) + var(--safe-bottom) + 32px);-webkit-overflow-scrolling:touch;overscroll-behavior:contain;flex:1;overflow-y:auto}.app-settings-modal__success{border-radius:var(--radius-md);color:#1b6b1b;background:#228b221f;border:1px solid #228b2240;align-items:center;gap:8px;margin-bottom:16px;padding:12px 14px;font-size:.85rem;font-weight:600;display:flex}.app-settings-modal__section{margin-bottom:24px}.app-settings-modal__section-title{font-family:var(--font-display);color:var(--crimson);margin-bottom:12px;font-size:1rem;font-weight:600}.theme-toggle{grid-template-columns:1fr 1fr;gap:10px;margin-bottom:12px;display:grid}.theme-toggle__option{border-radius:var(--radius-md);color:var(--text-muted);background:#ffffffb3;border:1.5px solid #c9a96233;justify-content:center;align-items:center;gap:8px;padding:12px;font-size:.85rem;font-weight:600;transition:border-color .2s,background .2s,color .2s,transform .2s;display:flex}.theme-toggle__option--active{color:var(--crimson);background:linear-gradient(135deg,#c9a96229 0%,#ffffffe6 100%);border-color:#c9a9628c;box-shadow:0 4px 14px #c9a96226}.theme-toggle__option:active{transform:scale(.98)}.settings-prefs{flex-direction:column;gap:12px;display:flex}.settings-pref{border-radius:var(--radius-md);cursor:pointer;background:#ffffffb3;border:1px solid #c9a96233;justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;display:flex}.settings-pref__info{flex-direction:column;gap:2px;display:flex}.settings-pref__title{color:var(--text);font-size:.85rem;font-weight:600}.settings-pref__desc{color:var(--text-muted);font-size:.72rem}.cache-panel{flex-direction:column;gap:14px;display:flex;padding:16px!important}.cache-panel__label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);margin-bottom:4px;font-size:.72rem;font-weight:600;display:block}.cache-panel__size{font-family:var(--font-display);color:var(--crimson);margin-bottom:6px;font-size:1.35rem;font-weight:700;display:block}.cache-panel__desc{color:var(--text-muted);font-size:.75rem;line-height:1.4}.cache-panel__btn{justify-content:center;align-items:center;gap:8px;display:inline-flex}.app-settings-modal__scroll-spacer{height:calc(var(--nav-height) + var(--safe-bottom) + 24px);flex-shrink:0}[data-theme=dark] .theme-toggle__option{background:#282828bf;border-color:#ffffff1a}[data-theme=dark] .theme-toggle__option--active{background:linear-gradient(135deg,#c9a96233 0%,#282828e6 100%)}[data-theme=dark] .app-settings-modal__success{color:#7ddc7d;background:#228b2233}.help-support-modal-overlay{-webkit-backdrop-filter:blur(6px);z-index:1000;background:#0000008c;justify-content:center;align-items:stretch;padding:0;display:flex;position:fixed;inset:0}.help-support-modal{-webkit-backdrop-filter:blur(24px);background:#ffffffeb;border:none;border-top:1px solid #c9a96259;border-radius:0;flex-direction:column;width:100%;max-width:480px;height:100dvh;max-height:100dvh;display:flex;overflow:hidden;box-shadow:0 -12px 48px #8b000033}.help-support-modal__header{background:linear-gradient(135deg, var(--crimson-dark) 0%, var(--crimson) 100%);color:var(--white);flex-shrink:0;justify-content:space-between;align-items:flex-start;gap:12px;padding:20px 20px 16px;display:flex}.help-support-modal__eyebrow{color:var(--gold-light);text-transform:uppercase;letter-spacing:.1em;align-items:center;gap:6px;margin-bottom:4px;font-size:.7rem;font-weight:600;display:inline-flex}.help-support-modal__title{font-family:var(--font-display);font-size:1.4rem;font-weight:700;line-height:1.2}.help-support-modal__close{width:40px;height:40px;color:var(--white);background:#ffffff26;border:1px solid #ffffff40;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:background .2s,transform .2s;display:flex}.help-support-modal__close:hover{background:#ffffff40;transform:scale(1.05)}.help-support-modal__body{padding:20px 16px calc(var(--nav-height) + var(--safe-bottom) + 32px);-webkit-overflow-scrolling:touch;overscroll-behavior:contain;flex:1;overflow-y:auto}.help-support-modal__section{margin-bottom:24px}.help-support-modal__section-title{font-family:var(--font-display);color:var(--crimson);align-items:center;gap:8px;margin-bottom:12px;font-size:1rem;font-weight:600;display:flex}.help-support-modal__success{border-radius:var(--radius-md);color:#1b6b1b;background:#228b221f;border:1px solid #228b2240;align-items:center;gap:8px;margin-bottom:12px;padding:12px 14px;font-size:.85rem;font-weight:600;display:flex}.faq-accordion{flex-direction:column;gap:8px;display:flex}.faq-item{overflow:hidden;padding:0!important}.faq-item--open{border-color:#c9a96273!important}.faq-item__trigger{text-align:left;width:100%;color:var(--text);justify-content:space-between;align-items:center;gap:12px;padding:14px 16px;font-size:.85rem;font-weight:600;display:flex}.faq-item__chevron{color:var(--crimson);flex-shrink:0;transition:transform .25s}.faq-item__chevron--open{transform:rotate(180deg)}.faq-item__panel{padding:0 16px 14px}.faq-item__panel p{color:var(--text-muted);font-size:.78rem;line-height:1.5}.support-chat{flex-direction:column;display:flex;overflow:hidden;padding:0!important}.support-chat__messages{background:#00000008;flex-direction:column;gap:10px;max-height:220px;padding:14px;display:flex;overflow-y:auto}.support-chat__bubble{border-radius:14px;max-width:85%;padding:10px 12px;font-size:.78rem;line-height:1.45}.support-chat__bubble--agent{color:var(--text);background:#fffffff2;border:1px solid #c9a96240;border-bottom-left-radius:4px;align-self:flex-start}.support-chat__bubble--user{background:linear-gradient(135deg, var(--crimson) 0%, var(--crimson-dark) 100%);color:var(--white);border-bottom-right-radius:4px;align-self:flex-end}.support-chat__time{opacity:.75;margin-top:4px;font-size:.62rem;display:block}.support-chat__typing{background:#fffffff2;border:1px solid #c9a96240;border-radius:14px;align-self:flex-start;gap:4px;padding:10px 14px;display:flex}.support-chat__typing span{background:var(--crimson);border-radius:50%;width:6px;height:6px;animation:1.2s ease-in-out infinite chat-typing}.support-chat__typing span:nth-child(2){animation-delay:.15s}.support-chat__typing span:nth-child(3){animation-delay:.3s}@keyframes chat-typing{0%,80%,to{opacity:.35;transform:translateY(0)}40%{opacity:1;transform:translateY(-3px)}}.support-chat__form{border-top:1px solid #c9a96233;gap:8px;padding:12px;display:flex}.support-chat__input{border-radius:var(--radius-md);background:var(--white);color:var(--text);border:1.5px solid #00000014;flex:1;padding:10px 14px;font-size:.85rem}.support-chat__input:focus{border-color:var(--crimson);outline:none;box-shadow:0 0 0 3px #d719201a}.support-chat__send{background:linear-gradient(135deg, var(--crimson) 0%, var(--crimson-dark) 100%);width:42px;height:42px;color:var(--white);border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;transition:transform .2s,opacity .2s;display:flex}.support-chat__send:disabled{opacity:.45;cursor:not-allowed}.support-chat__send:not(:disabled):active{transform:scale(.95)}.contact-cards{grid-template-columns:1fr 1fr;gap:10px;display:grid}.contact-card{flex-direction:column;gap:4px;text-decoration:none;transition:transform .2s,box-shadow .2s;display:flex;padding:14px!important}.contact-card:active{transform:scale(.98)}.contact-card__icon{width:32px;height:32px;color:var(--crimson);background:#d719201a;border-radius:50%;justify-content:center;align-items:center;margin-bottom:4px;display:flex}.contact-card__label{text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-size:.68rem;font-weight:700}.contact-card__value{color:var(--text);font-size:.78rem;font-weight:600;line-height:1.3}.contact-card__meta{color:var(--text-muted);font-size:.65rem}.feedback-form{flex-direction:column;gap:12px;display:flex}.feedback-form__field{flex:none}.feedback-form__textarea{border-radius:var(--radius-md);background:var(--white);width:100%;color:var(--text);resize:vertical;border:1.5px solid #00000014;min-height:96px;padding:12px 14px;font-family:inherit;font-size:.85rem;transition:border-color .2s,box-shadow .2s}.feedback-form__textarea:focus{border-color:var(--crimson);outline:none;box-shadow:0 0 0 3px #d719201a}.help-support-modal__scroll-spacer{height:calc(var(--nav-height) + var(--safe-bottom) + 24px);flex-shrink:0}[data-theme=dark] .support-chat__messages{background:#0003}[data-theme=dark] .support-chat__bubble--agent{background:#282828f2}[data-theme=dark] .support-chat__input,[data-theme=dark] .feedback-form__textarea{background:#2a2a2a;border-color:#ffffff1f}[data-theme=dark] .help-support-modal__success{color:#7ddc7d;background:#228b2233}@media (width>=481px){.app{box-shadow:0 0 60px #8b000014}.hero-banner__title{font-size:2rem}}@media (width>=768px){.app,.bottom-nav{max-width:520px}}
