/* simadda-festival.css - SimAdda Premium Festival & Seasonal Animation System Styles
 * Version: 20261107v15
 * Strictly non-destructive, isolated, and GPU-accelerated layer.
 */

/* 1. Global Non-Destructive Canvas Layer */
#simadda-festival-canvas {
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  pointer-events: none;
  z-index: 1; /* Below content and footer */
  opacity: 1;
  transition: opacity 0.5s ease-in-out;
}

/* Ensure main interactive sections and footer remain solidly on top */
.hero-home, .section, .navbar-container, .category-mega-grid, .product-grid, .catalog-container {
  position: relative;
  z-index: 3;
}

/* Ensure global navbar strictly stays fixed at top: 0 with zero gap or space before it */
.navbar, header.navbar, nav.navbar, #navbar {
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  right: 0 !important;
  z-index: 1000 !important;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}

html, body {
  margin-top: 0 !important;
}

/* In preview mode, guarantee completely clean visitor view with zero space before header */
body.simadda-preview-mode,
body.has-admin-bar.simadda-preview-mode {
  padding-top: 0 !important;
}
body.simadda-preview-mode #simadda-admin-bar {
  display: none !important;
}

/* Footer is STRICTLY the final opaque panel of the website. Nothing exists below it.
 * Zero margin, zero bleed, zero overflow below footer panel. */
html {
  min-height: 100% !important;
  background-color: #050505 !important;
}

body {
  min-height: 100vh !important;
  display: flex !important;
  flex-direction: column !important;
  background-color: #050505 !important;
  overflow-x: hidden !important;
  max-width: 100vw !important;
}

main, .site-content, #main-content, .page-wrapper {
  flex: 1 0 auto !important;
}

footer.footer {
  margin-top: auto !important;
  position: relative !important;
  z-index: 10 !important;
  background: #050505 !important;
  margin-bottom: 0 !important;
  padding-bottom: 40px !important;
}

/* Guard against any stray element creating space after footer:
 * Footer file (footer.footer) is STRICTLY the absolute end of the page document. */
body > footer.footer:last-of-type ~ *:not(#simadda-festival-canvas):not(#simadda-preview-hud):not(.chatbot-widget-container):not(.chatbot-toggle-btn):not(script):not(style) {
  display: none !important;
}

/* Ensure navbar-brand has relative positioning for accessories */
.navbar-brand {
  position: relative !important;
}

/* 2. Festive Top Greeting Ribbon - Cleanly below navbar tabs with zero overlap */
.simadda-festival-ribbon {
  position: fixed;
  top: 76px; /* Sits cleanly below the navigation bar tabs */
  left: 50%;
  transform: translateX(-50%);
  z-index: 994;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 8px 24px;
  background: rgba(10, 10, 10, 0.94);
  backdrop-filter: blur(16px);
  -webkit-backdrop-filter: blur(16px);
  border: 1px solid var(--festive-primary, #d4af37);
  border-radius: 30px;
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.75), 0 0 24px var(--festive-glow, rgba(212, 175, 55, 0.35));
  font-family: 'Montserrat', sans-serif;
  font-size: 12px;
  font-weight: 600;
  color: #ffffff;
  letter-spacing: 0.04em;
  pointer-events: auto;
  opacity: 1;
  visibility: visible;
  transition: opacity 0.25s cubic-bezier(0.16, 1, 0.3, 1), transform 0.25s cubic-bezier(0.16, 1, 0.3, 1), visibility 0.25s;
}

/* Smoothly goes completely invisible when user scrolls down the page */
.simadda-festival-ribbon.simadda-scrolled-hidden {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform: translate(-50%, -15px) !important;
}

.simadda-festival-ribbon-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 12px;
  background: linear-gradient(135deg, var(--festive-primary, #d4af37), var(--festive-secondary, #f59e0b));
  border-radius: 20px;
  color: #050505;
  font-weight: 800;
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: 0.08em;
  box-shadow: 0 2px 8px rgba(0,0,0,0.4);
}

.simadda-festival-ribbon-text {
  color: #f3f4f6;
  font-size: 12px;
}

.simadda-festival-ribbon-close {
  background: transparent;
  border: none;
  color: rgba(255, 255, 255, 0.6);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 2px;
  border-radius: 50%;
  transition: color 0.2s, transform 0.2s;
}

.simadda-ribbon-sound-btn {
  background: transparent;
  border: none;
  color: var(--festive-primary, #fbbf24);
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 3px 6px;
  border-radius: 6px;
  font-size: 14px;
  line-height: 1;
  transition: all 0.2s ease;
  user-select: none;
}
.simadda-ribbon-sound-btn:hover {
  background: rgba(255, 255, 255, 0.12);
  transform: scale(1.18);
}

.simadda-festival-ribbon-close:hover {
  color: #ffffff;
  transform: scale(1.15);
}

/* -------------------------------------------------------------
 * 3. DIWALI DANCING LED LIGHTS
 * Positioned cleanly at top: 72px (directly below the navigation tabs)
 * Absolute positioning: Stays at the top of the page, DOES NOT scroll down to the bottom
 * Sits below navbar (z-index: 95 vs 100) so tabs are 100% clean and unobstructed
 * ------------------------------------------------------------- */
.simadda-diwali-led-strip {
  position: absolute;
  top: 72px; /* Sits precisely below the 72px navigation tabs */
  left: 0;
  width: 100%;
  height: 28px;
  pointer-events: none;
  z-index: 95; /* Cleanly below navbar (100) so buttons/tabs never get overlapped */
  display: flex;
  align-items: flex-start;
  justify-content: space-around;
  padding: 0 16px;
  box-sizing: border-box;
  overflow: visible;
}

.simadda-diwali-led-wire {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background: linear-gradient(90deg, rgba(212, 175, 55, 0.2), rgba(212, 175, 55, 0.85) 50%, rgba(212, 175, 55, 0.2));
  box-shadow: 0 1px 6px rgba(0, 0, 0, 0.95);
}

.simadda-led-bulb {
  width: 11px;
  height: 17px;
  border-radius: 50% 50% 45% 45% / 60% 60% 40% 40%;
  position: relative;
  margin-top: 2px;
  animation: simaddaDancingLedWave 1.8s ease-in-out infinite alternate;
}

.simadda-led-bulb::before {
  content: '';
  position: absolute;
  top: -3px;
  left: 3.5px;
  width: 4px;
  height: 3px;
  background: #18181b;
  border-radius: 2px 2px 0 0;
}

.simadda-led-amber {
  background: #fbbf24;
  box-shadow: 0 0 10px #fbbf24, 0 0 22px rgba(251, 191, 36, 0.95), 0 0 35px rgba(245, 158, 11, 0.7);
}
.simadda-led-crimson {
  background: #ef4444;
  box-shadow: 0 0 10px #ef4444, 0 0 22px rgba(239, 68, 68, 0.95), 0 0 35px rgba(220, 38, 38, 0.7);
}
.simadda-led-emerald {
  background: #10b981;
  box-shadow: 0 0 10px #10b981, 0 0 22px rgba(16, 185, 129, 0.95), 0 0 35px rgba(5, 150, 105, 0.7);
}
.simadda-led-cyan {
  background: #06b6d4;
  box-shadow: 0 0 10px #06b6d4, 0 0 22px rgba(6, 182, 212, 0.95), 0 0 35px rgba(8, 145, 178, 0.7);
}
.simadda-led-magenta {
  background: #ec4899;
  box-shadow: 0 0 10px #ec4899, 0 0 22px rgba(236, 72, 153, 0.95), 0 0 35px rgba(219, 39, 119, 0.7);
}
.simadda-led-yellow {
  background: #fef08a;
  box-shadow: 0 0 10px #fef08a, 0 0 22px rgba(254, 240, 138, 0.95), 0 0 35px rgba(250, 204, 21, 0.7);
}
.simadda-led-orange {
  background: #f97316;
  box-shadow: 0 0 10px #f97316, 0 0 22px rgba(249, 115, 22, 0.95), 0 0 35px rgba(234, 88, 12, 0.7);
}

@keyframes simaddaDancingLedWave {
  0% { transform: scale(0.86) translateY(0); opacity: 0.65; filter: brightness(0.85); }
  50% { transform: scale(1.18) translateY(2px); opacity: 1.0; filter: brightness(1.25); }
  100% { transform: scale(0.92) translateY(0); opacity: 0.78; filter: brightness(0.95); }
}

/* -------------------------------------------------------------
 * ANIMATED DIWALI PROPS SUSPENDED ALONG THE TOP LIGHT WIRE
 * Traditional Akash Kandils, Hanging Diyas, Temple Bells, Marigold Drops, & Auspicious Medallions
 * ------------------------------------------------------------- */
.simadda-led-prop {
  position: relative;
  display: inline-flex;
  flex-direction: column;
  align-items: center;
  margin-top: 0;
  pointer-events: none;
  transform-origin: top center;
  z-index: 96;
}

.simadda-prop-chain {
  width: 1px;
  height: 8px;
  background: linear-gradient(180deg, rgba(212, 175, 55, 0.95), rgba(245, 158, 11, 0.7));
  box-shadow: 0 0 3px rgba(245, 158, 11, 0.6);
}

.simadda-prop-svg {
  filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.85)) drop-shadow(0 0 8px rgba(245, 158, 11, 0.45));
}

