/* EZget Travel Advisor — self-contained RTL widget. Brand: navy #0a2633 + cyan #6EC1E4. Heebo (loaded site-wide). */
#ezgadv-root, #ezgadv-root * { box-sizing: border-box; }
#ezgadv-root {
  --navy: #0a2633; --cyan: #6EC1E4; --cyan-d: #3aa7d6;
  --ink: #0d1821; --muted: #5b6b78; --line: #e6ecf2; --bg: #f4f7fb;
  font-family: 'Heebo', system-ui, sans-serif; direction: rtl;
}

/* Launcher sits ABOVE the site accessibility button (#acwp-toolbar-btn-wrap,
   50x50 at inset-block-end ~23px, z-index 9500). The launcher z-index is
   2147483000, so at inset-block-end:20px it covered ~36 of the 50px and made
   the legally-required accessibility menu unclickable. Do not lower below 88px. */
/* Launcher */
#ezgadv-launcher {
  position: fixed; inset-inline-end: 20px; inset-block-end: 88px; z-index: 2147483000;
  display: inline-flex; align-items: center; gap: 9px;
  background: var(--navy); color: #fff; border: none; cursor: pointer;
  padding: 12px 18px; border-radius: 999px; font: 600 15px/1 'Heebo', sans-serif;
  box-shadow: 0 8px 26px rgba(10,38,51,.32); transition: transform .15s, box-shadow .15s;
}
#ezgadv-launcher:hover { transform: translateY(-2px); box-shadow: 0 12px 32px rgba(10,38,51,.4); }
#ezgadv-launcher .ezgadv-dot { width: 9px; height: 9px; border-radius: 50%; background: var(--cyan); box-shadow: 0 0 0 0 rgba(110,193,228,.6); animation: ezgadv-pulse 2s infinite; }
@keyframes ezgadv-pulse { 0%{box-shadow:0 0 0 0 rgba(110,193,228,.55)} 70%{box-shadow:0 0 0 9px rgba(110,193,228,0)} 100%{box-shadow:0 0 0 0 rgba(110,193,228,0)} }
#ezgadv-launcher.ezgadv-hidden { display: none; }

/* Panel */
#ezgadv-panel {
  position: fixed; inset-inline-end: 20px; inset-block-end: 20px; z-index: 2147483001;
  width: 384px; max-width: calc(100vw - 24px); height: 620px; max-height: calc(100vh - 32px);
  background: var(--bg); border-radius: 18px; overflow: hidden; display: none; flex-direction: column;
  box-shadow: 0 24px 60px rgba(10,38,51,.34); border: 1px solid rgba(10,38,51,.08);
}
#ezgadv-panel.ezgadv-open { display: flex; animation: ezgadv-in .22s ease; }
@keyframes ezgadv-in { from{opacity:0; transform: translateY(14px)} to{opacity:1; transform:none} }
@keyframes ezgadv-fade { from{opacity:0} to{opacity:1} }
@media (max-width: 520px){
  /* Full-screen on mobile. max-width:100vw is required — otherwise the base
     rule's max-width:calc(100vw-24px) clamps width:100vw and leaves a dead
     strip. Use a pure-opacity entrance so no transform can push the input
     footer past the bottom of the viewport. */
  #ezgadv-panel { inset: 0; width: 100vw; max-width: 100vw; height: 100dvh; max-height: 100dvh; border-radius: 0; }
  #ezgadv-panel.ezgadv-open { animation: ezgadv-fade .2s ease; }
}

