/* RizzPaw hero mascots (rizzpaw-mascots.js): one card, a skin per vibe. */
.rpm{position:fixed;left:clamp(16px,2.5vw,32px);bottom:clamp(16px,2.5vw,32px);z-index:60;display:flex;
  gap:clamp(8px,1.2vw,16px);align-items:flex-end;padding:14px 16px 10px;border-radius:26px;
  opacity:0;transform:translateY(24px);pointer-events:none;
  transition:opacity .5s ease,transform .5s cubic-bezier(.34,1.56,.64,1)}
.rpm.rpm-on{opacity:1;transform:none;pointer-events:auto}
.rpm.rpm-on.rpm-out{opacity:0;transform:translateY(40px) scale(.85);pointer-events:none}
.rpm-texts{display:none}
.rpm-pet{position:relative;display:flex;flex-direction:column;align-items:center;width:clamp(130px,11vw,168px);cursor:pointer}
.rpm-img{width:clamp(96px,8.5vw,136px);height:clamp(96px,8.5vw,136px);object-fit:contain;display:block;
  transition:transform .4s cubic-bezier(.34,1.56,.64,1);filter:drop-shadow(0 6px 14px rgba(0,0,0,.18))}
.rpm-pet[data-state="sleep"] .rpm-img{animation:rpm-breathe 4s ease-in-out infinite}
.rpm-pet:hover .rpm-img{transform:translateY(-4px)}
@keyframes rpm-breathe{0%,100%{transform:scale(1)}50%{transform:scale(1.025)}}
.rpm-bubble{margin-top:10px;padding:7px 13px;border-radius:100px;font-weight:700;font-size:.8rem;line-height:1.25;
  text-align:center;max-width:100%;transition:transform .3s cubic-bezier(.34,1.56,.64,1),opacity .25s}
.rpm-pet:hover .rpm-bubble{transform:translateY(-2px) scale(1.04)}
.rpm-pet[data-state="sleep"] .rpm-bubble{opacity:.75;font-style:italic}
.rpm-name{margin-top:6px;font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;opacity:.85;white-space:nowrap}
.rpm-zzz{position:absolute;top:6px;left:14%;pointer-events:none}
.rpm-pet[data-state="sleep"] .rpm-zzz::before,.rpm-pet[data-state="sleep"] .rpm-zzz::after{content:'z';position:absolute;
  font-weight:700;animation:rpm-zzz 2.5s ease-out infinite}
.rpm-pet[data-state="sleep"] .rpm-zzz::before{font-size:1.8rem}
.rpm-pet[data-state="sleep"] .rpm-zzz::after{font-size:1.25rem;left:-14px;top:4px;animation-delay:1s}
@keyframes rpm-zzz{0%{opacity:0;transform:translate(0,0) scale(.5)}30%{opacity:.85}100%{opacity:0;transform:translate(-20px,-70px) scale(1.4)}}
.rpm-hearts{position:absolute;inset:0;pointer-events:none}
.rpm-heart{position:absolute;font-size:1.2rem;animation:rpm-pop 1.4s ease-out forwards}
@keyframes rpm-pop{0%{opacity:1;transform:translateY(0) scale(.5)}50%{opacity:1;transform:translateY(-40px) scale(1)}
  100%{opacity:0;transform:translateY(-90px) scale(.7)}}
@media (max-width:600px){.rpm{display:none!important}}
@media (prefers-reduced-motion:reduce){.rpm-pet[data-state="sleep"] .rpm-img,.rpm-zzz::before,.rpm-zzz::after{animation:none!important}}

/* GalacticPaw: dark glass, neon violet */
.rpm--galacticpaw{background:rgba(14,10,38,.8);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
  border:1px solid rgba(155,123,255,.55);box-shadow:0 0 28px rgba(124,58,237,.45),inset 0 0 18px rgba(124,58,237,.18)}
.rpm--galacticpaw .rpm-bubble{background:rgba(124,58,237,.28);color:#eee6ff;border:1px solid #9b7bff;font-family:'Sora',sans-serif;
  box-shadow:0 0 12px rgba(155,123,255,.35)}
.rpm--galacticpaw .rpm-name{color:#b9a5ff;font-family:'Sora',sans-serif}
.rpm--galacticpaw .rpm-zzz{color:#b9a5ff}

/* PawRoyale: black velvet, gold frame */
.rpm--pawroyale{background:rgba(14,12,8,.9);border:1.5px solid #c69a3f;border-radius:6px;
  box-shadow:inset 0 0 0 5px rgba(14,12,8,.9),inset 0 0 0 6px rgba(198,154,63,.55),0 14px 36px rgba(0,0,0,.45)}
.rpm--pawroyale .rpm-bubble{background:#f3e6c4;color:#3b2a0e;border-radius:4px;font-family:'Cormorant Garamond',serif;font-weight:700;
  font-size:.86rem;letter-spacing:.01em}
.rpm--pawroyale .rpm-name{color:#c69a3f;font-family:'Cormorant Garamond',serif}
.rpm--pawroyale .rpm-zzz{color:#c69a3f}

/* ChaosPaw: comic panel */
.rpm--chaospaw{background:#ffe600;border:3px solid #111;border-radius:10px;box-shadow:7px 7px 0 #111;transform:translateY(24px) rotate(-1.5deg)}
.rpm--chaospaw.rpm-on{transform:rotate(-1.5deg)}
.rpm--chaospaw .rpm-bubble{background:#fff;color:#111;border:2.5px solid #111;border-radius:8px;box-shadow:3px 3px 0 #ff00c8;
  font-family:'Space Mono',monospace;text-transform:uppercase;font-size:.7rem}
.rpm--chaospaw .rpm-pet[data-state="sleep"] .rpm-bubble{font-style:normal}
.rpm--chaospaw .rpm-name{color:#111;font-family:'Space Mono',monospace;font-weight:700;opacity:1}
.rpm--chaospaw .rpm-zzz{color:#ff00c8}

/* PawGallery: museum label */
.rpm--pawgallery{background:#f5efe3;border:1px solid #b89a6a;border-radius:4px;box-shadow:0 14px 34px rgba(0,0,0,.35)}
.rpm--pawgallery .rpm-bubble{background:#fff;color:#2a3b3d;border-radius:2px;border:1px solid rgba(184,154,106,.5);
  font-family:'Playfair Display',serif;font-style:italic;font-weight:400;font-size:.82rem}
.rpm--pawgallery .rpm-name{color:#6b5636;font-family:'Playfair Display',serif;font-weight:700;letter-spacing:.12em}
.rpm--pawgallery .rpm-zzz{color:#8a7350}