/* 1. Akash Kandil Sway */
.simadda-prop-kandil {
  animation: simaddaPropSwayKandil 3.2s ease-in-out infinite alternate;
}
@keyframes simaddaPropSwayKandil {
  0% { transform: rotate(-5deg); }
  100% { transform: rotate(5deg); }
}

/* 2. Hanging Diya Sway & Flame */
.simadda-prop-diya {
  animation: simaddaPropSwayDiya 2.8s ease-in-out infinite alternate;
}
@keyframes simaddaPropSwayDiya {
  0% { transform: rotate(-3.5deg); }
  100% { transform: rotate(3.5deg); }
}

.simadda-prop-diya-bowl {
  width: 22px;
  height: 10px;
  background: linear-gradient(180deg, #c2410c 0%, #7c2d12 100%);
  border-radius: 0 0 12px 12px;
  border: 1px solid #d4af37;
  box-shadow: 0 2px 6px rgba(0,0,0,0.7), inset 0 1px 2px #fef08a;
  position: relative;
}

.simadda-prop-diya-flame {
  width: 7px;
  height: 12px;
  background: radial-gradient(ellipse at bottom, #ffffff 0%, #fef08a 30%, #f97316 75%, transparent 100%);
  border-radius: 50% 50% 20% 20% / 60% 60% 40% 40%;
  animation: simaddaFlameOrganic 0.15s infinite alternate ease-in-out;
  box-shadow: 0 0 8px #fbbf24, 0 0 16px #ea580c;
  margin-bottom: -1px;
}

/* 3. Golden Bell Sway */
.simadda-prop-bell {
  animation: simaddaPropSwayBell 2.4s ease-in-out infinite alternate;
}
@keyframes simaddaPropSwayBell {
  0% { transform: rotate(-6deg); }
  100% { transform: rotate(6deg); }
}

/* 4. Marigold Flower Bob */
.simadda-prop-marigold {
  animation: simaddaPropBobMarigold 2.6s ease-in-out infinite alternate;
}
@keyframes simaddaPropBobMarigold {
  0% { transform: translateY(0) rotate(-2deg); }
  100% { transform: translateY(3px) rotate(2deg); }
}

/* 5. Sacred Medallion Twinkle */
.simadda-prop-pendant {
  animation: simaddaPropSwayPendant 3.0s ease-in-out infinite alternate;
}
@keyframes simaddaPropSwayPendant {
  0% { transform: rotate(-4deg); filter: brightness(0.9); }
  100% { transform: rotate(4deg); filter: brightness(1.25); }
}

/* -------------------------------------------------------------
 * 4. HALLOWEEN: SPIDER WEBS ON WIDGETS & DIM CANDLE PUMPKIN
 * Pumpkin face properly visible, candle inside NOT visible, dim eerie candle glow
 * Placed in the hero banner area, scrolls away naturally with page
 * ------------------------------------------------------------- */
.simadda-halloween-pumpkin-wrap {
  position: absolute;
  top: 96px;
  right: 40px;
  width: 135px;
  height: 120px;
  z-index: 10;
  pointer-events: none;
  filter: drop-shadow(0 12px 28px rgba(0, 0, 0, 0.9)) drop-shadow(0 0 18px rgba(234, 88, 12, 0.35));
}

/* Dim Candlelight Flicker behind the carved openings (candle itself hidden) */
.simadda-pumpkin-dim-glow {
  animation: simaddaPumpkinDimFlicker 0.22s ease-in-out infinite alternate;
  transform-origin: center center;
}

@keyframes simaddaPumpkinDimFlicker {
  0% { opacity: 0.55; filter: drop-shadow(0 0 3px #c2410c); }
  50% { opacity: 0.78; filter: drop-shadow(0 0 7px #ea580c); }
  100% { opacity: 0.62; filter: drop-shadow(0 0 4px #9a3412); }
}

/* -------------------------------------------------------------
 * CHRISTMAS ILLUMINATED TREE & STICKY TOP BANNER DECORATION
 * Pinned cleanly to the top (`position: fixed; top: 76px; right: 28px;`)
 * Sticks to top as user scrolls down, NEVER scrolls down or overlaps content
 * ------------------------------------------------------------- */
.simadda-christmas-tree-wrap {
  position: fixed;
  top: 76px;
  right: 28px;
  width: 95px;
  height: 125px;
  z-index: 95; /* Cleanly below navbar (100) */
  pointer-events: none;
  filter: drop-shadow(0 10px 24px rgba(0, 0, 0, 0.85)) drop-shadow(0 0 16px rgba(56, 189, 248, 0.35));
  transition: transform 0.3s ease, top 0.3s ease;
}

.simadda-tree-star {
  animation: simaddaTreeStarGlow 2s ease-in-out infinite alternate;
  transform-origin: center center;
}
@keyframes simaddaTreeStarGlow {
  0% { transform: scale(0.9); filter: drop-shadow(0 0 6px #fbbf24); }
  100% { transform: scale(1.18); filter: drop-shadow(0 0 16px #fde047); }
}

.simadda-bauble-twinkle {
  animation: simaddaBaubleTwinkle 1.8s ease-in-out infinite alternate;
}
@keyframes simaddaBaubleTwinkle {
  0% { opacity: 0.7; filter: brightness(0.85); }
  100% { opacity: 1.0; filter: brightness(1.3); }
}

/* Top-Left Spider Web on Widgets */
body[data-festival-id="halloween"] .category-card::before,
body[data-festival-id="halloween"] .product-card::before,
body[data-festival-id="halloween"] .rental-card::before,
body[data-festival-id="halloween"] .deal-card::before,
body[data-festival-id="halloween"] .discount-window::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 70px;
  height: 70px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' fill='none'%3E%3Cpath d='M0,0 L90,0 M0,0 L0,90 M0,0 L80,80 M0,0 L35,85 M0,0 L85,35' stroke='%23e4e4e7' stroke-width='1.2' opacity='0.7'/%3E%3Cpath d='M25,0 Q22,22 0,25' stroke='%23e4e4e7' stroke-width='1.2' fill='none' opacity='0.7'/%3E%3Cpath d='M50,0 Q45,45 0,50' stroke='%23e4e4e7' stroke-width='1.2' fill='none' opacity='0.7'/%3E%3Cpath d='M75,0 Q68,68 0,75' stroke='%23e4e4e7' stroke-width='1.2' fill='none' opacity='0.7'/%3E%3Cpath d='M100,0 Q90,90 0,100' stroke='%23e4e4e7' stroke-width='1.2' fill='none' opacity='0.7'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  z-index: 12;
  pointer-events: none;
  filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.9));
  opacity: 0.88;
}

/* Top-Right Hanging Spider & Corner Web on Widgets */
body[data-festival-id="halloween"] .category-card::after,
body[data-festival-id="halloween"] .product-card::after {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  width: 60px;
  height: 80px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 80 100' fill='none'%3E%3Cpath d='M80,0 L0,0 M80,0 L80,50 M80,0 L20,40' stroke='%23e4e4e7' stroke-width='1.2' opacity='0.6'/%3E%3Cpath d='M50,0 Q50,20 80,20' stroke='%23e4e4e7' stroke-width='1' fill='none' opacity='0.6'/%3E%3Cline x1='40' y1='0' x2='40' y2='60' stroke='%23e4e4e7' stroke-width='1' stroke-dasharray='2 2'/%3E%3Cellipse cx='40' cy='66' rx='5' ry='4' fill='%2318181b' stroke='%23f97316' stroke-width='0.8'/%3E%3Ccircle cx='40' cy='62' r='3' fill='%2318181b'/%3E%3Ccircle cx='39' cy='61' r='0.8' fill='%23ef4444'/%3E%3Ccircle cx='41' cy='61' r='0.8' fill='%23ef4444'/%3E%3Cpath d='M36,64 Q32,60 30,66 M44,64 Q48,60 50,66 M36,68 Q31,70 30,76 M44,68 Q49,70 50,76' stroke='%2327272a' stroke-width='1' fill='none'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  z-index: 13;
  pointer-events: none;
  filter: drop-shadow(0 2px 4px rgba(0, 0, 0, 0.85));
  opacity: 0.9;
}

body[data-festival-id="halloween"] .category-card:hover,
body[data-festival-id="halloween"] .product-card:hover {
  border-color: #f97316 !important;
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.9), 0 0 28px rgba(249, 115, 22, 0.5), 0 0 45px rgba(139, 92, 246, 0.35) !important;
}

/* -------------------------------------------------------------
 * 5. REPUBLIC DAY (26 JAN) & INDEPENDENCE DAY (15 AUG): PROMINENT TRICOLOR (TIRANGA)
 * ------------------------------------------------------------- */
body[data-festival-id="independence_day"] .category-card::before,
body[data-festival-id="independence_day"] .product-card::before,
body[data-festival-id="independence_day"] .rental-card::before,
body[data-festival-id="independence_day"] .deal-card::before,
body[data-festival-id="independence_day"] .discount-window::before,
body[data-festival-id="republic_day"] .category-card::before,
body[data-festival-id="republic_day"] .product-card::before,
body[data-festival-id="republic_day"] .rental-card::before,
body[data-festival-id="republic_day"] .deal-card::before,
body[data-festival-id="republic_day"] .discount-window::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 6px;
  background: linear-gradient(90deg, #ff9933 0%, #ff9933 33.3%, #ffffff 33.3%, #ffffff 66.6%, #128807 66.6%, #128807 100%);
  z-index: 12;
  pointer-events: none;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.8), 0 0 12px rgba(255, 153, 51, 0.5);
}

body[data-festival-id="independence_day"] .category-card::after,
body[data-festival-id="independence_day"] .product-card::after,
body[data-festival-id="republic_day"] .category-card::after,
body[data-festival-id="republic_day"] .product-card::after {
  content: '';
  position: absolute;
  top: 10px;
  right: 12px;
  width: 26px;
  height: 26px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' fill='none'%3E%3Ccircle cx='50' cy='50' r='46' fill='%23ffffff' stroke='%23ff9933' stroke-width='3'/%3E%3Ccircle cx='50' cy='50' r='40' stroke='%23000088' stroke-width='4' fill='none'/%3E%3Ccircle cx='50' cy='50' r='7' fill='%23000088'/%3E%3Cg stroke='%23000088' stroke-width='2.2'%3E%3Cline x1='50' y1='12' x2='50' y2='88'/><line x1='12' y1='50' x2='88' y2='50'/><line x1='23.1' y1='23.1' x2='76.9' y2='76.9'/><line x1='23.1' y1='76.9' x2='76.9' y2='23.1'/></g>%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  z-index: 13;
  pointer-events: none;
  filter: drop-shadow(0 0 6px #ffffff) drop-shadow(0 2px 4px rgba(0,0,0,0.85));
}

body[data-festival-id="independence_day"] .category-card:hover,
body[data-festival-id="independence_day"] .product-card:hover,
body[data-festival-id="republic_day"] .category-card:hover,
body[data-festival-id="republic_day"] .product-card:hover {
  border-color: #ff9933 !important;
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.85), 0 0 24px rgba(255, 153, 51, 0.5), 0 0 36px rgba(18, 136, 7, 0.4) !important;
}

/* -------------------------------------------------------------
 * 6. HOLI: SPILLED GULAL & VIBRANT COLOUR POWDER SPLATTERS ON WIDGETS
 * ------------------------------------------------------------- */
body[data-festival-id="holi"] .category-card::before,
body[data-festival-id="holi"] .product-card::before,
body[data-festival-id="holi"] .rental-card::before,
body[data-festival-id="holi"] .deal-card::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 90px;
  height: 90px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' fill='none'%3E%3Cpath d='M0,0 L70,0 C60,18 75,32 50,42 C30,50 35,70 18,65 C5,60 0,75 0,75 Z' fill='%23ec4899' opacity='0.85'/%3E%3Ccircle cx='25' cy='25' r='18' fill='%23facc15' opacity='0.8' filter='blur(2px)'/%3E%3Ccircle cx='48' cy='16' r='6' fill='%23ec4899' opacity='0.85'/%3E%3Ccircle cx='18' cy='48' r='5' fill='%23f43f5e' opacity='0.9'/%3E%3Ccircle cx='58' cy='32' r='4' fill='%23fbbf24' opacity='0.85'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  z-index: 12;
  pointer-events: none;
  opacity: 0.95;
  filter: drop-shadow(0 2px 6px rgba(236, 72, 153, 0.5));
}

body[data-festival-id="holi"] .category-card::after,
body[data-festival-id="holi"] .product-card::after {
  content: '';
  position: absolute;
  bottom: 0;
  right: 0;
  width: 95px;
  height: 95px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100' fill='none'%3E%3Cpath d='M100,100 L30,100 C40,82 25,68 50,58 C70,50 65,30 82,35 C95,40 100,25 100,25 Z' fill='%2306b6d4' opacity='0.85'/%3E%3Ccircle cx='75' cy='75' r='18' fill='%2384cc16' opacity='0.8' filter='blur(2px)'/%3E%3Ccircle cx='52' cy='84' r='6' fill='%2306b6d4' opacity='0.85'/%3E%3Ccircle cx='82' cy='52' r='5' fill='%23a855f7' opacity='0.9'/%3E%3Ccircle cx='42' cy='68' r='4' fill='%2384cc16' opacity='0.85'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  z-index: 12;
  pointer-events: none;
  opacity: 0.95;
  filter: drop-shadow(0 2px 6px rgba(6, 182, 212, 0.5));
}

/* -------------------------------------------------------------
 * 7. CHRISTMAS & NEW YEAR: ENHANCED SNOW ON WIDGETS
 * ------------------------------------------------------------- */
body[data-festival-id="christmas"] .category-card::before,
body[data-festival-id="christmas"] .product-card::before,
body[data-festival-id="christmas"] .rental-card::before,
body[data-festival-id="christmas"] .deal-card::before,
body[data-festival-id="christmas"] .discount-window::before,
body[data-festival-id="new_year"] .category-card::before,
body[data-festival-id="new_year"] .product-card::before,
body[data-festival-id="new_year"] .rental-card::before,
body[data-festival-id="new_year"] .deal-card::before,
body[data-festival-id="new_year"] .discount-window::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 22px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 120 22' fill='none'%3E%3Cpath d='M0,0 L120,0 L120,6 C114,10 110,14 104,14 C98,14 94,7 88,7 C82,7 78,19 70,19 C62,19 58,7 52,7 C46,7 42,16 34,16 C26,16 22,6 16,6 C10,6 6,12 0,11 Z' fill='%23ffffff'/%3E%3Cpath d='M0,0 L120,0 L120,3.5 C114,7 110,11 104,11 C98,11 94,5 88,5 C82,5 78,14 70,14 C62,14 58,5 52,5 C46,5 42,12 34,12 C26,12 22,4 16,4 C10,4 6,8 0,7 Z' fill='%23bae6fd' opacity='0.7'/%3E%3Ccircle cx='70' cy='20' r='1.2' fill='%23ffffff'/%3E%3Ccircle cx='34' cy='17' r='1' fill='%23ffffff'/%3E%3C/svg%3E");
  background-size: 100px 22px;
  background-repeat: repeat-x;
  z-index: 12;
  pointer-events: none;
  filter: drop-shadow(0 3px 6px rgba(255, 255, 255, 0.5)) drop-shadow(0 2px 4px rgba(0, 0, 0, 0.8));
  opacity: 0.98;
  transition: opacity 0.3s ease;
}

/* Real Christmas Props on Category Cards: Golden Jingle Bells with Scarlet Satin Bow & Holly */
body[data-festival-id="christmas"] .category-card::after {
  content: '';
  position: absolute;
  top: 6px;
  right: 8px;
  width: 44px;
  height: 44px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 44 44' fill='none'%3E%3Cpath d='M8 12 Q14 6 22 10 Q18 16 12 18 Z' fill='%2315803d'/%3E%3Cpath d='M36 12 Q30 6 22 10 Q26 16 32 18 Z' fill='%2316a34a'/%3E%3Cpath d='M16 19 C16 14 22 14 22 19 L23 27 C23 29 25 29 25 31 L11 31 C11 29 13 29 13 27 Z' fill='%23eab308' stroke='%23ca8a04' stroke-width='0.8'/%3E%3Cpath d='M22 19 C22 14 28 14 28 19 L29 27 C29 29 31 29 31 31 L17 31 C17 29 19 29 19 27 Z' fill='%23facc15' stroke='%23eab308' stroke-width='0.8'/%3E%3Ccircle cx='18' cy='31' r='2' fill='%23d97706'/%3E%3Ccircle cx='24' cy='31' r='2' fill='%23d97706'/%3E%3Cellipse cx='22' cy='14' rx='5' ry='3.5' fill='%23dc2626'/%3E%3Cpath d='M17 14 C13 11 10 13 11 17 C12 20 18 17 18 15 Z' fill='%23ef4444'/%3E%3Cpath d='M27 14 C31 11 34 13 33 17 C32 20 26 17 26 15 Z' fill='%23ef4444'/%3E%3Ccircle cx='22' cy='14' r='2.5' fill='%23b91c1c'/%3E%3Ccircle cx='20' cy='10' r='1.8' fill='%23ef4444'/%3E%3Ccircle cx='24' cy='10' r='1.8' fill='%23ef4444'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  z-index: 13;
  pointer-events: none;
  filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.9)) drop-shadow(0 0 8px rgba(234, 179, 8, 0.45));
}

/* Real Christmas Props on Product Cards: Festive Holiday Stocking with Candy Cane & Pine Sprig */
body[data-festival-id="christmas"] .product-card::after {
  content: '';
  position: absolute;
  top: 6px;
  right: 8px;
  width: 42px;
  height: 48px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 42 48' fill='none'%3E%3Cpath d='M18 12 Q24 4 28 6 Q32 8 30 14 L24 24' stroke='%23ffffff' stroke-width='3.5' stroke-linecap='round' fill='none'/%3E%3Cpath d='M19 11 Q24 5 28 7 Q31 9 29 14 L24 23' stroke='%23dc2626' stroke-width='3.5' stroke-linecap='round' stroke-dasharray='4 4' fill='none'/%3E%3Cpath d='M12 14 C12 14 16 18 18 26 L14 36 C13 39 15 42 19 42 L24 42 C27 42 28 39 26 35 L24 26 C24 26 24 18 24 14 Z' fill='%23b91c1c' stroke='%23991b1b' stroke-width='0.8'/%3E%3Cpath d='M16 34 Q20 37 24 35 Q26 38 24 42 L19 42 C15 42 13 39 14 36 Z' fill='%23dc2626'/%3E%3Crect x='10' y='12' width='16' height='7' rx='3.5' fill='%23ffffff' stroke='%23bae6fd' stroke-width='0.6' filter='drop-shadow(0 1px 2px rgba(0,0,0,0.3))'/%3E%3Cpath d='M26 14 Q32 12 36 16' stroke='%2315803d' stroke-width='2' stroke-linecap='round' fill='none'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  z-index: 13;
  pointer-events: none;
  filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.9)) drop-shadow(0 0 6px rgba(220, 38, 38, 0.4));
}

/* Real Christmas Props on Rental & Deal Cards: Glistening Holiday Bauble Ornament */
body[data-festival-id="christmas"] .rental-card::after,
body[data-festival-id="christmas"] .deal-card::after,
body[data-festival-id="christmas"] .discount-window::after {
  content: '';
  position: absolute;
  top: 6px;
  right: 8px;
  width: 40px;
  height: 46px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 40 46' fill='none'%3E%3Cline x1='20' y1='0' x2='20' y2='8' stroke='%23fbbf24' stroke-width='1.2'/%3E%3Crect x='17' y='7' width='6' height='3' rx='1' fill='%23eab308'/%3E%3Ccircle cx='20' cy='24' r='14' fill='%23be123c' stroke='%23fbbf24' stroke-width='1'/%3E%3Cellipse cx='16' cy='18' rx='4' ry='2' fill='%23ffffff' opacity='0.7' transform='rotate(-30 16 18)'/%3E%3Cpolygon points='20,16 22,22 28,24 22,26 20,32 18,26 12,24 18,22' fill='%23fef08a' opacity='0.9'/%3E%3Ccircle cx='20' cy='24' r='2' fill='%23ffffff'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  z-index: 13;
  pointer-events: none;
  filter: drop-shadow(0 4px 8px rgba(0, 0, 0, 0.9)) drop-shadow(0 0 8px rgba(190, 18, 60, 0.5));
}

body[data-festival-id="christmas"] .category-card:hover,
body[data-festival-id="christmas"] .product-card:hover,
body[data-festival-id="christmas"] .rental-card:hover {
  border-color: #38bdf8 !important;
  box-shadow: 0 16px 44px rgba(0, 0, 0, 0.9), 0 0 28px rgba(56, 189, 248, 0.45), 0 0 40px rgba(225, 29, 72, 0.25) !important;
}

/* New Year: Sparkling Golden Celebration Star on widget corner */
body[data-festival-id="new_year"] .category-card::after,
body[data-festival-id="new_year"] .product-card::after {
  content: '';
  position: absolute;
  top: 6px;
  right: 10px;
  width: 24px;
  height: 24px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none'%3E%3Cpolygon points='12,2 15,9 22,10 17,15 18,22 12,18 6,22 7,15 2,10 9,9' fill='%23fbbf24' stroke='%23fef08a' stroke-width='1.2'/%3E%3Ccircle cx='12' cy='12' r='2.5' fill='%23ffffff'/%3E%3C/svg%3E");
  background-size: contain;
  background-repeat: no-repeat;
  z-index: 13;
  pointer-events: none;
  filter: drop-shadow(0 0 8px #fbbf24);
  animation: simaddaStarTwinkle 2s ease-in-out infinite alternate;
}

@keyframes simaddaStarTwinkle {
  0% { transform: scale(0.85); opacity: 0.7; }
  100% { transform: scale(1.15); opacity: 1; }
}

/* -------------------------------------------------------------
 * 8. COMPREHENSIVE MULTI-FESTIVAL WIDGET PROPS & CARDS LIBRARY
 * Each festival features its own distinctive styling, authentic props, and cultural borders.
 * ------------------------------------------------------------- */

/* A. VALENTINE'S DAY: Glowing Crimson-Rose Top Border & Cupid Heart Badge */
body[data-festival-id="valentines_day"] .category-card::before,
body[data-festival-id="valentines_day"] .product-card::before,
body[data-festival-id="valentines_day"] .rental-card::before,
body[data-festival-id="valentines_day"] .deal-card::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0; height: 3px;
  background: linear-gradient(90deg, #f43f5e 0%, #fb7185 50%, #f43f5e 100%);
  z-index: 12; pointer-events: none;
  box-shadow: 0 0 12px rgba(244, 63, 94, 0.65);
}
body[data-festival-id="valentines_day"] .category-card::after,
body[data-festival-id="valentines_day"] .product-card::after,
body[data-festival-id="valentines_day"] .rental-card::after,
body[data-festival-id="valentines_day"] .deal-card::after {
  content: '';
  position: absolute;
  top: 8px; right: 10px;
  width: 28px; height: 26px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 30' fill='none'%3E%3Cpath d='M16 28 C8 20 2 14 2 8 A7 7 0 0 1 16 5 A7 7 0 0 1 30 8 C30 14 24 20 16 28 Z' fill='%23f43f5e' stroke='%23fda4af' stroke-width='1.2'/%3E%3Cline x1='4' y1='24' x2='28' y2='6' stroke='%23fbbf24' stroke-width='1.5' stroke-linecap='round'/%3E%3Cpolygon points='28,6 23,7 27,11' fill='%23fbbf24'/%3E%3C/svg%3E");
  background-size: contain; background-repeat: no-repeat;
  z-index: 13; pointer-events: none;
  filter: drop-shadow(0 2px 6px rgba(0,0,0,0.85)) drop-shadow(0 0 8px rgba(244, 63, 94, 0.55));
  animation: simaddaHeartBeat 2s ease-in-out infinite;
}
body[data-festival-id="valentines_day"] .category-card:hover,
body[data-festival-id="valentines_day"] .product-card:hover {
  border-color: #f43f5e !important;
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.9), 0 0 28px rgba(244, 63, 94, 0.45) !important;
}

/* B. EID (EID AL-FITR & EID AL-ADHA): Emerald & Gold Border + Luminous Crescent Moon & Star */
body[data-festival-id="eid_al_fitr"] .category-card::before,
body[data-festival-id="eid_al_fitr"] .product-card::before,
body[data-festival-id="eid_al_fitr"] .rental-card::before,
body[data-festival-id="eid_al_fitr"] .deal-card::before,
body[data-festival-id="eid_al_adha"] .category-card::before,
body[data-festival-id="eid_al_adha"] .product-card::before,
body[data-festival-id="eid_al_adha"] .rental-card::before,
body[data-festival-id="eid_al_adha"] .deal-card::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0; height: 3px;
  background: linear-gradient(90deg, #10b981 0%, #fbbf24 50%, #10b981 100%);
  z-index: 12; pointer-events: none;
  box-shadow: 0 0 12px rgba(16, 185, 129, 0.65);
}
body[data-festival-id="eid_al_fitr"] .category-card::after,
body[data-festival-id="eid_al_fitr"] .product-card::after,
body[data-festival-id="eid_al_adha"] .category-card::after,
body[data-festival-id="eid_al_adha"] .product-card::after {
  content: '';
  position: absolute;
  top: 8px; right: 10px;
  width: 28px; height: 28px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32' fill='none'%3E%3Cpath d='M22 6 C14 8 10 16 12 24 C18 28 26 24 28 18 C22 20 16 17 16 12 C16 9 18 7 22 6 Z' fill='%23fbbf24' stroke='%23fef08a' stroke-width='0.8'/%3E%3Cpolygon points='23,11 24.5,13.5 27.5,14 25.2,16 26,19 23,17.5 20,19 20.8,16 18.5,14 21.5,13.5' fill='%23fef08a'/%3E%3C/svg%3E");
  background-size: contain; background-repeat: no-repeat;
  z-index: 13; pointer-events: none;
  filter: drop-shadow(0 2px 6px rgba(0,0,0,0.85)) drop-shadow(0 0 10px rgba(251, 191, 36, 0.65));
}
body[data-festival-id="eid_al_fitr"] .category-card:hover,
body[data-festival-id="eid_al_fitr"] .product-card:hover,
body[data-festival-id="eid_al_adha"] .category-card:hover,
body[data-festival-id="eid_al_adha"] .product-card:hover {
  border-color: #10b981 !important;
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.9), 0 0 28px rgba(16, 185, 129, 0.45) !important;
}

