/* ============================================================
   Booking form — website par
   ------------------------------------------------------------
   Har theme ka apna style hota hai, is liye yahan sirf apne
   khanon ko sambhala gaya hai (mam- se shuru hone wale), taake
   theme ke baqi safhe par asar na pare.
   Mobile pehle — Saudi mein zyada tar log phone se hi bharte hain.
   ============================================================ */
.mam-wrap{max-width:820px;margin:0 auto;font-size:15px;line-height:1.5}
.mam-wrap *{box-sizing:border-box}
.mam-form{background:#fff;border:1px solid #e6e9eb;border-radius:16px;padding:20px 20px 18px;
  box-shadow:0 1px 2px rgba(16,24,40,.04),0 12px 28px -18px rgba(16,24,40,.18);
  position:relative;overflow:hidden}
/* Upar patli hari dhari — kaghaz feeka nahi lagta */
.mam-form::before{content:"";position:absolute;inset-inline:0;top:0;height:3px;
  background:linear-gradient(90deg,#14603f,#2f9c6a 55%,#c9a227)}
.mam-h{margin:0 0 14px;font-size:18px;font-weight:700;letter-spacing:-.01em}

.mam-row{display:grid;gap:10px;margin-bottom:10px}
.mam-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.mam-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.mam-4{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:640px){.mam-2,.mam-3,.mam-4{grid-template-columns:minmax(0,1fr)}}

.mam-f{display:block;margin-bottom:10px}
.mam-f>span{display:block;font-size:11.5px;font-weight:700;color:#5b6169;margin-bottom:4px;
  text-transform:uppercase;letter-spacing:.04em}
.mam-f input,.mam-f select,.mam-f textarea{
  width:100%;padding:9px 11px;border:1px solid #dfe3e6;border-radius:9px;
  font:inherit;font-size:14.5px;background:#fbfcfc;color:inherit;transition:.15s}
.mam-f input:hover,.mam-f select:hover{background:#fff;border-color:#c9cfd4}
.mam-f input:focus,.mam-f select:focus,.mam-f textarea:focus{
  outline:none;border-color:#1b7a53;box-shadow:0 0 0 3px rgba(27,122,83,.12)}
.mam-f input.mam-bad{border-color:#c0392b;background:#fff6f5}

.mam-check{display:flex;align-items:center;gap:8px;margin:2px 0 12px;font-size:14px;cursor:pointer}
.mam-check input{width:18px;height:18px}

.mam-price{display:flex;align-items:baseline;gap:8px;flex-wrap:wrap;
  background:#f2f8f5;border:1px solid #cfe6da;border-radius:10px;padding:10px 12px;margin-bottom:12px}
.mam-price-label{font-size:12.5px;color:#4a5056}
.mam-price-val{font-size:20px;font-weight:700;color:#14603f}
.mam-price-note{font-size:12px;color:#5b6169}

.mam-btn{display:inline-block;width:100%;padding:12px 18px;border:0;border-radius:10px;
  background:#14603f;color:#fff;font:inherit;font-weight:700;font-size:15px;cursor:pointer;
  box-shadow:0 6px 16px -8px rgba(20,96,63,.7);transition:.15s}
.mam-btn:hover{background:#0f4c32}
.mam-btn[disabled]{opacity:.6;cursor:default}

.mam-fine{font-size:12.5px;color:#6b7178;margin:10px 0 0;text-align:center}
.mam-err{background:#fdf2f1;border:1px solid #f0c8c3;color:#8d2b20;
  border-radius:10px;padding:10px 12px;margin-bottom:12px;font-size:14px}

/* Honeypot — nazar nahi aata, magar screen reader ko bhi chhupa hua */
.mam-hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}

/* Shukriya ka safha */
.mam-done{background:#fff;border:1px solid #cfe6da;border-radius:14px;padding:22px;text-align:center}
.mam-done h3{margin:0 0 6px;font-size:20px;color:#14603f}
.mam-ref{display:inline-block;margin:10px 0;padding:8px 14px;border-radius:8px;
  background:#f2f8f5;font-family:ui-monospace,Menlo,Consolas,monospace;font-size:18px;font-weight:700}
.mam-done p{margin:6px 0;color:#4a5056}
.mam-wa{display:inline-block;margin-top:12px;padding:11px 18px;border-radius:10px;
  background:#25d366;color:#fff;font-weight:700;text-decoration:none}

.mam-status-out{margin-top:12px;background:#fff;border:1px solid #e3e6e8;
  border-radius:12px;padding:14px}

/* Arabic — RTL */
.mam-rtl{direction:rtl;text-align:right}


/* ---- Routes aur qeemat ka khana ---- */
.mam-routes{width:100%;border-collapse:collapse;background:#fff;
  border:1px solid #e3e6e8;border-radius:14px;overflow:hidden;font-size:14.5px}
.mam-routes th,.mam-routes td{padding:11px 12px;border-bottom:1px solid #eef1f2;text-align:start}
.mam-routes thead th{background:#f4f7f6;font-size:11.5px;font-weight:700;
  text-transform:uppercase;letter-spacing:.06em;color:#5b6169}
.mam-routes{box-shadow:0 1px 2px rgba(16,24,40,.04),0 12px 28px -20px rgba(16,24,40,.16)}
.mam-routes tbody tr:last-child td{border-bottom:0}
.mam-routes tbody tr{transition:.15s}
.mam-routes tbody tr:hover{background:#f6faf8;box-shadow:inset 3px 0 0 #14603f}
.mam-routes tbody td:first-child{font-size:15px}
.mam-routes .mam-num strong{font-size:16px;color:#14603f}
.mam-routes tbody tr:hover .mam-book{background:#0f4c32}
.mam-num{text-align:end;font-family:ui-monospace,Menlo,Consolas,monospace;white-space:nowrap}
.mam-cur{font-size:11.5px;color:#6b7178}
.mam-rnote{font-size:12px;color:#6b7178;margin-top:2px}
.mam-book{display:inline-block;padding:8px 14px;border:0;border-radius:8px;
  background:#14603f;color:#fff;font:inherit;font-size:13.5px;font-weight:700;
  cursor:pointer;text-decoration:none;white-space:nowrap}
.mam-book:hover{background:#0f4c32;color:#fff}
@media(max-width:640px){
  .mam-routes thead{display:none}
  .mam-routes tbody tr{display:grid;grid-template-columns:1fr auto;gap:2px 8px;
    padding:10px 12px;border-bottom:1px solid #eef1f2}
  .mam-routes td{border:0;padding:2px 0}
  .mam-routes td:nth-child(2),.mam-routes td:nth-child(3){font-size:12.5px;color:#6b7178}
}


/* ============================================================
   LAYOUT — teen shaklein
   ------------------------------------------------------------
   full     : booking wale safhe ke liye (default)
   compact  : side, hero ya chhoti jagah ke liye — sab kuch kasa hua
   bar      : ek qatar ka search bar; baqi khane "Continue" par khulte hain
   ============================================================ */

/* ---- compact ---- */
.mam-compact{max-width:560px}
.mam-compact .mam-form{padding:14px;border-radius:12px}
.mam-compact .mam-h{font-size:16px;margin-bottom:10px}
.mam-compact .mam-f{margin-bottom:8px}
.mam-compact .mam-f>span{font-size:10.5px;margin-bottom:3px}
.mam-compact .mam-f input,.mam-compact .mam-f select,.mam-compact .mam-f textarea{
  padding:8px 10px;font-size:14px;border-radius:8px}
.mam-compact .mam-row{gap:8px;margin-bottom:8px}
.mam-compact .mam-3,.mam-compact .mam-4{grid-template-columns:repeat(2,minmax(0,1fr))}
.mam-compact .mam-btn{padding:11px 16px;font-size:14.5px}
.mam-compact .mam-fine{font-size:11.5px}
.mam-compact .mam-price{padding:8px 10px}
.mam-compact .mam-price-val{font-size:17px}

/* ---- bar: hero ya header ke neeche ---- */
.mam-bar{max-width:1080px}
.mam-bar .mam-form{padding:12px;border-radius:14px;display:flex;flex-wrap:wrap;
  gap:8px;align-items:end}
.mam-bar .mam-h{flex-basis:100%;margin:0 0 2px;font-size:16px}
.mam-bar .mam-row{display:contents}          /* khane seedha bar mein aa jate hain */
.mam-bar .mam-f{margin:0;flex:1 1 150px;min-width:130px}
.mam-bar .mam-f>span{font-size:10px;letter-spacing:.05em}
.mam-bar .mam-f input,.mam-bar .mam-f select{padding:9px 10px;font-size:14px}
.mam-bar .mam-price{flex-basis:100%;order:9;margin:0}
.mam-bar .mam-rest{flex-basis:100%;order:10;display:none;padding-top:6px;
  border-top:1px solid #eef1f2;margin-top:4px}
.mam-bar.mam-open .mam-rest{display:block}
.mam-bar .mam-more{order:8;padding:10px 20px;border:0;border-radius:9px;
  background:#14603f;color:#fff;font:inherit;font-weight:700;font-size:14.5px;
  cursor:pointer;white-space:nowrap;box-shadow:0 6px 16px -8px rgba(20,96,63,.7)}
.mam-bar.mam-open .mam-more{display:none}
.mam-bar .mam-fine{flex-basis:100%;order:11;text-align:start;font-size:11.5px;margin:4px 0 0}
.mam-bar .mam-check{margin:0 0 8px}
@media(max-width:820px){
  .mam-bar .mam-form{display:block}
  .mam-bar .mam-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;
    margin-bottom:8px}
  .mam-bar .mam-more{width:100%}
}

/* ============================================================
   THEME KE RANG SE BACHAO
   ------------------------------------------------------------
   Har theme apne button ka rang zabardasti lagati hai (aap ki
   theme peela laga rahi thi). Is liye apne buttons par rang
   !important ke saath — magar SIRF apne khanon par (.mam-wrap
   ke andar), taake theme ke baqi safhe par koi asar na ho.
   ============================================================ */
.mam-wrap .mam-btn,
.mam-wrap .mam-btn:hover,
.mam-wrap .mam-btn:focus,
.mam-wrap .mam-btn:active,
.mam-wrap .mam-more,
.mam-wrap .mam-book,
.mam-wrap .mam-book:hover,
.mam-wrap .mam-book:focus{
  background-color:#14603F !important;
  background-image:none !important;
  color:#fff !important;
  border:0 !important;
  text-shadow:none !important;
  text-decoration:none !important;
  border-radius:10px !important;
  letter-spacing:0 !important;
  text-transform:none !important;
}
.mam-wrap .mam-btn:hover,
.mam-wrap .mam-more:hover,
.mam-wrap .mam-book:hover{ background-color:#0F4C32 !important }
.mam-wrap .mam-wa,
.mam-wrap .mam-wa:hover{ background-color:#25D366 !important; color:#fff !important }

/* Khane bhi theme se mehfooz */
.mam-wrap .mam-f input,
.mam-wrap .mam-f select,
.mam-wrap .mam-f textarea{
  background-color:#FBFCFC !important;
  color:#16181A !important;
  box-shadow:none !important;
  max-width:100% !important;
}
.mam-wrap .mam-f input:focus,
.mam-wrap .mam-f select:focus,
.mam-wrap .mam-f textarea:focus{
  background-color:#fff !important;
  border-color:#14603F !important;
  box-shadow:0 0 0 3px rgba(20,96,63,.12) !important;
}


/* ---- Fleet ke cards ---- */
.mam-fleet{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px}
.mam-bus{background:#fff;border:1px solid #e6e9eb;border-radius:14px;overflow:hidden;
  display:flex;flex-direction:column;
  box-shadow:0 1px 2px rgba(16,24,40,.04),0 12px 28px -22px rgba(16,24,40,.18);
  transition:.18s}
.mam-bus:hover{transform:translateY(-2px);
  box-shadow:0 1px 2px rgba(16,24,40,.05),0 18px 34px -20px rgba(16,24,40,.26)}
.mam-bus-img{aspect-ratio:16/10;background:#f2f4f5}
.mam-bus-img img{width:100%;height:100%;object-fit:cover;display:block}
.mam-bus-body{padding:14px;display:flex;flex-direction:column;gap:7px;flex:1}
.mam-bus-body h4{margin:0;font-size:16px;font-weight:700}
.mam-seats{display:inline-block;align-self:start;padding:3px 9px;border-radius:20px;
  background:#f2f8f5;color:#14603f;font-size:12.5px;font-weight:700}
.mam-feats{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:5px}
.mam-feats li{font-size:12px;color:#5b6169;background:#f7f9fa;border:1px solid #eef1f2;
  padding:3px 8px;border-radius:6px}
.mam-bus-note{margin:0;font-size:13px;color:#5b6169}
.mam-bus .mam-book{margin-top:auto;text-align:center}

.mam-vatline{font-size:11px;color:#6b7178;font-weight:400;margin-top:1px;
  font-family:inherit;white-space:nowrap}


/* ---- Package ki lines ---- */
.mam-pkg{border:1px dashed #cfd6da;border-radius:10px;padding:10px;margin:0 0 12px}
.mam-leg{display:grid;grid-template-columns:26px 1.15fr 1fr 1fr 30px;gap:8px;
  align-items:end;margin-bottom:8px}
.mam-leg .mam-f{margin:0}
.mam-leg-no{font-size:12px;font-weight:700;color:#14603f;background:#f2f8f5;
  border-radius:6px;text-align:center;padding:8px 0;align-self:end}
.mam-leg-x{border:0;background:#f7f9fa;color:#8d2b20;border-radius:8px;
  font-size:18px;line-height:1;cursor:pointer;padding:8px 0;align-self:end}
.mam-leg-x:hover{background:#fdf2f1}
.mam-addleg{border:1px dashed #14603f;background:#fff;color:#14603f;border-radius:8px;
  padding:8px 14px;font:inherit;font-size:13.5px;font-weight:600;cursor:pointer}
.mam-addleg:hover{background:#f2f8f5}
@media(max-width:700px){
  .mam-leg{grid-template-columns:26px 1fr 30px;gap:6px}
  .mam-leg .mam-f:nth-of-type(1){grid-column:2 / 4}
  .mam-leg .mam-f:nth-of-type(2),
  .mam-leg .mam-f:nth-of-type(3){grid-column:2 / 4}
  .mam-leg-x{grid-row:1;grid-column:3;justify-self:end;width:30px}
}
/* Sheher ke naam poore nazar aayen — pehle katt jate the */
.mam-leg input[name="leg_from[]"],
.mam-leg input[name="leg_to[]"]{text-overflow:ellipsis}
.mam-leg .mam-f>span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}


/* ---- Routes: talash aur safhe ---- */
.mam-rsearch{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:10px}
.mam-rsearch input[type=search]{flex:1 1 220px;padding:9px 11px;border:1px solid #dfe3e6;
  border-radius:9px;font:inherit;font-size:14.5px;background:#fbfcfc}
.mam-rsearch input[type=search]:focus{outline:none;border-color:#14603F;background:#fff}
.mam-rclear{font-size:13px;color:#6b7178;text-decoration:underline}
.mam-rcount{font-size:12.5px;color:#6b7178;margin-inline-start:auto}
.mam-pager{display:flex;gap:10px;align-items:center;justify-content:center;margin-top:12px;
  font-size:14px}
.mam-pager a{color:#14603F;font-weight:700;text-decoration:none;padding:7px 12px;
  border:1px solid #cfe6da;border-radius:8px}
.mam-pager a:hover{background:#f2f8f5}
.mam-pager span{color:#6b7178}

/* Har package line ke saamne us ki qeemat */
.mam-leg-price{grid-column:1 / -1;text-align:end;font-size:12.5px;font-weight:700;
  color:#14603f;margin-top:-4px}


/* Har line ki apni flight ka hissa */
.mam-leg-air{grid-column:1 / -1;display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;
  background:#f7faf9;border:1px solid #e3ece7;border-radius:9px;
  padding:9px 10px;margin-top:2px}
.mam-leg-air-t{grid-column:1 / -1;font-size:11px;font-weight:700;letter-spacing:.05em;
  text-transform:uppercase;color:#14603f}
.mam-leg-air .mam-f{margin:0}
@media(max-width:700px){.mam-leg-air{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Sheher chunne wale khane */
.mam-city,.mam-city-leg{width:100%;padding:9px 11px;border:1px solid #dfe3e6;border-radius:9px;
  font:inherit;font-size:14.5px;background:#fbfcfc}
.mam-city:focus,.mam-city-leg:focus{outline:none;border-color:#14603F;background:#fff}
.mam-city-other{margin-top:6px}
