/* =====================================================================
   AWESTRUCK WISHLIST v1 — Ghost Dock (heart + share) + Wishlist popup
   Scope: every selector starts with .aw-wl-v1
   Prefixes: classes awl- · variables --awl- · keyframes awl-
   Breakpoints (max-width only): Tablet ≤1024 · Mobile ≤640 · Micro ≤359
   ===================================================================== */

/* ---------- 0. Scoped reset — beats bare site rules (*, button, img, a, svg…) at specificity 0,1,0;
   every component rule below is 0,2,0 or higher so it always wins over this reset ---------- */
.aw-wl-v1,.aw-wl-v1 *,.aw-wl-v1 *::before,.aw-wl-v1 *::after{box-sizing:border-box;margin:0;padding:0;border:0 solid transparent;border-radius:0;background-color:transparent;background-image:none;color:inherit;font:inherit;line-height:inherit;letter-spacing:inherit;text-transform:inherit;text-decoration:none;text-align:inherit;float:none;max-width:none;min-width:0;min-height:0;box-shadow:none;text-shadow:none;outline-offset:2px}
.aw-wl-v1{font-family:var(--awl-font-b);font-size:14px;font-weight:500;font-style:normal;line-height:1.25;letter-spacing:normal;text-transform:none;text-align:left}
.aw-wl-v1 button{cursor:pointer;-webkit-appearance:none;appearance:none;-webkit-tap-highlight-color:transparent;width:auto;height:auto}
.aw-wl-v1 img,.aw-wl-v1 svg{display:block;max-width:none;width:auto;height:auto}
.aw-wl-v1 a{cursor:pointer}

/* ---------- 1. Tokens ---------- */
.aw-wl-v1{--awl-z:9000;--awl-navy:#171E3C;--awl-blue:#2743EE;--awl-y1:#F8B600;--awl-y2:#FFC531;--awl-ink:#0A0A0A;--awl-green:#7CEFAA;--awl-pink:#FF0000;
--awl-bg:#F6F5F1;--awl-text:#0A0A0A;--awl-muted:#5E6378;--awl-line:rgba(10,10,10,.09);--awl-ctl:#FFFFFF;--awl-ctl-line:rgba(10,10,10,.12);--awl-ov:rgba(246,245,241,.985);
--awl-dock:rgba(10,10,10,.46);--awl-dock-line:rgba(255,255,255,.22);--awl-dock-ic:#FFFFFF;
--awl-font-d:"Bricolage Grotesque","Segoe UI",system-ui,-apple-system,sans-serif;--awl-font-b:"DM Sans",system-ui,-apple-system,"Segoe UI",sans-serif}
.aw-wl-v1[data-aw-theme="dark"]{--awl-bg:#0A0A0A;--awl-text:#FFFFFF;--awl-muted:#A3A3A3;--awl-line:rgba(255,255,255,.1);--awl-ctl:rgba(255,255,255,.06);--awl-ctl-line:rgba(255,255,255,.14);--awl-ov:rgba(10,10,10,.985);
--awl-dock:rgba(10,10,10,.6);--awl-dock-line:rgba(255,255,255,.18)}

