/* ============================================================
   LUCINDA LUXURY BEAUTY — DESIGN SYSTEM & LUXURY STYLESHEET
   ============================================================ */:root {
  /* STRICT 5-COLOR ROMANTIC PALETTE WITH CHIC PINK #FC3FBA */
  --luxe-plum-wine:     #80005B; /* Primary Berry Wine */
  --luxe-blush-bg:      #FC3FBA; /* Chic Romantic Pink Accent Color */
  --luxe-deep-velvet:   #5C0029; /* Deep Wine Velvet Text & Accents */
  --luxe-turquoise:     #00F5D4; /* Luminous Turquoise Highlight */
  --luxe-vibrant-pink:  #FC3FBA; /* Chic Romantic Pink #FC3FBA */

  --luxe-card-bg:       #FFFFFF; /* Pure White Light Card Containers */
  --luxe-glass-light:    rgba(252, 63, 186, 0.20);
  --luxe-glass-border:   rgba(252, 63, 186, 0.40);

  --radius-card:    28px;
  --radius-card-sm: 20px;
  --radius-ui:      16px;
  --radius-button:  18px;
  --radius-popup:   34px;
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

/* UNIFIED SOFT PASTEL BLUSH & CREAM ATMOSPHERE (MATCHING THANK YOU PAGE EXACTLY) */
body {
  margin: 0;
  background: linear-gradient(180deg, #FFF7FC 0%, #FFF0F6 50%, #FFF7FC 100%);
  color: #5C0029;
  font-family: 'El Messiri', 'Cairo', serif;
  overflow-x: hidden;
}

/* ROMANTIC FLOATING HEARTS ANIMATION FOR WELCOME POPUP */
@keyframes floatHeart {
  0% { transform: translateY(0px) rotate(0deg) scale(1); opacity: 0.9; }
  50% { transform: translateY(-12px) rotate(8deg) scale(1.15); opacity: 1; }
  100% { transform: translateY(0px) rotate(0deg) scale(1); opacity: 0.9; }
}

.animate-float-heart {
  animation: floatHeart 3s ease-in-out infinite;
}

.animate-float-heart-delayed {
  animation: floatHeart 3.5s ease-in-out infinite 0.8s;
}

/* ATTRACTIVE PULSE & SHAKE ANIMATION FOR FLOATING WIDGETS */
@keyframes floatAttractShake {
  0%, 100% {
    transform: scale(1) rotate(0deg);
    box-shadow: 0 0 0 0 rgba(0, 245, 212, 0.7);
  }
  15% {
    transform: scale(1.12) rotate(-6deg);
    box-shadow: 0 0 20px 6px rgba(0, 245, 212, 0.6);
  }
  30% {
    transform: scale(1.12) rotate(6deg);
    box-shadow: 0 0 25px 8px rgba(253, 62, 129, 0.6);
  }
  45% {
    transform: scale(1.08) rotate(-4deg);
    box-shadow: 0 0 20px 5px rgba(128, 0, 91, 0.6);
  }
  60% {
    transform: scale(1) rotate(0deg);
    box-shadow: 0 0 0 0 rgba(0, 0, 0, 0);
  }
}

.float-attract-shake {
  animation: floatAttractShake 3s infinite ease-in-out;
}

/* 3D NOTEBOOK TEAR-OFF CARD STACK STYLES */
.notebook-stack-container {
  position: relative;
  width: 100%;
  max-width: 380px;
  height: 480px;
  margin: 0 auto;
  perspective: 1000px;
}

.notebook-card-stack {
  position: relative;
  width: 100%;
  height: 100%;
}

.notebook-card-item {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #FFFFFF;
  border: 2px solid rgba(214, 160, 176, 0.35);
  border-radius: 32px;
  padding: 24px;
  box-shadow: 0 16px 36px rgba(130, 54, 83, 0.07), 0 4px 12px rgba(71, 34, 57, 0.04);
  transition: transform 0.5s cubic-bezier(0.2, 0.8, 0.2, 1), opacity 0.5s ease;
  user-select: none;
  cursor: grab;
}

.notebook-card-item:active {
  cursor: grabbing;
}

/* Layer Stack Offsets */
.notebook-card-item.stack-top {
  z-index: 30;
  transform: translate(0, 0) scale(1) rotate(0deg);
}

.notebook-card-item.stack-mid {
  z-index: 20;
  transform: translate(0, 16px) scale(0.95) rotate(2.5deg);
  opacity: 0.92;
  pointer-events: none;
}

.notebook-card-item.stack-back {
  z-index: 10;
  transform: translate(0, 32px) scale(0.9) rotate(-3.5deg);
  opacity: 0.8;
  pointer-events: none;
}

.notebook-card-item.stack-hidden {
  z-index: 5;
  transform: translate(0, 48px) scale(0.85) rotate(0deg);
  opacity: 0;
  pointer-events: none;
}

/* Tear Off Peel Animation */
@keyframes tearOffPeelAnim {
  0% {
    transform: translate(0, 0) rotate(0deg) scale(1);
    opacity: 1;
  }
  50% {
    transform: translate(-40px, -100px) rotate(-18deg) scale(0.92);
    opacity: 0.8;
  }
  100% {
    transform: translate(-140px, -240px) rotate(-35deg) scale(0.8);
    opacity: 0;
  }
}

.notebook-card-item.is-peeling {
  animation: tearOffPeelAnim 0.65s ease-in-out forwards !important;
  pointer-events: none;
}

/* SPLIT FLOATING ACTION WIDGETS (RIGHT WHATSAPP & LEFT CART) */
.floating-btn-whatsapp-right {
  position: fixed;
  bottom: 24px;
  right: 24px;
  z-index: 90;
  width: 58px;
  height: 58px;
  border-radius: 50%;
  background: linear-gradient(135deg, #3BC8CD 0%, #80005B 100%);
  color: #FCF7F8;
  display: grid;
  place-items: center;
  border: 2px solid #FCF7F8;
  animation: pulseAuraTurquoise 2.2s infinite, callWiggle 4.5s ease-in-out infinite 0.5s;
  cursor: pointer;
  transition: transform 0.25s ease;
  box-shadow: 0 10px 25px rgba(59, 200, 205, 0.5);
}

.floating-btn-cart-left {
  position: fixed;
  bottom: 24px;
  left: 24px;
  z-index: 90;
  width: 58px;
  height: 58px;
  border-radius: 50%;
  background: linear-gradient(135deg, #FF4EFF 0%, #80005B 100%);
  color: #FCF7F8;
  display: grid;
  place-items: center;
  border: 2px solid #FCF7F8;
  animation: pulseAuraPink 2.2s infinite 1.1s, callWiggle 4.5s ease-in-out infinite 2.5s;
  cursor: pointer;
  transition: transform 0.25s ease;
  box-shadow: 0 10px 25px rgba(255, 78, 255, 0.5);
}

.floating-btn-whatsapp-right:hover, .floating-btn-cart-left:hover {
  transform: scale(1.14) !important;
}

.floating-badge-left {
  position: absolute;
  top: -4px;
  right: -4px;
  min-width: 20px;
  height: 20px;
  padding: 0 4px;
  border-radius: 10px;
  background: #3BC8CD;
  color: #FCF7F8;
  font-size: 10px;
  font-weight: 800;
  display: grid;
  place-items: center;
  border: 1.5px solid #FCF7F8;
  box-shadow: 0 2px 8px rgba(0,0,0,0.2);
}

@keyframes pulseAuraPink {
  0% {
    box-shadow: 0 0 0 0 rgba(255, 78, 255, 0.75), 0 10px 25px rgba(39, 93, 173, 0.4);
  }
  70% {
    box-shadow: 0 0 0 22px rgba(255, 78, 255, 0), 0 14px 32px rgba(39, 93, 173, 0.5);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(255, 78, 255, 0), 0 10px 25px rgba(39, 93, 173, 0.4);
  }
}

@keyframes pulseAuraTurquoise {
  0% {
    box-shadow: 0 0 0 0 rgba(59, 200, 205, 0.75), 0 10px 25px rgba(39, 93, 173, 0.4);
  }
  70% {
    box-shadow: 0 0 0 22px rgba(59, 200, 205, 0), 0 14px 32px rgba(39, 93, 173, 0.5);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(59, 200, 205, 0), 0 10px 25px rgba(39, 93, 173, 0.4);
  }
}

::selection {
  background: rgba(25, 216, 208, 0.25);
  color: var(--luxe-text-plum);
}

/* Base Performance Optimization */
.perf-defer {
  content-visibility: auto;
  contain-intrinsic-size: 760px;
}

/* Glassmorphism Surface Utility */
.glass {
  background: var(--luxe-glass-bg);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border: 1px solid var(--luxe-glass-border);
  box-shadow: 0 16px 44px rgba(45, 25, 41, 0.06), 0 0 20px rgba(255, 112, 183, 0.05);
  transition: box-shadow 0.35s ease, border-color 0.35s ease, transform 0.35s ease;
}

.glass:hover {
  border-color: rgba(25, 216, 208, 0.40);
  box-shadow: 0 22px 55px rgba(45, 25, 41, 0.10), 0 0 25px rgba(25, 216, 208, 0.18);
}

/* Brand Wordmark & Gradient Text (Pink to Petroleum Turquoise Gradient) */
.brand-wordmark {
  background: linear-gradient(135deg, #FF4EFF 0%, #3BC8CD 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent !important;
  font-weight: 800;
  letter-spacing: 0.08em;
}

.text-gradient {
  background: linear-gradient(135deg, var(--luxe-text-plum) 0%, var(--luxe-pink) 50%, var(--luxe-petroleum) 100%);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

/* High Contrast Elegant Discount Pill Badge */
.discount-badge-luxe {
  background: linear-gradient(135deg, #751C53 0%, #B016F1 100%) !important;
  color: #FFFFFF !important;
  font-weight: 800 !important;
  border: 1px solid rgba(234, 216, 181, 0.8) !important;
  box-shadow: 0 4px 14px rgba(117, 28, 83, 0.35), inset 0 1px 0 rgba(255, 255, 255, 0.4) !important;
  letter-spacing: 0.02em;
}

/* Product Cards & Catalog */
.product-card {
  position: relative;
  overflow: hidden;
  border-radius: var(--radius-card) !important;
  border: 1px solid var(--luxe-card-border) !important;
  background: linear-gradient(145deg, #FFFFFF 0%, var(--luxe-blush-10) 100%) !important;
  box-shadow: 0 18px 48px rgba(45, 25, 41, 0.07), inset 0 0 0 1px rgba(255, 255, 255, 0.85);
  transition: transform 0.38s cubic-bezier(0.2, 0.75, 0.2, 1), box-shadow 0.38s ease, border-color 0.38s ease;
}

.product-card:hover {
  transform: translateY(-8px);
  border-color: rgba(25, 216, 208, 0.45) !important;
  box-shadow: 0 28px 65px rgba(45, 25, 41, 0.12), 0 0 30px rgba(25, 216, 208, 0.18);
}

.product-img {
  transition: transform 0.55s cubic-bezier(0.2, 0.75, 0.2, 1);
}

.product-card:hover .product-img {
  transform: scale(1.06) translateY(-3px);
}

/* Category Ritual Chips */
.category-chip {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  border-radius: 999px;
  padding: 0.75rem 1.4rem;
  background: rgba(255, 255, 255, 0.88);
  border: 1px solid rgba(255, 112, 183, 0.18);
  color: var(--luxe-text-plum);
  font-weight: 600;
  box-shadow: 0 8px 22px rgba(45, 25, 41, 0.05);
  transition: transform 0.25s ease, background 0.25s ease, color 0.25s ease, box-shadow 0.25s ease;
  cursor: pointer;
}

.category-chip:hover {
  transform: translateY(-2px);
  border-color: var(--luxe-turquoise);
  box-shadow: 0 12px 28px rgba(25, 216, 208, 0.20);
}

.category-chip.active {
  background: linear-gradient(135deg, var(--luxe-turquoise), var(--luxe-petroleum)) !important;
  border-color: rgba(255, 255, 255, 0.5) !important;
  color: #FFFFFF !important;
  box-shadow: 0 12px 30px var(--luxe-turquoise-glow) !important;
}

/* Buttons System */
button, a.btn-luxe, .category-chip {
  -webkit-tap-highlight-color: transparent;
  border-radius: var(--radius-button);
  transition: transform 0.25s ease, filter 0.25s ease, box-shadow 0.25s ease, background 0.25s ease;
  position: relative;
  overflow: hidden;
}

/* Luxury Light Shimmer Sweep on Buttons */
button::after, a.btn-luxe::after {
  content: '';
  position: absolute;
  top: -50%;
  left: -70%;
  width: 50%;
  height: 200%;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.38), transparent);
  transform: rotate(25deg);
  animation: shimmerSweep 4.5s infinite;
  pointer-events: none;
}

@keyframes shimmerSweep {
  0% { left: -80%; }
  35%, 100% { left: 150%; }
}

/* Feminine Micro-Breathing Text Scaling inside Buttons */
button span, button div, a.btn-luxe span {
  display: inline-block;
  animation: buttonTextBreathe 3.5s ease-in-out infinite alternate;
}

@keyframes buttonTextBreathe {
  0%, 100% { transform: scale(1); }
  50% { transform: scale(1.04); }
}

button:not(:disabled):hover, a.btn-luxe:not(:disabled):hover {
  transform: translateY(-2px);
  filter: brightness(1.05);
}

.btn-pink {
  background: linear-gradient(135deg, var(--luxe-pink), var(--luxe-pink-deep)) !important;
  color: #FFFFFF !important;
  border: 1px solid rgba(255, 255, 255, 0.4) !important;
  box-shadow: 0 10px 28px var(--luxe-pink-glow) !important;
}

.btn-turquoise {
  background: linear-gradient(135deg, var(--luxe-turquoise), var(--luxe-petroleum)) !important;
  color: #FFFFFF !important;
  border: 1px solid rgba(255, 255, 255, 0.4) !important;
  box-shadow: 0 10px 28px var(--luxe-turquoise-glow) !important;
}

.add-to-cart {
  background: linear-gradient(135deg, var(--luxe-turquoise-light), var(--luxe-petroleum)) !important;
  color: #FFFFFF !important;
  border: 1px solid rgba(255, 255, 255, 0.4) !important;
  box-shadow: 0 8px 22px var(--luxe-turquoise-glow) !important;
}

.buy-now {
  background: linear-gradient(135deg, var(--luxe-pink), var(--luxe-pink-deep)) !important;
  color: #FFFFFF !important;
  border: 1px solid rgba(255, 255, 255, 0.4) !important;
  box-shadow: 0 10px 25px var(--luxe-pink-glow) !important;
}

/* Equalizer Animation for Floating Music Control Widget */
.equalizer-bar {
  width: 3px;
  border-radius: 3px;
  background: var(--luxe-turquoise);
  animation: soundWave 1.2s ease-in-out infinite alternate;
}

.equalizer-bar:nth-child(1) { height: 12px; animation-delay: 0.1s; }
.equalizer-bar:nth-child(2) { height: 18px; animation-delay: 0.3s; }
.equalizer-bar:nth-child(3) { height: 10px; animation-delay: 0.2s; }
.equalizer-bar:nth-child(4) { height: 15px; animation-delay: 0.4s; }

@keyframes soundWave {
  0%   { transform: scaleY(0.4); }
  100% { transform: scaleY(1.3); }
}

.music-widget-paused .equalizer-bar {
  animation-play-state: paused !important;
  height: 6px !important;
  opacity: 0.6;
}

/* CIRCULAR ROMANTIC WELCOME POPUP WITH HEART MOTIF */
#welcomeOverlay {
  position: fixed;
  inset: 0;
  z-index: 100;
  display: grid;
  place-items: center;
  padding: 1.25rem;
  background: rgba(31, 25, 36, 0.65);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.35s ease;
}

#welcomeOverlay.open {
  opacity: 1;
  pointer-events: auto;
}

/* CUTE BROWN BUNNY EARS CIRCULAR WELCOME POPUP (DESKTOP & MOBILE RESPONSIVE) */
#welcomeOverlay {
  position: fixed;
  inset: 0;
  z-index: 100;
  display: grid;
  place-items: center;
  padding: 1.5rem 1rem;
  background: rgba(25, 18, 30, 0.72);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.35s ease;
  overflow-y: auto;
}

#welcomeOverlay.open {
  opacity: 1;
  pointer-events: auto;
}

.welcome-popup-container {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-top: 55px; /* Offset for bunny ears */
  max-width: 100%;
}

.bunny-ears-wrapper {
  position: absolute;
  top: -65px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
  gap: 22px;
  z-index: 20;
  pointer-events: none;
}

.bunny-ear {
  width: 42px;
  height: 88px;
  background: linear-gradient(180deg, #8B5E3C 0%, #6A4122 100%);
  border-radius: 60px 60px 14px 14px;
  position: relative;
  box-shadow: 0 10px 22px rgba(106, 65, 34, 0.45);
  border: 2px solid #503017;
  transform-origin: bottom center;
}

.bunny-ear.left {
  transform: rotate(-16deg);
}

.bunny-ear.right {
  transform: rotate(16deg);
}

.bunny-ear::after {
  content: '';
  position: absolute;
  top: 9px;
  left: 50%;
  transform: translateX(-50%);
  width: 22px;
  height: 60px;
  background: linear-gradient(180deg, #FFB6C1 0%, #FF85AB 100%);
  border-radius: 50px 50px 10px 10px;
  box-shadow: inset 0 2px 6px rgba(0,0,0,0.12);
}

.welcome-circular-card-pink {
  position: relative;
  width: min(88vw, 420px);
  height: min(88vw, 420px);
  border-radius: 50% !important;
  border: 4px solid #FFFFFF;
  background:
    radial-gradient(circle at 50% 25%, #FFFFFF 0%, #FFE4F0 50%, #FFD1E5 100%);
  box-shadow:
    0 30px 95px rgba(168, 46, 110, 0.40),
    0 0 60px rgba(255, 112, 183, 0.35),
    0 0 45px rgba(25, 216, 208, 0.22);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 2rem 1.8rem 1.6rem;
  text-align: center;
  transform: translateY(20px) scale(0.92);
  transition: transform 0.45s cubic-bezier(0.16, 1, 0.3, 1);
}

#welcomeOverlay.open .welcome-circular-card-pink {
  transform: translateY(0) scale(1);
}

.welcome-heart-badge {
  display: grid;
  width: 48px;
  height: 48px;
  place-items: center;
  border-radius: 50%;
  background: linear-gradient(135deg, #FF4097, #A82E6E);
  color: #FFFFFF;
  box-shadow: 0 8px 24px rgba(255, 64, 151, 0.4), 0 0 20px rgba(25, 216, 208, 0.3);
  font-size: 1.4rem;
  margin-bottom: 0.4rem;
  animation: pulseHeart 2s infinite alternate;
}

@keyframes pulseHeart {
  0% { transform: scale(1); box-shadow: 0 8px 24px rgba(255, 64, 151, 0.4); }
  100% { transform: scale(1.08); box-shadow: 0 12px 32px rgba(255, 64, 151, 0.5), 0 0 28px rgba(25, 216, 208, 0.4); }
}

/* Mobile Screens Tuning */
@media (max-width: 480px), (max-height: 700px) {
  .welcome-popup-container {
    margin-top: 45px;
  }
  .bunny-ears-wrapper {
    top: -52px;
    gap: 16px;
  }
  .bunny-ear {
    width: 34px;
    height: 72px;
  }
  .bunny-ear::after {
    top: 7px;
    width: 17px;
    height: 48px;
  }
  .welcome-circular-card-pink {
    width: min(88vw, 345px);
    height: min(88vw, 345px);
    padding: 1.5rem 1.2rem 1.2rem;
  }
  .welcome-heart-badge {
    width: 40px;
    height: 40px;
    font-size: 1.2rem;
    margin-bottom: 0.25rem;
  }
}

/* Search Field Styling */
.search-field {
  border: 1px solid rgba(255, 112, 183, 0.22);
  background: linear-gradient(120deg, rgba(255, 255, 255, 0.95), rgba(255, 240, 246, 0.92));
  box-shadow: inset 0 1px 0 #FFFFFF, 0 6px 20px rgba(45, 25, 41, 0.04);
  transition: border-color 0.25s ease, box-shadow 0.25s ease, transform 0.25s ease;
}

.search-field:focus-within {
  border-color: var(--luxe-turquoise);
  box-shadow: 0 0 0 4px rgba(25, 216, 208, 0.18), 0 10px 24px rgba(45, 25, 41, 0.08);
  transform: translateY(-1px);
}

.toast {
  transform: translateY(120px);
  opacity: 0;
  transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
  background: linear-gradient(135deg, var(--luxe-text-plum), var(--luxe-pink-deep)) !important;
  color: #FFFFFF !important;
  border: 1px solid rgba(255, 255, 255, 0.3) !important;
  box-shadow: 0 20px 50px rgba(45, 25, 41, 0.3) !important;
}

.toast.show {
  transform: translateY(0);
  opacity: 1;
}

/* Drawer Backdrop & Open State */
#cartDrawer {
  transform: translateX(100%);
  transition: transform 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}
#cartDrawer.open {
  transform: translateX(0);
}

/* Custom Scrollbars */
.scrollbar::-webkit-scrollbar { width: 6px; height: 6px; }
.scrollbar::-webkit-scrollbar-track { background: rgba(255, 112, 183, 0.05); border-radius: 10px; }
.scrollbar::-webkit-scrollbar-thumb { background: rgba(25, 216, 208, 0.35); border-radius: 10px; }
.scrollbar::-webkit-scrollbar-thumb:hover { background: var(--luxe-turquoise); }

/* FLOATING WIDGETS ANIMATIONS & STACK */
.floating-actions-stack {
  position: fixed;
  bottom: 24px;
  right: 24px;
  z-index: 90;
  display: flex;
  flex-direction: column;
  gap: 14px;
  align-items: center;
}

.floating-btn-pink {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: linear-gradient(135deg, #FF1493 0%, #E60073 50%, #A82E6E 100%);
  color: #FFFFFF;
  display: grid;
  place-items: center;
  border: 2px solid #FFFFFF;
  animation: pulseAuraPink 2.2s infinite, callWiggle 4.5s ease-in-out infinite 0.5s;
  cursor: pointer;
  transition: transform 0.25s ease;
  position: relative;
  box-shadow: 0 10px 25px rgba(255, 20, 147, 0.45);
}

.floating-btn-turquoise {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  background: linear-gradient(135deg, #19D8D0 0%, #158C88 100%);
  color: #FFFFFF;
  display: grid;
  place-items: center;
  border: 2px solid #FFFFFF;
  animation: pulseAuraTurquoise 2.2s infinite 1.1s, callWiggle 4.5s ease-in-out infinite 2.8s;
  cursor: pointer;
  transition: transform 0.25s ease;
  position: relative;
  box-shadow: 0 10px 25px rgba(25, 216, 208, 0.45);
}

.floating-btn-pink:hover, .floating-btn-turquoise:hover {
  transform: scale(1.14) !important;
}

.floating-badge {
  position: absolute;
  top: -4px;
  left: -4px;
  min-width: 20px;
  height: 20px;
  padding: 0 4px;
  border-radius: 10px;
  background: #19D8D0;
  color: #FFFFFF;
  font-size: 10px;
  font-weight: 800;
  display: grid;
  place-items: center;
  border: 1.5px solid #FFFFFF;
  box-shadow: 0 2px 8px rgba(0,0,0,0.2);
}

@keyframes callWiggle {
  0%, 100% { transform: rotate(0deg) scale(1); }
  12% { transform: rotate(-14deg) scale(1.08); }
  24% { transform: rotate(14deg) scale(1.08); }
  36% { transform: rotate(-10deg) scale(1.05); }
  48% { transform: rotate(10deg) scale(1.05); }
  60% { transform: rotate(0deg) scale(1); }
}

@keyframes pulseAuraPink {
  0% {
    box-shadow: 0 0 0 0 rgba(255, 20, 147, 0.7), 0 10px 25px rgba(168, 46, 110, 0.4);
  }
  70% {
    box-shadow: 0 0 0 20px rgba(255, 20, 147, 0), 0 14px 32px rgba(168, 46, 110, 0.5);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(255, 20, 147, 0), 0 10px 25px rgba(168, 46, 110, 0.4);
  }
}

@keyframes pulseAuraTurquoise {
  0% {
    box-shadow: 0 0 0 0 rgba(25, 216, 208, 0.75), 0 10px 25px rgba(21, 140, 136, 0.4);
  }
  70% {
    box-shadow: 0 0 0 20px rgba(25, 216, 208, 0), 0 14px 32px rgba(21, 140, 136, 0.5);
  }
  100% {
    box-shadow: 0 0 0 0 rgba(25, 216, 208, 0), 0 10px 25px rgba(21, 140, 136, 0.4);
  }
}

/* Accessibility & Preferences */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
    scroll-behavior: auto !important;
  }
}
