/* Generado por scripts/export-mascota.js desde src/mascot.js */
.plamti-dock{position:fixed;right:94px;bottom:14px;z-index:49;pointer-events:none}
.plamti-btn{pointer-events:auto;display:block;width:64px;height:75px;border:0;background:none;padding:0;cursor:pointer;filter:drop-shadow(0 8px 12px rgba(79,70,229,.22));transition:transform .2s}
.plamti-btn:hover{transform:scale(1.06)}.plamti-btn:focus-visible{outline:3px solid #a78bfa;outline-offset:2px;border-radius:18px}
.plamti-btn svg{width:100%;height:100%;display:block;overflow:visible}
.plamti-say{pointer-events:auto;position:absolute;bottom:calc(100% + 4px);right:-10px;width:max-content;max-width:min(280px,calc(100vw - 32px));background:#fff;color:#0f172a;border:1px solid #e0dcfb;border-radius:16px 16px 6px 16px;padding:11px 36px 11px 14px;box-shadow:0 18px 40px -18px rgba(49,46,129,.45);font-size:14px;line-height:1.45;animation:plamti-pop .35s ease-out both}
.plamti-say[hidden]{display:none}
.plamti-say::after{content:"";position:absolute;right:38px;bottom:-7px;width:12px;height:12px;background:inherit;border-right:1px solid #e0dcfb;border-bottom:1px solid #e0dcfb;transform:rotate(45deg)}
.plamti-say p{margin:0}.plamti-say b.who{display:block;font-size:12px;color:#6d28d9;letter-spacing:.02em;margin-bottom:2px}
.plamti-say a{color:#4f46e5;font-weight:600}
.plamti-say.celebrar{background:#faf5ff;border-color:#c4b5fd}.plamti-say.tip{background:#f0fdff;border-color:#a5f3fc}
.plamti-x{position:absolute;top:7px;right:7px;width:24px;height:24px;border:0;border-radius:8px;background:#f1effc;color:#4c1d95;font-size:16px;line-height:1;cursor:pointer;display:grid;place-items:center}
.plamti-x:hover{background:#e4defa}
html.sp-is-open .plamti-say{display:none}
@keyframes plamti-pop{from{opacity:0;transform:translateY(8px) scale(.96)}to{opacity:1;transform:none}}
.plamti-empty{display:flex;align-items:center;gap:16px;padding:18px;border:1px dashed #c4b5fd;border-radius:18px;background:#faf9ff;grid-column:1/-1}
.plamti-empty svg{width:84px;height:98px;flex:none}.plamti-empty p{margin:0}
.home-plamti{display:grid;grid-template-columns:200px 1fr;gap:24px;align-items:center;margin-top:28px}
.home-plamti img{width:200px;height:200px;border-radius:24px;object-fit:cover;background:#f1effc}
.foot{padding-bottom:84px}
@media (max-width:520px){
  .plamti-dock{right:80px;bottom:12px}.plamti-btn{width:50px;height:58px}
  .plamti-say{right:-66px;font-size:13.5px}.plamti-say::after{right:84px}
  html.sp-is-open .plamti-dock{display:none}
  .home-plamti{grid-template-columns:1fr;text-align:center}.home-plamti img{margin:0 auto;width:160px;height:160px}
}
@media (prefers-reduced-motion:reduce){.plamti-say{animation:none}.plamti-btn{transition:none}}
/* ---- Tema cine claro (glass + gradientes) ---- */
.plamti-btn{filter:drop-shadow(0 10px 14px rgba(76,60,160,.35)) drop-shadow(0 0 12px rgba(236,72,153,.25))}
.plamti-say{background:linear-gradient(145deg,rgba(255,255,255,.97),rgba(246,243,255,.94));color:#1c1f45;border-color:#ddd6fe;box-shadow:inset 0 1px 0 #fff,0 4px 10px -4px rgba(76,60,160,.18),0 22px 44px -18px rgba(124,58,237,.38)}
.plamti-say::after{border-color:#ddd6fe}
.plamti-say b.who{background:linear-gradient(120deg,#6d28d9,#c026d3);-webkit-background-clip:text;background-clip:text;color:transparent}.plamti-say a{color:#6d28d9}
.plamti-say.celebrar{background:linear-gradient(145deg,#fff,#fdf2f8);border-color:#f9a8d4}.plamti-say.tip{background:linear-gradient(145deg,#fff,#ecfeff);border-color:#67e8f9}
.plamti-x{background:#ede9fe;color:#4c1d95}.plamti-x:hover{background:#ddd6fe}.plamti-x:focus-visible{outline:3px solid #0891b2;outline-offset:1px}
.plamti-empty{border-color:#c4b5fd;background:linear-gradient(145deg,#fff,#f5f3ff)}
.home-plamti{margin-top:28px;background:radial-gradient(500px 220px at 0% 50%,rgba(236,72,153,.16),transparent 70%),radial-gradient(600px 260px at 100% 0%,rgba(34,211,238,.16),transparent 70%),linear-gradient(145deg,#fff,#f5f3ff)}
.home-plamti img{height:auto;max-height:233px;background:radial-gradient(circle at 50% 60%,rgba(167,139,250,.35),transparent 70%);object-fit:contain;padding:6px}

.pl-fig{animation:pl-bob 3.2s ease-in-out infinite}
.pl-shadow{transform-box:fill-box;transform-origin:center;animation:pl-shadow 3.2s ease-in-out infinite}
.pl-eyes{transform-box:fill-box;transform-origin:center;animation:pl-blink 5s infinite}
.pl-ant{transform-box:view-box;transform-origin:60px 34px;animation:pl-ant 2.6s ease-in-out infinite}
.pl-wave{transform-box:view-box;transform-origin:95px 80px;animation:pl-wave 1.6s ease-in-out infinite}
.pl-dots circle{animation:pl-dot 1.8s ease-in-out infinite}.pl-dots circle:nth-child(2){animation-delay:.25s}.pl-dots circle:nth-child(3){animation-delay:.5s}
.pl-conf>*{transform-box:fill-box;transform-origin:center;animation:pl-conf 1.4s ease-in-out infinite}.pl-conf>*:nth-child(2n){animation-delay:.35s}.pl-conf>*:nth-child(3n){animation-delay:.7s}
.pl-pose-celebrando .pl-fig{animation:pl-jump 1.1s ease-in-out infinite}
@keyframes pl-bob{0%,100%{transform:translateY(0)}50%{transform:translateY(-4px)}}
@keyframes pl-shadow{0%,100%{transform:scaleX(1);opacity:.18}50%{transform:scaleX(.86);opacity:.12}}
@keyframes pl-blink{0%,92%,100%{transform:scaleY(1)}95%{transform:scaleY(.1)}}
@keyframes pl-ant{0%,100%{transform:rotate(-6deg)}50%{transform:rotate(6deg)}}
@keyframes pl-wave{0%,100%{transform:rotate(-10deg)}50%{transform:rotate(14deg)}}
@keyframes pl-dot{0%,100%{opacity:.35}50%{opacity:1}}
@keyframes pl-conf{0%,100%{transform:translateY(0) rotate(0);opacity:1}50%{transform:translateY(-4px) rotate(25deg);opacity:.6}}
@keyframes pl-jump{0%,100%{transform:translateY(0)}35%{transform:translateY(-9px)}60%{transform:translateY(0)}}
@media (prefers-reduced-motion:reduce){.pl-fig,.pl-shadow,.pl-eyes,.pl-ant,.pl-wave,.pl-dots circle,.pl-conf>*{animation:none!important}}
