
.byair-v2{font-family:Inter,Arial,sans-serif;color:#10243e}.ba2-search-card{background:#fff;border-radius:14px;padding:22px;box-shadow:0 12px 30px rgba(2,44,83,.12);position:relative;z-index:20}
.ba2-toprow{display:flex;justify-content:space-between;gap:15px;margin-bottom:18px}.ba2-trip-tabs,.ba2-compact{display:flex;border:1px solid #e0e6ed;border-radius:10px;overflow:hidden}
.ba2-trip-tabs button,.ba2-compact button{border:0;background:#fff;padding:11px 23px;color:#163957}.ba2-trip-tabs .active{background:#f4f7fa;color:#075ea5;box-shadow:inset 0 0 0 1px #e7edf3;border-radius:9px}.ba2-compact button+button{border-left:1px solid #e4e9ef}
.ba2-mainrow{display:grid;grid-template-columns:minmax(430px,2fr) minmax(245px,1fr) 260px;gap:12px;align-items:stretch}.ba2-route-wrap{display:grid;grid-template-columns:1fr 0 1fr;position:relative}
.ba2-field{border:1px solid #dce4ec;background:#fff;border-radius:9px;min-height:52px;display:flex;align-items:center;gap:10px;padding:0 15px;position:relative}.ba2-field input{border:0!important;outline:0!important;box-shadow:none!important;padding:0!important;width:100%;font-weight:600;background:transparent}
.ba2-route-wrap .ba2-field:first-child{border-radius:9px 0 0 9px}.ba2-route-wrap .ba2-field:nth-child(3){border-radius:0 9px 9px 0}.ba2-icon{color:#0b64ad;font-size:21px}
.ba2-swap{width:38px;height:38px;border-radius:50%;border:1px solid #d6e0ea;background:#fff;position:absolute;left:50%;top:7px;transform:translateX(-50%);z-index:5;color:#53677a;font-size:20px}
.ba2-date-wrap{position:relative}.ba2-date{width:100%;height:100%;cursor:pointer;color:#124f80}.ba2-search-btn{background:#1262a8;color:#fff;border:0;border-radius:9px;font-weight:800;font-size:16px}.ba2-direct{text-align:right;margin-top:12px;font-size:12px}
.ba2-airport-pop{display:none;position:absolute;top:58px;left:0;width:360px;max-height:360px;overflow:auto;background:#fff;border:1px solid #d9e2ea;border-radius:10px;box-shadow:0 15px 40px rgba(10,41,69,.18);z-index:100}.ba2-airport-pop.show{display:block}
.ba2-pop-title{padding:15px 16px 8px;font-weight:800}.ba2-airport-pop button{width:100%;display:flex;gap:12px;text-align:left;border:0;border-top:1px solid #eef2f5;background:#fff;padding:11px 15px}.ba2-airport-pop button:hover{background:#eef4fa}.ba2-airport-pop button>span{color:#0c66ae;font-size:20px}.ba2-airport-pop b,.ba2-airport-pop small{display:block}.ba2-airport-pop small{color:#718092;margin-top:3px}
.ba2-calendar{display:none;position:absolute;top:58px;right:0;width:760px;background:#fff;border:1px solid #dce4ec;border-radius:12px;box-shadow:0 18px 50px rgba(15,44,72,.22);z-index:120;padding:18px}.ba2-calendar.show{display:block}.months{display:grid;grid-template-columns:1fr 1fr}.ba2-month{padding:0 16px}.ba2-month+.ba2-month{border-left:1px solid #edf1f5}.ba2-month h4{text-align:center;margin:0 0 17px;font-size:16px}.dow,.days{display:grid;grid-template-columns:repeat(7,1fr);gap:2px}.dow span{text-align:center;font-size:11px;color:#6c7886;padding-bottom:8px}.days button,.days>span{height:50px;border:0;background:#fff;border-radius:7px}.days button{display:flex;flex-direction:column;justify-content:center;align-items:center}.days button b{font-size:13px}.days button small{font-size:10px;color:#697889}.days button:hover{background:#eef5fb}.days button.selected,.days button.returnsel{background:#0d62a9;color:#fff}.days button.selected small,.days button.returnsel small{color:#fff}.days button.past{opacity:.28}.calnav{position:absolute;top:12px;left:12px;right:12px;display:flex;justify-content:space-between;pointer-events:none}.calnav button{pointer-events:auto;border:0;background:#edf4fa;border-radius:7px;width:30px;height:30px;color:#0d5e9f}.calnote{text-align:center;color:#8290a0;font-size:11px;margin-top:8px}
.ba2-mini-pop{display:none;position:absolute;right:20px;top:70px;z-index:130}.ba2-mini-pop.show{display:block}.ba2-mini-card{width:250px;background:#fff;border:1px solid #dce4ec;border-radius:12px;padding:16px;box-shadow:0 15px 45px rgba(10,40,70,.18)}.counter{display:flex;justify-content:space-between;align-items:center;margin:15px 0}.counter button,.cab,.done{border:1px solid #d7e0e8;background:#fff;border-radius:8px;padding:8px 12px}.cab{display:block;width:100%;margin-top:7px;text-align:left}.done{width:100%;background:#0d62a9;color:#fff;border:0}
#ba2-status{padding:18px 0}.ba2-loading,.ba2-empty{background:#fff;border:1px solid #e0e7ee;border-radius:10px;padding:15px}.ba2-result-tools{justify-content:space-between;align-items:center;margin:22px 0 12px}.ba2-filters{display:flex;gap:10px}.ba2-filters select{padding:10px 12px;border:1px solid #dce4ec;border-radius:8px;background:#fff}
.ba2-flight{background:#fff;border:1px solid #d6dde5;border-radius:12px;display:grid;grid-template-columns:220px 1fr 230px;align-items:center;min-height:138px;margin:14px 0;padding:22px 28px;box-shadow:0 3px 12px rgba(21,54,83,.03)}.ba2-airline{display:flex;align-items:center;gap:13px}.logo-dot{width:48px;height:48px;border-radius:12px;background:#eaf5f6;color:#1596a1;display:flex;align-items:center;justify-content:center;font-weight:900}.ba2-airline b,.ba2-airline small{display:block}.ba2-airline small{color:#778596;margin-top:4px}
.ba2-times{display:grid;grid-template-columns:1fr 150px 1fr;align-items:center;text-align:center}.ba2-times>div:first-child{text-align:right}.ba2-times>div:last-child{text-align:left}.ba2-times b{display:block;font-size:28px}.ba2-times span{display:block;color:#43566a;margin-top:5px}.ba2-duration small{background:#f4f5f6;border-radius:5px;padding:6px 10px}.ba2-duration i{height:1px;background:#aebbc8;display:block;margin:12px 0}.ba2-duration span{font-size:12px}.ba2-price{border-left:1px solid #e5e9ee;padding-left:30px;text-align:center}.ba2-price b{display:block;background:#1262a8;color:#fff;border-radius:7px;padding:13px;font-size:18px}.ba2-price a{display:block;margin-top:10px;background:#20ae5f;color:#fff!important;border-radius:7px;padding:11px;font-weight:800}
@media(max-width:900px){.ba2-mainrow{grid-template-columns:1fr}.ba2-date-wrap,.ba2-search-btn{height:52px}.ba2-calendar{width:min(720px,calc(100vw - 40px));right:auto;left:0}.ba2-flight{grid-template-columns:1fr;gap:18px}.ba2-price{border-left:0;border-top:1px solid #e5e9ee;padding:16px 0 0}.ba2-toprow{flex-direction:column}.ba2-result-tools{align-items:flex-start;gap:12px;flex-direction:column}}
@media(max-width:600px){.ba2-search-card{padding:14px}.ba2-trip-tabs button{padding:10px 12px;font-size:12px}.ba2-compact button{padding:10px;font-size:12px}.ba2-route-wrap{grid-template-columns:1fr}.ba2-route-wrap .ba2-field:first-child,.ba2-route-wrap .ba2-field:nth-child(3){border-radius:9px}.ba2-swap{left:auto;right:12px;top:34px;transform:none}.ba2-airport-pop{width:calc(100vw - 64px)}.ba2-calendar{position:fixed;left:10px;right:10px;top:90px;width:auto;max-height:78vh;overflow:auto}.months{grid-template-columns:1fr}.ba2-month+.ba2-month{border-left:0;border-top:1px solid #edf1f5;padding-top:20px;margin-top:20px}.ba2-times{grid-template-columns:1fr 85px 1fr}.ba2-times b{font-size:20px}.ba2-flight{padding:17px}}

/* v2.1 layout fixes */
.ba2-mainrow{
  display:grid!important;
  grid-template-columns:minmax(0,2.15fr) minmax(220px,.9fr) minmax(190px,.75fr)!important;
  gap:12px!important;
  align-items:stretch!important;
}
.ba2-route-wrap{
  min-width:0!important;
  width:100%!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) 44px minmax(0,1fr)!important;
  gap:0!important;
  align-items:stretch!important;
  position:relative!important;
}
.ba2-route-wrap .ba2-field{
  min-width:0!important;
  width:100%!important;
  border-radius:9px!important;
}
.ba2-route-wrap .ba2-from-field{border-radius:9px 0 0 9px!important}
.ba2-route-wrap .ba2-to-field{border-radius:0 9px 9px 0!important}
.ba2-swap{
  position:static!important;
  transform:none!important;
  align-self:center!important;
  justify-self:center!important;
  width:38px!important;height:38px!important;
  z-index:6!important;margin:0 3px!important;
}
.ba2-input-stack{display:flex;min-width:0;flex:1;flex-direction:column;gap:1px}
.ba2-input-stack small{font-size:10px;color:#6e7f90;line-height:1.1}
.ba2-input-stack input{min-width:0!important}
.ba2-to-field{display:flex!important;visibility:visible!important;opacity:1!important}
.ba2-airline b{line-height:1.22}
.ba2-airline small{font-size:11px;line-height:1.3}
@media(max-width:900px){
 .ba2-mainrow{grid-template-columns:1fr!important}
 .ba2-route-wrap{grid-template-columns:minmax(0,1fr) 44px minmax(0,1fr)!important}
}
@media(max-width:600px){
 .ba2-route-wrap{
   grid-template-columns:1fr 44px 1fr!important;
 }
 .ba2-route-wrap .ba2-field{padding:0 9px!important}
 .ba2-route-wrap .ba2-icon{display:none}
 .ba2-input-stack input{font-size:12px!important}
}

/* v2.2: keep single-airline options separate from mixed-carrier connections */
.ba2-counts{display:flex;align-items:baseline;gap:3px;flex-wrap:wrap}
.ba2-counts small{color:#6d7b8b;margin-left:4px}
.ba2-mixed-wrap{margin:22px 0}
.ba2-mixed-wrap details{background:#f7f9fc;border:1px solid #dce5ed;border-radius:12px;padding:14px}
.ba2-mixed-wrap summary{cursor:pointer;color:#234d71}
.ba2-mixed-note{font-size:12px;color:#6d7b8b;margin:10px 0 14px}
.ba2-mixed-card{background:#fff;border:1px solid #d8e1ea;border-radius:12px;padding:18px;margin:12px 0}
.ba2-mixed-head{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #edf1f4;padding-bottom:12px}
.ba2-mixed-head b,.ba2-mixed-head small,.ba2-mixed-head strong{display:block}
.ba2-mixed-head small{color:#6b7b8c;margin-top:4px}
.ba2-mixed-head strong{color:#0c5fa5;font-size:18px;text-align:right}
.ba2-segments{padding:9px 0}
.ba2-segment{display:grid;grid-template-columns:220px 1fr;gap:20px;align-items:center;padding:10px 0;border-bottom:1px dashed #e4eaf0}
.ba2-segment:last-child{border-bottom:0}
.seg-carrier b,.seg-carrier small{display:block}.seg-carrier small{color:#748395;margin-top:3px}
.seg-route{display:grid;grid-template-columns:90px 1fr 90px;gap:10px;align-items:center;text-align:center}
.seg-route span{color:#4d6073}
.ba2-carrier-chips{display:flex;gap:8px;flex-wrap:wrap;padding:10px 0}
.ba2-carrier-chips span{background:#edf5fb;border-radius:20px;padding:7px 11px;color:#0a5792;font-weight:700}
.ba2-mixed-actions{text-align:right;padding-top:10px}
.ba2-mixed-actions a{display:inline-block;background:#20ae5f;color:#fff!important;padding:10px 14px;border-radius:8px;font-weight:800}
@media(max-width:700px){
 .ba2-mixed-head{flex-direction:column}
 .ba2-mixed-head strong{text-align:left}
 .ba2-segment{grid-template-columns:1fr}
 .seg-route{grid-template-columns:70px 1fr 70px}
}

/* v3 worldwide airport database */
.ba2-airport-pop{max-height:430px!important}
.ba2-no-airport{padding:16px;color:#6d7b8b;font-size:13px}
.ba2-airport-pop button small{line-height:1.35}


/* v3.2 airline logo + stop + seat details */
.ba2-logo-wrap{width:52px;height:52px;position:relative;flex:0 0 52px;display:flex;align-items:center;justify-content:center}
.ba2-airline-logo{width:48px;height:48px;object-fit:contain;background:#fff;border:1px solid #e1e8ee;border-radius:12px;padding:5px}
.ba2-logo-wrap .logo-fallback{display:none;position:absolute;inset:2px;width:48px;height:48px}
.ba2-airline-code{display:inline-block;margin-left:7px;padding:2px 6px;border-radius:5px;background:#edf4f8;color:#42617b;font-size:10px;font-weight:800;vertical-align:2px}
.ba2-flight-main{min-width:0}
.ba2-detail-row{display:flex;gap:7px;flex-wrap:wrap;justify-content:center;margin-top:12px}
.ba2-stop-chip,.ba2-nonstop-chip,.ba2-seat-status{display:inline-flex;align-items:center;gap:4px;border-radius:20px;padding:5px 9px;font-size:11px;line-height:1.2}
.ba2-stop-chip{background:#fff5e9;color:#84541f;border:1px solid #f3d6ad}
.ba2-stop-chip small{font-size:10px;color:#8d6a46}
.ba2-nonstop-chip{background:#eef8f2;color:#267344;border:1px solid #cce7d6}
.ba2-seat-status{background:#eaf5fb;color:#12618d;border:1px solid #cde4f2;font-weight:700}
.ba2-seat-status.limited{background:#fff0ef;color:#a33b33;border-color:#f0c7c3}
.ba2-seat-status.neutral{background:#f4f6f8;color:#6b7785;border-color:#e1e5e9;font-weight:600}
.seg-carrier{display:flex!important;align-items:center;gap:10px}
.seg-carrier .ba2-logo-wrap{width:40px;height:40px;flex-basis:40px}
.seg-carrier .ba2-airline-logo,.seg-carrier .logo-dot{width:38px;height:38px;border-radius:9px;font-size:11px}
.mixed-details{justify-content:flex-start;margin:12px 0 2px}
@media(max-width:900px){
  .ba2-detail-row{justify-content:flex-start}
}
@media(max-width:700px){
  .ba2-logo-wrap{width:46px;height:46px;flex-basis:46px}
  .ba2-airline-logo,.ba2-logo-wrap .logo-fallback{width:44px;height:44px}
  .ba2-detail-row{margin-top:9px}
}


/* v3.3 progressive MAX coverage status */
.ba2-progressive,.ba2-coverage-done,.ba2-coverage-note{
  margin:14px 0;padding:11px 14px;border-radius:9px;font-size:13px
}
.ba2-progressive{background:#eef6fb;border:1px solid #cfe4f2;color:#205a79}
.ba2-coverage-done{background:#eef8f2;border:1px solid #cbe7d5;color:#286a43}
.ba2-coverage-note{background:#fff7e9;border:1px solid #efd9ad;color:#7e5b21}


/* v3.4 fast progressive fare-calendar status */
.ba2-calendar .calnote.loading,
.ba2-calendar .calnote.progress{
  color:#1f648d;
  font-weight:700;
}
.ba2-calendar .calnote.loading:before,
.ba2-calendar .calnote.progress:before{
  content:"";
  display:inline-block;
  width:10px;height:10px;
  margin-right:7px;
  border:2px solid #c7deeb;
  border-top-color:#1f648d;
  border-radius:50%;
  vertical-align:-1px;
  animation:ba2calspin .8s linear infinite;
}
.ba2-calendar .calnote.done{color:#39704d}
@keyframes ba2calspin{to{transform:rotate(360deg)}}


/* v3.5 connecting-only visibility fix */
.ba2-connecting-only-note{
  margin:8px 0 14px;
  padding:11px 14px;
  border:1px solid #d7e6f0;
  border-radius:9px;
  background:#f2f8fc;
  color:#325f7a;
  font-size:13px;
  font-weight:700;
}
.ba2-mixed-wrap details[open] > summary{
  margin-bottom:10px;
}


/* v3.6 live no-cache mode */
.ba2-live-fresh-note{
  font-size:11px;
  color:#667784;
}


/* v3.7 flight result date + time */
.ba2-datetime{display:flex;flex-direction:column;align-items:inherit}
.ba2-result-time{display:block;font-size:18px;line-height:1.1;color:#1f3248}
.ba2-result-date{display:block;margin-top:4px;font-size:11px;line-height:1.2;font-weight:700;color:#6b7987;white-space:nowrap}
.seg-datetime{min-width:100px}
.seg-datetime .ba2-result-time{font-size:14px}
.seg-datetime .ba2-result-date{font-size:10px}
@media(max-width:700px){
  .ba2-result-time{font-size:16px}
  .ba2-result-date{font-size:10px}
  .seg-datetime{min-width:84px}
}


/* v3.8 smart rolling cache freshness */
.ba2-live-badge,.ba2-recent-badge{
  display:table;
  margin-top:6px;
  padding:3px 7px;
  border-radius:999px;
  font-size:9px;
  line-height:1.2;
  font-weight:800;
}
.ba2-live-badge{
  background:#edf8f1;
  border:1px solid #c9e7d3;
  color:#287045;
}
.ba2-recent-badge{
  background:#fff7e9;
  border:1px solid #efd9ad;
  color:#805d25;
}
.ba2-flight:has(.ba2-recent-badge),
.ba2-mixed-card:has(.ba2-recent-badge){
  opacity:.82;
}


/* v3.9 guaranteed date + airline identity */
.ba2-logo-wrap{position:relative!important;overflow:hidden;background:#fff}
.ba2-logo-wrap .logo-fallback{display:flex!important;position:absolute!important;inset:2px!important;z-index:1!important}
.ba2-logo-wrap .ba2-airline-logo{position:absolute!important;inset:2px!important;z-index:2!important;background:#fff!important}
.ba2-logo-initials-only .logo-fallback{z-index:2!important}
.ba2-result-date{display:block!important;min-height:13px;opacity:1!important;visibility:visible!important}


/* v4.0 PREVIEW MATCH */
.byair-v2{--ba-teal:#31b8bb;--ba-line:#dfe7ec;--ba-muted:#748493;--ba-ink:#1c2d3e}
.ba2-fare-strip{margin:14px 0 18px;background:#fff;border:1px solid #e1e8ed;border-radius:12px;min-height:72px;grid-template-columns:44px 1fr 44px 150px;align-items:stretch;overflow:hidden;box-shadow:0 5px 18px rgba(20,54,80,.05)}
.ba2-fare-strip-days{display:grid;grid-template-columns:repeat(7,minmax(88px,1fr));min-width:0}
.ba2-fare-day{border:0;border-left:1px solid #eef2f5;background:#fff;padding:9px 8px;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:5px;cursor:pointer}
.ba2-fare-day span{font-size:10px;color:#556778}.ba2-fare-day b{font-size:11px;color:#159da3;white-space:nowrap}
.ba2-fare-day.selected{background:linear-gradient(180deg,#50c4c7,#2eb1b5);color:#fff;border-radius:9px;margin:6px}.ba2-fare-day.selected span,.ba2-fare-day.selected b{color:#fff}
.ba2-fare-arrow,.ba2-fare-calendar-link{border:0;background:#fff;color:#2a6d7e;cursor:pointer;font-weight:800}.ba2-fare-arrow{font-size:25px;border-right:1px solid #eef2f5}#ba2-fare-next{border-left:1px solid #eef2f5;border-right:0}.ba2-fare-calendar-link{border-left:1px solid #eef2f5;font-size:11px;color:#299ca4}

.ba2-route-summary{margin:18px 0 8px;align-items:center;justify-content:space-between;gap:20px}.ba2-route-summary h3{margin:0;font-size:19px;color:#172938}.ba2-route-summary p{margin:5px 0 0;font-size:11px;color:#697989}.ba2-route-arrow{margin:0 12px;color:#4c8290}.ba2-dot{padding:0 9px}
.ba2-summary-actions{display:flex;gap:10px}.ba2-filter-pill{height:42px;border:1px solid #dde6eb;border-radius:22px;background:#fff;display:flex;align-items:center;gap:7px;padding:0 12px;color:#365060;font-size:11px;box-shadow:0 2px 8px rgba(20,54,80,.03)}.ba2-filter-pill select{border:0!important;background:transparent!important;outline:0!important;box-shadow:none!important;padding:0 20px 0 0!important;font-size:11px;color:#172938;max-width:140px}
.ba2-result-tools{margin:0 0 6px!important;min-height:0}.ba2-counts{font-size:10px;color:#7b8a96}.ba2-counts b{font-size:11px;color:#506573}

.ba2-flight{position:relative;display:block!important;min-height:0!important;margin:8px 0!important;padding:0!important;border:1px solid #dfe7ec!important;border-radius:10px!important;box-shadow:0 3px 12px rgba(20,54,80,.04)!important;overflow:hidden!important;opacity:1!important}.ba2-flight.is-recent{opacity:.82!important}
.ba2-card-grid{display:grid;grid-template-columns:minmax(220px,1.45fr) minmax(105px,.75fr) minmax(150px,1fr) minmax(105px,.75fr) minmax(120px,.8fr) minmax(190px,1.1fr);align-items:center;min-height:100px}.ba2-card-grid>div{padding:14px 15px}
.ba2-airline-col{min-width:0}.ba2-airline-copy{min-width:0}.ba2-airline-copy>b{font-size:13px!important;color:#253848;white-space:normal}.ba2-airline-copy>small{font-size:10px!important;color:#84909b!important}.ba2-aircraft-chip{display:table;margin-top:5px;background:#f1f4f6;color:#667581;padding:3px 7px;border-radius:5px;font-size:9px;line-height:1.2}
.ba2-logo-wrap{width:58px!important;height:58px!important;flex:0 0 58px!important}.ba2-airline-logo,.ba2-logo-wrap .logo-fallback{width:54px!important;height:54px!important;border-radius:10px!important}
.ba2-time-col{text-align:center}.ba2-time-col .ba2-result-time{font-size:17px!important;font-weight:800;color:#172c3c}.ba2-time-col .ba2-result-date{font-size:10px!important;color:#5f7080!important;margin-top:3px}.ba2-time-col>strong{display:block;margin-top:4px;color:#526879;font-size:12px}
.ba2-duration-col{text-align:center;color:#71808c}.ba2-duration-col>small{font-size:10px}.ba2-route-line{display:flex;align-items:center;justify-content:center;margin:6px 0 4px}.ba2-route-line i{height:1px;background:#aebbc5;flex:1;max-width:50px}.ba2-route-line span{font-size:11px;color:#6b7b86;margin:0 5px}.ba2-stop-main{display:block;font-size:10px;color:#536676}.ba2-layover{display:block!important;font-size:9px!important;color:#82909a;margin-top:2px}
.ba2-seat-wrap{text-align:center}.ba2-fare-status{display:inline-block;padding:3px 6px;border-radius:5px;font-size:8px;font-weight:900;white-space:nowrap;margin-bottom:8px}.ba2-fare-status.live{background:#eaf8ec;color:#3f8d52}.ba2-fare-status.recent{background:#f6eafd;color:#8c4aa6}.ba2-seat-col small{display:block;color:#7a8995;font-size:9px;margin-bottom:4px}.ba2-seat-col b{font-size:12px;color:#394e5d}.ba2-seat-col b.good{color:#29985a}.ba2-seat-col b.limited{color:#e16932}.ba2-seat-col b.neutral{color:#7a8995}
.ba2-price-col{border-left:1px solid #e8edf0;text-align:center;height:100%;display:flex;flex-direction:column;justify-content:center}.ba2-card-price{font-size:17px!important;color:#28aeb3!important;background:transparent!important;padding:0!important}.ba2-price-col>small{font-size:9px;color:#7c8993;margin:2px 0 7px}.ba2-whatsapp{display:block!important;margin:0!important;background:#12b932!important;color:#fff!important;border-radius:5px!important;padding:7px 8px!important;font-size:10px!important;font-weight:900!important}
.ba2-card-details{border-top:1px solid #edf1f4;background:#fbfcfd}.ba2-card-details>summary{list-style:none;text-align:right;padding:7px 18px;color:#2995a2;font-size:10px;cursor:pointer}.ba2-card-details>summary::-webkit-details-marker{display:none}.ba2-detail-panel{padding:12px 18px 16px}.ba2-detail-chips{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:10px}.ba2-detail-segment{display:grid;grid-template-columns:240px 1fr;gap:20px;align-items:center;padding:10px 0;border-top:1px dashed #e3e9ed}.ba2-detail-carrier{display:flex;align-items:center;gap:10px}.ba2-detail-carrier b,.ba2-detail-carrier small{display:block}.ba2-detail-carrier small{font-size:9px;color:#758592;margin-top:3px}.ba2-detail-route{display:grid;grid-template-columns:105px 1fr 105px;gap:12px;align-items:center;text-align:center}.ba2-details-empty{font-size:11px;color:#748492;padding:8px 0}.ba2-mixed-preview .ba2-aircraft-chip{background:#f5eef9;color:#7b5790}

@media(max-width:1050px){.ba2-card-grid{grid-template-columns:1.4fr .8fr 1fr .8fr 1fr}.ba2-seat-wrap{display:none}.ba2-fare-strip{grid-template-columns:38px 1fr 38px}.ba2-fare-calendar-link{grid-column:1/-1;border-left:0;border-top:1px solid #eef2f5;height:34px}}
@media(max-width:820px){.ba2-fare-strip-days{grid-template-columns:repeat(4,1fr);overflow:hidden}.ba2-route-summary{align-items:flex-start;flex-direction:column}.ba2-summary-actions{width:100%;flex-wrap:wrap}.ba2-card-grid{grid-template-columns:1.25fr 1fr 1fr}.ba2-airline-col{grid-column:1/-1;border-bottom:1px solid #edf1f4}.ba2-duration-col{display:none}.ba2-price-col{border-left:0;grid-column:1/-1;border-top:1px solid #edf1f4;height:auto}}
@media(max-width:520px){.ba2-fare-strip-days{grid-template-columns:repeat(3,1fr)}.ba2-card-grid{grid-template-columns:1fr 1fr}.ba2-airline-col{grid-column:1/-1}.ba2-seat-wrap{display:block}.ba2-price-col{grid-column:1/-1}.ba2-detail-segment{grid-template-columns:1fr}.ba2-detail-route{grid-template-columns:85px 1fr 85px}}


/* v4.1 final direct-render transport */
.ba2-emergency-card{border-color:#dce7eb!important}
.ba2-emergency-card .ba2-card-grid{background:#fff}


/* v4.2 fast fare strip */
.ba2-fare-loading{
  display:inline-block;
  font-size:9px;
  font-weight:700;
  opacity:.55;
  animation:ba2FarePulse 1.15s ease-in-out infinite;
}
@keyframes ba2FarePulse{
  0%,100%{opacity:.35}
  50%{opacity:.9}
}
.ba2-fare-day.selected .ba2-fare-loading{color:#fff;opacity:.8}


/* v4.3 calendar popup/fare reliability */
#ba2-calendar:not(.show){display:none!important}
.ba2-fare-day .ba2-fare-loading{white-space:nowrap}


/* v4.4 turbo fare strip */
.ba2-fare-loading{
  font-size:8px!important;
  letter-spacing:.1px;
}


/* v4.5 instant-fare batch polling */
.ba2-fare-loading{font-size:8px!important}


/* v4.6 two-month fare snapshot */
.byair-v2 .calnote.loading,
.byair-v2 .calnote.progress{
  opacity:.78;
}
