/* ═══════════════════════════════════════════════════════════════════════════
 *  v110 · کاوش و لایک‌ها
 * ═══════════════════════════════════════════════════════════════════════════ */

/* کشیدن کارت */
#stack > [id="activeCard"]:last-child{ touch-action:none; will-change:transform }
#stack img{ -webkit-user-drag:none; user-select:none }
.sw110-h{ position:absolute; inset:0; z-index:31; pointer-events:none }
.sw110-h b{
  position:absolute; top:42px; padding:6px 16px; border-radius:12px; border:4px solid; opacity:0;
  font:900 30px/1 system-ui,-apple-system,sans-serif; letter-spacing:2px; background:rgba(255,255,255,.12);
}
.sw110-h .like{ left:22px; color:#22c55e; border-color:#22c55e; transform:rotate(-16deg) }
.sw110-h .nope{ right:22px; color:#f43f5e; border-color:#f43f5e; transform:rotate(16deg) }
.sw110-h .super{ left:50%; bottom:150px; top:auto; margin-left:-70px; color:#38bdf8; border-color:#38bdf8; transform:rotate(-6deg) }

/* «لایکت فرستاده شد» */
#ls110{
  position:fixed; inset:0; z-index:10045; display:flex; align-items:flex-end; justify-content:center;
  background:rgba(20,10,30,.28); animation:sh109fade .2s ease;
}
#ls110.out{ opacity:0; transition:opacity .2s }
.ls110-c{
  width:calc(100% - 24px); max-width:420px; margin-bottom:calc(88px + env(safe-area-inset-bottom));
  border-radius:28px; padding:20px 18px 16px; text-align:center; color:#fff;
  background:linear-gradient(150deg,#ff4d7d,#c026d3 60%,#7c3aed);
  box-shadow:0 20px 50px rgba(192,38,211,.45); animation:ls110up .45s cubic-bezier(.2,1.3,.4,1) both;
  display:flex; flex-direction:column; align-items:center; gap:6px;
}
#ls110.super .ls110-c{ background:linear-gradient(150deg,#38bdf8,#6366f1 60%,#7c3aed); box-shadow:0 20px 50px rgba(99,102,241,.45) }
@keyframes ls110up{ from{ transform:translateY(60px) scale(.9); opacity:0 } }
.ls110-pair{ position:relative; display:flex; align-items:center; justify-content:space-between; width:220px; height:78px; margin-bottom:6px }
.ls110-av{
  position:relative; width:70px; height:70px; border-radius:50%; overflow:hidden; display:grid; place-items:center;
  border:3px solid #fff; background:linear-gradient(135deg,#FFC940,#FF9E2C); box-shadow:0 8px 20px rgba(0,0,0,.25); z-index:2;
}
.ls110-av b{ font-weight:900; font-size:24px }
.ls110-av img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover }
.ls110-av.a{ animation:ls110a .5s cubic-bezier(.2,1.3,.4,1) both }
.ls110-av.b{ animation:ls110b .5s cubic-bezier(.2,1.3,.4,1) both }
@keyframes ls110a{ from{ transform:translateX(40px) scale(.6); opacity:0 } }
@keyframes ls110b{ from{ transform:translateX(-40px) scale(.6); opacity:0 } }
.ls110-h{
  position:absolute; top:50%; width:30px; height:30px; margin-top:-15px; color:#fff; z-index:3;
  filter:drop-shadow(0 0 10px rgba(255,255,255,.8)); animation:ls110fly 1.1s .35s cubic-bezier(.5,0,.3,1) both;
}
.ls110-h svg{ width:100%; height:100% }
[dir="rtl"] .ls110-h{ animation-name:ls110flyR }
@keyframes ls110fly{ 0%{ left:26px; transform:scale(.4); opacity:0 } 15%{ opacity:1 } 50%{ transform:translateY(-22px) scale(1.2) } 100%{ left:170px; transform:scale(.9); opacity:1 } }
@keyframes ls110flyR{ 0%{ right:26px; transform:scale(.4); opacity:0 } 15%{ opacity:1 } 50%{ transform:translateY(-22px) scale(1.2) } 100%{ right:170px; transform:scale(.9); opacity:1 } }
.ls110-trail{ position:absolute; left:70px; right:70px; top:50%; height:2px; display:flex; justify-content:space-around }
.ls110-trail i{ width:6px; height:6px; margin-top:-2px; border-radius:50%; background:rgba(255,255,255,.7); animation:ls110dot 1s ease-in-out infinite }
.ls110-trail i:nth-child(2){ animation-delay:.15s } .ls110-trail i:nth-child(3){ animation-delay:.3s }
@keyframes ls110dot{ 50%{ transform:scale(1.6); opacity:.4 } }
.ls110-t{ font-size:16px; font-weight:900; line-height:1.6 }
.ls110-c small{ font-size:12px; opacity:.88; font-weight:700; line-height:1.8; max-width:300px }
.ls110-b{ display:flex; gap:8px; width:100%; margin-top:8px }
.ls110-b button{ flex:1; border:0; border-radius:16px; padding:13px 0; font-family:inherit; font-weight:900; font-size:14px; cursor:pointer; display:flex; align-items:center; justify-content:center; gap:6px }
.ls110-b .go{ background:#fff; color:#be185d }
#ls110.super .ls110-b .go{ color:#4f46e5 }
.ls110-b .no{ background:rgba(255,255,255,.18); color:#fff }

/* کارتِ «چند نفر لایکت کرده‌اند» در کاوش */
#lt110{ background:linear-gradient(135deg,#fff1f5,#fff7e0) !important; border:1.5px solid #fecdd3 }
.lt110-ic{ width:44px; height:44px; border-radius:16px; display:grid; place-items:center; background:linear-gradient(135deg,#FFC940,#FF9E2C); font-size:20px; flex:0 0 44px }
.lt110-st{ display:flex; flex:0 0 auto; padding-inline-start:8px }
.lt110-st span{
  position:relative; width:40px; height:40px; border-radius:50%; overflow:hidden; display:grid; place-items:center;
  margin-inline-start:-10px; border:2.5px solid #fff; background:linear-gradient(135deg,#fb7185,#e11d48); color:#fff; font-weight:900;
  box-shadow:0 3px 10px rgba(225,29,72,.25);
}
.lt110-st span img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; filter:blur(1.5px) }
.lt110-go{ font-size:26px; color:#e11d48; font-weight:900 }

/* صفحهٔ لایک‌ها */
.lk110{
  position:relative; height:220px; border-radius:24px; overflow:hidden; cursor:pointer;
  background:linear-gradient(150deg,#fda4af,#e11d48); animation:gt108in .35s ease both; transition:opacity .3s, transform .3s;
}
.lk110.gone{ opacity:0; transform:scale(.85) }
.lk110-ph{ position:absolute; inset:0; display:grid; place-items:center }
.lk110-ph img{ width:100%; height:100%; object-fit:cover }
.lk110-ph b{ color:#fff; font-size:48px; font-weight:900 }
.lk110-sh{ position:absolute; inset:0; background:linear-gradient(to top,rgba(0,0,0,.72),transparent 55%) }
.lk110-tag{ position:absolute; top:10px; right:10px; z-index:2; font-size:10px; font-weight:900; border-radius:99px; padding:3px 9px }
.lk110-tag.s{ background:#fbbf24; color:#1c1917 }
.lk110-tag.m{ background:#10b981; color:#fff; right:auto; left:10px }
.lk110-tag.n{ background:#fff; color:#e11d48; right:auto; left:10px }
.lk110-in{ position:absolute; left:10px; right:10px; bottom:52px; z-index:2; color:#fff; display:flex; flex-direction:column }
.lk110-in .lk110-nm{ font-size:14px; font-weight:900; overflow:hidden; text-overflow:ellipsis; white-space:nowrap }
.lk110-in .lk110-sub{ font-size:10.5px; opacity:.8 }
.lk110-act{ position:absolute; left:8px; right:8px; bottom:8px; z-index:2; display:flex; gap:6px }
.lk110-act button{ flex:1; height:38px; border:0; border-radius:14px; display:grid; place-items:center; cursor:pointer; font-weight:900 }
.lk110-act .no{ background:rgba(255,255,255,.22); color:#fff; backdrop-filter:blur(6px); flex:0 0 38px }
.lk110-act .yes{ background:linear-gradient(135deg,#ff4d7d,#e11d48); color:#fff; box-shadow:0 6px 16px rgba(225,29,72,.45) }
.lk110-act .yes svg{ width:20px; height:20px }
.lk110-act .chat{ background:#fff; color:#e11d48 }
.lk110-act button:disabled{ opacity:.5 }
.lk110-empty{ text-align:center; padding:40px 10px; color:#a8a29e }
.lk110-empty span{ font-size:40px; display:block }
.lk110-empty p{ font-weight:900; color:#57534e; margin:6px 0 2px }
.lk110-empty small{ font-size:12px }
.lk110-empty button{ display:block; margin:14px auto 0; border:0; border-radius:99px; padding:10px 22px; font-family:inherit; font-weight:900; background:linear-gradient(135deg,#FFC940,#FF9E2C); color:#3b1d00; cursor:pointer }

@media (prefers-reduced-motion:reduce){ .ls110-h, .ls110-trail i{ animation:none } }