/* C. LOHRI: Blazing Fire Ember Top Border & Burning Wood Bonfire Badge */
body[data-festival-id="lohri"] .category-card::before,
body[data-festival-id="lohri"] .product-card::before,
body[data-festival-id="lohri"] .rental-card::before,
body[data-festival-id="lohri"] .deal-card::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0; height: 3px;
  background: linear-gradient(90deg, #f97316 0%, #ef4444 35%, #fbbf24 70%, #f97316 100%);
  z-index: 12; pointer-events: none;
  box-shadow: 0 0 14px rgba(249, 115, 22, 0.7);
}
body[data-festival-id="lohri"] .category-card::after,
body[data-festival-id="lohri"] .product-card::after {
  content: '';
  position: absolute;
  top: 6px; right: 8px;
  width: 32px; height: 32px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 36 36' fill='none'%3E%3Cline x1='4' y1='30' x2='32' y2='24' stroke='%2378350f' stroke-width='3.5' stroke-linecap='round'/%3E%3Cline x1='6' y1='24' x2='30' y2='30' stroke='%23451a03' stroke-width='3.5' stroke-linecap='round'/%3E%3Cpath d='M18 4 C14 12 10 18 10 24 C10 28 13 30 18 30 C23 30 26 28 26 24 C26 18 22 12 18 4 Z' fill='%23ea580c'/%3E%3Cpath d='M18 10 C15 15 13 19 13 24 C13 27 15 29 18 29 C21 29 23 27 23 24 C23 19 21 15 18 10 Z' fill='%23fbbf24'/%3E%3Ccircle cx='18' cy='22' r='3.5' fill='%23fef08a'/%3E%3C/svg%3E");
  background-size: contain; background-repeat: no-repeat;
  z-index: 13; pointer-events: none;
  filter: drop-shadow(0 2px 6px rgba(0,0,0,0.85)) drop-shadow(0 0 8px rgba(249, 115, 22, 0.65));
}
body[data-festival-id="lohri"] .category-card:hover,
body[data-festival-id="lohri"] .product-card:hover {
  border-color: #f97316 !important;
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.9), 0 0 28px rgba(249, 115, 22, 0.5) !important;
}

