/* Favorites + Compare UI */
.ua-fav{ position:absolute; top:9px; right:9px; z-index:3; width:40px; height:40px; border-radius:50%;
  border:none; background:rgba(255,255,255,.92); box-shadow:0 1px 4px rgba(0,0,0,.15); cursor:pointer;
  display:flex; align-items:center; justify-content:center; transition:transform .12s, background .12s; padding:0; -webkit-tap-highlight-color:transparent; }
.ua-fav:hover{ transform:scale(1.1); }
.ua-fav svg{ width:20px; height:20px; }
@media(max-width:600px){ .ua-fav{ width:44px; height:44px; } .ua-fav svg{ width:21px; height:21px; } }
.ua-fav .ua-heart-fill{ display:none; }
.ua-fav.is-on{ background:#fff; }
.ua-fav.is-on .ua-heart-fill{ display:block; }
.ua-fav.is-on .ua-heart-line{ display:none; }

/* compare checkbox on card */
.ua-cmp-wrap{ display:inline-flex; align-items:center; gap:6px; font-size:12px; color:#555; cursor:pointer; user-select:none; }
.ua-cmp-wrap input{ accent-color:#B0492B; width:14px; height:14px; cursor:pointer; }
.ua-cmp-wrap.is-on{ color:#B0492B; font-weight:600; }

/* PDP action variants */
.snk-pdp-actions-row{ display:flex; gap:12px; margin-top:14px; }
.snk-pdp-actions-row > *{ flex:1 1 0; }
.ua-fav-btn, .ua-cmp-btn{ position:static; height:auto; box-shadow:none; display:inline-flex; align-items:center; justify-content:center; gap:9px; width:100%; padding:13px 16px;
  border:1.6px solid #dcdee3; background:#fff; border-radius:12px; cursor:pointer; font-size:14px; font-weight:600; color:#1a1a1a;
  letter-spacing:.01em; transition:border-color .15s, background .15s, color .15s, box-shadow .15s; }
.ua-fav-btn svg{ width:18px; height:18px; }
.ua-fav-btn:hover, .ua-cmp-btn:hover{ border-color:#0d1b2a; background:#f6f7f9; box-shadow:0 2px 8px rgba(13,27,42,.07); }
.ua-fav-btn svg, .ua-cmp-btn svg{ flex:0 0 auto; }
.ua-fav-btn.is-on{ border-color:#e0245e; color:#e0245e; background:#fff5f8; }
.ua-fav-btn.is-on .ua-heart-fill{ display:block; } .ua-fav-btn .ua-heart-fill{ display:none; }
.ua-fav-btn.is-on .ua-heart-line{ display:none; }
@media(max-width:480px){ .snk-pdp-actions-row{ flex-direction:column; } }

/* header favorites icon */
.ua-fav-nav{ position:relative; display:inline-flex; align-items:center; }
.ua-fav-nav .ua-fav-badge{ position:absolute; top:-6px; right:-8px; min-width:16px; height:16px; padding:0 4px;
  background:#e0245e; color:#fff; font-size:10px; line-height:16px; text-align:center; border-radius:8px; font-weight:700; }

/* sticky compare bar */
.ua-cmp-bar{ position:fixed; left:50%; transform:translate(-50%,120%); bottom:18px; z-index:1200;
  background:#0d1b2a; color:#fff; border-radius:14px; padding:12px 16px; display:flex; align-items:center; gap:16px;
  box-shadow:0 8px 30px rgba(0,0,0,.3); transition:transform .25s ease; max-width:92vw; }
.ua-cmp-bar.show{ transform:translate(-50%,0); }
.ua-cmp-bar-label{ font-size:14px; } .ua-cmp-bar-label strong{ color:#ffd166; }
.ua-cmp-bar-go{ background:#B0492B; color:#fff; padding:9px 16px; border-radius:10px; font-weight:700; text-decoration:none; font-size:14px; }
.ua-cmp-bar-go.disabled{ opacity:.5; }
.ua-cmp-bar-clear{ background:transparent; border:none; color:#9fb3c8; cursor:pointer; font-size:13px; }

/* favorites empty + compare table */
.ua-fav-empty{ text-align:center; padding:80px 20px; color:#666; }
.ua-fav-empty a{ color:#B0492B; font-weight:600; }
.ua-compare-wrap{ max-width:1200px; margin:0 auto; padding:24px 16px; overflow-x:auto; }
.ua-compare-table{ border-collapse:collapse; width:100%; min-width:680px; }
.ua-compare-table th,.ua-compare-table td{ border:1px solid #eaebed; padding:14px; text-align:center; vertical-align:top; font-size:14px; }
.ua-compare-table thead th{ background:#f7f7f8; }
.ua-compare-table .rowlabel{ background:#fafafa; font-weight:700; text-align:left; white-space:nowrap; color:#333; }
.ua-compare-table img{ width:100%; max-width:170px; aspect-ratio:1/1; object-fit:contain; }
.ua-compare-name{ font-weight:700; margin:8px 0; } .ua-compare-name a{ color:#0d1b2a; text-decoration:none; }
.ua-compare-price{ color:#B0492B; font-weight:800; font-size:18px; }
.ua-compare-buy{ display:inline-block; margin-top:8px; background:#B0492B; color:#fff; padding:9px 18px; border-radius:10px; text-decoration:none; font-weight:700; }
.ua-compare-rm{ background:none;border:none;color:#b00;cursor:pointer;font-size:12px;margin-top:6px; }
@media(max-width:600px){ .ua-cmp-bar{ width:92vw; justify-content:space-between; gap:8px; } }
.ua-cmp-bar-go{ cursor:pointer; }

/* Compare modal */
.ua-modal{ position:fixed; inset:0; z-index:100010; background:rgba(13,27,42,.6); display:none; align-items:flex-start; justify-content:center; padding:70px 16px 40px; overflow:auto; }
.ua-modal.open{ display:flex; }
.ua-modal-box{ background:#fff; border-radius:16px; width:100%; max-width:1100px; box-shadow:0 20px 60px rgba(0,0,0,.35); animation:uaModalIn .2s ease;
  max-height:94vh; display:flex; flex-direction:column; margin-top:0; }
@keyframes uaModalIn{ from{ transform:translateY(14px); opacity:0; } to{ transform:none; opacity:1; } }
.ua-modal-head{ flex:0 0 auto; display:flex; align-items:center; gap:14px; padding:16px 20px; border-bottom:1px solid #eee; background:#fff; border-radius:16px 16px 0 0; }
.ua-modal-head h2{ margin:0; font-size:20px; flex:0 0 auto; }
.ua-modal-full{ margin-left:auto; font-size:13px; color:#B0492B; text-decoration:none; font-weight:600; }
.ua-modal-close{ background:none; border:none; font-size:28px; line-height:1; cursor:pointer; color:#666; padding:0 4px; }
.ua-modal-host{ flex:1 1 auto; overflow-y:auto; padding:8px 16px 20px; }
.ua-modal-host .ua-compare-table{ min-width:0; }
@media(max-width:600px){ .ua-modal{ padding:0; } .ua-modal-box{ border-radius:0; max-height:100vh; min-height:100vh; } }

/* click-to-enlarge lightbox */
.ua-zoom{ cursor:zoom-in; }
.ua-imglb{ position:fixed; inset:0; z-index:3000; background:rgba(0,0,0,.86); display:none; align-items:center; justify-content:center; padding:24px; }
.ua-imglb.open{ display:flex; }
.ua-imglb img{ max-width:92vw; max-height:90vh; object-fit:contain; border-radius:8px; box-shadow:0 10px 40px rgba(0,0,0,.5); }
.ua-imglb-close{ position:absolute; top:14px; right:22px; background:none; border:none; color:#fff; font-size:42px; line-height:1; cursor:pointer; }

/* Compare modal: add-more panel */
.ua-cmp-add{ border-top:1px solid #eee; margin-top:14px; padding:16px 4px 4px; }
.ua-cmp-add-head{ font-size:14px; color:#444; margin-bottom:10px; }
.ua-cmp-fullnote{ color:#a06a00; background:#fff7e6; padding:6px 10px; border-radius:8px; }
.ua-cmp-chips{ display:flex; flex-wrap:wrap; gap:8px; margin-bottom:12px; }
.ua-cmp-chip{ border:1px solid #d8dadf; background:#fff; border-radius:20px; padding:6px 14px; font-size:13px; cursor:pointer; transition:all .12s; }
.ua-cmp-chip:hover{ border-color:#B0492B; }
.ua-cmp-chip.active{ background:#B0492B; color:#fff; border-color:#B0492B; }
.ua-cmp-results{ display:flex; flex-wrap:wrap; gap:10px; padding:4px; }
.ua-cmp-searchbar{ display:flex; align-items:center; gap:8px; border:1.5px solid #d8dadf; border-radius:10px; padding:9px 12px; margin-bottom:12px; }
.ua-cmp-searchbar:focus-within{ border-color:#B0492B; }
.ua-cmp-search{ flex:1; border:none; outline:none; font-size:14px; background:none; color:#222; }
.ua-cmp-hint,.ua-cmp-more{ width:100%; padding:12px; color:#999; font-size:13px; text-align:center; }
.ua-cmp-pick{ flex:0 0 140px; border:1px solid #eee; border-radius:10px; padding:8px; text-align:center; background:#fafafa; }
.ua-cmp-pick.in{ opacity:.6; }
.ua-cmp-pick img{ width:100%; height:110px; object-fit:contain; }
.ua-cmp-pick-name{ font-size:11px; line-height:1.3; height:29px; overflow:hidden; margin:6px 0; color:#333; }
.ua-cmp-pick-add{ width:100%; border:none; background:#B0492B; color:#fff; border-radius:7px; padding:7px 0; font-size:12px; font-weight:600; cursor:pointer; }
.ua-cmp-pick-add[disabled]{ background:#bcdcc0; color:#2c6b34; cursor:default; }

/* Compare: empty "+ Add product" slot column, clearer remove pill, picker pulse */
.ua-cmp-slot{ background:#f8fafc; border:2px dashed #cdd4de !important; text-align:center; vertical-align:middle; min-width:160px; }
.ua-cmp-slotcell{ background:#fcfdfe; border:2px dashed #e7ebf1 !important; border-top:none !important; }
.ua-cmp-addcol{ display:inline-flex; flex-direction:column; align-items:center; gap:8px; background:none; border:none; cursor:pointer; color:#B0492B; font-weight:700; font-size:13.5px; padding:14px 8px; width:100%; }
.ua-cmp-addcol-plus{ width:40px; height:40px; border-radius:50%; background:#B0492B; color:#fff; font-size:26px; line-height:40px; transition:background .15s, transform .15s; }
.ua-cmp-addcol:hover .ua-cmp-addcol-plus{ background:#0d1b2a; transform:scale(1.08); }
.ua-compare-table .ua-compare-rm{ display:inline-block; margin-top:8px; background:#f3f4f6; border:1px solid #e2e4e8; color:#666; border-radius:7px; padding:4px 11px; font-size:11.5px; cursor:pointer; transition:all .12s; }
.ua-compare-table .ua-compare-rm:hover{ background:#fde8e8; border-color:#f3c2c2; color:#c0392b; }
.ua-cmp-add.ua-pulse{ animation:uaPulse 1.4s ease; }
@keyframes uaPulse{ 0%,100%{ box-shadow:none; } 25%,60%{ box-shadow:0 0 0 3px rgba(0,67,139,.4); border-radius:10px; } }

/* Guest save toast + favorites guest banner */
.ua-toast{ position:fixed; right:18px; bottom:18px; z-index:2500; max-width:360px; background:#0d1b2a; color:#fff; border-radius:12px; padding:14px 16px; display:flex; align-items:flex-start; gap:10px; box-shadow:0 10px 30px rgba(0,0,0,.3); transform:translateY(20px); opacity:0; transition:transform .3s, opacity .3s; font-size:13.5px; line-height:1.45; }
.ua-toast.show{ transform:none; opacity:1; }
.ua-toast-ic{ color:#e0245e; font-size:16px; flex:0 0 auto; }
.ua-toast-msg a{ color:#ffd166; font-weight:600; text-decoration:underline; }
.ua-toast-x{ background:none; border:none; color:#9fb3c8; font-size:20px; line-height:1; cursor:pointer; flex:0 0 auto; margin-left:4px; padding:0; }
.ua-fav-guestbar{ background:#eef4ff; border:1px solid #cfe0ff; color:#234; border-radius:10px; padding:12px 16px; margin:0 0 18px; font-size:14px; }
.ua-fav-guestbar a{ color:#B0492B; font-weight:600; }
@media(max-width:600px){ .ua-toast{ left:12px; right:12px; bottom:12px; max-width:none; } }

/* Mobile: compare table scrolls (readable columns) with pinned row labels */
@media(max-width:600px){
  .ua-compare-table th, .ua-compare-table td{ min-width:122px; padding:10px 8px; font-size:12.5px; }
  .ua-compare-table .rowlabel{ min-width:80px; position:sticky; left:0; z-index:2; }
  .ua-compare-table thead .rowlabel{ z-index:3; }
  .ua-compare-table img{ max-width:104px; }
  .ua-compare-price{ font-size:15px; }
  .ua-cmp-slot{ min-width:122px; }
  .ua-modal-head h2{ font-size:17px; }
  .ua-modal-full{ font-size:12px; }
  .ua-cmp-pick{ flex:0 0 calc(50% - 5px); }
  .ua-compare-buy{ padding:8px 12px; font-size:13px; }
}

/* Inline video play in product listing cards */
.product-card-image{ position:relative; }
.ua-cardvid{ position:absolute; top:50%; left:50%; transform:translate(-50%,-50%); z-index:3; width:54px; height:54px; border-radius:50%; border:none; background:rgba(0,0,0,.55); color:#fff; cursor:pointer; display:flex; align-items:center; justify-content:center; padding-left:3px; transition:background .15s, transform .12s; -webkit-tap-highlight-color:transparent; }
.ua-cardvid:hover{ background:rgba(0,0,0,.75); transform:translate(-50%,-50%) scale(1.08); }
.ua-cardvideo{ position:absolute; inset:0; width:100%; height:100%; object-fit:contain; background:#000; z-index:4; border-radius:inherit; }

/* media-download deterrent: no drag-to-save on product imagery */
.product-card img, .snk-gallery img, .snk-gallery video, .ua-compare-table img, .ua-cmp-pick img, .ua-imglb img, .ua-gender-tile img, .ua-cardvideo{ -webkit-user-drag:none; -khtml-user-drag:none; user-select:none; }

/* Favorites modal (opened from header; reuses .ua-modal shell) */
.ua-favm-grid{ display:grid; grid-template-columns:repeat(auto-fill,minmax(150px,1fr)); gap:14px; }
.ua-favm-loading{ padding:40px; text-align:center; color:#999; }
.ua-favm-card{ position:relative; background:#fff; border:1px solid #eceef1; border-radius:12px; overflow:hidden; transition:box-shadow .15s,transform .15s; }
.ua-favm-card:hover{ box-shadow:0 10px 26px rgba(0,0,0,.10); transform:translateY(-2px); }
.ua-favm-imgwrap{ display:block; aspect-ratio:1/1; background:#f7f7f8; }
.ua-favm-imgwrap img{ width:100%; height:100%; object-fit:contain; padding:8px; }
.ua-favm-rm{ position:absolute; top:8px; right:8px; z-index:2; width:34px; height:34px; padding:0; border:0; border-radius:50%; background:rgba(0,0,0,.45); display:flex; align-items:center; justify-content:center; cursor:pointer; }
.ua-favm-rm:hover{ background:rgba(0,0,0,.62); }
.ua-favm-rm svg{ width:18px; height:18px; }
.ua-favm-rm .ua-heart-fill{ display:block; } .ua-favm-rm .ua-heart-line{ display:none; }
.ua-favm-name{ display:block; padding:9px 10px 2px; font:600 12.5px 'Poppins',sans-serif; color:#161616; text-decoration:none; line-height:1.3; max-height:3.1em; overflow:hidden; }
.ua-favm-name:hover{ color:#B0492B; }
.ua-favm-price{ padding:0 10px 11px; font:800 13.5px 'Manrope',sans-serif; color:#B0492B; }
.ua-favm-price s{ color:#9aa0a6; font-weight:400; font-size:11.5px; margin-left:4px; }
