/* Painted character theatre. Only transform and opacity animate continuously. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.reading-text:has(.story-player){padding:22px 4% 30px}.reader:has(.story-player.is-expanded){width:1400px}.story-player{--stage-green:#123b34;--stage-gold:#d7bc80;background:#f9f7ef;border:1px solid #dedccb;border-radius:7px;overflow:hidden;line-height:1.7}.story-player-heading{display:flex;align-items:center;justify-content:space-between;gap:15px;padding:12px 20px;background:#173b33;color:#d2c39a;font-size:10px;letter-spacing:.6px}.story-player-heading i{font-style:normal;margin:0 10px;color:#a88b53}.story-player-heading button{color:#d9c595;border:1px solid #c9b78544;background:transparent;border-radius:4px;font-size:20px;line-height:1;width:30px;height:29px}.story-stage{position:relative;aspect-ratio:16/9;min-height:260px;overflow:hidden;isolation:isolate;background:radial-gradient(ellipse at 55% 30%,#69836c,#284d41 50%,#102e29);--seek-delay:0ms;--play-rate:1}.setting-cosmos{background:radial-gradient(ellipse at 52% 40%,#8c7751,#334c48 43%,#102b30 80%)}.setting-ocean{background:radial-gradient(ellipse at 50% 20%,#71877e,#24464f 60%,#102c38)}.setting-battle{background:radial-gradient(ellipse at 60% 20%,#9b855f,#4c5144 50%,#263e36)}.setting-palace,.setting-temple{background:radial-gradient(ellipse at 50% 30%,#927748,#374d3a 60%,#172f2a)}.setting-dawn{background:radial-gradient(ellipse at 51% 26%,#d6b979,#8c9677 39%,#3a6556 75%,#274d43)}.painted-landscape{position:absolute;inset:0;width:100%;height:100%}.sky-glow{position:absolute;inset:-10%;background:radial-gradient(ellipse at 53% 34%,#fce2a626,transparent 46%);animation:sky-breath 8s ease-in-out infinite;animation-play-state:paused}.stage-vignette{position:absolute;inset:0;pointer-events:none;background:linear-gradient(0deg,#071e1c6b,transparent 25%),linear-gradient(90deg,#0c211e55,transparent 25%,transparent 75%,#0c211e55);box-shadow:inset 0 0 60px #091f1c55;z-index:6}.stage-ornament{position:absolute;top:12px;left:50%;transform:translateX(-50%);color:#e9d3a5;opacity:.7;font-size:22px;z-index:7}.sacred-mandala{position:absolute;width:49%;height:87%;left:28%;top:0;color:#efd190;opacity:.2;stroke-width:.55;animation:mandala-turn 100s linear infinite;animation-play-state:paused}.story-actors{position:absolute;inset:0;z-index:3}.story-actor{position:absolute;width:36%;aspect-ratio:1;left:var(--actor-x);bottom:10%;transform:translateX(-50%) scale(var(--actor-scale));transform-origin:50% 93%;pointer-events:none}.actor-performance{position:absolute;inset:0;transform-origin:50% 90%;animation:painted-breath 7s ease-in-out infinite;animation-delay:var(--seek-delay);animation-play-state:paused}.character-paint{position:absolute;inset:0;background-size:300% 300%;background-repeat:no-repeat;filter:drop-shadow(0 8px 7px #071e1a66);z-index:1}.sheet-0{background-image:url('characters-sacred.png')}.sheet-1{background-image:url('characters-epic.png')}.actor-halo{position:absolute;width:52%;aspect-ratio:1;left:24%;top:4%;border-radius:50%;border:1px solid #f1d58d99;background:radial-gradient(circle,#ffedb650,transparent 70%);box-shadow:0 0 0 4px #d8bb6e13,0 0 0 8px #ddbe6c15,0 0 45px #f7d7884d;animation:halo-breath 6s ease-in-out infinite;animation-play-state:paused}.actor-brahma .actor-halo{top:7%}.actor-name{position:absolute;bottom:-10%;left:-10%;right:-10%;text-align:center;color:#f2dfb7;text-shadow:0 1px 5px #08201b;font-size:clamp(8px,1vw,11px);letter-spacing:.2px;z-index:7;line-height:1.6}.action-bow{animation:devotional-bow 8s ease-in-out infinite}.action-pray{animation:prayer-sway 8s ease-in-out infinite}.action-advance,.action-walk{animation:measured-advance var(--beat-duration) ease-in-out both}.action-battle{animation:measured-battle 5s ease-in-out infinite}.action-reveal,.action-rise{animation:sacred-reveal var(--beat-duration) ease-out both}.action-dissolve{animation:into-light var(--beat-duration) ease-in both}.action-return{animation:return-to-one var(--beat-duration) ease-in-out both}.action-command{animation:command-gesture 6s ease-in-out infinite}.action-retreat{animation:measured-retreat var(--beat-duration) ease-in-out both}.action-rest{animation:resting 8s ease-in-out infinite;transform:rotate(-70deg) scale(.83);transform-origin:50% 65%}.action-transform-out{animation:form-out var(--beat-duration) ease-in-out both}.action-transform-in{animation:form-in var(--beat-duration) ease-in-out both;opacity:0}.action-emanate{animation:heart-emanation var(--beat-duration) ease-in-out both;opacity:0}.action-multiply{animation:replicate var(--beat-duration) ease-in-out both;opacity:.3}.action-bless{animation:blessing-sway 9s ease-in-out infinite}.actor-performance{animation-play-state:paused;animation-delay:var(--seek-delay)}.ambient-stars,.devotional-effects{position:absolute;inset:0;overflow:hidden;pointer-events:none}.ambient-stars{z-index:2}.ambient-stars i{position:absolute;width:2px;height:2px;border-radius:50%;background:#f1d592;box-shadow:0 0 5px #e5be77;opacity:.4;animation:star-drift 8s ease-in-out infinite;animation-delay:var(--delay);animation-play-state:paused}.devotional-effects{z-index:5}.devotional-effects i{position:absolute;left:var(--particle-x);top:10%;height:4px;width:4px;border-radius:50%;background:#e9c37e;opacity:0;animation:light-rise 9s ease-in-out infinite;animation-delay:var(--delay);animation-play-state:paused}.effect-petals .devotional-effects i,.effect-lotus .devotional-effects i,.effect-offerings .devotional-effects i{background:#e5b1a0;width:7px;height:11px;border-radius:70% 0 70% 10%;animation-name:petal-descent;opacity:.5}.effect-lotus .devotional-effects i{background:#f2d5ae}.effect-leaves .devotional-effects i{background:#a7a25b;border-radius:90% 0 90% 0;width:5px;height:10px;animation-name:petal-descent;opacity:.35}.effect-smoke .devotional-effects i,.effect-dust .devotional-effects i{width:40%;height:12%;border-radius:50%;background:#d7c8ab0a;filter:blur(14px);top:65%;animation-name:smoke-drift;opacity:.5}.effect-seeds .devotional-effects i{background:#d79f6b;width:6px;height:6px;animation-name:seed-fall;opacity:.6}.effect-gather .devotional-effects i{background:#f1ce92;animation-name:gather-light;opacity:.5}.effect-converge .devotional-effects i{height:2px;width:60px;background:linear-gradient(90deg,transparent,#f2d59a);transform-origin:right center;animation-name:converging-ray;opacity:.4}.effect-soundwave .devotional-effects i{left:62%;top:38%;height:22%;width:13%;border:1px solid #f9e8b2;border-radius:50%;background:transparent;animation-name:sound-ripple}.effect-victory .sky-glow{background:radial-gradient(ellipse at center,#e9c98566,transparent 65%)}.effect-many-lights .ambient-stars i{width:4px;height:4px;box-shadow:0 0 20px 4px #e4c18c66}.story-player.is-playing .story-stage *{animation-play-state:running}.story-transport{display:flex;align-items:center;gap:9px;padding:16px 20px 6px;font-size:11px}.story-transport button{border:1px solid #d8d9c8;background:transparent;border-radius:4px;padding:7px 12px;min-width:34px;font-size:16px;line-height:1.5}.story-transport button:disabled{opacity:.3;cursor:default}.story-transport .story-play{background:#234b3c;color:#faf3da;border-color:#234b3c;min-width:116px;display:flex;align-items:center;justify-content:center;gap:10px}.story-play span{font-size:10px}.story-clock{font-variant-numeric:tabular-nums;font-family:var(--sans);font-size:10px;color:#7b836d;white-space:nowrap;margin:0 auto 0 7px}.story-speed{display:flex;align-items:center;gap:7px;white-space:nowrap;font-size:9px;color:#7c846c}.story-speed select{border:1px solid #d8d9c8;background:#f8f6ed;padding:7px 5px;border-radius:4px;font:inherit;color:#365444}.timeline-label{display:block;padding:7px 20px 0;line-height:1}.story-timeline{-webkit-appearance:none;appearance:none;width:100%;height:4px;border-radius:4px;background:linear-gradient(90deg,#a88b4e var(--progress,0%),#e0e1d2 var(--progress,0%));cursor:pointer;margin:8px 0 15px;accent-color:#987b3f}.story-timeline::-webkit-slider-thumb{-webkit-appearance:none;width:11px;height:11px;border-radius:50%;background:#aa8d51;border:2px solid #f8f5e9;box-shadow:0 0 0 1px #b69b65}.story-timeline::-moz-range-thumb{width:8px;height:8px;border-radius:50%;background:#aa8d51;border:2px solid #f8f5e9}.story-beats{display:flex;gap:6px;padding:8px 20px 20px;overflow-x:auto}.story-beats button{flex:1;min-width:100px;max-width:240px;border:1px solid #e0dfd0;background:transparent;text-align:left;color:#858a76;padding:10px 11px;border-radius:3px;font-size:9px;line-height:1.8}.story-beats button span{display:block;font-family:serif;font-size:12px;color:#a48b53;margin-bottom:4px}.story-beats .is-current{border-color:#9b9f7b;background:#e9eddf;color:#294b3b}.story-narration{padding:21px 7% 10px;border-top:1px solid #e2e1d2;min-height:210px;text-align:center}.story-shot-count{font-size:9px;letter-spacing:.5px;color:#99987d}.story-narration h3{font-family:var(--serif);font-size:23px;line-height:1.9;font-weight:500;margin:10px 0 14px}.story-narration p{font-size:14px;line-height:2.25;margin:0 0 20px;color:#596b53}.story-devotion{margin:8px 7% 0;display:flex;align-items:center;gap:18px;justify-content:center;border-top:1px solid #e6e1ce;padding:20px 0 10px;color:#9a834c}.story-devotion p{font-family:var(--serif);font-size:12px;line-height:2;margin:0;text-align:center}.story-devotion span{font-size:20px}.story-art-note{text-align:center;font-size:9px!important;line-height:1.9!important;color:#9b9a85!important;padding:8px 20px 20px;margin:0!important}.watch-card{position:absolute;bottom:10px;right:10px;z-index:3;border:1px solid #8c9d7d55;background:#fbfaf1d9;border-radius:3px;font-size:9px;padding:7px 10px;color:#486147}.watch-story{display:inline-flex;align-items:center;gap:12px;background:#e6eada;border:1px solid #c9d0b8;padding:12px 20px;border-radius:4px;font-size:12px;color:#3e5e45;margin:0 0 24px}.watch-story span{font-size:18px}.reduced-motion .story-stage *,.no-motion .story-stage *{animation:none!important}.reduced-motion .action-transform-in,.no-motion .action-transform-in{opacity:.6}.reduced-motion .action-emanate,.no-motion .action-emanate{opacity:.65}.reduced-motion .action-rest,.no-motion .action-rest{transform:rotate(-70deg) scale(.83)}
@keyframes painted-breath{50%{transform:translateY(-3px) rotate(.35deg)}}@keyframes halo-breath{50%{opacity:.65;transform:scale(1.05)}}@keyframes devotional-bow{0%,100%{transform:rotate(0)}45%,60%{transform:translateY(5px) rotate(-5deg)}}@keyframes prayer-sway{50%{transform:translateY(2px) rotate(-1.8deg)}}@keyframes blessing-sway{50%{transform:translateY(-4px) rotate(.5deg)}}@keyframes measured-advance{0%{transform:translateX(calc(var(--approach) * -1))}80%,100%{transform:translateX(var(--approach))}}@keyframes measured-retreat{to{transform:translateX(calc(var(--approach) * -1.5));opacity:.45}}@keyframes measured-battle{0%,100%{transform:translateX(0) rotate(0)}40%,65%{transform:translateX(var(--approach)) rotate(-2deg)}}@keyframes sacred-reveal{0%{opacity:.15;transform:translateY(10px);filter:brightness(1.4)}30%,100%{opacity:1;transform:translateY(0);filter:brightness(1)}}@keyframes into-light{0%,25%{opacity:1;filter:brightness(1)}70%,100%{opacity:0;transform:translateY(-10px);filter:brightness(2) sepia(1) blur(4px)}}@keyframes return-to-one{0%,10%{opacity:.9}80%,100%{transform:translateX(var(--return-x)) scale(.4);opacity:0;filter:brightness(2)}}@keyframes command-gesture{50%{transform:translateY(-2px) rotate(2deg)}}@keyframes resting{50%{transform:rotate(-70deg) scale(.83) translateY(-2px)}}@keyframes form-out{0%,20%{opacity:1}50%,100%{opacity:0;filter:blur(6px)}}@keyframes form-in{0%,20%{opacity:0;transform:scale(.8)}55%,100%{opacity:1;transform:scale(1)}}@keyframes heart-emanation{0%,35%{opacity:0;transform:translateY(30px) scale(.1)}60%{opacity:1;transform:translateY(0) scale(1)}100%{opacity:0;filter:brightness(2)}}@keyframes replicate{0%,15%{opacity:0;transform:scale(.5)}60%,100%{opacity:1;transform:scale(1)}}@keyframes mandala-turn{to{transform:rotate(360deg)}}@keyframes sky-breath{50%{opacity:.45;transform:scale(1.04)}}@keyframes star-drift{50%{transform:translateY(-9px);opacity:.9}}@keyframes light-rise{0%{transform:translateY(330px);opacity:0}30%,70%{opacity:.65}100%{transform:translateY(-30px);opacity:0}}@keyframes petal-descent{0%{transform:translateY(-60px) translateX(0) rotate(0);opacity:0}15%,80%{opacity:.6}100%{transform:translateY(460px) translateX(45px) rotate(190deg);opacity:0}}@keyframes smoke-drift{50%{transform:translateX(-80px) scale(1.3);opacity:.2}}@keyframes seed-fall{0%{transform:translateY(70px);opacity:0}40%{opacity:.8}100%{transform:translateY(380px) scale(1.8);opacity:0}}@keyframes gather-light{0%{transform:translate(0,220px);opacity:0}40%{opacity:.85}100%{left:53%;transform:translateY(100px) scale(.1);opacity:0}}@keyframes converging-ray{0%{transform:translateX(-150px);opacity:0}50%{opacity:.7}100%{left:50%;transform:translateX(0);opacity:0}}@keyframes sound-ripple{0%{transform:scale(.5);opacity:0}20%{opacity:.7}100%{transform:scale(5);opacity:0}}
@media(max-width:680px){.reading-text:has(.story-player){padding:16px 3% 22px}.story-player-heading{padding:10px 12px;font-size:8px}.story-stage{aspect-ratio:4/3;min-height:250px}.story-actor{width:40%;bottom:14%}.actor-name{font-size:8px;bottom:-7%}.story-transport{padding:12px 10px 5px;gap:5px;flex-wrap:wrap}.story-transport button{padding:6px 9px;min-width:30px;font-size:15px}.story-transport .story-play{min-width:97px}.story-play span{font-size:9px}.story-clock{font-size:9px;margin-left:4px}.story-speed{font-size:8px;gap:4px}.story-speed select{padding:6px 3px}.story-beats{padding:5px 12px 14px}.story-beats button{min-width:96px;font-size:8px;padding:8px}.timeline-label{padding:5px 12px 0}.story-narration{padding:17px 6% 6px;min-height:230px}.story-narration h3{font-size:20px}.story-narration p{font-size:12px;line-height:2.2}.story-devotion{gap:8px}.story-devotion p{font-size:10px}.story-art-note{font-size:8px!important}.sacred-mandala{width:72%;left:17%}.watch-card{font-size:8px;padding:5px 7px;bottom:7px;right:7px}}
/* Keep the whole stage visible inside a laptop-height reading dialog. */
.reader:has(.story-player) .reader-intro{padding:12px 6% 8px}.reader:has(.story-player) .reader-intro h2{font-size:22px;margin:5px 0;line-height:1.8}.reader:has(.story-player) .reader-intro p{display:none}.reader:has(.story-player) .reader-tabs button{padding-top:9px;padding-bottom:9px}.story-stage{height:clamp(250px,43vh,500px);aspect-ratio:auto;container-type:size}.story-player.is-expanded .story-stage{height:clamp(300px,57vh,650px)}.story-actor{width:min(36%,65cqh)}.actor-sage .character-paint{clip-path:inset(7% 0 0 0)}.actor-brahma .character-paint{clip-path:inset(4% 0 0 0)}.actor-king .character-paint{clip-path:inset(2% 0 0 0)}
@media(max-width:680px){.reader:has(.story-player) .reader-intro h2{font-size:18px}.story-stage{height:clamp(250px,38vh,360px)}.story-actor{width:min(40%,65cqh)}.story-player.is-expanded .story-stage{height:clamp(280px,46vh,480px)}}
.sheet-2{background-image:url('characters-mothers.png')}.actor-king .character-paint{clip-path:inset(2% 0 4% 0)}.actor-brahma .character-paint{clip-path:inset(4% 0 3% 0)}.actor-name{bottom:-2%}.actor-vaishnavi .actor-name{top:0;bottom:auto}
.story-stage{background-image:linear-gradient(#153a354d,#0b28284d),url('story-landscapes.png');background-size:100% 100%,200% 200%;background-position:0 0,0 0}.story-stage .painted-landscape{opacity:0}.setting-mountain,.setting-dawn{background-position:0 0,100% 0}.setting-battle{background-position:0 0,100% 0;background-image:linear-gradient(#4d342f44,#102c2a66),url('story-landscapes.png')}.setting-cosmos,.setting-ocean{background-position:0 0,0 100%}.setting-palace,.setting-temple{background-position:0 0,100% 100%}.setting-river .painted-landscape{opacity:.75}
@media(prefers-reduced-motion:reduce){.story-stage *{animation:none!important}.story-stage .action-transform-in,.story-stage .action-emanate{opacity:.6}}