/* D. DUSSEHRA (VIJAYADASHAMI): Royal Crimson & Gold Border + Lord Rama's Golden Bow & Arrow */
body[data-festival-id="dussehra"] .category-card::before,
body[data-festival-id="dussehra"] .product-card::before,
body[data-festival-id="dussehra"] .rental-card::before,
body[data-festival-id="dussehra"] .deal-card::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0; height: 3px;
  background: linear-gradient(90deg, #dc2626 0%, #f59e0b 50%, #dc2626 100%);
  z-index: 12; pointer-events: none;
  box-shadow: 0 0 14px rgba(245, 158, 11, 0.65);
}
body[data-festival-id="dussehra"] .category-card::after,
body[data-festival-id="dussehra"] .product-card::after {
  content: '';
  position: absolute;
  top: 6px; right: 8px;
  width: 30px; height: 30px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 34 34' fill='none'%3E%3Cpath d='M6 6 Q20 18 6 30' stroke='%23f59e0b' stroke-width='2.2' stroke-linecap='round' fill='none'/%3E%3Cline x1='6' y1='6' x2='6' y2='30' stroke='%23fde047' stroke-width='0.8' stroke-dasharray='2 2'/%3E%3Cline x1='2' y1='18' x2='30' y2='18' stroke='%23dc2626' stroke-width='1.8' stroke-linecap='round'/%3E%3Cpolygon points='32,18 24,14 26,18 24,22' fill='%23fbbf24' stroke='%23dc2626' stroke-width='0.6'/%3E%3C/svg%3E");
  background-size: contain; background-repeat: no-repeat;
  z-index: 13; pointer-events: none;
  filter: drop-shadow(0 2px 6px rgba(0,0,0,0.85)) drop-shadow(0 0 8px rgba(245, 158, 11, 0.65));
}
body[data-festival-id="dussehra"] .category-card:hover,
body[data-festival-id="dussehra"] .product-card:hover {
  border-color: #f59e0b !important;
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.9), 0 0 28px rgba(245, 158, 11, 0.45) !important;
}

