/* Leline Gift: lightweight falling-present teaser, no intrusive modal or auto-navigation. */
.gift-teaser {
  position:fixed;
  z-index:65;
  top:clamp(77px,11vh,100px);
  right:18px;
  width:min(356px,calc(100vw - 28px));
  pointer-events:none;
  font-family:"Noto Sans Georgian","DM Sans",system-ui,sans-serif;
}
.gift-teaser[hidden] { display:none !important; }
.gift-teaser, .gift-teaser * { box-sizing:border-box; }
.gift-teaser .gift-teaser-card {
  position:relative;
  display:flex;gap:10px;align-items:center;
  padding:14px 35px 14px 11px;
  min-height:110px;
  background:linear-gradient(135deg,#fff,#fff7f8 80%,#f9edf1);
  border:1px solid #e5cfda;border-radius:20px;
  color:#3c3139;
  box-shadow:0 16px 46px rgba(58,35,45,.20),0 1px 5px rgba(58,35,45,.08);
  opacity:0;
  transform:translate3d(18px,-160px,0) rotate(11deg) scale(.83);
  transform-origin:85% 5%;
  pointer-events:auto;
  will-change:transform,opacity;
}
@keyframes leline-gift-drop {
  0% { opacity:0;transform:translate3d(18px,-155px,0) rotate(13deg) scale(.76); }
  55% { opacity:1;transform:translate3d(-6px,14px,0) rotate(-5deg) scale(1.04); }
  76% { transform:translate3d(3px,-5px,0) rotate(2.5deg) scale(.99); }
  100% { opacity:1;transform:translate3d(0,0,0) rotate(0deg) scale(1); }
}
@keyframes leline-gift-out {
  0% { opacity:1;transform:translate3d(0,0,0) rotate(0deg) scale(1); }
  100% { opacity:0;transform:translate3d(20px,-105px,0) rotate(7deg) scale(.84); }
}
@keyframes leline-gift-bow {
  0%,100% { transform:rotate(0deg) scale(1); }
  30% { transform:rotate(-9deg) scale(1.13); }
  60% { transform:rotate(7deg) scale(.98); }
}
.gift-teaser.is-visible .gift-teaser-card {
  animation:leline-gift-drop .86s cubic-bezier(.22,.72,.27,1) both;
}
.gift-teaser.is-leaving .gift-teaser-card {
  animation:leline-gift-out .46s ease-in both;
}
.gift-teaser .gift-teaser-icon {
  flex:0 0 62px;
  display:grid;place-items:center;
  width:62px;height:70px;border-radius:17px;
  background:radial-gradient(circle at 35% 27%,#fff6f9,#f8e5ed 70%);
}
.gift-teaser .gift-teaser-icon svg { max-width:100%;height:auto; }
.gift-teaser.is-visible .gift-teaser-icon svg { animation:leline-gift-bow 1.05s .78s ease-out both; }
.gift-teaser .gift-teaser-copy { display:flex;flex-direction:column;min-width:0;gap:4px;flex:1; }
.gift-teaser .gift-teaser-copy strong { font-size:13px;font-weight:700;line-height:1.4;letter-spacing:0;color:#493243; }
.gift-teaser .gift-teaser-copy > span { font-size:11px;line-height:1.5;color:#766672; }
.gift-teaser .gift-teaser-link {
  align-self:flex-start;display:inline-flex;align-items:center;gap:5px;
  padding:4px 0;margin-top:2px;
  color:#8d536c;text-decoration:underline;text-underline-offset:3px;
  text-decoration-color:#d5b4c4;font-size:11.5px;font-weight:750;line-height:1.45;
}
.gift-teaser .gift-teaser-close {
  position:absolute;right:7px;top:7px;
  display:grid;place-items:center;
  width:32px;height:32px;padding:0;
  border:0;border-radius:9px;background:transparent;color:#7c6a76;
  cursor:pointer;transition:background .15s ease;
}
.gift-teaser .gift-teaser-close:hover { background:#f1e5eb; }
.gift-teaser :is(a,button):focus-visible { outline:2px solid #a46a84;outline-offset:3px; }
@media(max-width:700px) {
  .gift-teaser {
    width:min(356px,calc(100vw - 24px));
    right:12px;top:calc(70px + env(safe-area-inset-top));
  }
  .gift-teaser .gift-teaser-card { min-height:99px;padding:11px 35px 11px 9px; }
  .gift-teaser .gift-teaser-icon { width:55px;height:62px;flex-basis:55px; }
  .gift-teaser .gift-teaser-copy strong { font-size:12px; }
  .gift-teaser .gift-teaser-copy > span { font-size:10.5px; }
}
@media(prefers-reduced-motion:reduce) {
  .gift-teaser.is-visible .gift-teaser-card { animation:none;opacity:1;transform:none;will-change:auto; }
  .gift-teaser.is-leaving .gift-teaser-card { animation:none;opacity:0;transform:none;will-change:auto; }
  .gift-teaser.is-visible .gift-teaser-icon svg { animation:none; }
}
