/* LifeForce Diwali Popup v2 — overlay styles */
#dw-root { position: fixed; top: 0; right: 0; bottom: 0; left: 0; overflow: hidden; pointer-events: none; z-index: 2147483000; font-family: 'Roboto Slab', Georgia, serif; }
#dw-root .btn-icon { width: 38px; height: 38px; padding: 0; display: grid; place-items: center; border-radius: 999px; cursor: pointer; }
#dw-root button { font: inherit; }
#dw-root [hidden] { display: none !important; }
#dw-root, #dw-root * { -webkit-tap-highlight-color: transparent; }
.dw-cr { touch-action: manipulation; cursor: pointer; -webkit-user-select: none; user-select: none; -webkit-touch-callout: none; }
.dw-stage { -webkit-user-select: none; user-select: none; }

html.dw-cursor #dw-root input { cursor: text !important; }
#dw-root input:focus, #dw-root select:focus { border-color: #f0a020 !important; box-shadow: 0 0 0 3px rgba(240,160,32,.3); }

html.dw-cursor, html.dw-cursor * { cursor: none !important; }
html.dw-cursor input, html.dw-cursor textarea { cursor: text !important; }
@keyframes dw-sway { 0%, 100% { transform: rotate(-4deg); } 50% { transform: rotate(4deg); } }
@keyframes dw-drop { 0% { transform: translateY(-260px); opacity: 0; } 100% { transform: translateY(0); opacity: 1; } }
@keyframes dw-ember { 0% { transform: translate(0, 0); opacity: 0; } 10% { opacity: .9; } 80% { opacity: .6; } 100% { transform: translate(30px, -95vh); opacity: 0; } }
@keyframes dw-bulb { 0%, 100% { opacity: 1; } 50% { opacity: .35; } }
@keyframes dw-fade { from { opacity: 0; } to { opacity: 1; } }
@keyframes dw-rise { 0% { transform: translateY(120px); opacity: 0; } 100% { transform: translateY(0); opacity: 1; } }
@keyframes dw-twinkle { 0%, 100% { opacity: .15; transform: scale(.6); } 50% { opacity: 1; transform: scale(1); } }
@keyframes dw-flicker { 0%, 100% { transform: scale(1, 1) rotate(-2deg); } 25% { transform: scale(.92, 1.08) rotate(3deg); } 50% { transform: scale(1.05, .94) rotate(-1deg); } 75% { transform: scale(.96, 1.1) rotate(2deg); } }
@keyframes dw-glow { 0%, 100% { opacity: .55; } 50% { opacity: .9; } }
@keyframes dw-pulse { 0%, 100% { transform: scale(1); } 50% { transform: scale(1.05); } }
@keyframes dw-shine { 0% { left: -60%; } 60%, 100% { left: 130%; } }
@keyframes dw-tag { 0%, 100% { transform: translateX(-50%) translateY(0); } 50% { transform: translateX(-50%) translateY(-4px); } }
.dw-cr svg { transition: transform .38s cubic-bezier(.3,1.5,.5,1), filter .38s ease; transform-origin: 50% 100%; }
.dw-idle .dw-cr svg { animation: dw-invite 2.6s ease-in-out infinite; }
.dw-idle .dw-cr:nth-child(2) svg { animation-delay: .45s; }
.dw-idle .dw-cr:nth-child(3) svg { animation-delay: .9s; }
.dw-idle .dw-cr:hover svg { transform: scale(1.16) translateY(-4px); filter: drop-shadow(0 0 12px rgba(255,196,90,.95)) drop-shadow(0 0 3px rgba(255,240,200,.9)); animation: none; }
@keyframes dw-invite { 0%, 100% { filter: drop-shadow(0 0 0 rgba(255,190,80,0)); transform: translateY(0); } 50% { filter: drop-shadow(0 0 9px rgba(255,190,80,.8)); transform: translateY(-2px); } }
.dw-hand { position: absolute; width: 30px; height: 38px; pointer-events: none; opacity: 0; animation: dw-hand 4.8s ease-in-out infinite; filter: drop-shadow(0 2px 4px rgba(0,0,0,.4)); }
.dw-crs:not(.dw-idle) .dw-hand { display: none; }
.dw-hand .dw-rip { transform-box: fill-box; transform-origin: center; opacity: 0; animation: dw-rip 4.8s ease-out infinite; }
@keyframes dw-hand { 0% { opacity: 0; transform: translateY(-12px); } 6% { opacity: 1; } 12% { transform: translateY(0); } 18% { transform: translateY(-7px); } 24% { transform: translateY(0); } 30% { opacity: 1; } 34%, 100% { opacity: 0; transform: translateY(-4px); } }
@keyframes dw-rip { 0%, 11% { opacity: 0; transform: scale(.4); } 13% { opacity: .9; } 20% { opacity: 0; transform: scale(2.4); } 22% { opacity: 0; transform: scale(.4); } 24% { opacity: .9; } 31% { opacity: 0; transform: scale(2.4); } 100% { opacity: 0; } }
@keyframes dw-float { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-7px); } }
@keyframes dw-fshadow { 0%, 100% { transform: translateX(-50%) scale(1); } 50% { transform: translateX(-50%) scale(.86); } }
@keyframes dw-glowtext { 0%, 100% { text-shadow: 0 0 6px rgba(240,160,32,.3); } 50% { text-shadow: 0 0 16px rgba(240,160,32,.9); } }
@keyframes dw-hint { 0%, 100% { opacity: .7; transform: translateX(-50%) translateY(0); } 50% { opacity: 1; transform: translateX(-50%) translateY(-6px); } }
.dw-flame { transform-box: fill-box; transform-origin: 50% 100%; animation: dw-flicker .9s ease-in-out infinite; }
.dw-halo { animation: dw-glow 1.6s ease-in-out infinite; }
/* Hidden until the script decides to show it (once per visit). */
#dw-root { display: none; }
#dw-root.dw-on { display: block; }
/* Keep the theme's form styles from leaking into the popup. */
#dw-root input[type="text"], #dw-root input[type="tel"], #dw-root input[type="email"] { margin: 0; height: auto; line-height: 1.3; box-shadow: none; max-width: none; }
#dw-root label { margin: 0; }
#dw-root a { box-shadow: none; }
/* Honeypot field: invisible to people, bots fill it in. */
#dw-root .dw-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
