/* Pings, Deals and Bars on the store page (pings.js). */
.toasts{z-index:90}

/* ---- section heads ---- */
.phead{display:flex;align-items:center;gap:10px;margin:0 0 12px}
.phead h2{margin:0;font:800 20px var(--font-display);letter-spacing:-.01em;display:flex;align-items:center;gap:8px}
.phead .cnt{min-width:26px;height:24px;padding:0 8px;border-radius:99px;background:rgba(30,232,240,.14);color:var(--brand-3);font:750 12.5px/24px var(--font);text-align:center}
.phead .sp{flex:1}
.psort{display:flex;padding:3px;border-radius:12px;background:var(--s1);border:1px solid var(--line)}
.psort button{height:30px;padding:0 12px;border:0;border-radius:9px;background:none;color:var(--tx-2);font:650 12.5px var(--font);cursor:pointer;transition:background .2s,color .2s}
.psort button[aria-pressed=true]{background:var(--tx);color:var(--brand-ink)}

/* ---- deals ---- */
.deals{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin:0 -18px;padding:4px 18px 6px}
.deals::-webkit-scrollbar{display:none}
.deal{position:relative;flex:none;width:100%;scroll-snap-align:center;border-radius:22px;padding:2px;background:linear-gradient(135deg,#ff9a3c,#ff4f7a 50%,#ffcd4a);background-size:200% 200%;animation:deal-glow 6s ease-in-out infinite;box-shadow:0 10px 30px -12px rgba(255,90,90,.55)}
.deals.many .deal{width:86%}
.deal{display:flex}
.deal .in{flex:1;border-radius:20px;background:linear-gradient(160deg,#2a160c,#1b0f14 60%,#120c10);overflow:hidden;display:flex;flex-direction:column}
.deal .ph{aspect-ratio:2/1;background:#24130d center/cover no-repeat}
.deal .bd{padding:14px 16px 12px;display:flex;flex-direction:column;gap:8px}
.deal .tp{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.deal .fire{display:inline-flex;align-items:center;gap:5px;padding:4px 10px;border-radius:99px;background:linear-gradient(135deg,#ff8a3c,#ff4f7a);color:#fff;font:800 11px var(--font);letter-spacing:.08em;text-transform:uppercase}
.deal .fire i{font-style:normal;display:inline-block;animation:flicker 1.6s ease-in-out infinite}
.deal .cd{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border-radius:99px;background:rgba(255,205,74,.12);color:#ffd98f;font:700 12px var(--font);font-variant-numeric:tabular-nums}
.deal .cd.hot{background:rgba(255,79,122,.18);color:#ff9fb6}
.deal .cd.hot::before{content:"";width:7px;height:7px;border-radius:50%;background:#ff4f7a;animation:blink 1s infinite}
.deal h3{margin:0;font:800 21px/1.2 var(--font-display);letter-spacing:-.015em;color:#fff4e6}
.deal p{margin:0;color:#e6cdb8;font-size:14px;line-height:1.45;white-space:pre-line}
.deal .ft{display:flex;align-items:center;gap:8px;margin-top:4px}
@keyframes deal-glow{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
@keyframes flicker{0%,100%{transform:scale(1) rotate(-4deg)}50%{transform:scale(1.18) rotate(4deg)}}
@keyframes blink{50%{opacity:.25}}
.dots{display:flex;justify-content:center;gap:6px;margin-top:8px}
.dots i{width:6px;height:6px;border-radius:99px;background:var(--line-2);transition:width .3s var(--ease),background .3s}
.dots i.on{width:18px;background:#ff8a5c}

/* ---- the Ping call-to-action ---- */
.pcta{position:relative;overflow:hidden;display:flex;align-items:center;gap:14px;width:100%;padding:16px;border-radius:20px;border:0;text-align:left;font:inherit;color:var(--brand-ink);cursor:pointer;background:var(--grad);box-shadow:0 14px 34px -14px rgba(30,232,240,.6);transition:transform .15s var(--ease)}
.pcta:active{transform:scale(.98)}
.pcta .wv{position:relative;width:48px;height:48px;flex:none;border-radius:16px;background:rgba(2,23,26,.14);display:grid;place-items:center}
.pcta .wv svg{width:26px;height:26px}
.pcta .wv::before,.pcta .wv::after{content:"";position:absolute;inset:0;border-radius:16px;border:2px solid rgba(2,23,26,.35);animation:ripple 2.4s var(--ease) infinite}
.pcta .wv::after{animation-delay:1.2s}
.pcta b{display:block;font:800 17px var(--font-display);letter-spacing:-.01em}
.pcta small{display:block;font-size:13px;font-weight:600;opacity:.75}
.pcta .go{margin-left:auto;width:36px;height:36px;border-radius:50%;background:var(--brand-ink);color:var(--brand-3);display:grid;place-items:center;flex:none}
.pcta .go svg{width:18px;height:18px}
.pcta::after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.35),transparent);transform:skewX(-20deg);animation:sheen 4.5s ease-in-out infinite}
@keyframes ripple{from{transform:scale(1);opacity:.9}to{transform:scale(1.7);opacity:0}}
@keyframes sheen{0%,60%{left:-60%}100%{left:130%}}
.plock{display:flex;align-items:center;gap:12px;padding:14px 16px;border-radius:18px;background:var(--s1);border:1px dashed var(--line-2);color:var(--tx-2);font-size:13.5px;line-height:1.4;text-decoration:none}
.plock .ic2{width:40px;height:40px;border-radius:12px;background:var(--s2);display:grid;place-items:center;flex:none;color:var(--brand-3)}
.plock .ic2 svg{width:20px;height:20px}
.plock b{display:block;color:var(--tx);font-size:14.5px}

/* ---- Ping cards ---- */
.plist{display:flex;flex-direction:column;gap:12px;margin-top:12px}
.ping{position:relative;padding:14px 16px;border-radius:20px;background:linear-gradient(180deg,rgba(255,255,255,.025),transparent 50%),var(--s1);border:1px solid var(--line);display:flex;flex-direction:column;gap:10px;animation:ping-in .45s var(--ease) both}
.ping.new{animation:ping-drop .7s cubic-bezier(.2,1.4,.4,1) both;border-color:var(--line-hi)}
.ping.flash{animation:ping-flash 2.2s ease-out both}
@keyframes ping-in{from{opacity:0;transform:translateY(12px)}}
@keyframes ping-drop{from{opacity:0;transform:translateY(-24px) scale(.94)}}
@keyframes ping-flash{0%,30%{box-shadow:0 0 0 3px var(--brand-3),0 0 40px rgba(30,232,240,.4)}100%{box-shadow:0 0 0 0 transparent}}
.ping .hd{display:flex;align-items:center;gap:10px}
.pav{width:42px;height:42px;border-radius:50%;flex:none;display:grid;place-items:center;overflow:hidden;color:#fff;font:800 14px var(--font);background:#2e6f74}
.pav svg,.pav img{width:100%;height:100%;display:block;object-fit:cover}
.ping .who2{flex:1;min-width:0;line-height:1.25}
.ping .who2 b{display:block;font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.ping .vf{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:650;color:var(--ok)}
.ping .vf svg{width:13px;height:13px}
.ping .vf span{color:var(--tx-3);font-weight:500}
.ping .more{width:36px;height:36px;border-radius:12px;border:0;background:none;color:var(--tx-2);cursor:pointer;display:grid;place-items:center;flex:none}
.ping .more:hover{background:var(--s2)}
.ping .more svg{width:20px;height:20px}
.ping .tx2{margin:0;font-size:15px;line-height:1.5;white-space:pre-line;overflow-wrap:anywhere}
.ping .tx2 .ed{color:var(--tx-3);font-size:12px}
.ping .img{border-radius:16px;overflow:hidden;background:var(--s2);aspect-ratio:1;max-height:420px;cursor:zoom-in}
.ping .img img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s var(--ease)}
.ping .ft{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.ping .ft .age{margin-left:auto;font-size:12px;color:var(--tx-3)}
.reply{display:flex;gap:10px;padding:10px 12px;border-radius:14px;background:rgba(30,232,240,.06);border:1px solid rgba(30,232,240,.16);margin-left:6px;position:relative}
.reply::before{content:"";position:absolute;left:-8px;top:-10px;width:10px;height:22px;border-left:2px solid var(--line-2);border-bottom:2px solid var(--line-2);border-bottom-left-radius:10px}
.reply .lg{width:28px;height:28px;border-radius:9px;flex:none;background:#2e6f74 center/cover no-repeat;display:grid;place-items:center;font:800 10px var(--font);color:#fff}
.reply b{font-size:13px}
.reply .own{display:inline-block;margin-left:6px;padding:1px 7px;border-radius:99px;background:rgba(30,232,240,.14);color:var(--brand-3);font-size:10.5px;font-weight:750;letter-spacing:.04em;text-transform:uppercase;vertical-align:1px}
.reply p{margin:2px 0 0;font-size:14px;line-height:1.45;color:var(--tx-2);white-space:pre-line;overflow-wrap:anywhere}
.pempty{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center;padding:18px 10px 6px;color:var(--tx-2);font-size:14px}
.pempty img{width:96px;height:96px;animation:connie-bob 3s ease-in-out infinite}
.pempty b{color:var(--tx);font-size:16px}
.pmore{align-self:center;margin-top:4px}

/* ---- Bars ---- */
.barsb{display:inline-flex;align-items:center;gap:7px;height:36px;padding:0 12px 0 10px;border-radius:99px;border:1px solid var(--line-2);background:var(--s2);color:var(--tx);font:700 13.5px var(--font);cursor:pointer;font-variant-numeric:tabular-nums;transition:background .2s,border-color .2s,transform .12s var(--ease);-webkit-tap-highlight-color:transparent;position:relative}
.barsb:active{transform:scale(.94)}
.barsb svg{width:20px;height:20px;overflow:visible}
.barsb svg rect{fill:currentColor;opacity:.28;transform-origin:center bottom;transform-box:fill-box;transition:opacity .2s}
.barsb .n{min-width:1ch}
.barsb .l{font-weight:600;color:var(--tx-2)}
.barsb[aria-pressed=true]{background:rgba(30,232,240,.12);border-color:rgba(30,232,240,.55);color:var(--brand-3)}
.barsb[aria-pressed=true] svg rect{opacity:1}
.barsb[aria-pressed=true] .l{color:var(--brand-3)}
.barsb.pop svg rect{animation:bar-rise .5s cubic-bezier(.2,1.6,.4,1) both}
.barsb.pop svg rect:nth-child(2){animation-delay:.07s}
.barsb.pop svg rect:nth-child(3){animation-delay:.14s}
.barsb.pop svg rect:nth-child(4){animation-delay:.21s}
.barsb.pop .n{animation:num-pop .45s var(--ease)}
.barsb.pop::after{content:"";position:absolute;inset:-2px;border-radius:99px;border:2px solid var(--brand-3);animation:ring .6s ease-out forwards;pointer-events:none}
.deal .barsb{background:rgba(255,255,255,.06);border-color:rgba(255,205,150,.25);color:#ffe8d0}
.deal .barsb[aria-pressed=true]{background:rgba(255,138,92,.18);border-color:#ff8a5c;color:#ffb38a}
.deal .barsb[aria-pressed=true] .l{color:#ffb38a}
.deal .barsb.pop::after{border-color:#ff8a5c}
@keyframes bar-rise{0%{transform:scaleY(.1)}100%{transform:scaleY(1)}}
@keyframes num-pop{40%{transform:translateY(-4px) scale(1.25)}}
@keyframes ring{from{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.35)}}
.pbtn{display:inline-flex;align-items:center;gap:6px;height:36px;padding:0 12px;border-radius:99px;border:1px solid var(--line-2);background:none;color:var(--tx-2);font:650 13px var(--font);cursor:pointer}
.pbtn svg{width:16px;height:16px}
.deal .pbtn{border-color:rgba(255,205,150,.25);color:#e6cdb8}

/* ---- sheets (above the store page) ---- */
.pscrim{z-index:70}
.psheet{z-index:75}
.psheet textarea{width:100%;min-height:120px;resize:none;border-radius:16px;border:1px solid var(--line-2);background:var(--bg-2);color:var(--tx);font:500 16px/1.5 var(--font);padding:14px;outline:none}
.psheet textarea:focus{border-color:var(--line-hi);box-shadow:0 0 0 4px rgba(30,232,240,.1)}
.starters{display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;margin:10px -20px 0;padding:0 20px 2px}
.starters::-webkit-scrollbar{display:none}
.starters button{flex:none;height:34px;padding:0 12px;border-radius:99px;border:1px solid var(--line-2);background:var(--s2);color:var(--tx);font:600 13px var(--font);cursor:pointer;transition:transform .12s}
.starters button:active{transform:scale(.94)}
.crow{display:flex;align-items:center;gap:10px;margin-top:12px}
.crow .sp{flex:1}
.ring2{width:30px;height:30px;flex:none}
.ring2 circle{fill:none;stroke-width:3}
.ring2 .bg{stroke:var(--line-2)}
.ring2 .fg{stroke:var(--brand-3);stroke-linecap:round;transform:rotate(-90deg);transform-origin:center;transition:stroke-dashoffset .2s,stroke .2s}
.ring2.warn .fg{stroke:var(--warn)}
.ring2.over .fg{stroke:#ff6b8a}
.rc{font:700 12px var(--font);color:var(--tx-3);font-variant-numeric:tabular-nums;min-width:28px}
.addph{position:relative;display:inline-flex;align-items:center;gap:7px;height:40px;padding:0 14px;border-radius:12px;border:1px dashed rgba(30,232,240,.5);color:var(--brand-3);font:650 13.5px var(--font);cursor:pointer}
.addph input{position:absolute;inset:0;opacity:0;cursor:pointer}
.addph svg{width:18px;height:18px}
.phprev{position:relative;margin-top:12px;border-radius:16px;overflow:hidden;aspect-ratio:1;max-height:260px;background:var(--s2)}
.phprev img{width:100%;height:100%;object-fit:cover;display:block}
.phprev button{position:absolute;top:10px;right:10px;width:34px;height:34px;border-radius:50%;border:0;background:rgba(5,14,19,.75);color:#fff;display:grid;place-items:center;cursor:pointer}
.phprev button svg{width:16px;height:16px}
.fnote{margin:10px 0 0;font-size:12px;color:var(--tx-3);line-height:1.45}
.vfrow{display:flex;align-items:center;gap:8px;margin:-6px 0 14px;font-size:12.5px;font-weight:650;color:var(--ok)}
.vfrow svg{width:15px;height:15px}
.menu{display:flex;flex-direction:column;gap:6px}
.menu button{display:flex;align-items:center;gap:12px;padding:14px;border-radius:14px;border:0;background:var(--s2);color:var(--tx);font:600 15px var(--font);cursor:pointer;text-align:left;width:100%}
.menu button svg{width:20px;height:20px;color:var(--brand-3)}
.menu button.danger{color:#ff8aa2}.menu button.danger svg{color:#ff8aa2}
.reasons{display:flex;flex-direction:column;gap:8px}
.reasons label{display:flex;align-items:center;gap:12px;padding:13px 14px;border-radius:14px;background:var(--s2);border:1px solid transparent;cursor:pointer;font-size:14.5px;font-weight:600}
.reasons input{accent-color:var(--brand-3);width:18px;height:18px}
.reasons label:has(input:checked){border-color:var(--line-hi);background:rgba(30,232,240,.08)}
.reasons small{display:block;font-weight:500;color:var(--tx-3);font-size:12.5px}

/* ---- photo viewer ---- */
.lightbox{position:fixed;inset:0;z-index:85;background:rgba(1,6,9,.94);display:grid;place-items:center;padding:20px;opacity:0;pointer-events:none;transition:opacity .25s}
.lightbox.open{opacity:1;pointer-events:auto}
.lightbox img{max-width:100%;max-height:100%;border-radius:12px;transform:scale(.94);transition:transform .3s var(--ease)}
.lightbox.open img{transform:none}

/* ---- the "Pinged!" celebration ---- */
.party{position:fixed;inset:0;z-index:88;display:grid;place-items:center;pointer-events:none;background:radial-gradient(circle at 50% 50%,rgba(5,14,19,.92) 0,rgba(5,14,19,.75) 180px,rgba(5,14,19,.25) 420px);animation:party-bg .3s ease-out both;transition:opacity .4s}
@keyframes party-bg{from{opacity:0}}
.party .core{position:relative;display:flex;flex-direction:column;align-items:center;gap:6px;animation:core-in .6s cubic-bezier(.2,1.5,.4,1) both}
.party .core img{width:150px;height:150px;filter:drop-shadow(0 18px 30px rgba(0,0,0,.45))}
.party .core b{font:900 34px var(--font-display);letter-spacing:-.02em;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent}
.party .core small{font-size:14px;color:var(--tx-2);font-weight:600}
.party .wave{position:absolute;left:50%;top:50%;width:160px;height:160px;margin:-80px 0 0 -80px;border-radius:50%;border:3px solid var(--brand-3);animation:wave-out 1.4s ease-out both}
.party .wave:nth-child(2){animation-delay:.18s}.party .wave:nth-child(3){animation-delay:.36s}
.party .bit{position:absolute;left:50%;top:50%;width:var(--s);height:calc(var(--s) * 1.6);border-radius:3px;background:var(--c);animation:bit-fly 1.5s cubic-bezier(.15,.8,.3,1) both;animation-delay:var(--d)}
.party.out{opacity:0}
@keyframes core-in{from{opacity:0;transform:scale(.4) translateY(30px)}}
@keyframes wave-out{from{opacity:.9;transform:scale(.3)}to{opacity:0;transform:scale(4)}}
@keyframes bit-fly{0%{opacity:1;transform:translate(-50%,-50%) rotate(0)}100%{opacity:0;transform:translate(calc(-50% + var(--x)),calc(-50% + var(--y))) rotate(var(--r))}}

/* swipeable photos (same as the app home feed, index.html) */
.car{position:relative;background:#081419}
.car-tr{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain}
.car-tr::-webkit-scrollbar{display:none}
.car-sl{flex:0 0 100%;scroll-snap-align:center;aspect-ratio:1;position:relative;overflow:hidden;background:var(--s2)}
.car-sl img{width:100%;height:100%;object-fit:cover;display:block;opacity:0;transition:opacity .45s var(--ease),transform .6s var(--ease);transform:scale(1.03)}
.car-sl img.in{opacity:1;transform:none}
.car-n{position:absolute;top:12px;right:12px;padding:4px 10px;border-radius:99px;background:rgba(5,14,19,.7);color:#fff;font:700 12px var(--font);font-variant-numeric:tabular-nums;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}
.car-dots{position:absolute;left:0;right:0;bottom:10px;display:flex;justify-content:center;gap:6px;pointer-events:none}
.car-dots i{width:7px;height:7px;border-radius:99px;background:rgba(255,255,255,.45);transition:width .3s var(--ease),background .3s}
.car-dots i.on{width:20px;background:#fff}
.car-arr{position:absolute;top:50%;width:38px;height:38px;margin-top:-19px;border-radius:50%;border:0;background:rgba(5,14,19,.6);color:#fff;display:none;place-items:center;cursor:pointer}
.car-arr svg{width:18px;height:18px}
.car-arr.l{left:10px}.car-arr.r{right:10px}
@media (hover:hover){.car:hover .car-arr{display:grid}}


.ping .car{border-radius:16px;overflow:hidden}
.ping .car-sl{aspect-ratio:1;max-height:420px}
.phgrid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:12px}
.phgrid .th{position:relative;aspect-ratio:1;border-radius:12px;overflow:hidden;background:var(--s2)}
.phgrid .th img{width:100%;height:100%;object-fit:cover;display:block}
.phgrid .th button{position:absolute;top:4px;right:4px;width:24px;height:24px;border-radius:50%;border:0;background:rgba(5,14,19,.8);color:#fff;display:grid;place-items:center;cursor:pointer;padding:0}
.phgrid .th button svg{width:12px;height:12px}
.phgrid .th em{position:absolute;left:4px;bottom:4px;padding:1px 6px;border-radius:99px;background:rgba(5,14,19,.8);color:#fff;font:700 10px var(--font);font-style:normal}

/* ---- store photos (wifi.js galleryHtml / openViewer) ---- */
.gm-all{border:0;background:none;color:var(--brand-3);font:650 13.5px var(--font);cursor:pointer;padding:6px 0}
.gm-grid{display:grid;gap:6px;border-radius:20px;overflow:hidden;height:260px}
.gm-grid.n1{grid-template-columns:1fr}
.gm-grid.n2{grid-template-columns:1fr 1fr}
.gm-grid.n3{grid-template-columns:2fr 1fr;grid-template-rows:1fr 1fr}.gm-grid.n3 .gm-t:first-child{grid-row:span 2}
.gm-grid.n4{grid-template-columns:2fr 1fr 1fr;grid-template-rows:1fr 1fr}.gm-grid.n4 .gm-t:first-child{grid-row:span 2}.gm-grid.n4 .gm-t:nth-child(4){grid-column:span 2}
.gm-grid.n5{grid-template-columns:2fr 1fr 1fr;grid-template-rows:1fr 1fr}.gm-grid.n5 .gm-t:first-child{grid-row:span 2}
.gm-t{position:relative;border:0;padding:0;background:var(--s2) center/cover no-repeat;cursor:zoom-in;transition:filter .2s,transform .3s var(--ease)}
.gm-t:hover{filter:brightness(1.08)}
.gm-t:active{transform:scale(.98)}
.gm-more{position:absolute;inset:0;display:grid;place-items:center;background:rgba(5,14,19,.55);color:#fff;font:800 22px var(--font-display)}
.gview{position:fixed;inset:0;z-index:80;background:#020709;display:flex;flex-direction:column;opacity:0;pointer-events:none;transition:opacity .25s}
.gview.open{opacity:1;pointer-events:auto}
.gv-bar{display:flex;align-items:center;gap:10px;padding:calc(10px + env(safe-area-inset-top)) 12px 8px}
.gv-bar .sq{border-radius:50%;background:rgba(255,255,255,.08)}
.gv-ttl{flex:1;min-width:0;text-align:center;line-height:1.3}
.gv-ttl b{display:block;font-size:15px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.gv-ttl small{font-size:12.5px;color:var(--tx-3);font-variant-numeric:tabular-nums}
.gv-tr{flex:1;min-height:0;display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior:contain}
.gv-tr::-webkit-scrollbar{display:none}
.gv-sl{flex:0 0 100%;scroll-snap-align:center;margin:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;padding:0 0 8px}
.gv-sl img{max-width:100%;max-height:calc(100% - 50px);object-fit:contain;display:block}
.gv-sl figcaption{padding:0 20px;text-align:center;font-size:15px;color:#e8f6f8;line-height:1.45}
.gv-arr{position:absolute;top:50%;width:44px;height:44px;margin-top:-22px;border-radius:50%;border:0;background:rgba(255,255,255,.1);color:#fff;display:none;place-items:center;cursor:pointer}
.gv-arr.l{left:14px}.gv-arr.r{right:14px}
@media (hover:hover){.gview .gv-arr{display:grid}}
.gv-thumbs{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;padding:8px 12px calc(12px + env(safe-area-inset-bottom));justify-content:safe center}
.gv-thumbs::-webkit-scrollbar{display:none}
.gv-thumbs button{flex:none;width:54px;height:54px;border-radius:10px;border:2px solid transparent;background:var(--s2) center/cover no-repeat;cursor:pointer;opacity:.55;transition:opacity .2s,border-color .2s}
.gv-thumbs button[aria-current=true]{opacity:1;border-color:var(--brand-3)}

/* list + map extras */
.tg.pg{background:rgba(30,232,240,.10);color:var(--brand-3)}
.bi{width:13px;height:13px;fill:currentColor;flex:none}
.tg.pg .bi{width:14px;height:14px}
.srow .hot{display:inline-flex;align-items:center;gap:4px;margin-top:4px;padding:2px 8px;border-radius:99px;background:rgba(255,138,92,.14);color:#ffb38a;font-size:11.5px;font-weight:700;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.srow .pgc{display:inline-flex;align-items:center;gap:3px;margin:4px 0 0 4px;padding:2px 8px;border-radius:99px;background:rgba(30,232,240,.10);color:var(--brand-3);font-size:11.5px;font-weight:700}
.pin .flame{position:absolute;top:-6px;right:-8px;width:22px;height:22px;border-radius:50%;background:linear-gradient(135deg,#ff8a3c,#ff4f7a);display:grid;place-items:center;font-size:12px;box-shadow:0 2px 6px rgba(0,0,0,.5);animation:flicker 1.8s ease-in-out infinite}
.pin{position:relative}

@media (prefers-reduced-motion:reduce){
  .deal,.deal .fire i,.pcta::after,.pcta .wv::before,.pcta .wv::after,.pin .flame,.pempty img{animation:none}
  .ping,.ping.new,.party .core,.party .wave,.party .bit,.barsb.pop svg rect,.barsb.pop .n{animation-duration:.01s}
}