/* E. JANMASHTAMI: Peacock Azure & Gold Border + Sacred Mor Pankh Feather */
body[data-festival-id="janmashtami"] .category-card::before,
body[data-festival-id="janmashtami"] .product-card::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0; height: 3px;
  background: linear-gradient(90deg, #0284c7 0%, #10b981 50%, #eab308 100%);
  z-index: 12; pointer-events: none;
  box-shadow: 0 0 12px rgba(2, 132, 199, 0.6);
}
body[data-festival-id="janmashtami"] .category-card::after,
body[data-festival-id="janmashtami"] .product-card::after {
  content: '';
  position: absolute;
  top: 6px; right: 8px;
  width: 28px; height: 32px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 32' fill='none'%3E%3Cpath d='M14 2 C8 8 6 16 14 30 C22 16 20 8 14 2 Z' fill='%230284c7' stroke='%2310b981' stroke-width='1'/%3E%3Cellipse cx='14' cy='12' rx='5' ry='6' fill='%2310b981'/%3E%3Cellipse cx='14' cy='12' rx='3' ry='4' fill='%23eab308'/%3E%3Ccircle cx='14' cy='12' r='1.8' fill='%231e3a8a'/%3E%3C/svg%3E");
  background-size: contain; background-repeat: no-repeat;
  z-index: 13; pointer-events: none;
  filter: drop-shadow(0 2px 6px rgba(0,0,0,0.85)) drop-shadow(0 0 8px rgba(2, 132, 199, 0.65));
}

