*{box-sizing:border-box}html,body,#app{margin:0;width:100%;height:100%;font-family:Arial,"Noto Sans Devanagari",sans-serif;background:#100704;color:#fff;overflow:hidden}button{font:inherit;cursor:pointer}.screen{position:fixed;inset:0}.hidden{display:none!important}.welcome{background:url('assets/darshan-main.jpeg') center/cover no-repeat;display:grid;place-items:center;perspective:1200px}.welcomeShade{position:absolute;inset:0;background:radial-gradient(circle at 50% 42%,transparent 0 18%,rgba(12,4,1,.25) 48%,rgba(8,2,0,.84) 100%)}.welcomeCard{position:relative;z-index:6;text-align:center;width:min(92%,650px);padding:30px 20px;text-shadow:0 3px 18px #000}.om,.bigOm{font-size:72px;color:#ffd274;filter:drop-shadow(0 0 18px #e9881b)}.eyebrow{letter-spacing:.08em;color:#ffdba0;font-weight:700}.welcome h1{font-size:clamp(38px,7vw,72px);margin:4px 0}.sub{font-size:18px}.primary{border:1px solid #ffd27d;background:linear-gradient(135deg,#d98319,#ffb02e);color:#211005;border-radius:999px;padding:15px 26px;font-weight:800;font-size:17px;box-shadow:0 8px 35px #d9782366}.primary.small{padding:11px 20px;font-size:14px}.hint{font-size:12px;opacity:.72;margin-top:18px}.door{position:absolute;z-index:5;top:0;bottom:0;width:50%;background:linear-gradient(90deg,#2c1208,#6c2c0d 35%,#a85013 50%,#5b240c 70%,#1d0b05);box-shadow:inset 0 0 80px #000;transition:transform 1.7s cubic-bezier(.65,0,.2,1)}.door:after{content:'ॐ';position:absolute;top:44%;font-size:70px;color:#e8b45b66;text-shadow:0 0 20px #000}.leftDoor{left:0;border-right:2px solid #d9902d}.leftDoor:after{right:22px}.rightDoor{right:0;border-left:2px solid #d9902d}.rightDoor:after{left:22px}.welcome.opening .leftDoor{transform:translateX(-102%)}.welcome.opening .rightDoor{transform:translateX(102%)}.welcome.opening .welcomeCard{animation:fadeOut 1.2s .15s forwards}.bg{position:absolute;inset:-4%;background-position:center;background-size:cover;animation:kenburns 22s ease-in-out infinite alternate;transition:opacity .5s}.ambient{position:absolute;inset:0;background:radial-gradient(circle at 50% 48%,#ffbd4a22,transparent 35%);animation:ambient 5s ease-in-out infinite}.vignette{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.46),transparent 26%,transparent 58%,rgba(0,0,0,.78))}.smoke{position:absolute;inset:0;pointer-events:none;overflow:hidden}.smoke i{position:absolute;bottom:18%;width:90px;height:160px;border-radius:50%;background:radial-gradient(ellipse,#fff2,transparent 65%);filter:blur(12px);animation:smoke 7s linear forwards}.topbar{position:absolute;top:max(14px,env(safe-area-inset-top));left:16px;right:16px;display:flex;align-items:center;justify-content:space-between;z-index:8}.topbar>div:not(.topActions){text-align:center;text-shadow:0 2px 8px #000}.topbar small{display:block;opacity:.8;margin-top:3px}.topActions{display:flex;gap:7px}.glass{width:44px;height:44px;border-radius:50%;border:1px solid #ffffff55;background:#170b06aa;color:#fff;font-size:20px;backdrop-filter:blur(10px)}.sceneNav{position:absolute;top:90px;left:50%;transform:translateX(-50%);z-index:8;display:flex;padding:4px;border:1px solid #ffffff1c;border-radius:999px;background:#170b06b8;backdrop-filter:blur(10px);white-space:nowrap}.sceneNav button{border:0;background:transparent;color:#fff9;padding:9px 14px;border-radius:999px}.sceneNav .active{background:#ffb12b;color:#241204;font-weight:800}.actions{position:absolute;z-index:9;left:50%;bottom:max(18px,env(safe-area-inset-bottom));transform:translateX(-50%);display:grid;grid-template-columns:repeat(7,1fr);gap:6px;width:min(96%,790px);padding:9px;border:1px solid #ffffff25;border-radius:22px;background:#130805c7;backdrop-filter:blur(14px)}.actions button{border:0;background:transparent;color:#fff;font-size:12px;padding:8px 4px;border-radius:14px}.actions span{display:block;font-size:25px;margin-bottom:4px}.actions button:active{background:#ffffff20}.bellRing{animation:ring .7s ease-in-out}.modal{position:fixed;inset:0;z-index:20;background:#000c;display:grid;place-items:center;backdrop-filter:blur(9px)}.modalCard,.aartiCard,.blessingCard{width:min(92%,420px);text-align:center;background:linear-gradient(180deg,#3a190b,#140805);border:1px solid #f2b85a66;border-radius:28px;padding:26px;position:relative;box-shadow:0 20px 80px #000}.close{position:absolute;right:16px;top:12px;background:transparent;border:0;color:#fff;font-size:30px}.modalCard h2,.aartiCard h2,.blessingCard h2{font-size:28px;margin:0}.countBtn{width:150px;height:150px;border-radius:50%;border:2px solid #ffd178;background:#7b2c0b;color:#fff;margin:16px auto;display:flex;align-items:center;justify-content:center;gap:6px;box-shadow:0 0 35px #e78a2455}.countBtn b{font-size:48px}.linkBtn{display:block;margin:10px auto 0;background:none;border:0;color:#ffd178}.progress{height:6px;background:#ffffff17;border-radius:20px;overflow:hidden;margin:16px 0 2px}.progress i{display:block;height:100%;width:0;background:#ffb12b;transition:width .2s}.petal{position:absolute;top:-40px;z-index:5;font-size:22px;animation:fall 4s linear forwards}.leaf{font-size:30px}.waterStream{position:absolute;z-index:5;top:-12%;left:50%;width:14px;height:72%;transform:translateX(-50%);background:linear-gradient(90deg,transparent,#b9f2ffbb,#fff,#a8eaffcc,transparent);box-shadow:0 0 16px #aeefff88;filter:blur(.5px);border-radius:50%;animation:pour 3.4s ease-in forwards}.waterSplash{position:absolute;z-index:5;left:50%;top:56%;width:130px;height:32px;transform:translateX(-50%);border:3px solid #dffaffbb;border-radius:50%;animation:splash 1.2s 1.6s ease-out forwards;opacity:0}.lit{position:absolute;inset:0;z-index:3;pointer-events:none;background:radial-gradient(circle at 50% 68%,#ffbd4a77,transparent 32%);animation:pulse 3s ease-out forwards}.stageDiya{position:absolute;z-index:6;bottom:112px;left:50%;transform:translateX(-50%);font-size:48px;filter:drop-shadow(0 0 16px #ff9e2c);animation:diyaIn .5s ease-out}.stageDiya i,.aartiDiya i{position:absolute;width:12px;height:24px;background:radial-gradient(ellipse at bottom,#fff 0 18%,#ffd45a 30%,#ff7b1c 65%,transparent 70%);border-radius:50% 50% 45% 45%;filter:drop-shadow(0 0 8px #ff8a19);animation:flame .55s ease-in-out infinite alternate}.stageDiya i{left:19px;top:-3px}.aartiArea{height:270px;position:relative;margin:8px 0 14px;touch-action:none}.aartiHalo{position:absolute;inset:40px;border-radius:50%;background:radial-gradient(circle,#ffb52d22,transparent 65%)}.aartiDiya{position:absolute;left:50%;top:55%;font-size:55px;transform:translate(-50%,-50%);filter:drop-shadow(0 0 18px #ff9e2c);user-select:none}.aartiDiya i{left:21px;top:-4px}.blessingCard{background:radial-gradient(circle at 50% 25%,#8a3b0d,#251006 58%,#100704)}#toast{position:absolute;z-index:12;left:50%;bottom:135px;transform:translateX(-50%) translateY(15px);padding:10px 18px;border-radius:999px;background:#160b06e8;border:1px solid #ffd17855;opacity:0;transition:.25s;white-space:nowrap}#toast.show{opacity:1;transform:translateX(-50%) translateY(0)}
@keyframes kenburns{from{transform:scale(1.02)}to{transform:scale(1.1)}}@keyframes ambient{50%{opacity:.55;transform:scale(1.08)}}@keyframes fall{to{transform:translate(var(--drift),110vh) rotate(420deg);opacity:.12}}@keyframes pour{0%{opacity:0;transform:translateX(-50%) scaleY(.03)}18%{opacity:1}78%{opacity:1}100%{opacity:0;transform:translateX(-50%) scaleY(1)}}@keyframes splash{0%{opacity:0;transform:translateX(-50%) scale(.2)}30%{opacity:1}100%{opacity:0;transform:translateX(-50%) scale(1.6)}}@keyframes pulse{from{opacity:0}35%{opacity:1}to{opacity:0}}@keyframes smoke{from{opacity:0;transform:translateY(0) scale(.7)}25%{opacity:.55}to{opacity:0;transform:translateY(-55vh) translateX(40px) scale(1.5)}}@keyframes flame{from{transform:scale(.9) rotate(-3deg)}to{transform:scale(1.12) rotate(4deg)}}@keyframes ring{20%{transform:rotate(22deg)}40%{transform:rotate(-20deg)}60%{transform:rotate(13deg)}80%{transform:rotate(-8deg)}}@keyframes diyaIn{from{opacity:0;transform:translateX(-50%) translateY(30px) scale(.6)}}@keyframes fadeOut{to{opacity:0;transform:scale(.95)}}
@media(max-width:650px){.actions{grid-template-columns:repeat(4,1fr);bottom:10px}.sceneNav{top:76px}.sceneNav button{padding:8px 10px;font-size:12px}.bg{inset:-2%;background-size:cover}#toast{bottom:185px}.welcomeCard{padding-bottom:70px}.topbar{left:10px;right:10px}.topActions{gap:4px}.glass{width:40px;height:40px}.stageDiya{bottom:178px}.door:after{font-size:48px}.leftDoor:after{right:12px}.rightDoor:after{left:12px}}@media(min-width:900px){.bg{background-size:contain;background-repeat:no-repeat;background-color:#120805}}
/* V3 immersive realism */
.divineRays{position:absolute;inset:-20%;z-index:2;pointer-events:none;background:conic-gradient(from 190deg at 50% 20%,transparent 0 8%,#ffd77912 10%,transparent 13% 23%,#ffd7790d 26%,transparent 29% 100%);filter:blur(6px);animation:rays 12s ease-in-out infinite alternate;mix-blend-mode:screen}.waterStream{width:22px;background:linear-gradient(90deg,transparent,#8eeaff66 12%,#e8fdffdd 35%,#fff 50%,#a9efffbb 70%,transparent);filter:blur(.2px);box-shadow:0 0 9px #b9f6ff,0 0 28px #62dfff77;transform-origin:top}.waterStream:after{content:'';position:absolute;inset:0;background:repeating-linear-gradient(180deg,transparent 0 16px,#fff9 18px 21px,transparent 23px 39px);animation:waterMove .32s linear infinite}.droplet{position:absolute;z-index:6;width:7px;height:12px;border-radius:50% 50% 60% 60%;background:#dffcffdd;box-shadow:0 0 7px #b9f6ff;animation:drop 1s ease-out forwards}.ripple{position:absolute;z-index:5;left:50%;top:58%;width:60px;height:20px;border:2px solid #c9f8ffcc;border-radius:50%;transform:translate(-50%,-50%);animation:ripple 1.6s ease-out forwards}.actions{grid-template-columns:repeat(8,1fr)}.focusCard{width:min(92%,430px);text-align:center;background:radial-gradient(circle at 50% 30%,#5b2b10,#170a05 65%);border:1px solid #f2b85a66;border-radius:28px;padding:30px;position:relative}.focusOm{font-size:86px;color:#ffd274;text-shadow:0 0 35px #ff9b22;animation:focusGlow 4s ease-in-out infinite}.breath{height:170px;display:grid;place-items:center;position:relative}.breath i{position:absolute;width:90px;height:90px;border-radius:50%;border:1px solid #ffd27499;background:#ffb12b15;box-shadow:0 0 40px #ffb12b33;animation:breathe 8s ease-in-out infinite}.breath span{z-index:2;font-weight:700}.aartiProgress{height:5px;background:#ffffff18;border-radius:10px;overflow:hidden;margin:8px 20px}.aartiProgress i{display:block;height:100%;width:0;background:#ffc24b;transition:width .2s}.aartiCard small{display:block;color:#ffd99c;margin-bottom:8px}.aartiArea:before{content:'ॐ';position:absolute;inset:0;display:grid;place-items:center;font-size:78px;color:#ffd27433;text-shadow:0 0 30px #ff9b2233}.sceneNav,.actions,.topbar{transition:opacity .35s,transform .35s}.zen .sceneNav,.zen .actions{opacity:0;pointer-events:none;transform:translateX(-50%) translateY(20px)}.zen .topbar{opacity:.35}.zen .bg{animation-duration:34s}.zen .vignette{background:radial-gradient(circle at 50% 48%,transparent 10%,rgba(0,0,0,.6) 90%)}
@keyframes rays{to{transform:rotate(2deg) scale(1.08);opacity:.55}}@keyframes waterMove{to{transform:translateY(39px)}}@keyframes drop{to{transform:translate(var(--dx),80px) scale(.35);opacity:0}}@keyframes ripple{from{opacity:.9;transform:translate(-50%,-50%) scale(.2)}to{opacity:0;transform:translate(-50%,-50%) scale(3)}}@keyframes focusGlow{50%{transform:scale(1.06);filter:brightness(1.2)}}@keyframes breathe{0%,100%{transform:scale(.65);opacity:.45}50%{transform:scale(1.45);opacity:1}}
@media(max-width:650px){.actions{grid-template-columns:repeat(4,1fr)}.divineRays{inset:-40%}}
/* V4 Guided Puja Journey */
.modePick{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:18px}.secondary{border:1px solid rgba(255,202,91,.55);background:rgba(35,14,5,.62);color:#ffe0a0;border-radius:999px;padding:13px 18px;font-weight:700;cursor:pointer}.journey{position:fixed;left:50%;top:78px;transform:translateX(-50%);z-index:12;width:min(760px,88vw);display:flex;align-items:center;justify-content:center;gap:5px;padding:7px 10px;border-radius:999px;background:rgba(20,7,2,.52);backdrop-filter:blur(9px);border:1px solid rgba(255,211,118,.18);transition:.35s}.journey span{font-size:11px;color:#d8b982;white-space:nowrap}.journey span.done{color:#ffe5a4}.journey span.current{color:#fff;font-weight:800;text-shadow:0 0 12px #ffc34d}.journey i{width:14px;height:1px;background:#8d632d}.guideCard{position:fixed;left:50%;bottom:112px;transform:translateX(-50%);z-index:15;width:min(520px,90vw);padding:15px 18px;border-radius:18px;background:linear-gradient(180deg,rgba(38,15,6,.88),rgba(15,5,2,.9));border:1px solid rgba(255,204,101,.3);box-shadow:0 12px 42px #0008;text-align:center;backdrop-filter:blur(10px)}.guideCard h3{margin:0 0 5px;color:#ffe2a0;font-size:18px}.guideCard p{margin:0 0 10px;color:#f4dfc2;font-size:13px}.guideCard button{padding:9px 16px}.pujaTray{position:fixed;left:50%;bottom:25px;transform:translateX(-50%);z-index:18;display:flex;gap:15px;align-items:center;padding:10px 18px;border-radius:50px;background:rgba(42,17,7,.8);border:1px solid #d89d42;box-shadow:0 8px 35px #0009}.offering{font-size:34px;cursor:grab;user-select:none;filter:drop-shadow(0 4px 5px #0008);transition:.2s}.offering:active{cursor:grabbing;transform:scale(1.15)}.targetGlow{position:fixed;left:50%;top:50%;width:210px;height:260px;transform:translate(-50%,-42%);border-radius:50%;z-index:8;pointer-events:none;box-shadow:0 0 0 2px rgba(255,209,104,.12),0 0 55px rgba(255,172,44,.18);animation:pulseTarget 2s infinite}@keyframes pulseTarget{50%{box-shadow:0 0 0 5px rgba(255,209,104,.06),0 0 75px rgba(255,172,44,.3)}}.holdLota{position:fixed;left:50%;top:20%;transform:translateX(-50%);z-index:20;font-size:58px;cursor:pointer;filter:drop-shadow(0 5px 7px #000);animation:lotaFloat 2s ease-in-out infinite}.holdLota.active{transform:translateX(-50%) rotate(-28deg)}@keyframes lotaFloat{50%{margin-top:6px}}.stageMessage{position:fixed;left:50%;top:20%;transform:translateX(-50%);z-index:22;color:#fff1bd;background:#3b1709d9;border:1px solid #d79d46;border-radius:999px;padding:9px 16px;font-weight:700;box-shadow:0 8px 25px #0007}.actions.v4hidden,.sceneNav.v4hidden{opacity:0;pointer-events:none}.quick .journey{display:none}@media(max-width:700px){.journey{top:70px;width:94vw;overflow:hidden}.journey span{font-size:9px}.journey i{width:5px}.guideCard{bottom:96px}.pujaTray{bottom:18px}.targetGlow{width:150px;height:220px}.holdLota{top:18%}}

/* V4.0.1 Jal Abhishek hotfix: single stream aligned from lota to Shivling; no corner shower. */
.waterStream.centralAbhishek{right:auto;bottom:auto;animation:centralPour 3.4s ease-in forwards}
.waterSplash{transform:translate(-50%,-50%)}
@keyframes centralPour{0%{opacity:0;clip-path:inset(0 0 100% 0)}12%{opacity:1}32%{clip-path:inset(0 0 0 0)}88%{opacity:1}100%{opacity:0;clip-path:inset(0 0 0 0)}}
/* V4.0.2 — automatic full Shiva Aarti */
.aartiControls{display:flex;justify-content:center;gap:8px;margin-top:8px}.secondary.small{padding:10px 16px;font-size:13px;border-radius:999px}.aartiHint{font-size:12px;opacity:.72;margin:10px 0 0}.aartiArea.autoAarti{height:285px}.aartiArea.autoAarti .aartiDiya{will-change:left,top,transform}.aartiArea.autoAarti .aartiHalo{animation:aartiHaloPulse 2.4s ease-in-out infinite}@keyframes aartiHaloPulse{50%{transform:scale(1.08);filter:brightness(1.35)}}
/* V4.0.3 — persistent guided navigation hotfix */
#guidedUI{position:fixed;inset:0;z-index:30;pointer-events:none}
#guidedUI .guideCard,#guidedUI .holdLota,#guidedUI .pujaTray,#guidedUI .stageMessage{pointer-events:auto}
#guidedUI .guideCard{bottom:max(22px,env(safe-area-inset-bottom));z-index:35;width:min(620px,calc(100vw - 28px));padding:14px 18px}
#guidedUI .guideCard .stageActions{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-top:9px}
#guidedUI .guideCard .stageActions button{min-height:42px}
#guidedUI .pujaTray{bottom:132px;z-index:36}
#guidedUI .holdLota{z-index:36}
#guidedUI .targetGlow{z-index:31}
#guidedUI .stageMessage{z-index:37}
@media(max-width:700px){#guidedUI .guideCard{bottom:max(12px,env(safe-area-inset-bottom));padding:12px 14px}#guidedUI .guideCard h3{font-size:16px}#guidedUI .guideCard p{font-size:12px}#guidedUI .pujaTray{bottom:128px}}

/* V4.0.4 fail-safe navigation: always visible, independent of guided card */
.emergencyNav{position:fixed!important;z-index:9999!important;left:50%!important;bottom:18px!important;transform:translateX(-50%)!important;width:min(560px,calc(100vw - 28px))!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;padding:10px 12px!important;background:#241006f2!important;border:1px solid #e5aa4c!important;border-radius:18px!important;box-shadow:0 10px 40px #000c!important;pointer-events:auto!important}.emergencyNav.hidden{display:none!important}.emergencyNav div{font-weight:700;color:#ffe2a0}.emergencyNav button{flex:0 0 auto;min-height:44px}@media(max-width:650px){.emergencyNav{bottom:10px!important;flex-direction:column!important}.emergencyNav button{width:100%}}
/* V4.0.6 — full-screen Aarti over main Darshan */
#aartiModal.aartiStageMode{background:transparent;backdrop-filter:none;pointer-events:none;z-index:18}
#aartiModal.aartiStageMode .aartiCard{display:none!important}
.stageAartiDiya{position:absolute;z-index:19;font-size:58px;filter:drop-shadow(0 0 16px #ff9e2c) drop-shadow(0 0 28px #ffb52d88);transform:translate(-50%,-50%);pointer-events:none;will-change:left,top}
.stageAartiDiya i{position:absolute;left:22px;top:-4px;width:12px;height:24px;background:radial-gradient(ellipse at bottom,#fff 0 18%,#ffd45a 30%,#ff7b1c 65%,transparent 70%);border-radius:50%;filter:drop-shadow(0 0 8px #ff8a19);animation:flame .55s ease-in-out infinite alternate}
.stageAartiControls{position:absolute;z-index:20;left:50%;bottom:max(22px,env(safe-area-inset-bottom));transform:translateX(-50%);width:min(92%,520px);padding:10px 14px;border:1px solid #ffd17855;border-radius:18px;background:#160b06cc;backdrop-filter:blur(10px);text-align:center}
.stageAartiControls .bar{height:5px;background:#ffffff20;border-radius:10px;overflow:hidden;margin-bottom:7px}.stageAartiControls .bar i{display:block;height:100%;width:0;background:#ffc24b}.stageAartiControls small{color:#ffe0a9}.stageAartiControls .row{display:flex;justify-content:center;gap:8px;margin-top:7px}.stageAartiControls button{border:1px solid #ffd17866;background:#281108;color:#fff;border-radius:999px;padding:7px 12px}
@media(max-width:600px){.stageAartiDiya{font-size:48px}.stageAartiControls{bottom:12px}}

/* V4.0.7 — distraction-free fullscreen Aarti UI */
#darshan.aartiImmersive .topbar,#darshan.aartiImmersive #journey,#darshan.aartiImmersive #guidedUI,#darshan.aartiImmersive #emergencyNav,#darshan.aartiImmersive .actions,#darshan.aartiImmersive .sceneNav{display:none!important}
#darshan.aartiImmersive .stageAartiControls{bottom:max(8px,env(safe-area-inset-bottom));width:min(94%,430px);padding:6px 10px;border-radius:13px;background:#120906a8;transition:opacity .3s ease,transform .3s ease;opacity:.94}
#darshan.aartiImmersive .stageAartiControls.idle{opacity:.12;transform:translate(-50%,8px)}
#darshan.aartiImmersive .stageAartiControls .bar{height:3px;margin-bottom:4px}
#darshan.aartiImmersive .stageAartiControls small{font-size:11px}
#darshan.aartiImmersive .stageAartiControls .row{margin-top:4px;gap:5px}
#darshan.aartiImmersive .stageAartiControls button{padding:4px 9px;font-size:11px;min-height:28px}
@media(max-width:600px){#darshan.aartiImmersive .stageAartiControls{width:calc(100% - 18px);bottom:max(5px,env(safe-area-inset-bottom));padding:5px 8px}.stageAartiDiya{font-size:44px}}

/* V4.0.8 — traditional multi-diya Aarti thali */
.stageAartiDiya{width:118px;height:82px;font-size:0;filter:drop-shadow(0 0 15px #ff9e2c) drop-shadow(0 0 30px #ffb52d66)}
.stageAartiDiya .thaliPlate{position:absolute;left:50%;top:52%;width:108px;height:52px;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(ellipse at 50% 38%,#fff0a2 0 4%,#f7c34e 8%,#bd7218 42%,#75400d 70%,#e7a832 78%,#6b3509 100%);border:2px solid #ffd56b;box-shadow:inset 0 3px 8px #fff5,0 4px 8px #0008,0 0 20px #ff9d2a66}
.stageAartiDiya .thaliPlate:after{content:'ॐ';position:absolute;left:50%;top:51%;transform:translate(-50%,-50%);font-size:19px;color:#8c3909;font-weight:800;text-shadow:0 1px #ffe59a}
.stageAartiDiya .thaliFlowers{position:absolute;left:50%;top:54%;transform:translate(-50%,-50%);font-size:14px;letter-spacing:14px;white-space:nowrap;z-index:2;opacity:.92}
.stageAartiDiya .wick{position:absolute;z-index:4;width:25px;height:15px;border-radius:50% 50% 45% 45%;background:radial-gradient(ellipse at 50% 35%,#ffdb74,#d77b18 58%,#6e2f08 72%);border:1px solid #ffcc55;box-shadow:0 2px 3px #0008}
.stageAartiDiya .wick:before{content:'';position:absolute;left:7px;top:-19px;width:11px;height:22px;background:radial-gradient(ellipse at bottom,#fff 0 16%,#fff5a6 27%,#ffc13d 46%,#ff6c12 67%,transparent 72%);border-radius:50% 50% 45% 45%;filter:drop-shadow(0 0 6px #ff8a19);transform-origin:50% 100%;animation:thaliFlame .5s ease-in-out infinite alternate}
.stageAartiDiya .w1{left:14px;top:23px}.stageAartiDiya .w2{left:36px;top:8px}.stageAartiDiya .w3{left:59px;top:3px}.stageAartiDiya .w4{left:82px;top:8px}.stageAartiDiya .w5{left:102px;top:23px}
.stageAartiDiya .w2:before,.stageAartiDiya .w4:before{animation-delay:-.18s}.stageAartiDiya .w3:before{animation-delay:-.31s}
@keyframes thaliFlame{from{transform:scale(.88) rotate(-4deg)}to{transform:scale(1.12) rotate(5deg)}}
@media(max-width:600px){.stageAartiDiya{transform:translate(-50%,-50%) scale(.82)}}

/* V4.0.10 — compact guided bottom navigation so Darshan remains unobstructed */
#guidedUI .guideCard{display:none!important}
#darshan:not(.aartiImmersive) .emergencyNav{bottom:max(10px,env(safe-area-inset-bottom))!important;width:min(520px,calc(100vw - 24px))!important;min-height:56px!important;padding:6px 8px 6px 14px!important;border-radius:999px!important;background:#241006d9!important;backdrop-filter:blur(10px)!important;box-shadow:0 6px 24px #0009!important}
#darshan:not(.aartiImmersive) .emergencyNav div{font-size:14px!important;white-space:nowrap!important}
#darshan:not(.aartiImmersive) .emergencyNav button{min-height:44px!important;padding:9px 16px!important;font-size:14px!important;white-space:nowrap!important}
#guidedUI .pujaTray{bottom:78px!important}
#guidedUI .stageMessage{top:auto!important;bottom:82px!important}
@media(max-width:650px){#darshan:not(.aartiImmersive) .emergencyNav{flex-direction:row!important;width:calc(100vw - 16px)!important;min-height:52px!important;bottom:max(6px,env(safe-area-inset-bottom))!important;padding:5px 6px 5px 10px!important;gap:6px!important}#darshan:not(.aartiImmersive) .emergencyNav div{font-size:12px!important}#darshan:not(.aartiImmersive) .emergencyNav button{width:auto!important;min-height:40px!important;padding:8px 11px!important;font-size:12px!important}.pujaTray,#guidedUI .pujaTray{bottom:68px!important}}

/* V4.0.11 — centered Jal Abhishek trigger + temporary dual-corner ceremonial shower */
#darshan.jalStage .emergencyNav{justify-content:center!important;width:auto!important;min-width:220px!important;padding:6px!important}
#darshan.jalStage .emergencyNav>div{display:none!important}
#darshan.jalStage .emergencyNav button{margin:0!important;min-width:210px!important}
#darshan.jalStage #guidedUI .targetGlow,#darshan.jalStage #guidedUI .holdLota{display:none!important}
.cornerJal{position:absolute;z-index:17;top:0;width:24%;height:63%;pointer-events:none;overflow:visible;opacity:0;transition:opacity .35s ease}
.cornerJal.on{opacity:1}.cornerJal.left{left:0}.cornerJal.right{right:0}
.cornerJal .jet{position:absolute;top:-5%;width:10px;height:112%;border-radius:50%;background:linear-gradient(90deg,transparent,#bfefffaa,#fff 48%,#9de6ffcc,transparent);box-shadow:0 0 12px #aeefff88;filter:blur(.35px);transform-origin:top center;animation:jalPulse .7s ease-in-out infinite alternate}
.cornerJal.left .j1{left:28%;transform:rotate(-10deg)}.cornerJal.left .j2{left:48%;transform:rotate(-6deg);animation-delay:-.22s}.cornerJal.left .j3{left:68%;transform:rotate(-2deg);animation-delay:-.41s}
.cornerJal.right .j1{right:28%;transform:rotate(10deg)}.cornerJal.right .j2{right:48%;transform:rotate(6deg);animation-delay:-.22s}.cornerJal.right .j3{right:68%;transform:rotate(2deg);animation-delay:-.41s}
.cornerJal .drops{position:absolute;inset:0;background-image:radial-gradient(circle,#dffaff 0 1.5px,transparent 2px);background-size:26px 31px;opacity:.55;animation:jalDrops .55s linear infinite}
@keyframes jalPulse{from{opacity:.58;filter:blur(.8px)}to{opacity:1;filter:blur(.1px)}}
@keyframes jalDrops{to{background-position:0 31px}}
#darshan.jalStage.jalRunning .bg{filter:saturate(1.05) brightness(1.04)}
@media(max-width:650px){.cornerJal{width:30%;height:58%}#darshan.jalStage .emergencyNav{min-width:190px!important}#darshan.jalStage .emergencyNav button{min-width:180px!important}}

/* V4.0.12 — realistic Jal Abhishek constrained to the visible centre Darshan image */
.cornerJal{display:none!important}
.jalImageFx{position:absolute;z-index:17;top:0;bottom:0;left:50%;transform:translateX(-50%);width:min(100vw,66.667vh);pointer-events:none;overflow:hidden;opacity:0;transition:opacity .35s ease;contain:paint}
.jalImageFx.on{opacity:1}
.jalPour{position:absolute;top:-2%;width:23%;height:55%;filter:drop-shadow(0 0 5px #bdefff88);transform-origin:50% 0}
.jalPour.left{left:5%;transform:rotate(-9deg)}
.jalPour.right{right:5%;transform:rotate(9deg)}
.jalRibbon{position:absolute;top:0;height:100%;border-radius:48% 52% 45% 55%;background:linear-gradient(90deg,transparent 0%,#8bdfff33 12%,#dffaffbb 31%,#fffddd 47%,#a9eaff99 67%,#6ccfff22 86%,transparent 100%);box-shadow:inset 0 0 8px #fff8,0 0 8px #75dfff55;mix-blend-mode:screen;animation:realWater 1.05s ease-in-out infinite alternate}
.jalRibbon.r1{left:21%;width:13px;clip-path:polygon(25% 0,85% 0,64% 18%,96% 36%,54% 53%,84% 71%,38% 100%,0 100%,30% 72%,4% 54%,37% 35%,9% 17%)}
.jalRibbon.r2{left:44%;width:10px;opacity:.82;animation-delay:-.38s;clip-path:polygon(14% 0,88% 0,61% 21%,92% 39%,48% 57%,79% 76%,43% 100%,0 100%,24% 77%,3% 58%,34% 39%,5% 20%)}
.jalRibbon.r3{left:63%;width:7px;opacity:.58;animation-delay:-.7s;clip-path:polygon(20% 0,100% 0,64% 22%,91% 43%,52% 62%,82% 80%,35% 100%,0 100%,29% 79%,2% 60%,38% 41%,8% 20%)}
.jalSpray{position:absolute;inset:0;background-image:radial-gradient(ellipse at center,#effdff 0 1px,#bcefffaa 1.5px,transparent 2.5px);background-size:19px 27px;opacity:.65;mask-image:linear-gradient(to bottom,#000 0 76%,transparent 100%);animation:realDrops .48s linear infinite}
.jalMist{position:absolute;left:15%;right:15%;bottom:-3%;height:26%;background:radial-gradient(ellipse at 50% 5%,#e6fbff77,transparent 63%);filter:blur(7px);opacity:.55;animation:jalMist 1.1s ease-in-out infinite alternate}
@keyframes realWater{0%{translate:-2px 0;scale:.9 1;opacity:.7}50%{translate:2px 0;scale:1.15 1;opacity:1}100%{translate:-1px 0;scale:.96 1;opacity:.82}}
@keyframes realDrops{to{background-position:3px 27px}}
@keyframes jalMist{to{opacity:.85;transform:scaleX(1.12)}}
@media(max-width:899px){.jalImageFx{width:100vw}.jalPour{height:52%;width:25%}.jalPour.left{left:3%}.jalPour.right{right:3%}}