.ezgadv-head { background: var(--navy); color: #fff; padding: 14px 16px; }
.ezgadv-head-top { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.ezgadv-title { font: 700 16px/1.2 'Heebo'; margin: 0; }
.ezgadv-title span { display: block; font: 400 12px/1.3 'Heebo'; color: rgba(255,255,255,.7); margin-top: 2px; }
.ezgadv-x { background: rgba(255,255,255,.12); border: none; color: #fff; width: 30px; height: 30px; border-radius: 8px; cursor: pointer; font-size: 18px; line-height: 1; }
.ezgadv-x:hover { background: rgba(255,255,255,.24); }
.ezgadv-disc { margin-top: 10px; font: 400 11.5px/1.5 'Heebo'; color: rgba(255,255,255,.82); background: rgba(255,255,255,.08); border-radius: 8px; padding: 7px 10px; }

.ezgadv-msgs { flex: 1; overflow-y: auto; padding: 16px; display: flex; flex-direction: column; gap: 12px; }
.ezgadv-row { display: flex; }
.ezgadv-row.bot { justify-content: flex-start; }
.ezgadv-row.user { justify-content: flex-end; }
.ezgadv-bubble { max-width: 86%; padding: 10px 13px; border-radius: 14px; font: 400 14.5px/1.55 'Heebo'; white-space: pre-wrap; word-break: break-word; }
.ezgadv-row.bot .ezgadv-bubble { background: #fff; color: var(--ink); border: 1px solid var(--line); border-start-start-radius: 4px; }
.ezgadv-row.user .ezgadv-bubble { background: var(--navy); color: #fff; border-start-end-radius: 4px; }
.ezgadv-typing { display: inline-flex; gap: 4px; padding: 12px 14px; }
.ezgadv-typing i { width: 7px; height: 7px; border-radius: 50%; background: #b8c6d2; animation: ezgadv-bounce 1.2s infinite; }
.ezgadv-typing i:nth-child(2){ animation-delay:.15s } .ezgadv-typing i:nth-child(3){ animation-delay:.3s }
@keyframes ezgadv-bounce { 0%,60%,100%{opacity:.35; transform: translateY(0)} 30%{opacity:1; transform: translateY(-4px)} }

/* Chips */
.ezgadv-chips { display: flex; flex-wrap: wrap; gap: 8px; }
.ezgadv-chip {
  background: #fff; border: 1px solid var(--cyan); color: var(--navy);
  padding: 8px 13px; border-radius: 999px; font: 500 13.5px/1 'Heebo'; cursor: pointer; transition: all .12s;
}
.ezgadv-chip:hover { background: var(--cyan); color: var(--navy); }
.ezgadv-chip.sel { background: var(--navy); color: #fff; border-color: var(--navy); }
.ezgadv-chip.solid { background: var(--navy); color: #fff; border-color: var(--navy); }
.ezgadv-chip.solid:hover { background: #123; }
/* A completed step: locked so old controls can't corrupt the flow. */
.ezgadv-sealed { opacity: .55; pointer-events: none; filter: grayscale(.3); }
/* trust line above offers */
.ezgadv-trust { font: 500 11.5px/1.5 'Heebo'; color: var(--muted); background: #eef4f9; border-radius: 8px; padding: 6px 10px; margin-bottom: 2px; }
.ezgadv-rec-lead { font: 700 12.5px/1.4 'Heebo'; color: var(--navy); margin: 2px 0 6px; }

/* Offer cards */
.ezgadv-offer { background: #fff; border: 1px solid var(--line); border-radius: 14px; padding: 12px 13px; margin-top: 2px; }
.ezgadv-offer.rec { border-color: var(--cyan); box-shadow: 0 2px 0 var(--cyan) inset; }
.ezgadv-offer-top { display: flex; align-items: baseline; justify-content: space-between; gap: 8px; }
.ezgadv-offer-name { font: 700 15px/1.2 'Heebo'; color: var(--navy); }
.ezgadv-badge { font: 700 10.5px/1 'Heebo'; background: var(--cyan); color: var(--navy); padding: 4px 8px; border-radius: 999px; }
.ezgadv-price { font: 800 18px/1 'Heebo'; color: var(--ink); }
.ezgadv-price small { font: 500 12px/1 'Heebo'; color: var(--muted); }
.ezgadv-sup { display: flex; flex-wrap: wrap; gap: 5px; margin: 8px 0; }
.ezgadv-sup span { font: 500 11.5px/1 'Heebo'; padding: 4px 7px; border-radius: 6px; }
.ezgadv-sup .ok { background: #e7f6ec; color: #1c7a3e; }
.ezgadv-sup .no { background: #fdecec; color: #b23b3b; }
.ezgadv-buy { display: block; width: 100%; text-align: center; margin-top: 4px; background: var(--cyan); color: var(--navy); border: none; padding: 10px; border-radius: 10px; font: 700 14px/1 'Heebo'; cursor: pointer; text-decoration: none; }
.ezgadv-buy:hover { background: var(--cyan-d); }

/* Inline form */
.ezgadv-form { display: flex; flex-direction: column; gap: 8px; background:#fff; border:1px solid var(--line); border-radius: 12px; padding: 12px; }
.ezgadv-form label { font: 600 12.5px/1 'Heebo'; color: var(--muted); }
.ezgadv-form input { width: 100%; padding: 9px 11px; border: 1px solid var(--line); border-radius: 9px; font: 400 14px 'Heebo'; }
.ezgadv-form input:focus { outline: 2px solid var(--cyan); border-color: transparent; }
.ezgadv-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
.ezgadv-consent { display: flex; align-items: flex-start; gap: 8px; font: 400 12px/1.5 'Heebo'; color: var(--muted); cursor: pointer; }
.ezgadv-consent input { width: 16px; height: 16px; margin-top: 1px; flex: 0 0 auto; accent-color: var(--navy); }
.ezgadv-date-row { display: flex; gap: 8px; }
.ezgadv-date-row > div { flex: 1; }
.ezgadv-age-row { display: flex; gap: 8px; flex-wrap: wrap; align-items: center; }
.ezgadv-age-row input { width: 74px; }

.ezgadv-foot { border-top: 1px solid var(--line); background: #fff; padding: 10px; display: flex; gap: 8px; align-items: center; }
.ezgadv-foot input { flex: 1; border: 1px solid var(--line); border-radius: 999px; padding: 10px 14px; font: 400 14px 'Heebo'; }
.ezgadv-foot input:focus { outline: 2px solid var(--cyan); border-color: transparent; }
.ezgadv-send { background: var(--navy); color: #fff; border: none; width: 40px; height: 40px; border-radius: 50%; cursor: pointer; font-size: 17px; flex: 0 0 auto; }
.ezgadv-send:hover { background: #123; }
.ezgadv-btn { background: var(--navy); color: #fff; border: none; padding: 9px 14px; border-radius: 10px; font: 600 13.5px 'Heebo'; cursor: pointer; }
.ezgadv-btn:hover { background: #123; }
.ezgadv-note { font: 400 11.5px/1.5 'Heebo'; color: var(--muted); }
.ezgadv-wa { background: #25d366; color: #fff; text-decoration: none; }
.ezgadv-wa:hover { background: #1eb457; }