/* F. GANESH CHATURTHI: Saffron & Sacred Gold Border + Auspicious Modak */
body[data-festival-id="ganesh_chaturthi"] .category-card::before,
body[data-festival-id="ganesh_chaturthi"] .product-card::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0; height: 3px;
  background: linear-gradient(90deg, #d97706 0%, #fbbf24 50%, #dc2626 100%);
  z-index: 12; pointer-events: none;
  box-shadow: 0 0 12px rgba(217, 119, 6, 0.6);
}
body[data-festival-id="ganesh_chaturthi"] .category-card::after,
body[data-festival-id="ganesh_chaturthi"] .product-card::after {
  content: '';
  position: absolute;
  top: 6px; right: 8px;
  width: 28px; height: 28px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30' fill='none'%3E%3Cpath d='M15 3 C11 11 6 17 6 22 C6 26 10 28 15 28 C20 28 24 26 24 22 C24 17 19 11 15 3 Z' fill='%23f59e0b' stroke='%23d97706' stroke-width='1'/%3E%3Cline x1='15' y1='5' x2='15' y2='27' stroke='%23b45309' stroke-width='0.8'/%3E%3Cline x1='11' y1='15' x2='10' y2='24' stroke='%23b45309' stroke-width='0.8'/%3E%3Cline x1='19' y1='15' x2='20' y2='24' stroke='%23b45309' stroke-width='0.8'/%3E%3Ccircle cx='15' cy='4' r='1.5' fill='%23dc2626'/%3E%3C/svg%3E");
  background-size: contain; background-repeat: no-repeat;
  z-index: 13; pointer-events: none;
  filter: drop-shadow(0 2px 6px rgba(0,0,0,0.85)) drop-shadow(0 0 8px rgba(217, 119, 6, 0.65));
}

/* G. MAHA SHIVRATRI: Celestial Sapphire & Silver Border + Lord Shiva Trishul */
body[data-festival-id="maha_shivratri"] .category-card::before,
body[data-festival-id="maha_shivratri"] .product-card::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0; height: 3px;
  background: linear-gradient(90deg, #38bdf8 0%, #818cf8 50%, #ffffff 100%);
  z-index: 12; pointer-events: none;
  box-shadow: 0 0 12px rgba(56, 189, 248, 0.65);
}
body[data-festival-id="maha_shivratri"] .category-card::after,
body[data-festival-id="maha_shivratri"] .product-card::after {
  content: '';
  position: absolute;
  top: 6px; right: 8px;
  width: 26px; height: 30px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 32' fill='none'%3E%3Cline x1='14' y1='2' x2='14' y2='30' stroke='%2338bdf8' stroke-width='1.8' stroke-linecap='round'/%3E%3Cpath d='M6 10 Q14 18 22 10' stroke='%2338bdf8' stroke-width='1.8' stroke-linecap='round' fill='none'/%3E%3Cpolygon points='14,2 12,8 16,8' fill='%23ffffff'/%3E%3Cpolygon points='6,10 4,14 8,14' fill='%2338bdf8'/%3E%3Cpolygon points='22,10 20,14 24,14' fill='%2338bdf8'/%3E%3Cpath d='M10 18 L18 24 L10 24 L18 18 Z' fill='%23f59e0b' stroke='%23b45309' stroke-width='0.6'/%3E%3C/svg%3E");
  background-size: contain; background-repeat: no-repeat;
  z-index: 13; pointer-events: none;
  filter: drop-shadow(0 2px 6px rgba(0,0,0,0.85)) drop-shadow(0 0 8px rgba(56, 189, 248, 0.65));
}

/* H. PONGAL & MAKAR SANKRANTI: Harvest Gold & Sunline + Flying Kite */
body[data-festival-id="pongal"] .category-card::before,
body[data-festival-id="pongal"] .product-card::before,
body[data-festival-id="makar_sankranti"] .category-card::before,
body[data-festival-id="makar_sankranti"] .product-card::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0; height: 3px;
  background: linear-gradient(90deg, #10b981 0%, #f59e0b 50%, #10b981 100%);
  z-index: 12; pointer-events: none;
  box-shadow: 0 0 12px rgba(245, 158, 11, 0.6);
}
body[data-festival-id="makar_sankranti"] .category-card::after,
body[data-festival-id="makar_sankranti"] .product-card::after {
  content: '';
  position: absolute;
  top: 6px; right: 8px;
  width: 28px; height: 30px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 32' fill='none'%3E%3Cpolygon points='15,2 26,14 15,24 4,14' fill='%23f97316' stroke='%23fde047' stroke-width='1'/%3E%3Cpolygon points='15,24 11,30 19,30' fill='%2310b981'/%3E%3Cline x1='15' y1='2' x2='15' y2='24' stroke='%23ffffff' stroke-width='0.8'/%3E%3Cpath d='M4 14 Q15 6 26 14' stroke='%23ffffff' stroke-width='0.8' fill='none'/%3E%3C/svg%3E");
  background-size: contain; background-repeat: no-repeat;
  z-index: 13; pointer-events: none;
  filter: drop-shadow(0 2px 6px rgba(0,0,0,0.85)) drop-shadow(0 0 8px rgba(249, 115, 22, 0.65));
}
body[data-festival-id="pongal"] .category-card::after,
body[data-festival-id="pongal"] .product-card::after {
  content: '';
  position: absolute;
  top: 6px; right: 8px;
  width: 28px; height: 28px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30' fill='none'%3E%3Cellipse cx='15' cy='18' rx='10' ry='8' fill='%23b45309' stroke='%23fbbf24' stroke-width='1'/%3E%3Cpath d='M8 14 Q15 11 22 14 Q19 8 15 8 Q11 8 8 14 Z' fill='%23ffffff' stroke='%23fef08a' stroke-width='0.8'/%3E%3Cpath d='M4 2 L8 14 M26 2 L22 14' stroke='%2315803d' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
  background-size: contain; background-repeat: no-repeat;
  z-index: 13; pointer-events: none;
  filter: drop-shadow(0 2px 6px rgba(0,0,0,0.85)) drop-shadow(0 0 8px rgba(245, 158, 11, 0.65));
}

/* I. EASTER: Pastel Spring Blossom & Easter Egg */
body[data-festival-id="easter"] .category-card::before,
body[data-festival-id="easter"] .product-card::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0; height: 3px;
  background: linear-gradient(90deg, #a78bfa 0%, #34d399 50%, #fbcfe8 100%);
  z-index: 12; pointer-events: none;
  box-shadow: 0 0 12px rgba(167, 139, 250, 0.65);
}
body[data-festival-id="easter"] .category-card::after,
body[data-festival-id="easter"] .product-card::after {
  content: '';
  position: absolute;
  top: 6px; right: 8px;
  width: 26px; height: 30px;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 28 32' fill='none'%3E%3Cellipse cx='14' cy='18' rx='10' ry='12' fill='%23a78bfa' stroke='%23c4b5fd' stroke-width='1'/%3E%3Cpath d='M5 16 Q14 22 23 16' stroke='%23fbbf24' stroke-width='2' stroke-linecap='round' fill='none'/%3E%3Ccircle cx='10' cy='12' r='1.5' fill='%23ffffff'/%3E%3Ccircle cx='18' cy='12' r='1.5' fill='%23ffffff'/%3E%3Ccircle cx='14' cy='23' r='1.5' fill='%2334d399'/%3E%3C/svg%3E");
  background-size: contain; background-repeat: no-repeat;
  z-index: 13; pointer-events: none;
  filter: drop-shadow(0 2px 6px rgba(0,0,0,0.85)) drop-shadow(0 0 8px rgba(167, 139, 250, 0.65));
}

/* -------------------------------------------------------------
 * 9. TOP BANNER DEDICATED PINNED PROPS (STURDY, STICKS TO TOP)
 * Pinned at `top: 76px; right: 28px; position: fixed; z-index: 95;`
 * Always remains pinned to the top as page scrolls down without overlap
 * ------------------------------------------------------------- */
