
.gtbe-wrap{font-family:system-ui,-apple-system,Segoe UI,Roboto,Ubuntu,Helvetica,Arial,sans-serif;color:#0b213f;max-width:100%;overflow-x:hidden;padding:8px}
.gtbe-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:12px;align-items:stretch}
.gtbe-row label{font-size:14px;display:flex;flex-direction:column;gap:6px}
.gtbe-row input,.gtbe-row select,.gtbe-row textarea{padding:10px;border:1px solid #cfe0ff;border-radius:8px;box-sizing:border-box;width:100%}
.gtbe-steps .gtbe-step{background:#fff;border:1px solid #e5efff;border-radius:12px;padding:16px;margin-bottom:16px;box-shadow:0 1px 2px rgba(0,40,120,.05)}
.gtbe-steps h3{margin-top:0;color:#0a4fb3}
.gtbe-fare.sticky{background:#f7fbff;border:1px dashed #9ec5ff;border-radius:12px;padding:12px}
.gtbe-fare .gtbe-fare-lines div{display:flex;justify-content:space-between}
.gtbe-tabs{display:flex;gap:8px;margin:8px 0}
.gtbe-tabs button{border:1px solid #cfe0ff;border-bottom-width:2px;background:#fff;border-radius:10px;padding:8px 12px;cursor:pointer}
.gtbe-tabs button.active{background:#e8f1ff;border-color:#8bb6ff}
.gtbe-summary{display:grid;grid-template-columns:1fr 1fr;gap:8px;background:#f8fbff;border:1px solid #d7e6ff;border-radius:12px;padding:12px;margin-bottom:12px}
.gtbe-srow{display:flex;gap:6px}
.gtbe-next,.gtbe-prev,.gtbe-pay{background:#0a4fb3;color:#fff;border:none;border-radius:10px;padding:10px 14px;cursor:pointer}
.gtbe-prev{background:#66758f}
.gtbe-next[disabled], .gtbe-prev[disabled], .gtbe-pay[disabled], .gtbe-disabled{opacity:.45;cursor:not-allowed;filter:saturate(0.6)}
.gtbe-invalid{ border-color:#ff6b6b !important; box-shadow:0 0 0 3px rgba(255,107,107,.15) !important }
@media(max-width:1024px){.gtbe-row{grid-template-columns:1fr 1fr} .gtbe-summary{grid-template-columns:1fr}}
@media(max-width:680px){
  .gtbe-steps .gtbe-step{padding:12px}
  .gtbe-row{grid-template-columns:1fr; gap:10px}
  .gtbe-fare.sticky{position:relative}
  .gtbe-row .gtbe-fare{grid-column:1/-1; order:99}
  .gtbe-next,.gtbe-prev,.gtbe-pay{width:100%}
  .gtbe-wrap{padding-bottom:90px}
}

/* GTBE v1.4.3 Advance Payment Popup */
.gtbe-advance-modal{position:fixed;inset:0;background:rgba(15,23,42,.62);z-index:999999;display:flex;align-items:center;justify-content:center;padding:16px}
.gtbe-advance-box{position:relative;background:#fff;border-radius:20px;max-width:520px;width:100%;box-shadow:0 25px 70px rgba(0,0,0,.28);padding:22px;color:#111827}
.gtbe-advance-box h3{margin:0 34px 8px 0;color:#0a4fb3;font-size:24px}
.gtbe-advance-close{position:absolute;right:14px;top:12px;border:0;background:#f1f5f9;border-radius:999px;width:34px;height:34px;font-size:24px;line-height:1;cursor:pointer;color:#334155}
.gtbe-advance-msg{margin:0 0 16px;color:#475569;line-height:1.5}
.gtbe-advance-total{display:flex;justify-content:space-between;align-items:center;background:#f8fbff;border:1px solid #d7e6ff;border-radius:14px;padding:12px 14px;margin-bottom:14px}
.gtbe-advance-total strong{font-size:22px;color:#0f172a}
.gtbe-advance-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.gtbe-advance-options button{border:1px solid #cfe0ff;border-radius:16px;padding:14px;cursor:pointer;background:#fff;text-align:left;color:#0f172a;box-shadow:0 1px 3px rgba(0,40,120,.08)}
.gtbe-advance-options button:hover{border-color:#0a4fb3;box-shadow:0 8px 24px rgba(10,79,179,.15)}
.gtbe-advance-options button b,.gtbe-advance-options button strong,.gtbe-advance-options button small{display:block}
.gtbe-advance-options button strong{font-size:24px;margin:8px 0;color:#0a4fb3}
.gtbe-advance-options button small{color:#64748b;line-height:1.35}
.gtbe-pay-advance{background:#effaf2!important;border-color:#86efac!important}
.gtbe-pay-advance strong{color:#16a34a!important}
.gtbe-advance-points{display:grid;grid-template-columns:1fr 1fr 1fr;gap:8px;margin:14px 0 0;padding:0;list-style:none;color:#334155;font-size:13px}
.gtbe-advance-points li{background:#f8fafc;border-radius:10px;padding:8px;text-align:center}
@media(max-width:640px){.gtbe-advance-box{padding:18px}.gtbe-advance-options{grid-template-columns:1fr}.gtbe-advance-points{grid-template-columns:1fr}.gtbe-advance-box h3{font-size:21px}}

/* GTBE v1.4.3.1 Advance Visibility Fix */
.gtbe-advance-early{margin-top:12px;background:linear-gradient(135deg,#effaf2,#f8fbff);border:1px solid #86efac;border-radius:14px;padding:12px;color:#0f172a;box-shadow:0 8px 22px rgba(22,163,74,.08)}
.gtbe-advance-badge{display:inline-flex;background:#16a34a;color:#fff;border-radius:999px;padding:4px 10px;font-size:12px;font-weight:800;margin-bottom:8px;letter-spacing:.02em;text-transform:uppercase}
.gtbe-advance-early-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:8px}
.gtbe-advance-early-grid>div{background:#fff;border:1px solid #e5efff;border-radius:10px;padding:8px;text-align:center}
.gtbe-advance-early-grid span{display:block;font-size:12px;color:#64748b;margin-bottom:3px}
.gtbe-advance-early-grid strong{display:block;font-size:18px;color:#0a4fb3}
.gtbe-advance-early-grid .gtbe-highlight{border-color:#86efac;background:#f0fdf4}
.gtbe-advance-early-grid .gtbe-highlight strong{color:#16a34a;font-size:22px}
.gtbe-advance-early p{margin:0;color:#334155;font-size:13px;line-height:1.4}
.gtbe-advance-details{background:#fff7ed;border:1px solid #fed7aa;color:#7c2d12;border-radius:12px;padding:10px;margin:0 0 12px;font-size:14px}
@media(max-width:680px){.gtbe-advance-early-grid{grid-template-columns:1fr}.gtbe-advance-early-grid strong{font-size:17px}.gtbe-advance-early-grid .gtbe-highlight strong{font-size:20px}}

/* GTBE 1.4.3.2 Advance promotion + payment choice */
.gtbe-advance-promo{display:flex;gap:12px;align-items:center;background:linear-gradient(135deg,#fff7ed,#eff6ff);border:1px solid #fed7aa;border-radius:16px;padding:12px 14px;margin:0 0 18px;color:#0f172a;box-shadow:0 6px 20px rgba(15,23,42,.05)}
.gtbe-advance-promo-icon{width:38px;height:38px;border-radius:999px;background:#fff;display:flex;align-items:center;justify-content:center;font-size:20px;box-shadow:0 2px 8px rgba(15,23,42,.08);flex:0 0 auto}
.gtbe-advance-promo strong{display:block;color:#0a4fb3;font-size:17px;margin-bottom:2px}
.gtbe-advance-promo span{display:block;color:#475569;line-height:1.35;font-size:14px}
.gtbe-fare-empty{color:#475569;line-height:1.45;font-size:14px;margin-top:8px}
.gtbe-payment-choice{margin:10px 0;display:grid;gap:8px}
.gtbe-payment-choice-title{font-weight:800;color:#0f172a;font-size:14px;margin-bottom:2px}
.gtbe-pay-option{display:flex;align-items:flex-start;gap:8px;padding:10px;border:1px solid #d7e6ff;border-radius:12px;background:#fff;cursor:pointer;transition:.18s ease;min-width:0}
.gtbe-pay-option:hover{border-color:#0a4fb3;box-shadow:0 6px 16px rgba(10,79,179,.10)}
.gtbe-pay-option input{margin-top:4px;flex:0 0 auto}
.gtbe-pay-option span{display:block;min-width:0}
.gtbe-pay-option b{display:block;color:#0f172a;font-size:13px}
.gtbe-pay-option strong{display:block;color:#0a4fb3;font-size:19px;line-height:1.15;margin:4px 0}
.gtbe-pay-option small{display:block;color:#64748b;font-size:12px;line-height:1.35}
.gtbe-pay-option.is-recommended{background:#f0fdf4;border-color:#86efac}
.gtbe-pay-option.is-recommended strong{color:#16a34a}
.gtbe-payment-choice-review{background:#f8fbff;border:1px solid #d7e6ff;border-radius:14px;padding:12px;margin:12px 0}
.gtbe-step3-payment-choice{grid-column:1/-1;width:100%}
@media(max-width:760px){.gtbe-advance-promo{align-items:flex-start}.gtbe-advance-early-grid{grid-template-columns:1fr}.gtbe-payment-choice-review{padding:10px}}
