#azsp-results-v4, #azsp-booking-form, #azsp-search-v4{font-family:'Inter Tight', Inter, ui-sans-serif, system-ui, Arial, sans-serif;}

:root{--az-red:#D30410;--az-gray:#393232;}
.azsp-container{max-width:1100px;margin:0 auto;padding:10px 14px}
/* Search pill 4 columns look */
.azsp-search.pill{background:#fff;border:1px solid var(--azsp-b);border-radius:18px;padding:16px;box-shadow:0 8px 28px rgba(0,0,0,.06)}
.azsp-row{display:grid;grid-template-columns:1fr 1fr 1fr 1fr auto;gap:16px;align-items:center}
.azsp-search label{display:flex;flex-direction:column;font-size:12px;color:#374151}
.azsp-search select,.azsp-search input[type="date"],.azsp-search input[type="text"]{padding:12px;border:1px solid var(--azsp-b);border-radius:12px;background:#fff}
.azsp-btn.lg{background:var(--azsp-red);color:#fff;border:0;border-radius:16px;padding:12px 22px;font-weight:700;display:flex;align-items:center;gap:10px}
@media(max-width:1024px){ .azsp-row{grid-template-columns:1fr 1fr 1fr;}.azsp-btn.lg{grid-column:1/-1;justify-self:start}}
@media(max-width:700px){ .azsp-row{grid-template-columns:1fr 1fr}.azsp-btn.lg{grid-column:1/-1}}

/* Pax popup */
.azsp-pax{position:relative}
.azsp-pax-trigger{display:flex;justify-content:space-between;align-items:center;padding:12px;border:1px solid var(--azsp-b);border-radius:12px;background:#fff;cursor:pointer}
.azsp-pax-popup{position:absolute;top:calc(100% + 8px);left:0;z-index:30;width:320px;max-width:calc(100vw - 32px);background:#fff;border:1px solid var(--azsp-b);border-radius:14px;padding:12px;box-shadow:0 12px 32px rgba(0,0,0,.12);display:none}
.azsp-pax-popup.open{display:block}
.azsp-pax-popup .row{display:flex;justify-content:space-between;align-items:center;margin:8px 0}
.azsp-pax-popup .txt .t{font-weight:700;color:#0f172a}
.azsp-pax-popup .txt .s{font-size:12px;color:#6b7280}
.azsp-pax-popup .ctrl{display:flex;align-items:center;gap:10px}
.azsp-pax-popup .ctrl .minus,.azsp-pax-popup .ctrl .plus{width:28px;height:28px;border-radius:8px;border:1px solid var(--azsp-b);background:#fff;line-height:26px;text-align:center;font-size:18px}
.azsp-pax-popup .row.actions{justify-content:flex-end}
.azsp-pax-popup .azsp-done{background:#0f172a;color:#fff;border:0;border-radius:10px;padding:6px 10px;font-weight:600}

/* Results */
.azsp-results{display:flex;flex-direction:column;gap:16px}
.azsp-card{display:grid;grid-template-columns:48px 1fr 190px;gap:16px;align-items:center;border:1px solid var(--azsp-b);border-radius:14px;padding:18px;background:#fff;box-shadow:0 8px 24px rgba(0,0,0,.05)}
.azsp-card .azsp-img{display:none}
.azsp-card .azsp-icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:1px solid var(--azsp-b);border-radius:8px;color:var(--azsp-red)}
.azsp-title{font-size:18px;color:var(--azsp-dark);line-height:1.2;font-weight:800;margin:0 0 4px}
.azsp-sub{font-size:12px;color:var(--azsp-muted)}
.azsp-lines{margin-top:6px}
.azsp-time-row{display:grid;grid-template-columns:60px 1fr 60px;align-items:center;font-size:13px;color:var(--azsp-dark)}
.azsp-time-row .dot{height:2px;background:linear-gradient(90deg, var(--azsp-b) 50%, transparent 50%);background-size:12px 2px;margin:0 10px;pointer-events:none}
.azsp-badges{display:flex;gap:8px;margin-top:6px}
.azsp-badge{font-size:11px;line-height:1;padding:4px 7px;border-radius:10px;border:1px solid var(--azsp-b);color:#6b7280;background:#fff}
.azsp-card .azsp-side{display:flex;flex-direction:column;align-items:flex-end;gap:8px;position:relative;z-index:2}
.azsp-card .price{font-weight:800;font-size:22px}
.azsp-card .curr{font-size:12px;color:#6b7280}
.azsp-card .azsp-btn{background:#fff;border:1px solid var(--azsp-b);color:#0f172a;padding:8px 14px;border-radius:12px;font-weight:700;display:inline-flex;gap:8px;align-items:center}
@media(min-width:1280px){ .azsp-card{grid-template-columns:48px 1fr 170px} }
@media(max-width:900px){ .azsp-card{grid-template-columns:1fr}.azsp-card .azsp-side{align-items:flex-start;flex-direction:row;margin-top:8px}}

/* Booking clean two-column */
.azsp-booking-wrap{display:grid;grid-template-columns:1.1fr .9fr;gap:18px}
.azsp-book-left,.azsp-book-right{background:#fff;border:1px solid var(--azsp-b);border-radius:16px;padding:18px;box-shadow:0 8px 24px rgba(0,0,0,.05)}
.azsp-book-left h3,.azsp-book-right h3{margin:0 0 14px;font-size:18px}
.azsp-book-form .grid2{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.azsp-book-form label{display:flex;flex-direction:column;font-size:12px;color:#374151}
.azsp-book-form input,.azsp-book-form select,.azsp-book-form textarea{border:1px solid var(--azsp-b);border-radius:10px;padding:10px;font-size:14px}
.azsp-book-form .inline{display:inline-flex;align-items:center;gap:8px;margin-right:18px}
.azsp-book-form .agree{margin-top:8px;display:flex;align-items:center;gap:8px}
.azsp-success{padding:12px 16px;background:#ecfdf5;border:1px solid #a7f3d0;border-radius:12px}
@media(max-width:900px){ .azsp-booking-wrap{grid-template-columns:1fr} }

/* Success / Failed views */
.azsp-confirm{max-width:820px;margin:40px auto;text-align:center}
.azsp-confirm img{max-width:420px;height:auto;margin:0 auto 10px;display:block}
.azsp-confirm h2{font-size:32px;margin:6px 0}
.azsp-confirm p{color:#6b7280}

/* v1.6.16: small polish */
.azsp-btn.primary{border-radius:12px}


/* === Global responsive helpers === */
@media (max-width: 520px){
  .azsp-container{padding:10px 10px}
  .azsp-btn.lg{width:100%;justify-content:center}
  .azsp-card .azsp-side .azsp-btn{width:100%;justify-content:center;height:46px}
  .azsp-book-form .grid2{grid-template-columns:1fr}
}


/* === Global responsive helpers v2 === */
.azsp-container{width:100%;max-width:1180px;margin:0 auto;padding:0 12px}
img{max-width:100%;height:auto}

/* Scrollable tables on mobile */
@media (max-width: 640px){
  .azsp-table-wrap{overflow-x:auto;-webkit-overflow-scrolling:touch}
  .azsp-table-wrap table{min-width:540px}
}

/* Button tap targets */
@media (max-width: 640px){
  .azsp-btn, button, input[type=submit]{min-height:46px}
}

/* Utility */
.hide-on-mobile{display:none!important}
@media (min-width: 641px){
  .hide-on-mobile{display:initial!important}
}


/* === GLOBAL ULTRA RESPONSIVE v3 === */
.azsp-container{ width:100%; max-width:1240px; margin:0 auto; padding:0 12px; }
img{ max-width:100%; height:auto; }

/* Typography scaling (optional gentle) */
@media (max-width:640px){
  h1{ font-size:clamp(20px, 6vw, 28px); }
  h2{ font-size:clamp(18px, 5.5vw, 24px); }
}

/* Tables */
.azsp-table-wrap{ width:100%; overflow-x:auto; -webkit-overflow-scrolling:touch; }
.azsp-table-wrap table{ min-width:540px; }

/* Buttons: tap targets */
@media (max-width:640px){
  .azsp-btn, button, input[type=submit]{ min-height:48px; }
}

/* Form inputs full width by default in small screens */
@media (max-width:640px){
  input[type=text], input[type=date], input[type=email], select, textarea{ width:100%; }
}



/* ===== Booking page — Elegant exact skin (v2) ===== */
#azsp-figma-v4{font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif}
#azsp-figma-v4 .layout{display:grid;grid-template-columns:1.25fr .9fr;gap:24px}
#azsp-figma-v4 .card,#azsp-figma-v4 .sum-card,#azsp-figma-v4 .sum-header{background:#fff;border:1px solid #EEEFF3;border-radius:16px;padding:16px}
#azsp-figma-v4 label{font-size:12px;color:#6D6D6D;margin-bottom:6px;display:block}
#azsp-figma-v4 .grid-2{display:grid;grid-template-columns:1fr 1fr;gap:14px}
#azsp-figma-v4 .field{margin-bottom:14px}
#azsp-figma-v4 input,#azsp-figma-v4 select,#azsp-figma-v4 textarea{background:#FBF8F8;border:1px solid #EEEFF3;border-radius:12px;height:46px;padding:10px 12px;outline:none;box-shadow:none}
#azsp-figma-v4 textarea{height:auto;min-height:120px;resize:vertical}
#azsp-figma-v4 .pay-row{display:flex;gap:18px;align-items:center;border:1px solid #EEEFF3;border-radius:999px;padding:8px 12px;background:#fff}
#azsp-figma-v4 .sum-header .h1{text-align:center;font-weight:700;margin:0}
#azsp-figma-v4 .sum-header .date{color:#D30410}
#azsp-figma-v4 .sum-header .divider{height:1px;background:#EEEFF3;margin:8px 0 10px;border-radius:1px}
#azsp-figma-v4 .timeline{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:10px;margin:0 0 6px}
#azsp-figma-v4 .timeline .time span{font-weight:800;color:#D30410}
#azsp-figma-v4 .timeline .line{height:2px;background:#F0EAEA;position:relative;border-radius:2px}
#azsp-figma-v4 .timeline .line:before,#azsp-figma-v4 .timeline .line:after{content:"";position:absolute;top:-5px;width:10px;height:10px;border-radius:50%;background:#F0EAEA}
#azsp-figma-v4 .timeline .line:before{left:-5px}#azsp-figma-v4 .timeline .line:after{right:-5px}
#azsp-figma-v4 .mid-cities{display:grid;grid-template-columns:1fr auto 1fr;gap:12px;align-items:center}
#azsp-figma-v4 .mid-cities .city{font-weight:600;color:#393232}
#azsp-figma-v4 .mid-cities .sub{font-size:12px;color:#6b7280}
#azsp-figma-v4 .mid-cities .right{text-align:right}
#azsp-figma-v4 .mid-cities .dur{font-size:12px;color:#6b7280;text-align:center}
#azsp-figma-v4 .sum-header img{display:none!important}
#azsp-figma-v4 .sum-title{font-weight:700;text-align:center;margin:0 0 10px}
#azsp-figma-v4 .price-box{border:1px solid #EEEFF3;border-radius:12px;padding:14px}
#azsp-figma-v4 .price-ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:10px}
#azsp-figma-v4 .price-ul li{display:flex;justify-content:space-between;align-items:center}
#azsp-figma-v4 .price-ul .sep{height:1px;background:#EEEFF3}
#azsp-figma-v4 .price-ul .num{color:#D30410;font-weight:700}
#azsp-figma-v4 .price-ul .total b{font-size:18px}
#azsp-figma-v4 .primary{width:100%;background:#D30410;color:#fff;border:0;border-radius:12px;height:48px;font-weight:700}
@media (max-width:980px){#azsp-figma-v4 .layout{grid-template-columns:1fr;gap:16px}}



/* ===== Figma EXACT tokens ===== */
#azsp-figma-v4{--az-red:#D30410;--az-text:#393232;--az-line:#F0EAEA;--az-border:#EEEFF3;--az-muted:#6D6D6D;--az-bg:#FBF8F8}
#azsp-figma-v4 .card,#azsp-figma-v4 .sum-card,#azsp-figma-v4 .sum-header{border-radius:24px!important;border:1px solid var(--az-border)!important;padding:24px!important;background:#fff!important}
#azsp-figma-v4 .layout{display:grid;grid-template-columns:654px 538px;gap:24px!important}
#azsp-figma-v4 .field{margin-bottom:24px!important}
#azsp-figma-v4 .grid-2{display:grid;grid-template-columns:1fr 1fr;gap:24px!important}
#azsp-figma-v4 label{font-size:12px;color:var(--az-muted);margin:0 0 6px;display:block}
#azsp-figma-v4 input,#azsp-figma-v4 select,#azsp-figma-v4 textarea{background:var(--az-bg)!important;border:1px solid var(--az-border)!important;border-radius:12px!important;height:46px!important;padding:10px 12px!important;outline:none;box-shadow:none;color:var(--az-text)}
#azsp-figma-v4 textarea{min-height:120px;height:auto;resize:vertical}
#azsp-figma-v4 .pay-row{display:flex;gap:24px!important;align-items:center;border:1px solid var(--az-border);border-radius:999px;padding:10px 16px;background:#fff}
/* Header block */
#azsp-figma-v4 .sum-header .h1{text-align:center;font-weight:600;margin:0 0 12px}
#azsp-figma-v4 .sum-header .date{color:var(--az-red)}
#azsp-figma-v4 .sum-header .divider{height:1px;background:var(--az-border);margin:0 0 16px;border-radius:1px}
#azsp-figma-v4 .timeline{display:grid;grid-template-columns:1fr auto 1fr;gap:24px;align-items:center;margin:0 0 6px}
#azsp-figma-v4 .timeline .time span{font-weight:800;color:var(--az-red)}
#azsp-figma-v4 .timeline .line{height:2px;background:var(--az-line);position:relative;border-radius:2px}
#azsp-figma-v4 .timeline .line:before,#azsp-figma-v4 .timeline .line:after{content:"";position:absolute;top:-5px;width:10px;height:10px;border-radius:50%;background:var(--az-line)}
#azsp-figma-v4 .timeline .line:before{left:-5px}#azsp-figma-v4 .timeline .line:after{right:-5px}
#azsp-figma-v4 .mid-cities{display:grid;grid-template-columns:1fr auto 1fr;gap:24px;align-items:center;margin-top:6px}
#azsp-figma-v4 .mid-cities .city{font-weight:600;color:var(--az-text)}
#azsp-figma-v4 .mid-cities .sub{font-size:12px;color:#6b7280}
#azsp-figma-v4 .mid-cities .right{text-align:right}
#azsp-figma-v4 .mid-cities .dur{font-size:12px;color:#6b7280;text-align:center}
/* Summary card */
#azsp-figma-v4 .sum-title{text-align:center;font-weight:600;margin:0 0 12px}
#azsp-figma-v4 .price-box{border:0;padding:0}
#azsp-figma-v4 .price-ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:24px}
#azsp-figma-v4 .price-ul .row{display:flex;justify-content:space-between;align-items:center}
#azsp-figma-v4 .price-ul .num{color:var(--az-red);font-weight:700}
#azsp-figma-v4 .totalbar{background:#FBF4F4;border-radius:8px;padding:14px 16px;display:flex;justify-content:space-between;align-items:center}
#azsp-figma-v4 .primary{width:100%;background:var(--az-red);color:#fff;border:0;border-radius:12px;height:52px;font-weight:700}
@media(max-width:1100px){#azsp-figma-v4 .layout{grid-template-columns:1fr;gap:24px}}



/* === FIGMA MATCH v1 (Azhar spec) === */
#azsp-figma-v4, #azsp-figma-v4 * { box-sizing: border-box; }
#azsp-figma-v4 { color: #393232; }
#azsp-figma-v4 input[type="text"],
#azsp-figma-v4 input[type="email"],
#azsp-figma-v4 input[type="tel"],
#azsp-figma-v4 input[type="number"],
#azsp-figma-v4 select,
#azsp-figma-v4 textarea {
  width: 100%;
  background: #FBFBFB; /* field background */
  color: #393232;       /* text color */
  border: 1px solid rgba(0,0,0,0.08);
  border-radius: 12px;
  padding: 12px 14px;
  outline: none;
  transition: box-shadow .2s ease;
}
#azsp-figma-v4 textarea { min-height: 124px; }
#azsp-figma-v4 input::placeholder,
#azsp-figma-v4 textarea::placeholder { color: rgba(57,50,50,0.6); }

#azsp-figma-v4 input:focus,
#azsp-figma-v4 select:focus,
#azsp-figma-v4 textarea:focus {
  box-shadow: 0 0 0 3px rgba(211,4,16,0.12);
  border-color: rgba(211,4,16,0.35);
}

/* grid spacing / cards */
#azsp-figma-v4 .layout { gap: 20px; }
#azsp-figma-v4 .card {
  background: #FFFFFF;
  border: 1px solid #EEEFF3;
  border-radius: 16px;
  padding: 16px;
}

/* summary card */
#azsp-figma-v4 .price-card .head { font-weight: 700; margin-bottom: 10px; }
#azsp-figma-v4 .price-card .row { display:flex; justify-content:space-between; padding:8px 0; border-bottom:1px solid #F0F1F4; }
#azsp-figma-v4 .price-card .row:last-child { border-bottom: 0; }

/* primary button */
#azsp-figma-v4 .btn-primary {
  display:inline-flex; align-items:center; justify-content:center;
  width:100%; padding:14px 18px; border-radius:12px; border:none;
  cursor:pointer; background:#D30410; color:#fff; font-weight:700;
}

/* radio group */
#azsp-figma-v4 .pay-methods { display:flex; gap:16px; align-items:center; }
#azsp-figma-v4 .pay-methods label {
  display:inline-flex; align-items:center; gap:8px;
  padding:10px 14px; border:1px solid #EEEFF3; background:#fff;
  border-radius:12px; cursor:pointer; user-select:none;
}
#azsp-figma-v4 .pay-methods input[type="radio"] { accent-color:#D30410; }
#azsp-figma-v4 .icon-alt { background:url('../img/alt.svg') center/contain no-repeat; width:18px; height:18px; display:inline-block; }
#azsp-figma-v4 .icon-card { background:url('../img/card.svg') center/contain no-repeat; width:18px; height:18px; display:inline-block; }

/* micro text */
#azsp-figma-v4 .muted { color:#8C8C8C; font-size:13px; }

/* === injected figma skin overrides === */

/* === AZ Shuttle Pro — Figma-style booking skin (non-destructive) ===
   Scope: only within booking form wrapper(s) we can detect.
   Note: We avoid global selectors; everything is gated by common wrappers.
*/
.azsp-booking, #azsp-booking, .azsp, #azsp-figma, #azsp-figma-v4 {
  --azsp-red: #D30410;
  --azsp-border: #EEEFF3;
  --azsp-bg: #FFFFFF;
  --azsp-input: #F9F7F7;
  --azsp-radius: 16px;
  --azsp-radius-sm: 12px;
  --azsp-gap: 22px;
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
}
/* Layout */
.azsp-booking .azsp-layout,
#azsp-booking .azsp-layout,
.azsp .azsp-layout,
#azsp-figma .azsp-layout,
#azsp-figma-v4 .azsp-layout{
  display:grid;
  grid-template-columns: 1.2fr .9fr;
  gap: var(--azsp-gap);
}
/* Cards */
.azsp-booking .azsp-card,
#azsp-booking .azsp-card,
.azsp .azsp-card,
#azsp-figma .azsp-card,
#azsp-figma-v4 .azsp-card{
  background: var(--azsp-bg);
  border:1px solid var(--azsp-border);
  border-radius: var(--azsp-radius);
  padding:18px;
}
/* Inputs */
.azsp-booking input[type="text"],
.azsp-booking input[type="email"],
.azsp-booking input[type="tel"],
.azsp-booking input[type="number"],
.azsp-booking input[type="date"],
.azsp-booking select,
.azsp-booking textarea,
#azsp-booking input[type="text"],
#azsp-booking input[type="email"],
#azsp-booking input[type="tel"],
#azsp-booking input[type="number"],
#azsp-booking input[type="date"],
#azsp-booking select,
#azsp-booking textarea,
.azsp input[type="text"],
.azsp input[type="email"],
.azsp input[type="tel"],
.azsp input[type="number"],
.azsp input[type="date"],
.azsp select,
.azsp textarea{
  background: var(--azsp-input);
  border:1px solid var(--azsp-border);
  border-radius: var(--azsp-radius-sm);
  height:46px;
  box-shadow:none;
}
.azsp-booking textarea,
#azsp-booking textarea,
.azsp textarea{min-height:96px}
/* Buttons */
.azsp-booking .btn-primary,
#azsp-booking .btn-primary,
.azsp .btn-primary{
  background: var(--azsp-red);
  color:#fff;
  border:0;
  border-radius:10px;
  height:50px;
  padding:0 20px;
}
/* Summary title */
.azsp-booking .summary-title,
#azsp-booking .summary-title,
.azsp .summary-title{font-weight:600;margin-bottom:8px}
/* Responsive */
@media (max-width:1100px){
  .azsp-booking .azsp-layout,
  #azsp-booking .azsp-layout,
  .azsp .azsp-layout{grid-template-columns:1fr;gap:16px}
}

/* --- v2 compact overrides --- */

/* === AZSP compact tweaks v2 (closer to "I want" screenshot) === */
#azsp-figma-v4, #azsp-figma, .azsp-booking, #azsp-booking, .azsp {
  --azsp-max: 1040px;
  --azsp-right: 380px;
  --azsp-gap: 16px;
  --azsp-radius: 14px;
  --azsp-radius-sm: 10px;
  --azsp-input-h: 44px;
}
/* Center container and limit width */
#azsp-figma-v4 .azsp-container,
#azsp-figma .azsp-container,
.azsp-booking .azsp-container,
#azsp-booking .azsp-container,
.azsp .azsp-container{
  max-width: var(--azsp-max);
  margin: 0 auto !important;
  padding: 0 10px;
}
/* Grid: left flexible, right fixed */
#azsp-figma-v4 .azsp-layout,
#azsp-figma .azsp-layout,
.azsp-booking .azsp-layout,
#azsp-booking .azsp-layout,
.azsp .azsp-layout{
  display: grid;
  grid-template-columns: minmax(0, 1fr) var(--azsp-right);
  gap: var(--azsp-gap);
  align-items: start;
}
/* Cards */
#azsp-figma-v4 .azsp-card,
#azsp-figma .azsp-card,
.azsp-booking .azsp-card,
#azsp-booking .azsp-card,
.azsp .azsp-card{
  border-radius: var(--azsp-radius);
  padding: 16px;
}
/* Inputs smaller and tighter */
#azsp-figma-v4 input[type="text"],
#azsp-figma-v4 input[type="email"],
#azsp-figma-v4 input[type="tel"],
#azsp-figma-v4 input[type="number"],
#azsp-figma-v4 input[type="date"],
#azsp-figma-v4 select,
#azsp-figma-v4 textarea,
.azsp-booking input[type="text"],
.azsp-booking input[type="email"],
.azsp-booking input[type="tel"],
.azsp-booking input[type="number"],
.azsp-booking input[type="date"],
.azsp-booking select,
.azsp-booking textarea{
  height: var(--azsp-input-h);
  border-radius: var(--azsp-radius-sm);
}
/* Payment method pills more compact */
#azsp-figma-v4 .pay-method,
.azsp-booking .pay-method{
  height: 48px;
  padding: 8px 12px;
  border-radius: 12px;
}
/* Summary card headers & total box spacing */
#azsp-figma-v4 .summary-title,
.azsp-booking .summary-title{margin-bottom: 6px}
#azsp-figma-v4 .summary-total-box,
.azsp-booking .summary-total-box{margin: 10px 0 16px}
/* Button size */
#azsp-figma-v4 .btn-primary,
.azsp-booking .btn-primary{
  height: 48px;
  border-radius: 10px;
}
/* Mobile single column */
@media (max-width: 1100px){
  #azsp-figma-v4 .azsp-layout,
  .azsp-booking .azsp-layout{
    grid-template-columns: 1fr;
    gap: 14px;
  }
}

/* --- v3 pixel-match tweaks --- */

/* ===== v3: pixel-match tweaks to reference ===== */
#azsp-figma-v4, .azsp-booking, #azsp-booking, .azsp {
  --azsp-red: #D30410;
  --azsp-muted: #808189;
  --azsp-border: #EDECF0;
  --azsp-soft: #F9F7F7;
  --azsp-card: #FFFFFF;
  --azsp-radius: 18px;
  --azsp-radius-sm: 12px;
  --azsp-gap: 18px;
}
/* cards more rounded + soft border */
#azsp-figma-v4 .azsp-card{border:1px solid var(--azsp-border)!important;border-radius:var(--azsp-radius)!important;background:var(--azsp-card)!important}
/* header card (date + route) centered like ref */
#azsp-figma-v4 .azsp-header-card{
  border:1px solid var(--azsp-border)!important;
  border-radius:var(--azsp-radius)!important;
  padding:18px 20px!important;
  text-align:center!important;
  background:var(--azsp-card)!important;
}
#azsp-figma-v4 .azsp-header-card .title{font-weight:700;font-size:20px;margin-bottom:10px}
#azsp-figma-v4 .azsp-header-card .time-dot{width:6px;height:6px;border-radius:999px;background:#E2E2E6;display:inline-block;margin:0 8px;vertical-align:middle}
#azsp-figma-v4 .azsp-header-card .time{color:#000;font-weight:700}
#azsp-figma-v4 .azsp-header-card .meta{color:var(--azsp-muted);font-size:12px}
/* summary title with divider like screenshot */
#azsp-figma-v4 .summary-title{
  text-align:center!important;
  font-weight:700!important;
  padding-bottom:10px!important;
  border-bottom:1px solid var(--azsp-border)!important;
  margin:4px 6px 14px!important;
}
/* price rows spacing + right-aligned red amounts */
#azsp-figma-v4 .summary-rows .row{display:flex;justify-content:space-between;align-items:center;margin:8px 6px}
#azsp-figma-v4 .summary-rows .row .label{color:#000}
#azsp-figma-v4 .summary-rows .row .val{font-weight:700;color:#D30410}
/* total box */
#azsp-figma-v4 .summary-total-box{background:#F3F3F6;border-radius:12px;padding:12px 14px;margin:12px 6px 18px;font-weight:700;display:flex;justify-content:space-between}
/* reserve button full width and tall */
#azsp-figma-v4 .btn-primary{height:56px!important;border-radius:12px!important;background:var(--azsp-red)!important}
/* left form inputs more airy like ref */
#azsp-figma-v4 .azsp-card .field{margin-bottom:12px}
#azsp-figma-v4 .azsp-card label{font-size:12px;color:var(--azsp-muted);margin-bottom:6px;display:block}
#azsp-figma-v4 input[type="text"],
#azsp-figma-v4 input[type="email"],
#azsp-figma-v4 input[type="tel"],
#azsp-figma-v4 input[type="number"],
#azsp-figma-v4 input[type="date"],
#azsp-figma-v4 select,
#azsp-figma-v4 textarea{
  background:var(--azsp-soft)!important;
  border:1px solid var(--azsp-border)!important;
  border-radius:var(--azsp-radius-sm)!important;
  height:44px!important;
}
#azsp-figma-v4 textarea{min-height:120px!important}
/* payment methods pill look like ref */
#azsp-figma-v4 .pay-method{display:flex;align-items:center;gap:10px;background:var(--azsp-soft)!important;border:1px solid var(--azsp-border)!important;border-radius:14px!important;height:54px!important;padding:10px 14px!important}
#azsp-figma-v4 .pay-method .icon{opacity:.7}
/* tighten outer edges so both columns visually align */
#azsp-figma-v4 .azsp-card{margin:0}
#azsp-figma-v4 .azsp-layout{column-gap:22px!important}
/* mobile spacing */
@media (max-width:1100px){
  #azsp-figma-v4 .btn-primary{height:52px!important}
  #azsp-figma-v4 .summary-title{margin:2px 2px 12px!important}
}

/* --- v4 compact patch --- */

/* ===== v4: width + timeline dots (non-destructive) ===== */
#azsp-figma-v4{
  --azsp-max: 980px;     /* overall container width */
  --azsp-right: 420px;   /* right column width a bit wider */
  --azsp-gap: 18px;
}
#azsp-figma-v4 .azsp-container{
  max-width: var(--azsp-max) !important;
  margin: 0 auto !important;
  padding: 0 12px !important;
}
#azsp-figma-v4 .azsp-layout{
  grid-template-columns: minmax(0,1fr) var(--azsp-right) !important;
  gap: var(--azsp-gap) !important;
}
/* Header card timeline dots: 3 dots with center active (red) */
#azsp-figma-v4 .azsp-header-card .timeline{display:inline-flex;align-items:center;gap:10px}
#azsp-figma-v4 .azsp-header-card .timeline span,
#azsp-figma-v4 .azsp-header-card .dot,
#azsp-figma-v4 .azsp-header-card .time-dot{
  width:6px;height:6px;border-radius:999px;background:#D8D8DE;display:inline-block
}
/* If middle element exists as 2nd child, make red */
#azsp-figma-v4 .azsp-header-card .timeline span:nth-child(2){
  background:#D30410;
}
/* Also support .active class if JS adds it */
#azsp-figma-v4 .azsp-header-card .timeline .active{background:#D30410}

/* AZ theme overrides */
.azsp-cta, .azsp-btn{border-color:var(--az-red);} .azsp-cta .azsp-btn:hover, .azsp-btn.primary{background:var(--az-red); color:#fff;}
.azsp-label, .azsp-title{color:var(--az-gray);}

/* AZSP Success hover refinement */
.azsp-cta .azsp-btn{
  transition: background-color .18s ease, color .18s ease, border-color .18s ease, box-shadow .18s ease;
}
.azsp-cta .azsp-btn:hover{
  filter: none;
  box-shadow: 0 4px 14px rgba(0,0,0,.08);
}