/* ---------- 2. GHOST DOCK (sits inside each experience card's image) ---------- */
.aw-wl-v1.awl-dock{flex:none;display:inline-flex;align-items:center;height:34px;padding:0 1px;border-radius:17px;background:var(--awl-dock);border:1px solid var(--awl-dock-line);color:var(--awl-dock-ic);font-family:var(--awl-font-b)}
.aw-wl-v1.awl-dock.awl-abs{position:absolute;right:12px;bottom:46px !important;z-index:10 !important}
.aw-wl-v1.awl-dock button{position:relative;width:34px;height:32px;border-radius:16px;display:flex;align-items:center;justify-content:center;transition:background-color .15s}
.aw-wl-v1.awl-dock button:hover{background:rgba(127,127,127,.18)}
.aw-wl-v1.awl-dock button:focus-visible{outline:2px solid var(--awl-y2)}
.aw-wl-v1.awl-dock button+button::before{content:"";position:absolute;left:0;top:9px;width:1px;height:14px;background:var(--awl-dock-line)}
.aw-wl-v1.awl-dock svg{width:17px;height:17px;overflow:visible}
.aw-wl-v1.awl-dock .awl-hb::after{content:"";position:absolute;inset:-6px}
/* heart states */
/* heart states */
.aw-wl-v1 .awl-hb svg path{transition:fill .2s,stroke .2s}
.aw-wl-v1.awl-dock .awl-hb{background:transparent !important;border:none !important;border-radius:50% !important}
.aw-wl-v1.awl-dock .awl-hb[aria-pressed="false"]{background:transparent !important}
.aw-wl-v1.awl-dock .awl-hb[aria-pressed="false"] svg path{fill:none !important;stroke:#ffffff !important}
.aw-wl-v1.awl-dock .awl-hb[aria-pressed="true"]{background:#ffffff !important}
.aw-wl-v1.awl-dock .awl-hb[aria-pressed="true"] svg path{fill:#ff3b6e !important;stroke:#ff3b6e !important}
.aw-wl-v1 .awl-hb.awl-pop svg{animation:awl-pop .5s cubic-bezier(.3,1.7,.5,1)}
.aw-wl-v1 .awl-hb.awl-pop::after{inset:auto;left:50%;top:50%;width:4px;height:4px;margin:-2px;border-radius:2px;pointer-events:none;animation:awl-burst .55s ease-out forwards;box-shadow:0 -15px 0 var(--awl-pink),14px -5px 0 var(--awl-y1),9px 12px 0 var(--awl-pink),-9px 12px 0 var(--awl-y1),-14px -5px 0 var(--awl-pink)}
@keyframes awl-pop{0%{transform:scale(.7)}45%{transform:scale(1.3)}100%{transform:scale(1)}}
@keyframes awl-burst{0%{opacity:1;transform:scale(.4)}100%{opacity:0;transform:scale(1.2)}}

/* ---------- 3. ROOT LAYER (toast + popup), placed once before </body> ---------- */
.aw-wl-v1.awl-root{position:fixed;inset:0;z-index:var(--awl-z);pointer-events:none;font-family:var(--awl-font-b);-webkit-font-smoothing:antialiased}
.aw-wl-v1 .awl-layer>*{pointer-events:auto}

/* toast — first-time "Added" message */
/* toast — first-time "Added" message */
.aw-wl-v1 .awl-toast{position:absolute;left:0;right:0;bottom:calc(20px + env(safe-area-inset-bottom,0px));width:max-content;max-width:calc(100% - 24px);margin:0 auto;display:flex;align-items:center;gap:10px;padding:6px 16px 6px 6px;border-radius:30px;background:var(--awl-ink);color:#fff;border:1px solid rgba(255,255,255,.12);box-shadow:0 18px 36px -14px rgba(0,0,0,.5);transform:translateY(28px);opacity:0;transition:transform .4s cubic-bezier(.2,1.2,.3,1),opacity .2s;pointer-events:none;cursor:pointer;-webkit-user-select:none;user-select:none}
.aw-wl-v1[data-aw-theme="dark"] .awl-toast{background:#fff;color:var(--awl-ink);border-color:transparent}
.aw-wl-v1 .awl-toast.awl-on{transform:none;opacity:1;pointer-events:auto}
.aw-wl-v1 .awl-toast.awl-on:hover{transform:translateY(-2px);box-shadow:0 22px 42px -12px rgba(0,0,0,.6)}
.aw-wl-v1 .awl-tth{position:relative;width:40px;height:40px;flex:none}
.aw-wl-v1 .awl-tth img{width:40px;height:40px;border-radius:20px;object-fit:cover}
.aw-wl-v1 .awl-tk{position:absolute;right:-4px;bottom:-4px;width:20px;height:20px;border-radius:10px;background:var(--awl-pink);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 0 0 2px var(--awl-ink)}
.aw-wl-v1[data-aw-theme="dark"] .awl-tk{box-shadow:0 0 0 2px #fff}
.aw-wl-v1 .awl-tk svg{width:11px;height:11px}
.aw-wl-v1 .awl-tk svg path{fill:#fff;stroke:#fff}
.aw-wl-v1 .awl-toast.awl-on .awl-tk{animation:awl-beat .7s .15s cubic-bezier(.3,1.6,.5,1) both}
@keyframes awl-beat{0%{transform:scale(0)}50%{transform:scale(1.3)}100%{transform:scale(1)}}
.aw-wl-v1 .awl-tx{display:flex;flex-direction:column;gap:3px;min-width:0}
.aw-wl-v1 .awl-tx b{font:800 14px/1.1 var(--awl-font-d);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.aw-wl-v1 .awl-tx small{font:500 11.5px/1.1 var(--awl-font-b);opacity:.72}

/* overlay + popup shell — DESKTOP (base) */
.aw-wl-v1 .awl-ov{position:absolute;inset:0;background:rgba(10,10,10,.5);animation:awl-fade .25s}
@keyframes awl-fade{from{opacity:0}}
.aw-wl-v1 .awl-pop{position:absolute;inset:0;margin:auto;width:min(980px,calc(100% - 48px));height:min(680px,calc(100% - 48px));display:flex;flex-direction:column;overflow:hidden;border-radius:26px;border:1px solid var(--awl-line);background:var(--awl-bg);color:var(--awl-text);box-shadow:0 40px 80px -30px rgba(0,0,0,.55);animation:awl-in .35s cubic-bezier(.2,.9,.25,1)}
@keyframes awl-in{from{opacity:0;transform:translateY(16px)}}
.aw-wl-v1 .awl-pop>*{position:relative}
.aw-wl-v1 .awl-pop::before{content:"";position:absolute;inset:-25%;pointer-events:none;background:radial-gradient(32% 26% at 18% 12%,rgba(255,197,49,.30),transparent 70%),radial-gradient(30% 24% at 86% 20%,rgba(255,46,136,.16),transparent 70%),radial-gradient(40% 30% at 70% 92%,rgba(39,67,238,.14),transparent 70%),radial-gradient(28% 22% at 10% 85%,rgba(124,239,170,.18),transparent 70%);animation:awl-drift 18s ease-in-out infinite alternate}
.aw-wl-v1 .awl-pop::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.5;background-image:radial-gradient(rgba(10,10,10,.08) 1px,transparent 1px);background-size:18px 18px;-webkit-mask:linear-gradient(180deg,#000,transparent 45%);mask:linear-gradient(180deg,#000,transparent 45%)}
.aw-wl-v1[data-aw-theme="dark"] .awl-pop::before{background:radial-gradient(32% 26% at 18% 10%,rgba(255,197,49,.16),transparent 70%),radial-gradient(30% 24% at 86% 18%,rgba(255,46,136,.14),transparent 70%),radial-gradient(40% 30% at 70% 94%,rgba(39,67,238,.16),transparent 70%),radial-gradient(28% 22% at 8% 86%,rgba(124,239,170,.08),transparent 70%)}
.aw-wl-v1[data-aw-theme="dark"] .awl-pop::after{background-image:radial-gradient(rgba(255,255,255,.07) 1px,transparent 1px)}
@keyframes awl-drift{to{transform:translate3d(4%,3%,0) rotate(6deg)}}

/* header */
.aw-wl-v1 .awl-ph{display:flex;align-items:center;gap:10px;padding:18px 16px 10px}
.aw-wl-v1 .awl-ph .awl-t{flex:1;display:flex;flex-direction:column;gap:5px;min-width:0}
.aw-wl-v1 .awl-eye{font:700 10px/1 var(--awl-font-b);letter-spacing:.18em;text-transform:uppercase;color:var(--awl-blue)}
.aw-wl-v1[data-aw-theme="dark"] .awl-eye{color:var(--awl-y2)}
.aw-wl-v1 .awl-ttl{display:flex;align-items:center;gap:8px;font:800 26px/1 var(--awl-font-d);letter-spacing:-.01em}
.aw-wl-v1 .awl-cnt{height:22px;padding:0 8px;border-radius:11px;background:var(--awl-pink);color:#fff;font:700 11px/22px var(--awl-font-b)}
.aw-wl-v1 .awl-ib{width:44px;height:44px;flex:none;border-radius:13px;display:flex;align-items:center;justify-content:center;background:var(--awl-ctl);border:1px solid var(--awl-ctl-line);color:var(--awl-text);transition:background-color .15s,color .15s}
.aw-wl-v1 .awl-ib svg{width:18px;height:18px}
.aw-wl-v1 .awl-ib:hover{background:var(--awl-text);color:var(--awl-bg)}
.aw-wl-v1 .awl-ib:focus-visible{outline:2px solid var(--awl-y1)}
.aw-wl-v1 .awl-ib:disabled{opacity:.3;pointer-events:none}
.aw-wl-v1 .awl-ib.awl-round{border-radius:22px}

/* deck track */
.aw-wl-v1 .awl-track{flex:1;min-height:0;display:flex;gap:20px;align-items:center;overflow-x:auto;overflow-y:hidden;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;scrollbar-width:none;padding:6px calc(50% - 160px)}
.aw-wl-v1 .awl-track::-webkit-scrollbar{display:none}
.aw-wl-v1 .awl-dc{position:relative;flex:0 0 320px;height:100%;max-height:480px;scroll-snap-align:center;border-radius:22px;overflow:hidden;background:#111;color:#fff;opacity:.4;transform:translateY(10px);transition:opacity .3s,transform .3s;animation:awl-rise .55s cubic-bezier(.2,.9,.25,1) backwards;animation-delay:calc(var(--k,0) * 70ms)}
.aw-wl-v1 .awl-dc.awl-on{opacity:1;transform:none;box-shadow:0 26px 50px -24px rgba(0,0,0,.7)}
.aw-wl-v1 .awl-dc.awl-out{opacity:0;transform:translateY(24px)}
@keyframes awl-rise{from{opacity:0;transform:translateY(40px)}}
.aw-wl-v1 .awl-dc>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.aw-wl-v1 .awl-sh{position:absolute;inset:40% 0 0;background:linear-gradient(transparent,rgba(6,7,16,.94) 62%)}
.aw-wl-v1 .awl-loc{position:absolute;top:12px;left:12px;z-index:1;display:flex;align-items:center;gap:5px;height:28px;padding:0 11px;border-radius:14px;background:#fff;color:var(--awl-ink);font:700 10px/1 var(--awl-font-b);letter-spacing:.07em;text-transform:uppercase}
.aw-wl-v1 .awl-loc svg{width:11px;height:11px}
.aw-wl-v1 .awl-rm{position:absolute;top:8px;right:8px;z-index:1;width:44px;height:44px;border-radius:22px;display:flex;align-items:center;justify-content:center;background:#fff;color:var(--awl-pink);box-shadow:0 4px 12px -4px rgba(0,0,0,.4)}
.aw-wl-v1 .awl-rm svg{width:18px;height:18px}
.aw-wl-v1 .awl-rm svg path{fill:var(--awl-pink);stroke:var(--awl-pink)}
.aw-wl-v1 .awl-bd{position:absolute;left:0;right:0;bottom:0;padding:14px;display:flex;flex-direction:column;gap:10px}
.aw-wl-v1 .awl-m{display:flex;gap:6px;flex-wrap:wrap}
.aw-wl-v1 .awl-rate{display:inline-flex;align-items:center;gap:4px;height:26px;padding:0 10px;border-radius:13px;background:rgba(10,10,10,.8);color:#fff;font:700 11px/1 var(--awl-font-b)}
.aw-wl-v1 .awl-rate i{color:var(--awl-y2);font-style:normal}
.aw-wl-v1 .awl-av{display:inline-flex;align-items:center;gap:6px;height:24px;padding:0 10px;border-radius:12px;background:rgba(10,10,10,.8);color:var(--awl-green);font:700 9.5px/1 var(--awl-font-b);letter-spacing:.05em;white-space:nowrap;text-transform:uppercase}
.aw-wl-v1 .awl-av::before{content:"";width:6px;height:6px;border-radius:3px;background:var(--awl-green)}
.aw-wl-v1 .awl-dc h4{font:800 22px/1.1 var(--awl-font-d);text-wrap:balance;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.aw-wl-v1 .awl-cta{display:grid;grid-template-columns:1fr 1.2fr;min-height:56px;border-radius:12px;overflow:hidden}
.aw-wl-v1 .awl-price{background:var(--awl-navy);color:#fff;padding:8px 12px;display:flex;flex-direction:column;justify-content:center;gap:4px}
.aw-wl-v1 .awl-price b{font:800 18px/1 var(--awl-font-d)}
.aw-wl-v1 .awl-price .awl-r{display:flex;gap:6px;align-items:center;font:700 10px/1 var(--awl-font-b)}
.aw-wl-v1 .awl-price s{color:#ff7b96;text-decoration:line-through}
.aw-wl-v1 .awl-save{background:var(--awl-green);color:#0b3d22;font:700 9px/1 var(--awl-font-b);padding:3px 5px;border-radius:4px}
.aw-wl-v1 .awl-vd{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--awl-y2),var(--awl-y1));color:var(--awl-ink);font:800 13px/1 var(--awl-font-d);letter-spacing:.02em;text-align:center}
.aw-wl-v1 .awl-vd:focus-visible{outline:2px solid #fff;outline-offset:-4px}
.aw-wl-v1 .awl-dc.awl-on .awl-vd::after{content:"";position:absolute;top:0;bottom:0;left:0;width:40%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.6),transparent);transform:translateX(-120%);animation:awl-sheen 3s .8s ease-in-out infinite}
@keyframes awl-sheen{0%{transform:translateX(-120%)}45%,100%{transform:translateX(300%)}}

/* thumbs + pager */
.aw-wl-v1 .awl-thumbs{display:flex;gap:8px;justify-content:center;padding:12px 16px 4px;overflow-x:auto;scrollbar-width:none}
.aw-wl-v1 .awl-thumbs::-webkit-scrollbar{display:none}
.aw-wl-v1 .awl-thumbs button{flex:none;width:40px;height:40px;border-radius:10px;overflow:hidden;opacity:.5;box-shadow:0 0 0 1px var(--awl-line);transition:opacity .2s,box-shadow .2s;animation:awl-rise .45s cubic-bezier(.2,.9,.25,1) backwards;animation-delay:calc(200ms + var(--k,0) * 40ms)}
.aw-wl-v1 .awl-thumbs button.awl-on{opacity:1;box-shadow:0 0 0 2px var(--awl-y1)}
.aw-wl-v1 .awl-thumbs img{width:100%;height:100%;object-fit:cover}
.aw-wl-v1 .awl-pn{display:flex;align-items:center;gap:14px;padding:10px 16px calc(20px + env(safe-area-inset-bottom,0px))}
.aw-wl-v1 .awl-mid{flex:1;display:flex;flex-direction:column;align-items:center;gap:8px}
.aw-wl-v1 .awl-num{font:700 12px/1 var(--awl-font-b);letter-spacing:.14em;color:var(--awl-muted)}
.aw-wl-v1 .awl-num b{color:var(--awl-text)}
.aw-wl-v1 .awl-bar{width:100%;max-width:200px;height:3px;border-radius:2px;background:var(--awl-line);overflow:hidden}
.aw-wl-v1 .awl-bar i{display:block;height:100%;background:linear-gradient(90deg,var(--awl-y1),var(--awl-pink));transition:width .3s}
.aw-wl-v1 .awl-empty{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:30px;text-align:center;color:var(--awl-muted);font-size:14px;line-height:1.4}
.aw-wl-v1 .awl-empty b{font:800 20px/1.1 var(--awl-font-d);color:var(--awl-text)}
.aw-wl-v1 .awl-empty svg{width:34px;height:34px;color:var(--awl-pink)}

/* ---------- 4. TABLET 641–1024 ---------- */
@media (max-width:1024px){
.aw-wl-v1 .awl-pop{width:min(680px,calc(100% - 48px));height:min(820px,calc(100% - 48px))}
.aw-wl-v1 .awl-track{gap:18px;padding:6px calc(50% - 170px)}
.aw-wl-v1 .awl-dc{flex-basis:340px;max-height:600px}
}
/* ---------- 5. MOBILE ≤640 — full screen ---------- */
/* ---------- 5. MOBILE ≤640 — full screen ---------- */
@media (max-width:640px){
.aw-wl-v1 .awl-ov{background:var(--awl-ov)}
.aw-wl-v1 .awl-pop{width:100%;height:100%;border-radius:0;border:0;animation:awl-up .4s cubic-bezier(.2,.9,.25,1)}
.aw-wl-v1 .awl-pop::before{animation:none !important}
.aw-wl-v1 .awl-ph{padding-top:calc(18px + env(safe-area-inset-top,0px))}
.aw-wl-v1 .awl-track{gap:14px;padding:6px 40px;-webkit-overflow-scrolling:touch}
.aw-wl-v1 .awl-dc{flex-basis:100%;max-height:560px;transform:none !important;transition:opacity .2s !important}
.aw-wl-v1 .awl-dc.awl-on{transform:none !important}
}
@keyframes awl-up{from{transform:translateY(100%)}}
/* ---------- 6. MICRO ≤359 ---------- */
@media (max-width:359px){
.aw-wl-v1 .awl-track{padding:6px 28px}
.aw-wl-v1 .awl-dc h4{font-size:20px}
.aw-wl-v1 .awl-ttl{font-size:23px}
}
@media (max-height:620px){
.aw-wl-v1 .awl-thumbs{display:none}
.aw-wl-v1 .awl-ph{padding-top:12px;padding-bottom:6px}
.aw-wl-v1 .awl-pn{padding-top:6px;padding-bottom:12px}
}
@media (prefers-reduced-motion:reduce){
.aw-wl-v1 *,.aw-wl-v1 *::before,.aw-wl-v1 *::after,.aw-wl-v1.awl-dock *{animation:none!important;transition:none!important}
}
/* Share Menu Popup on Ghost Dock */
.awl-dock .share-wrap { position: relative; display: inline-flex; }
.awl-dock .share-menu {
  position: absolute;
  right: 48px !important;
     bottom: 24px !important;
  top: auto !important;
  background: #ffffff !important;
  border-radius: 12px !important;
  padding: 8px 6px !important;
  box-shadow: 0 10px 30px rgba(0,0,0,0.25) !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
  opacity: 0;
  pointer-events: none;
   transform: translateX(8px) scale(0.95);
  transition: opacity 0.2s, transform 0.2s;
  z-index: 9999 !important;
  min-width: 148px !important;
}
.awl-dock .share-wrap.open .share-menu {
  opacity: 1 !important;
  pointer-events: auto !important;
    transform: translateX(0) scale(1) !important;
}
.awl-dock .share-menu a {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  padding: 8px 12px !important;
  color: #111111 !important;
  font-size: 13px !important;
  font-weight: 600 !important;
  border-radius: 8px !important;
  text-decoration: none !important;
  white-space: nowrap !important;
}
.awl-dock .share-menu a:hover { background: #f3f4f6 !important; }
.awl-dock .share-menu svg { width: 16px !important; height: 16px !important; }
.awl-dock .share-menu a.wa svg { color: #25D366 !important; fill: currentColor !important; }
.awl-dock .share-menu a.tw svg { color: #000000 !important; fill: currentColor !important; }
.awl-dock .share-menu a.li svg { color: #0A66C2 !important; fill: currentColor !important; }
.awl-dock .share-menu a.fb svg { color: #1877F2 !important; fill: currentColor !important; }
.awl-pop .share-wrap { position: relative; display: inline-flex; }
.awl-pop .share-menu { position: absolute; top: 46px; right: 0; background: #fff; border-radius: 12px; padding: 8px 6px; box-shadow: 0 10px 30px rgba(0,0,0,0.25); display: flex; flex-direction: column; gap: 4px; min-width: 148px; z-index: 9999; }
.awl-pop .share-menu a { display: flex; align-items: center; gap: 10px; padding: 8px 12px; color: #111; font-size: 13px; font-weight: 600; border-radius: 8px; text-decoration: none; }
.awl-pop .share-menu a:hover { background: #f3f4f6; }

/* Left Hero Image Heart Button */
/* Left Hero Image Heart Button */
.ep-hero-heart {
  position: absolute !important;
  top: 52px !important;
  right: 20px !important;
  z-index: 100 !important;
  width: 32px !important;
  height: 32px !important;
  border-radius: 50% !important;
  background: rgba(0, 0, 0, 0.4) !important;
  border: 1px solid rgba(255, 255, 255, 0.4) !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  padding: 0 !important;
  transition: transform 0.2s, background 0.2s, border-color 0.2s !important;
}
.ep-hero-heart:hover {
  transform: scale(1.1) !important;
  background: rgba(0, 0, 0, 0.6) !important;
}
.ep-hero-heart svg {
  width: 15px !important;
  height: 15px !important;
  color: #fff !important;
  transition: fill 0.2s, stroke 0.2s !important;
}
.ep-hero-heart.active {
  background: #ffffff !important;
  border-color: #ff3b6e !important;
}
.ep-hero-heart.active svg {
  fill: #ff3b6e !important;
  stroke: #ff3b6e !important;
}
/* ==========================================================================
   POPUP & DETAIL HERO CAPSULE DOCK (Horizontal)
   ========================================================================== */
.ep-hero-dock {
  display: inline-flex !important;
  flex-direction: row !important;
  align-items: center !important;
  height: 34px !important;
  padding: 0 4px !important;
  border-radius: 17px !important;
  background: rgba(10, 10, 10, 0.46) !important;
  backdrop-filter: blur(8px) !important;
  -webkit-backdrop-filter: blur(8px) !important;
  border: 1px solid rgba(255, 255, 255, 0.22) !important;
  position: relative !important;
  z-index: 100 !important;
}
.ep-hero-dock button {
  width: 32px !important;
  height: 32px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: transparent !important;
  border: none !important;
  border-radius: 50% !important;
  cursor: pointer !important;
  color: #ffffff !important;
}
.ep-hero-dock .share-wrap {
  position: relative !important;
  display: inline-flex !important;
}
.ep-hero-dock .share-menu {
  position: absolute !important;
  bottom: 42px !important;
  left: 50% !important;
  transform: translateX(-50%) translateY(10px) !important;
  background: rgba(20, 20, 20, 0.95) !important;
  backdrop-filter: blur(12px) !important;
  border-radius: 20px !important;
  padding: 8px 6px !important;
  box-shadow: 0 10px 30px rgba(0,0,0,0.5) !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 8px !important;
  z-index: 9999 !important;
  opacity: 0 !important;
  pointer-events: none !important;
  transition: opacity 0.2s, transform 0.2s !important;
}
.ep-hero-dock .share-wrap.open .share-menu {
  opacity: 1 !important;
  pointer-events: auto !important;
  transform: translateX(-50%) translateY(0) !important;
}
.ep-hero-dock .share-menu a {
  width: 30px !important;
  height: 30px !important;
  border-radius: 50% !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  color: #fff !important;
  text-decoration: none !important;
  font-size: 14px !important;
}
.ep-hero-dock .share-menu a.wa { background: #25D366 !important; }
.ep-hero-dock .share-menu a.tw { background: #000000 !important; border: 1px solid #333 !important; }
.ep-hero-dock .share-menu a.li { background: #0A66C2 !important; }
.ep-hero-dock .share-menu a.fb { background: #1877F2 !important; }
/* Lock Heart inside Hero Dock (Overriding old absolute position) */
.ep-hero-dock .ep-hero-heart {
  position: relative !important;
  top: auto !important;
  right: auto !important;
  width: 32px !important;
  height: 32px !important;
  background: transparent !important;
  border: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 0 !important;
}
.ep-hero-dock .ep-hero-heart svg {
  width: 17px !important;
  height: 17px !important;
  display: block !important;
}
.ep-hero-dock .ep-hero-heart.active,
.ep-hero-dock .ep-hero-heart[aria-pressed="true"] {
  background: #ffffff !important;
  border-radius: 50% !important;
}
.ep-hero-dock .ep-hero-heart.active svg path,
.ep-hero-dock .ep-hero-heart[aria-pressed="true"] svg path {
  fill: #ff3b6e !important;
  stroke: #ff3b6e !important;
}
.aw-wl-v1 .awl-layer.awl-static *,.aw-wl-v1 .awl-layer.awl-static *::before,.aw-wl-v1 .awl-layer.awl-static *::after{animation:none!important}

/* Chat cards: the rating / availability stack stops before the vertical heart+share dock (same dock as the home cards) so the two never overlap */
#my-chat .bot-cards .c .meta-bottom,.bot-cards .c .meta-bottom{right:58px !important}

/* Toast for a chat-card save: sits above the AI chat panel, centred over its input box (set from wishlist-v1.js) */
.aw-wl-v1.awl-root.awl-chat-toast{z-index:2147483000}
.aw-wl-v1.awl-chat-toast .awl-toast{left:var(--awl-cx);right:auto;bottom:var(--awl-cb);margin:0;translate:-50% 0;max-width:min(360px,calc(100vw - 24px))}

/* Wishlist opened from the chat toast: chat is hidden (state kept) until the wishlist is closed, then it returns at once */
body.awl-chat-away #my-chat.awwee-chat-shell{opacity:0 !important;visibility:hidden !important;pointer-events:none !important;transition:none !important}

/* the chat's blur backdrop (z 10040) must go away with the chat, otherwise it blurs the wishlist popup */
body.awl-chat-away .awwee-backdrop{opacity:0 !important;visibility:hidden !important;pointer-events:none !important;transition:none !important}

/* Thumbnail strip: centred while it fits, scrollable from the very first thumbnail when it does not.
   (justify-content:center on a scroll box cuts off the left side and it can never be scrolled to) */
.aw-wl-v1 .awl-thumbs{justify-content:flex-start;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;touch-action:pan-x;scroll-padding:0 16px}
.aw-wl-v1 .awl-thumbs>button:first-child{margin-left:auto}
.aw-wl-v1 .awl-thumbs>button:last-child{margin-right:auto}

/* "..." menu in the wishlist header (next to Share): Clear all */
.aw-wl-v1 .awl-more-wrap{position:relative;display:inline-flex;flex:none}
.aw-wl-v1 .awl-more-menu{position:absolute;top:50px;right:0;z-index:9999;min-width:150px;padding:6px;border-radius:12px;background:var(--awl-bg);border:1px solid var(--awl-line);box-shadow:0 10px 30px rgba(0,0,0,.28);display:flex;flex-direction:column}
.aw-wl-v1 .awl-more-menu[hidden]{display:none !important}
.aw-wl-v1 .awl-more-menu .awl-clear{width:100%;text-align:left;padding:10px 12px;border-radius:8px;font:700 13px/1.2 var(--awl-font-b);color:#e11d48;background:transparent;border:0;cursor:pointer}
.aw-wl-v1 .awl-more-menu .awl-clear:hover{background:rgba(225,29,72,.1)}
.aw-wl-v1 .awl-more-menu .awl-clear:focus-visible{outline:2px solid var(--awl-y1)}

/* 'Removed from wishlist' message: plain, not clickable, grey badge */
.aw-wl-v1 .awl-toast.awl-info{pointer-events:none !important;cursor:default}
.aw-wl-v1 .awl-toast.awl-info .awl-tk{background:#6b7280}