.simadda-top-prop-pinned {
  position: fixed;
  top: 76px;
  right: 28px;
  width: 105px;
  height: 125px;
  z-index: 95;
  pointer-events: none;
  filter: drop-shadow(0 10px 24px rgba(0, 0, 0, 0.85));
  transition: transform 0.3s ease;
}

/* Keyframe animations for dedicated top props */
@keyframes simaddaHeartBeat {
  0% { transform: scale(1); filter: drop-shadow(0 0 6px #f43f5e); }
  15% { transform: scale(1.12); filter: drop-shadow(0 0 14px #fb7185); }
  30% { transform: scale(1); filter: drop-shadow(0 0 6px #f43f5e); }
  45% { transform: scale(1.08); filter: drop-shadow(0 0 12px #fb7185); }
  60% { transform: scale(1); filter: drop-shadow(0 0 6px #f43f5e); }
}

@keyframes simaddaCrescentGlow {
  0% { filter: drop-shadow(0 0 8px #fbbf24) drop-shadow(0 0 14px rgba(16, 185, 129, 0.4)); transform: scale(0.97); }
  100% { filter: drop-shadow(0 0 18px #fde047) drop-shadow(0 0 24px rgba(16, 185, 129, 0.7)); transform: scale(1.03); }
}

@keyframes simaddaBonfireFlame {
  0% { transform: scaleY(0.96) skewX(-1deg); }
  50% { transform: scaleY(1.04) skewX(2deg); }
  100% { transform: scaleY(0.97) skewX(-2deg); }
}

@keyframes simaddaDivineBowAura {
  0% { filter: drop-shadow(0 0 8px #f59e0b) drop-shadow(0 0 14px #dc2626); }
  100% { filter: drop-shadow(0 0 18px #fde047) drop-shadow(0 0 26px #ef4444); }
}

/* -------------------------------------------------------------
 * 10. SA LOGO ACCESSORIES LIBRARY FOR EVERY FESTIVAL
 * ------------------------------------------------------------- */
.simadda-logo-acc-valentines {
  top: -10px;
  right: -6px;
  width: 22px;
  height: 20px;
  animation: simaddaHeartBeat 2s ease-in-out infinite;
}

.simadda-logo-acc-eid {
  top: -11px;
  right: -8px;
  width: 22px;
  height: 22px;
  animation: simaddaCrescentGlow 2.5s ease-in-out infinite alternate;
}

.simadda-logo-acc-lohri {
  top: -12px;
  right: -6px;
  width: 22px;
  height: 22px;
  animation: simaddaBonfireFlame 0.3s ease-in-out infinite alternate;
}

.simadda-logo-acc-dussehra {
  top: -10px;
  right: -8px;
  width: 24px;
  height: 22px;
  animation: simaddaDivineBowAura 2s ease-in-out infinite alternate;
}

.simadda-logo-acc-janmashtami {
  top: -13px;
  right: -6px;
  width: 22px;
  height: 26px;
}

.simadda-logo-acc-ganesh {
  top: -10px;
  right: -6px;
  width: 20px;
  height: 20px;
}

.simadda-logo-acc-shivratri {
  top: -11px;
  right: -6px;
  width: 20px;
  height: 22px;
}

.simadda-logo-acc-pongal {
  top: -10px;
  right: -6px;
  width: 20px;
  height: 20px;
}

.simadda-logo-acc-sankranti {
  top: -11px;
  right: -6px;
  width: 20px;
  height: 22px;
}

.simadda-logo-acc-durgapuja {
  top: -11px;
  right: -6px;
  width: 22px;
  height: 22px;
}

.simadda-logo-acc-baisakhi {
  top: -10px;
  right: -6px;
  width: 20px;
  height: 20px;
}

.simadda-logo-acc-rakhi {
  top: -10px;
  right: -6px;
  width: 22px;
  height: 22px;
}

.simadda-logo-acc-khanda {
  top: -11px;
  right: -6px;
  width: 22px;
  height: 22px;
}

.simadda-logo-acc-lotus {
  top: -10px;
  right: -6px;
  width: 22px;
  height: 20px;
}

/* -------------------------------------------------------------
 * 11. DIWALI: PROPERLY CENTER-ALIGNED SHUBH LABH & SACRED DIYAS MODULE
 * Always centered in the middle of the page with impeccable alignment & symmetry
 * ------------------------------------------------------------- */
.simadda-diwali-wishes-module {
  width: 100%;
  max-width: 1100px;
  margin: 12px auto 44px auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 24px 20px;
  background: radial-gradient(ellipse at center, rgba(212, 175, 55, 0.08) 0%, rgba(185, 28, 28, 0.03) 60%, transparent 100%);
  border-radius: 20px;
  border: 1px solid rgba(212, 175, 55, 0.22);
  box-shadow: 0 8px 32px rgba(0, 0, 0, 0.5), inset 0 0 24px rgba(245, 158, 11, 0.08);
  box-sizing: border-box;
  position: relative;
  z-index: 5;
}

.simadda-shubh-labh-banner {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 18px;
  width: 100%;
  margin: 0 0 20px 0;
  text-align: center;
  pointer-events: none;
}

.simadda-sacred-seal {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  border-radius: 50%;
  background: radial-gradient(circle, #b91c1c 0%, #7f1d1d 80%, #450a0a 100%);
  border: 2px solid #fbbf24;
  box-shadow: 0 0 16px rgba(245, 158, 11, 0.6), inset 0 0 8px rgba(254, 240, 138, 0.6);
  font-family: 'Montserrat', sans-serif;
  font-size: 15px;
  font-weight: 800;
  color: #fef08a;
  text-shadow: 0 1px 3px rgba(0,0,0,0.8);
  position: relative;
  animation: simaddaSealGlow 2.5s ease-in-out infinite alternate;
}

.simadda-sacred-satiya {
  width: 32px;
  height: 32px;
  display: inline-block;
  filter: drop-shadow(0 0 8px #f59e0b);
  animation: simaddaSealGlow 2.5s ease-in-out infinite alternate;
}

@keyframes simaddaSealGlow {
  0% { transform: scale(0.96); filter: drop-shadow(0 0 6px #fbbf24); }
  100% { transform: scale(1.04); filter: drop-shadow(0 0 14px #f59e0b); }
}

/* Diwali Earthen Diyas - Centered */
.simadda-diya-container {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 36px;
  width: 100%;
  margin: 0 auto;
  pointer-events: none;
}

.simadda-diya {
  position: relative;
  width: 48px;
  height: 26px;
  display: inline-block;
  filter: drop-shadow(0 4px 12px rgba(245, 158, 11, 0.55));
}

.simadda-diya-bowl {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 48px;
  height: 18px;
  background: linear-gradient(180deg, #c2410c 0%, #7c2d12 100%);
  border-radius: 0 0 24px 24px;
  border: 1.5px solid #d4af37;
  box-shadow: inset 0 2px 4px rgba(254, 240, 138, 0.6), 0 4px 12px rgba(0, 0, 0, 0.6);
}

.simadda-diya-bowl::before {
  content: '';
  position: absolute;
  top: 1px;
  left: 3px;
  right: 3px;
  height: 5px;
  background: #f59e0b;
  border-radius: 50%;
  opacity: 0.9;
}

.simadda-diya-flame {
  position: absolute;
  top: -18px;
  left: 17px;
  width: 14px;
  height: 22px;
  background: radial-gradient(ellipse at bottom, #ffffff 0%, #fef08a 25%, #f97316 70%, transparent 100%);
  border-radius: 50% 50% 20% 20% / 60% 60% 40% 40%;
  animation: simaddaFlameOrganic 0.14s infinite alternate ease-in-out;
  box-shadow: 0 0 14px #fbbf24, 0 0 28px #ea580c, 0 0 42px rgba(234, 88, 12, 0.5);
  transform-origin: bottom center;
}

@keyframes simaddaFlameOrganic {
  0% { transform: scaleY(1.0) scaleX(0.96) rotate(-1.5deg); }
  50% { transform: scaleY(1.12) scaleX(1.04) rotate(1.5deg); }
  100% { transform: scaleY(0.94) scaleX(0.98) rotate(-0.5deg); }
}

/* Diwali Card & Widget Golden Atmosphere */
body[data-festival-id="diwali"] .category-card,
body[data-festival-id="diwali"] .product-card {
  border-color: rgba(212, 175, 55, 0.35) !important;
}

body[data-festival-id="diwali"] .category-card:hover,
body[data-festival-id="diwali"] .product-card:hover {
  border-color: #f59e0b !important;
  box-shadow: 0 16px 44px rgba(0, 0, 0, 0.85), 0 0 28px rgba(245, 158, 11, 0.45), 0 0 42px rgba(212, 175, 55, 0.25) !important;
}

/* 9. ALL-FESTIVALS SA LOGO ACCESSORIES */
.simadda-logo-accessory {
  position: absolute;
  pointer-events: none;
  z-index: 1002;
  filter: drop-shadow(0 2px 6px rgba(0, 0, 0, 0.8));
}

.simadda-logo-acc-christmas {
  top: -12px;
  left: 8px;
  width: 28px;
  height: 24px;
  transform-origin: bottom center;
  animation: simaddaSantaHatSway 2.5s ease-in-out infinite alternate;
}

.simadda-logo-acc-diwali {
  top: -10px;
  right: -6px;
  width: 20px;
  height: 18px;
  animation: simaddaDiyaGlow 1.5s ease-in-out infinite alternate;
}

.simadda-logo-acc-new_year {
  top: -12px;
  left: 14px;
  width: 24px;
  height: 22px;
}

.simadda-logo-acc-holi {
  top: -8px;
  right: -6px;
  width: 22px;
  height: 22px;
}

.simadda-logo-acc-halloween {
  top: -12px;
  left: 10px;
  width: 24px;
  height: 22px;
}

.simadda-logo-acc-easter {
  top: -10px;
  left: 12px;
  width: 22px;
  height: 20px;
}

.simadda-logo-acc-general {
  top: -8px;
  right: -6px;
  width: 18px;
  height: 18px;
}

@keyframes simaddaSantaHatSway {
  0% { transform: rotate(-3deg); }
  100% { transform: rotate(5deg); }
}

@keyframes simaddaDiyaGlow {
  0% { filter: drop-shadow(0 0 4px #fbbf24); }
  100% { filter: drop-shadow(0 0 10px #f59e0b); }
}

/* 10. FESTIVE TOUCH INSIDE FOOTER (STRICTLY ON/INSIDE THE FOOTER CONTAINER - NEVER BELOW) */
.simadda-footer-festive-row {
  width: 100%;
  padding-bottom: 24px;
  margin-bottom: 32px;
  border-bottom: 1px solid var(--festive-primary, rgba(212, 175, 55, 0.25));
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 16px;
  box-sizing: border-box;
}

.simadda-footer-diya-group {
  display: flex;
  align-items: center;
  gap: 16px;
}

.simadda-footer-diya {
  width: 32px;
  height: 18px;
  position: relative;
  display: inline-block;
}

.simadda-footer-diya-bowl {
  width: 32px;
  height: 13px;
  background: linear-gradient(180deg, #c2410c 0%, #7c2d12 100%);
  border-radius: 0 0 16px 16px;
  border: 1px solid rgba(212, 175, 55, 0.5);
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.6);
}

.simadda-footer-diya-flame {
  position: absolute;
  top: -12px;
  left: 10px;
  width: 11px;
  height: 16px;
  background: radial-gradient(ellipse at bottom, #ffffff 0%, #fef08a 25%, #f97316 70%, transparent 100%);
  border-radius: 50% 50% 20% 20% / 60% 60% 40% 40%;
  animation: simaddaFlameOrganic 0.16s infinite alternate ease-in-out;
  box-shadow: 0 0 10px #fbbf24, 0 0 20px #ea580c;
  transform-origin: bottom center;
}

.simadda-footer-title {
  font-family: 'Montserrat', sans-serif;
  font-size: 13px;
  font-weight: 800;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--festive-primary, #d4af37);
}

.simadda-footer-subtitle {
  font-family: 'JetBrains Mono', monospace;
  font-size: 11px;
  color: rgba(255, 255, 255, 0.65);
  letter-spacing: 0.02em;
}

/* 11. PRODUCT CARD FESTIVE ACCENTS */
body[data-festival-active="1"] .product-card {
  transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease !important;
}

body[data-festival-active="1"] .product-card:hover {
  border-color: var(--festive-primary, rgba(212, 175, 55, 0.6)) !important;
  box-shadow: 0 16px 40px rgba(0, 0, 0, 0.8), 0 0 24px var(--festive-glow, rgba(212, 175, 55, 0.25)) !important;
}

/* 12. Administrator Live Preview HUD Toolbar */
.simadda-preview-hud {
  position: fixed;
  bottom: 18px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 999999;
  background: rgba(10, 10, 10, 0.94);
  backdrop-filter: blur(20px);
  -webkit-backdrop-filter: blur(20px);
  border: 1px solid rgba(212, 175, 55, 0.4);
  border-radius: 40px;
  padding: 8px 18px;
  box-shadow: 0 12px 48px rgba(0, 0, 0, 0.85), 0 0 24px rgba(212, 175, 55, 0.2);
  display: flex;
  align-items: center;
  gap: 12px;
  font-family: 'Montserrat', sans-serif;
  color: #ffffff;
  pointer-events: auto;
}

.simadda-preview-hud-badge {
  background: linear-gradient(135deg, #d4af37, #f59e0b);
  color: #050505;
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
  padding: 3px 10px;
  border-radius: 12px;
  letter-spacing: 0.08em;
}

.simadda-preview-hud select {
  background: #18181b !important;
  color: #ffffff !important;
  border: 1px solid rgba(255, 255, 255, 0.25) !important;
  border-radius: 20px !important;
  padding: 5px 14px !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  outline: none !important;
  cursor: pointer;
}

.simadda-preview-hud select:focus {
  border-color: #d4af37 !important;
}

.simadda-preview-hud-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  background: rgba(255, 255, 255, 0.1);
  border: 1px solid rgba(255, 255, 255, 0.25);
  color: #ffffff;
  padding: 5px 14px;
  border-radius: 20px;
  font-size: 11px;
  font-weight: 600;
  cursor: pointer;
  text-decoration: none;
  transition: all 0.2s ease;
}

.simadda-preview-hud-btn:hover {
  background: rgba(212, 175, 55, 0.25);
  border-color: #d4af37;
  color: #d4af37;
}

.simadda-preview-hud-btn-exit {
  background: rgba(239, 68, 68, 0.2);
  border-color: rgba(239, 68, 68, 0.5);
  color: #f87171;
}

.simadda-preview-hud-btn-exit:hover {
  background: #ef4444;
  color: #ffffff;
}

/* 13. Mobile Viewport Adaptations */
@media (max-width: 768px) {
  .simadda-diwali-led-strip {
    top: 64px;
    height: 20px;
    padding: 0 8px;
    z-index: 95;
  }
  .simadda-led-bulb {
    width: 7px;
    height: 11px;
    margin-top: 1px;
  }
  .simadda-halloween-pumpkin-wrap {
    top: 80px;
    right: 16px;
    width: 85px;
    height: 75px;
  }
  .simadda-diya-container {
    gap: 20px;
    margin: 18px 0;
  }
  .simadda-diya {
    transform: scale(0.8);
  }
  .simadda-festival-ribbon {
    top: 72px;
    width: calc(100% - 32px);
    padding: 6px 14px;
    font-size: 11px;
    border-radius: 14px;
  }
  .simadda-festival-ribbon-text {
    font-size: 11px;
  }
  .simadda-footer-festive-row {
    flex-direction: column;
    text-align: center;
    gap: 12px;
  }
  .simadda-footer-diya-group {
    justify-content: center;
  }
  .simadda-shubh-labh-banner {
    gap: 10px;
    transform: scale(0.85);
  }
  .simadda-preview-hud {
    bottom: 12px;
    width: calc(100% - 20px);
    flex-wrap: wrap;
    justify-content: center;
    border-radius: 16px;
    padding: 8px 12px;
    gap: 8px;
  }
}

/* 14. Reduced Motion Accessibility */
@media (prefers-reduced-motion: reduce) {
  #simadda-festival-canvas {
    display: none !important;
  }
  .simadda-diya-flame,
  .simadda-logo-accessory,
  .simadda-footer-diya-flame,
  .simadda-sacred-seal,
  .simadda-sacred-satiya,
  .simadda-led-bulb,
  .simadda-pumpkin-dim-glow {
    animation: none !important;
  }
}
