/**
 * Flight results page — design from flights.html (Voya-style)
 * Used by flight-results.blade.php for /flights/results
 */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
.flight-results-page:root,
body.flight-results-page{
  --navy:#0d1f38;--navy-deep:#08152a;--navy-mid:#1a3358;
  --white:#ffffff;--off-white:#f7f6f3;
  --text-primary:#0d1f38;--text-secondary:#4a5568;--text-muted:#718096;--text-light:#a0aec0;
  --border:#e2e8f0;--border-light:#edf2f7;--border-mid:#cbd5e0;
  --accent:#d97706;--accent-deep:#b45309;--accent-light:#fffbeb;--accent-border:#fcd34d;
  --coral:#e05e3c;--coral-hover:#c94e2c;--coral-light:#fff5f2;
  --green:#16a34a;--green-bg:#f0fdf4;
  --blue:#1d4ed8;--blue-light:#eff6ff;
  --gold:#b7892a;--gold-light:#fef9e7;
  --shadow-sm:0 1px 4px rgba(13,31,56,.08),0 1px 2px rgba(13,31,56,.05);
  --shadow-md:0 4px 16px rgba(13,31,56,.10),0 2px 4px rgba(13,31,56,.06);
  --shadow-lg:0 12px 40px rgba(13,31,56,.13),0 4px 12px rgba(13,31,56,.07);
  --shadow-xl:0 24px 64px rgba(13,31,56,.16),0 8px 24px rgba(13,31,56,.08);
  --radius-sm:8px;--radius:12px;--radius-lg:16px;
}
.flight-results-page{font-family:'Plus Jakarta Sans',sans-serif;background:#eef1f6;color:var(--text-primary);-webkit-font-smoothing:antialiased;min-height:100vh}
.flight-results-page ::-webkit-scrollbar{width:5px;height:5px}
.flight-results-page ::-webkit-scrollbar-thumb{background:var(--border-mid);border-radius:4px}

.search-hero{background:linear-gradient(135deg,var(--navy-deep) 0%,var(--navy-mid) 100%);padding:24px 28px 0}
.search-hero-inner{max-width:1380px;margin:0 auto}
.trip-tabs{display:flex;gap:2px;margin-bottom:0}
.tt{padding:10px 20px;font-size:13px;font-weight:500;color:rgba(255,255,255,.55);border-radius:8px 8px 0 0;cursor:pointer;transition:all .2s;background:transparent;border:none;font-family:'Plus Jakarta Sans',sans-serif}
.tt:hover{color:rgba(255,255,255,.85);background:rgba(255,255,255,.06)}
.tt.active{color:#fff;font-weight:700;background:rgba(255,255,255,.1)}
.tt:focus-visible{outline:2px solid rgba(255,255,255,.8);outline-offset:2px}
.search-box{background:var(--white);border-radius:0 var(--radius) var(--radius) var(--radius);padding:20px 20px 18px;display:flex;flex-direction:column;gap:14px;box-shadow:var(--shadow-xl)}
.search-row-main{display:grid;grid-template-columns:1fr 44px 1fr 168px 168px 160px auto;align-items:stretch;gap:8px}
@media (max-width:900px){.search-row-main{grid-template-columns:1fr 44px 1fr;grid-template-rows:auto auto auto}}
.s-field{background:var(--off-white);border:1.5px solid var(--border);border-radius:var(--radius-sm);padding:12px 14px;cursor:pointer;transition:all .2s;min-height:52px;display:flex;flex-direction:column;justify-content:center}
.s-field:hover{border-color:var(--navy);background:var(--white)}
.s-field:focus-visible{outline:2px solid var(--navy);outline-offset:2px}
.s-field-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.9px;color:var(--text-muted);margin-bottom:4px}
.s-field-value{font-size:15px;font-weight:600;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.s-field-value .iata{font-family:'Playfair Display',serif;font-size:22px;font-weight:700;letter-spacing:-.5px}
.s-field-sub{font-size:11px;color:var(--text-light);margin-top:2px}
.s-field-sub:empty{display:none}
.swap-btn{display:flex;align-items:center;justify-content:center;background:var(--off-white);border:1.5px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;font-size:18px;transition:all .3s;color:var(--navy);align-self:stretch;min-width:44px}
.swap-btn:hover{background:var(--navy);color:#fff;border-color:var(--navy);transform:rotate(180deg)}
.swap-btn:focus-visible{outline:2px solid var(--navy);outline-offset:2px}
.search-go{padding:0 26px;background:var(--coral);color:var(--white);border:none;border-radius:var(--radius-sm);font-size:14px;font-weight:700;cursor:pointer;font-family:'Plus Jakarta Sans',sans-serif;display:flex;align-items:center;gap:10px;transition:all .2s;white-space:nowrap;align-self:stretch;min-height:48px}
.search-go:hover{background:var(--coral-hover);transform:translateY(-1px);box-shadow:0 6px 20px rgba(224,94,60,.35)}
.search-go:focus-visible{outline:2px solid var(--coral);outline-offset:2px}
.search-go-icon{width:18px;height:18px;flex-shrink:0}
.search-go-text{letter-spacing:.02em}
.search-opts{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.s-opt{display:inline-flex;align-items:center;gap:6px;padding:8px 16px;border-radius:30px;font-size:13px;font-weight:500;cursor:pointer;transition:all .2s;white-space:nowrap;border:none;font-family:'Plus Jakarta Sans',sans-serif;background:transparent}
.s-opt-primary{border:1.5px solid var(--blue);background:var(--blue-light);color:var(--blue)}
.s-opt-primary:hover{background:var(--blue);color:#fff;border-color:var(--blue)}
.s-opt-primary.on,.s-opt-primary[aria-pressed="true"]{background:var(--navy);border-color:var(--navy);color:#fff}
.s-opt-link{border:none;background:transparent;color:var(--text-secondary);text-decoration:none}
.s-opt-link:hover{color:var(--navy);text-decoration:underline}
.s-opt-link:focus-visible{outline:2px solid var(--navy);outline-offset:2px}
.s-opt:focus-visible{outline:2px solid var(--navy);outline-offset:2px}

.page-header{background:var(--white);border-bottom:1px solid var(--border);padding:0 28px}
.page-header-inner{max-width:1380px;margin:0 auto}
.breadcrumb{display:flex;align-items:center;gap:6px;padding:12px 0 0;font-size:12px;color:var(--text-light)}
.breadcrumb a{color:var(--text-muted);text-decoration:none}
.breadcrumb a:hover{color:var(--navy);text-decoration:underline}
.page-title-row{display:flex;align-items:flex-end;justify-content:space-between;padding:14px 0 16px;gap:16px}
.page-title{font-family:'Playfair Display',serif;font-size:clamp(20px,2.5vw,28px);font-weight:700;color:var(--navy);letter-spacing:-.4px;line-height:1.15}
.page-title-meta{font-size:13px;color:var(--text-muted);margin-top:4px}
.title-actions{display:flex;align-items:center;gap:10px;flex-shrink:0}
.btn-outline{display:flex;align-items:center;gap:7px;font-family:'Plus Jakarta Sans',sans-serif;font-size:13px;font-weight:600;padding:9px 16px;border-radius:var(--radius-sm);border:1.5px solid var(--border);background:var(--white);color:var(--text-primary);cursor:pointer;transition:all .2s}
.btn-outline:hover{border-color:var(--navy);color:var(--navy);background:var(--off-white)}
.btn-alert{background:var(--accent-light);color:var(--accent-deep);border-color:var(--accent-border);font-weight:700}
.btn-alert:hover{background:var(--accent);color:#fff;border-color:var(--accent)}

.flight-results-page .container.flight-search-container{max-width:1380px;margin:0 auto;padding:0 28px}
#flight-swap-btn:hover{background:var(--off-white);border-color:var(--navy);color:var(--navy)}
#toggle-search-flight:hover{color:var(--navy)}

.flight-ac-dropdown{position:absolute;top:100%;left:0;right:0;margin-top:4px;background:#fff;border:1px solid var(--border);border-radius:8px;box-shadow:0 4px 20px rgba(0,0,0,.12);max-height:220px;overflow-y:auto;z-index:2000;display:none;box-sizing:border-box}
.flight-ac-dropdown.show{display:block}
.flight-ac-item{padding:10px 14px;cursor:pointer;border-bottom:1px solid var(--border-light);font-size:0.9rem;transition:background .15s}
.flight-ac-item:last-child{border-bottom:none}
.flight-ac-item:hover,.flight-ac-item.selected{background:var(--blue-light)}
.flight-ac-item strong{display:block;color:var(--text-primary)}
.flight-ac-item small{color:var(--text-muted);font-size:0.8rem}
.flight-ac-loading{padding:12px 14px;color:var(--text-muted);font-size:0.85rem}

/* Multi-city refine panel (flight results page) */
.flight-results-page .mc-leg-row{display:flex;gap:12px;align-items:flex-end;flex-wrap:wrap;padding:12px;border:1px solid var(--border);border-radius:12px;background:#fff;margin-bottom:10px}
.flight-results-page .mc-leg-row label{font-size:12px;font-weight:700;color:var(--text-secondary);margin-bottom:6px;display:block}
.flight-results-page .mc-leg-row input[type="date"]{cursor:pointer}
.flight-results-page .mc-leg-remove{width:44px;height:44px;border:1px solid var(--border);border-radius:12px;background:#fff;cursor:pointer;font-weight:900;color:var(--coral)}
.flight-results-page .mc-leg-remove:hover{border-color:var(--coral);background:var(--coral-light)}

.filter-chips-row{background:var(--white);border-bottom:1px solid var(--border);padding:0 28px}
.filter-chips-inner{max-width:1380px;margin:0 auto;display:flex;align-items:center;gap:8px;padding:12px 0;overflow-x:auto;scrollbar-width:none}
.filter-chips-inner::-webkit-scrollbar{display:none}
.fchip{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;background:var(--white);border:1.5px solid var(--border);border-radius:30px;font-size:13px;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all .2s;white-space:nowrap;flex-shrink:0;font-family:'Plus Jakarta Sans',sans-serif}
.fchip:hover{border-color:var(--navy);color:var(--navy)}
.fchip.active{background:var(--navy);border-color:var(--navy);color:var(--white)}
.fchip .fchip-x{opacity:0;margin-left:0;font-size:14px;line-height:1;transition:opacity .15s}
.fchip.active .fchip-x{opacity:1;margin-left:4px}
.fchip:focus-visible{outline:2px solid var(--navy);outline-offset:2px}
.fchip-clear{background:var(--coral-light);border-color:var(--coral);color:var(--coral);font-weight:600}
.fchip-clear:hover{background:var(--coral);color:var(--white);border-color:var(--coral-hover)}
.chip-divider{width:1px;height:22px;background:var(--border-light);flex-shrink:0;margin:0 4px}

.page-body{max-width:1380px;margin:0 auto;display:grid;grid-template-columns:296px 1fr;padding:0 28px;align-items:start}
@media (max-width:900px){.page-body{grid-template-columns:1fr}}

.sidebar{background:var(--white);border-right:1px solid var(--border);min-height:calc(100vh - 200px);position:sticky;top:62px;max-height:calc(100vh - 62px);overflow-y:auto}
.sidebar::-webkit-scrollbar{width:3px}
.sidebar::-webkit-scrollbar-thumb{background:var(--border)}
.sidebar-section{padding:20px 22px;border-bottom:1px solid var(--border-light)}
.sidebar-section:last-child{border-bottom:none}
.ss-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px}
.ss-title{font-size:13.5px;font-weight:700;color:var(--navy)}
.ss-reset{font-size:12px;font-weight:600;color:var(--coral);cursor:pointer;background:none;border:none;font-family:inherit;padding:0}
.ss-reset:hover{text-decoration:underline}
.price-slider{width:100%;-webkit-appearance:none;height:4px;border-radius:4px;background:linear-gradient(to right,var(--navy) 0%,var(--navy) 55%,var(--border-mid) 55%,var(--border-mid) 100%);outline:none;cursor:pointer;margin-bottom:10px}
.price-slider::-webkit-slider-thumb{-webkit-appearance:none;width:20px;height:20px;border-radius:50%;background:var(--white);border:2.5px solid var(--navy);cursor:pointer;box-shadow:0 2px 6px rgba(13,31,56,.2)}
.price-labels{display:flex;justify-content:space-between;font-size:12px;color:var(--text-muted)}
.price-labels strong{color:var(--navy);font-weight:700}
.stops-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:6px}
.stop-btn{padding:9px 4px;text-align:center;border-radius:var(--radius-sm);border:1.5px solid var(--border);font-size:12.5px;font-weight:600;cursor:pointer;transition:all .2s;color:var(--text-muted);background:var(--white);font-family:'Plus Jakarta Sans',sans-serif}
.stop-btn:hover{border-color:var(--navy);color:var(--navy)}
.stop-btn.on{border-color:var(--navy);background:var(--navy);color:#fff}
.airline-list{display:flex;flex-direction:column;gap:2px}
.al-row{display:flex;align-items:center;gap:10px;padding:7px 6px;border-radius:7px;cursor:pointer;transition:background .15s}
.al-row:hover{background:var(--off-white)}
.al-row input{width:16px;height:16px;accent-color:var(--navy);flex-shrink:0}
.al-logo{width:32px;height:32px;border-radius:7px;background:var(--off-white);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:16px;flex-shrink:0}
.al-name{font-size:13px;font-weight:500;color:var(--text-primary)}
.al-price{font-size:11.5px;color:var(--text-light)}
.check-list{display:flex;flex-direction:column;gap:1px}
.check-row{display:flex;align-items:center;gap:10px;padding:7px 6px;border-radius:6px;cursor:pointer;transition:background .15s}
.check-row:hover{background:var(--off-white)}
.check-row input{width:16px;height:16px;accent-color:var(--navy);cursor:pointer;flex-shrink:0}
.check-lbl{font-size:13px;color:var(--text-primary);flex:1}
.check-count{font-size:12px;color:var(--text-light);font-weight:500}
.time-slider-group{display:flex;flex-direction:column;gap:16px}
.ts-label{display:flex;justify-content:space-between;font-size:12px;color:var(--text-muted);margin-bottom:8px}
.ts-label strong{color:var(--navy);font-weight:700}

.results-panel{padding:20px 0 20px 20px;min-height:100vh}
.results-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;flex-wrap:wrap;gap:10px}
.results-count-label{font-size:14px;font-weight:700;color:var(--navy)}
.results-count-label span{font-weight:400;color:var(--text-muted);font-size:13px}
.sort-row{display:flex;align-items:center;gap:8px}
.sort-lbl{font-size:13px;color:var(--text-muted)}
.sort-select{font-family:'Plus Jakarta Sans',sans-serif;font-size:13px;font-weight:600;color:var(--navy);border:1.5px solid var(--border);border-radius:var(--radius-sm);padding:7px 32px 7px 12px;background:var(--white) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%230d1f38' stroke-width='1.5' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") no-repeat right 12px center;cursor:pointer;outline:none;-webkit-appearance:none}
.sort-pills{display:flex;gap:8px;margin-bottom:16px;flex-wrap:wrap}
.sp{padding:6px 14px;border-radius:30px;border:1.5px solid var(--border);background:var(--white);font-size:12.5px;font-weight:500;color:var(--text-secondary);cursor:pointer;transition:all .2s;white-space:nowrap}
.sp:hover{border-color:var(--navy);color:var(--navy)}
.sp.active{background:var(--navy);border-color:var(--navy);color:var(--white);font-weight:600}

.best-trio{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:16px}
@media (max-width:700px){.best-trio{grid-template-columns:1fr}}
.bt-card{background:var(--white);border:1.5px solid var(--border);border-radius:var(--radius);padding:16px 18px;cursor:pointer;transition:all .25s}
.bt-card:hover{border-color:var(--navy)}
.bt-card.selected{border-color:var(--navy);background:#f0f4ff;box-shadow:var(--shadow-sm)}
.bt-label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.8px;color:var(--text-muted);margin-bottom:8px}
.bt-price{font-family:'Playfair Display',serif;font-size:24px;font-weight:700;color:var(--navy);line-height:1;margin-bottom:4px}
.bt-detail{font-size:12px;color:var(--text-muted);line-height:1.4}
.bt-badge{display:inline-block;margin-top:8px;font-size:10px;font-weight:700;padding:3px 8px;border-radius:4px}
.bt-badge-green{background:var(--green-bg);color:var(--green)}
.bt-badge-amber{background:var(--accent-light);color:var(--accent-deep)}

.price-calendar{background:var(--white);border-radius:var(--radius);border:1px solid var(--border);padding:18px 20px;margin-bottom:14px;box-shadow:var(--shadow-sm);overflow-x:auto}
.pc-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:14px;flex-wrap:wrap;gap:8px}
.pc-title{font-size:13px;font-weight:700;color:var(--navy)}
.pc-legend-row{display:flex;align-items:center;gap:14px}
.pc-legend{display:flex;align-items:center;gap:4px;font-size:11px;color:var(--text-muted)}
.pc-legend-dot{width:8px;height:8px;border-radius:50%}
.pc-grid{display:flex;gap:5px;min-width:560px}
.pc-day{flex:1;text-align:center;padding:10px 6px 8px;border-radius:var(--radius-sm);border:1.5px solid var(--border);cursor:pointer;transition:all .2s;position:relative;overflow:hidden;background:var(--white)}
.pc-day:hover{border-color:var(--navy)}
.pc-day.cheapest{border-color:var(--green)}
.pc-day.selected{border-color:var(--navy);background:#f0f4ff}
.pc-day-name{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.5px;color:var(--text-light);margin-bottom:3px}
.pc-day-num{font-size:15px;font-weight:700;color:var(--text-primary);margin-bottom:6px}
.pc-day-price{font-size:11px;font-weight:700}
.cheap{color:var(--green)}
.normal-price{color:var(--text-muted)}
.high-price{color:var(--coral)}
.pc-bar{position:absolute;bottom:0;left:0;right:0;border-radius:0 0 6px 6px}

.promo-strip{background:linear-gradient(100deg,var(--navy-deep) 0%,var(--navy-mid) 100%);border-radius:var(--radius);padding:16px 20px;display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:14px;box-shadow:var(--shadow-md)}
.ps-left{display:flex;align-items:center;gap:14px}
.ps-icon{font-size:26px;flex-shrink:0}
.ps-title{font-size:14px;font-weight:700;color:#fff;margin-bottom:2px}
.ps-sub{font-size:12px;color:rgba(255,255,255,.55)}
.ps-btn{flex-shrink:0;padding:9px 18px;background:var(--accent);color:var(--white);border:none;border-radius:var(--radius-sm);font-size:13px;font-weight:700;cursor:pointer;font-family:'Plus Jakarta Sans',sans-serif;white-space:nowrap;transition:all .2s}
.ps-btn:hover{background:var(--accent-deep)}

.flight-card{background:var(--white);border-radius:var(--radius);border:1px solid var(--border);overflow:hidden;margin-bottom:10px;cursor:pointer;transition:all .35s cubic-bezier(.23,1,.32,1);box-shadow:var(--shadow-sm)}
.flight-card:hover{box-shadow:var(--shadow-xl);transform:translateY(-2px);border-color:rgba(13,31,56,.1)}
.flight-card.business{border-color:rgba(183,137,42,.3);background:linear-gradient(135deg,#fffdf8 0%,#fff 60%)}
.fc-main{display:grid;grid-template-columns:1fr auto;padding:20px 22px;gap:24px;align-items:center}
@media (max-width:700px){.fc-main{grid-template-columns:1fr}}
.fc-left{}
.fc-airline-row{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.fc-airline-logo{width:40px;height:40px;border-radius:9px;background:var(--off-white);border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:20px;flex-shrink:0}
.fc-airline-name{font-size:13px;font-weight:600;color:var(--text-secondary)}
.fc-flight-num{font-size:11.5px;color:var(--text-light);margin-top:1px}
.fc-route{display:flex;align-items:center;gap:0}
.fc-time-block{min-width:88px}
.fc-time{font-family:'Playfair Display',serif;font-size:28px;font-weight:700;color:var(--navy);line-height:1;letter-spacing:-.5px}
.fc-nextday{font-size:11px;font-weight:700;color:var(--coral);vertical-align:super;margin-left:1px}
.fc-airport-code{font-size:12px;font-weight:700;color:var(--text-muted);margin-top:4px;letter-spacing:.5px}
.fc-airport-city{font-size:11px;color:var(--text-light);margin-top:1px}
.fc-path{flex:1;display:flex;flex-direction:column;align-items:center;padding:0 22px;gap:5px}
.fc-path-airline{font-size:12px;font-weight:600;color:var(--text-muted)}
.fc-track{width:100%;display:flex;align-items:center;position:relative}
.fc-dot{width:8px;height:8px;border-radius:50%;border:2px solid var(--border-mid);background:var(--white);flex-shrink:0;z-index:1}
.fc-line{flex:1;height:1.5px;background:var(--border);position:relative}
.fc-plane{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:15px;background:var(--white);padding:0 4px}
.fc-stop-node{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:8px;height:8px;border-radius:50%;background:var(--border-mid);border:2px solid var(--white)}
.fc-duration{font-size:12px;font-weight:700;color:var(--navy)}
.fc-stops{font-size:11.5px;font-weight:600}
.fc-stops.nonstop{color:var(--green)}
.fc-stops.one{color:var(--text-muted)}
.fc-stops.two{color:var(--coral)}
.fc-price-col{min-width:175px;display:flex;flex-direction:column;align-items:flex-end;padding-left:22px;border-left:1px solid var(--border-light)}
@media (max-width:700px){.fc-price-col{border-left:none;border-top:1px solid var(--border-light);padding-left:0;padding-top:16px;margin-top:12px}}
.fc-tags{display:flex;flex-wrap:wrap;gap:5px;justify-content:flex-end;margin-bottom:10px}
.ftag{font-size:10.5px;font-weight:700;padding:3px 8px;border-radius:5px}
.ftag-green{background:var(--green-bg);color:var(--green)}
.ftag-blue{background:var(--blue-light);color:var(--blue)}
.ftag-coral{background:var(--coral-light);color:var(--coral)}
.ftag-amber{background:var(--accent-light);color:var(--accent-deep)}
.ftag-gold{background:var(--gold-light);color:var(--gold);border:1px solid rgba(183,137,42,.2)}
.ftag-refundable{background:#e0f2fe;color:#0369a1}
.fc-was{font-size:12px;color:var(--text-light);text-decoration:line-through;text-align:right;margin-bottom:1px}
.fc-price-lbl{font-size:11px;color:var(--text-muted);text-align:right;margin-bottom:1px}
.fc-price{font-family:'Playfair Display',serif;font-size:30px;font-weight:700;color:var(--navy);line-height:1;text-align:right}
.fc-price.gold{color:var(--gold)}
.fc-price-per{font-size:11.5px;color:var(--text-muted);text-align:right;margin-top:2px}
.fc-select-btn{margin-top:12px;width:100%;padding:11px 16px;background:var(--coral);color:var(--white);border:none;border-radius:var(--radius-sm);font-size:13px;font-weight:700;cursor:pointer;font-family:'Plus Jakarta Sans',sans-serif;transition:all .2s}
.fc-select-btn:hover{background:var(--coral-hover);transform:translateY(-1px);box-shadow:0 5px 16px rgba(224,94,60,.3)}
.fc-select-btn.gold-btn{background:var(--gold)}
.fc-select-btn.gold-btn:hover{box-shadow:0 5px 16px rgba(183,137,42,.3)}
.fc-footer{padding:11px 22px;background:#fafbfc;border-top:1px solid var(--border-light);display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.fc-footer.gold-footer{background:#fffdf5}
.fc-footer-tags{display:flex;gap:14px;flex-wrap:wrap}
.fc-ftag{font-size:12px;color:var(--text-muted);display:flex;align-items:center;gap:5px}
.fc-expand-btn{font-size:12.5px;font-weight:700;color:var(--blue);cursor:pointer;background:none;border:none;font-family:'Plus Jakarta Sans',sans-serif;display:flex;align-items:center;gap:5px;white-space:nowrap;transition:color .2s}
.fc-expand-btn:hover{color:var(--navy)}
.fc-fare-details-panel{width:100%;flex-basis:100%;margin-top:12px;padding-top:12px;border-top:1px solid var(--border-light)}
.fc-fare-table{width:100%;font-size:13px;border-collapse:collapse}
.fc-fare-table td{padding:6px 10px 6px 0;color:var(--text-secondary);vertical-align:top}
.fc-fare-table td:last-child{text-align:right;font-weight:500;color:var(--text-primary)}
.fc-fare-table tr:first-child td{padding-top:0}
.fc-upgrade-strip{margin:0 22px 16px;padding:10px 14px;background:var(--gold-light);border:1px solid rgba(183,137,42,.2);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:space-between;gap:12px}
.fc-upgrade-text{font-size:12px;color:var(--gold);font-weight:600}
.fc-upgrade-btn{font-size:12px;font-weight:700;color:var(--navy);background:var(--accent-border);border:none;border-radius:6px;padding:5px 12px;cursor:pointer;font-family:'Plus Jakarta Sans',sans-serif;white-space:nowrap}

.load-more-btn{width:100%;padding:13px;background:var(--white);border:1.5px solid var(--border);border-radius:var(--radius-sm);font-family:'Plus Jakarta Sans',sans-serif;font-size:14px;font-weight:600;color:var(--navy);cursor:pointer;transition:all .2s;margin-bottom:20px}
.load-more-btn:hover{background:var(--off-white);border-color:var(--navy)}
.pagination{display:flex;align-items:center;justify-content:center;gap:6px;margin:10px 0 32px}
.pg{min-width:38px;height:38px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);border:1.5px solid var(--border);background:var(--white);font-size:13.5px;font-weight:600;cursor:pointer;color:var(--text-muted);transition:all .2s}
.pg:hover{border-color:var(--navy);color:var(--navy)}
.pg.active{background:var(--navy);border-color:var(--navy);color:var(--white)}
.pg-dots{color:var(--text-light);padding:0 4px}

.flight-results-loading{text-align:center;padding:3rem;font-size:1rem;color:var(--text-muted);display:flex;flex-direction:column;align-items:center;gap:16px}
.flight-results-loading::before{content:'';width:40px;height:40px;border:3px solid var(--border);border-top-color:var(--coral);border-radius:50%;animation:fc-spin .8s linear infinite}
@keyframes fc-spin{to{transform:rotate(360deg)}}
.extra-services-banner{background:var(--accent-light);border:1px solid var(--accent-border);color:var(--accent-deep);font-size:13px;font-weight:600;padding:12px 20px;border-radius:var(--radius-sm);margin-bottom:16px}
.fc-return-block{margin-top:20px;padding-top:16px;border-top:1px solid var(--border-light)}
.fc-return-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:var(--text-muted);margin-bottom:10px}
.fc-route-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.6px;color:var(--text-muted);margin-bottom:8px}
.fc-leg-block{margin-top:10px;padding-top:10px;border-top:1px dashed #e6eaf2}
.fc-leg-block:first-child{margin-top:0;padding-top:0;border-top:0}
.fc-leg-label{font-size:12px;font-weight:800;color:var(--navy);letter-spacing:.02em;margin-bottom:6px}
.fc-route-multi .fc-segment-row{margin-bottom:8px}
.fc-route-multi .fc-segment-row:last-child{margin-bottom:0}
.fc-leg-duration{font-size:12px;font-weight:600;color:var(--text-secondary);margin-bottom:10px}
.fc-layover{font-size:11px;color:var(--text-muted);margin:6px 0 6px 24px;padding-left:8px;border-left:2px solid var(--border)}
.fc-segment-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.fc-segment-row .fc-time-block{min-width:52px}
.fc-segment-row .fc-path{flex:1;min-width:140px}
.flight-results-empty{padding:2rem;text-align:center;background:var(--white);border-radius:var(--radius);border:1px solid var(--border)}
#flight-selected-bar-voya{display:flex;align-items:center;justify-content:space-between;padding:16px 22px;background:var(--navy);color:var(--white);border-radius:var(--radius);margin-bottom:16px;flex-wrap:wrap;gap:12px}
#flight-selected-bar-voya .flight-selected-price{font-family:'Playfair Display',serif;font-size:24px;font-weight:700}
#flight-selected-bar-voya .flight-continue-btn{padding:11px 24px;background:var(--coral);color:var(--white);border:none;border-radius:var(--radius-sm);font-weight:700;text-decoration:none;transition:all .2s}
#flight-selected-bar-voya .flight-continue-btn:hover{background:var(--coral-hover)}

@keyframes fadeSlideIn{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}
.flight-card{animation:fadeSlideIn .5s ease both}
.flight-card:nth-child(1){animation-delay:.05s}
.flight-card:nth-child(2){animation-delay:.1s}
.flight-card:nth-child(3){animation-delay:.15s}
.flight-card:nth-child(4){animation-delay:.2s}
.flight-card:nth-child(5){animation-delay:.25s}
.flight-card:nth-child(6){animation-delay:.3s}
.flight-card:nth-child(n+7){animation-delay:.35s}
