:root{--profile-shadow:0 24px 60px rgba(8,3,1,.34)}
.sacred-profile{position:relative;isolation:isolate;overflow:hidden;min-height:100vh;color:var(--sacred-cream,#f7e8c2);background:radial-gradient(circle at 50% 0,rgba(158,104,32,.15),transparent 32rem),linear-gradient(135deg,var(--temple-night,#160b05),var(--temple-deep,#24140d) 55%,#160a05)}.sacred-profile:before{content:"";position:absolute;inset:0;z-index:-1;opacity:.06;background:radial-gradient(ellipse at 14% 12%,transparent 0 8rem,rgba(212,175,55,.18) 8.1rem 8.2rem,transparent 8.3rem),radial-gradient(ellipse at 90% 40%,transparent 0 11rem,rgba(212,175,55,.13) 11.1rem 11.2rem,transparent 11.3rem)}.sacred-profile__shell{width:min(1180px,calc(100% - 2.5rem));margin:auto;padding:4.6rem 0 5rem}.sacred-profile__atmosphere span{position:absolute;width:4px;aspect-ratio:1;border-radius:50%;background:#ffd76b;opacity:.35;animation:profileParticle 12s ease-in-out infinite}.sacred-profile__atmosphere span:nth-child(1){left:12%;top:27%}.sacred-profile__atmosphere span:nth-child(2){right:16%;top:55%;animation-delay:-4s}.sacred-profile__atmosphere span:nth-child(3){left:38%;bottom:14%;animation-delay:-8s}
.sacred-entrance{max-width:680px;margin:0 auto 3.5rem;text-align:center}.sacred-entrance__mantra,.sacred-eyebrow{margin:0;color:var(--sacred-gold,#d4af37);font:600 .74rem/1.4 'Source Sans 3',sans-serif;letter-spacing:.18em;text-transform:uppercase}.sacred-divider{display:flex;align-items:center;justify-content:center;gap:.8rem;margin:1rem 0;color:var(--sacred-gold,#d4af37)}.sacred-divider span{width:72px;height:1px;background:linear-gradient(90deg,transparent,rgba(212,175,55,.6))}.sacred-divider span:last-child{transform:scaleX(-1)}.sacred-entrance h1,.gods-ear-gateway h2,.section-heading h2,.sacred-time h2,.quiet-moment h2{font-family:'Cormorant Garamond',Georgia,serif}.sacred-entrance h1{margin:.45rem 0;font-size:clamp(2.6rem,5vw,4.5rem);font-weight:600;line-height:.95}.sacred-entrance__welcome{margin:1.1rem 0 .45rem;font-size:1.08rem}.sacred-entrance__welcome strong{color:var(--sacred-gold-bright,#ffd76b)}.sacred-entrance__copy{margin:0;color:var(--sacred-muted,#c8b58c)}
.sacred-dashboard{display:grid;grid-template-columns:minmax(260px,.72fr) minmax(0,1.5fr);align-items:stretch;gap:1.5rem}.devotee-card,.gods-ear-gateway,.sacred-time,.sacred-offerings,.quiet-moment{border:1px solid var(--border-gold,rgba(212,175,55,.25));box-shadow:var(--profile-shadow)}.devotee-card{position:relative;overflow:hidden;padding:2rem;border-radius:18px;background:linear-gradient(145deg,rgba(69,42,25,.9),rgba(35,18,10,.94));text-align:center}.devotee-card:before{content:"";position:absolute;width:250px;height:250px;top:-108px;left:50%;transform:translateX(-50%);border:1px solid rgba(212,175,55,.13);border-radius:50%;box-shadow:0 0 0 24px rgba(212,175,55,.025),0 0 0 48px rgba(212,175,55,.02)}.devotee-card__ornament{position:absolute;top:.85rem;right:1.15rem;color:rgba(212,175,55,.38);font-size:1.1rem}.devotee-photo-frame{position:relative;width:118px;height:118px;margin:1.4rem auto .9rem;padding:6px;border:1px solid var(--sacred-gold,#d4af37);border-radius:50%;background:radial-gradient(circle,rgba(255,215,107,.2),transparent 68%);box-shadow:0 0 24px rgba(212,175,55,.14)}.devotee-photo{display:block;width:100%;height:100%;object-fit:cover;border-radius:50%;background:#34200f}.devotee-photo--fallback{display:grid;place-items:center;color:var(--sacred-gold-bright,#ffd76b);font-size:2.4rem}.devotee-card h2{margin:0;font:600 1.65rem/1.05 'Cormorant Garamond',Georgia,serif}.devotee-card__identity{margin:.35rem 0 1.5rem;color:var(--sacred-muted,#c8b58c);font-size:.69rem;letter-spacing:.13em;text-transform:uppercase}.birth-star{display:flex;align-items:center;gap:.75rem;padding:.8rem;margin-bottom:1.25rem;text-align:left;border:1px solid rgba(212,175,55,.25);border-radius:12px;background:rgba(20,10,5,.35)}.birth-star>span{display:grid;flex:0 0 34px;place-items:center;width:34px;height:34px;border:1px solid rgba(212,175,55,.7);border-radius:50%;color:var(--sacred-gold-bright,#ffd76b)}.birth-star small,.devotee-details dt,.time-summary dt{display:block;color:var(--sacred-muted,#c8b58c);font:600 .67rem/1.3 'Source Sans 3',sans-serif;letter-spacing:.12em;text-transform:uppercase}.birth-star strong{display:block;margin-top:.15rem;font-size:.94rem}.devotee-details{display:grid;gap:.75rem;margin:0;text-align:left}.devotee-details div{padding-bottom:.65rem;border-bottom:1px solid rgba(212,175,55,.12)}.devotee-details dd{margin:.14rem 0 0;font-size:.92rem}.devotee-actions{display:flex;justify-content:center;gap:.55rem;margin-top:1.5rem}.profile-edit-link,.profile-logout-button{min-height:38px;padding:.48rem .85rem;border-radius:7px;font:600 .78rem 'Source Sans 3',sans-serif;cursor:pointer}.profile-edit-link{border:1px solid rgba(212,175,55,.58);color:var(--sacred-gold-bright,#ffd76b);text-decoration:none}.profile-logout-button{border:1px solid transparent;background:transparent;color:var(--sacred-muted,#c8b58c)}.profile-edit-link:hover,.profile-edit-link:focus-visible{background:rgba(212,175,55,.12)}.profile-logout-button:hover,.profile-logout-button:focus-visible{color:var(--sacred-cream,#f7e8c2)}
.gods-ear-gateway{position:relative;overflow:hidden;min-height:590px;border-radius:80px 80px 18px 18px;background:radial-gradient(circle at 50% 42%,rgba(169,108,23,.22),transparent 27%),linear-gradient(145deg,rgba(49,28,14,.96),rgba(19,9,5,.98))}.gods-ear-gateway:before{content:"";position:absolute;inset:13px;border:1px solid rgba(212,175,55,.16);border-radius:68px 68px 10px 10px;pointer-events:none}.gods-ear-gateway:after{content:"";position:absolute;inset:0;opacity:.09;background:repeating-radial-gradient(circle at 50% 47%,transparent 0 24px,#d4af37 25px 26px,transparent 27px 47px);mask-image:linear-gradient(to bottom,transparent,black 28%,transparent 80%)}.gateway-arch{position:absolute;top:28px;left:50%;width:58%;aspect-ratio:1.75;transform:translateX(-50%);border:1px solid rgba(212,175,55,.54);border-bottom:0;border-radius:100% 100% 0 0;opacity:.7}.gateway-pillar{position:absolute;top:27%;bottom:10%;width:16px;border:1px solid rgba(212,175,55,.18);background:linear-gradient(90deg,rgba(212,175,55,.08),transparent)}.gateway-pillar--left{left:7%}.gateway-pillar--right{right:7%;transform:scaleX(-1)}.gateway-content{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:590px;padding:4.5rem clamp(2rem,8vw,6rem) 3rem;text-align:center}.gateway-om{margin:0 0 .1rem;color:var(--sacred-gold-bright,#ffd76b);font:2.5rem 'Noto Sans Devanagari',serif;text-shadow:0 0 22px rgba(255,215,107,.38)}.gods-ear-gateway h2{max-width:530px;margin:.45rem 0 .8rem;font-size:clamp(2rem,4vw,3.25rem);font-weight:600;line-height:.94}.gateway-copy{max-width:540px;margin:0;color:var(--sacred-muted,#c8b58c);line-height:1.65}.gateway-presence{position:relative;display:grid;place-items:center;width:106px;height:106px;margin:1.75rem 0}.gateway-presence span{position:absolute;inset:0;border:1px solid rgba(255,215,107,.38);border-radius:50%;animation:presenceBreath 6s ease-in-out infinite}.gateway-presence span:nth-child(2){inset:13px;animation-delay:-2s}.gateway-presence span:nth-child(3){inset:26px;animation-delay:-4s}.gateway-presence svg{position:relative;z-index:1;width:29px;fill:none;stroke:var(--sacred-gold-bright,#ffd76b);stroke-width:1.45;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 0 7px rgba(255,215,107,.45))}.gateway-invitation{margin:0 0 1.2rem;font:italic 1.1rem/1.4 'Cormorant Garamond',serif}.speak-prayer-button{display:inline-flex;gap:.6rem;align-items:center;justify-content:center;min-height:48px;padding:.65rem 1.2rem;border-radius:8px;background:linear-gradient(135deg,#f5d56e,#bd861d);color:#2a1708;box-shadow:0 8px 24px rgba(212,175,55,.2);font:700 .9rem 'Source Sans 3',sans-serif;text-decoration:none;transition:transform .25s ease,box-shadow .25s ease}.speak-prayer-button:hover,.speak-prayer-button:focus-visible{transform:translateY(-2px);box-shadow:0 11px 30px rgba(255,215,107,.3)}.gateway-note{display:flex;gap:.4rem;align-items:center;margin:1rem 0 0;color:var(--sacred-muted,#c8b58c);font-size:.75rem}.gateway-note svg{width:15px;fill:none;stroke:currentColor;stroke-width:1.6}.gateway-diya{position:absolute;bottom:25px;width:24px;height:9px;border:1px solid rgba(212,175,55,.6);border-radius:0 0 18px 18px;background:rgba(133,71,20,.45)}.gateway-diya--left{left:12%}.gateway-diya--right{right:12%}.gateway-diya i{position:absolute;left:8px;bottom:6px;width:7px;height:13px;border-radius:70% 30% 70% 30%;background:linear-gradient(to top,#e8671d,#ffcf5a,#fff1b3);transform:rotate(-40deg);box-shadow:0 0 10px rgba(255,172,55,.48);animation:tinyFlame 2.8s ease-in-out infinite}
.sacred-time{display:grid;grid-template-columns:1.1fr 1.4fr auto;align-items:center;gap:1.5rem;margin-top:1.5rem;padding:1.5rem 1.7rem;border-radius:16px;background:linear-gradient(110deg,rgba(62,37,21,.85),rgba(31,16,9,.85))}.sacred-time h2,.section-heading h2,.quiet-moment h2{margin:.3rem 0 0;font-size:1.65rem}.time-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:.65rem;margin:0}.time-summary div{padding-left:.75rem;border-left:1px solid rgba(212,175,55,.25)}.time-summary dd{margin:.2rem 0 0;color:var(--sacred-gold-bright,#ffd76b);font:600 1rem 'Source Sans 3',sans-serif}.time-summary__available dd{color:var(--sacred-cream,#f7e8c2)}.time-link,.quiet-moment__link{color:var(--sacred-gold-bright,#ffd76b);font-weight:600;text-decoration:none;white-space:nowrap}.time-link:hover,.time-link:focus-visible,.quiet-moment__link:hover,.quiet-moment__link:focus-visible{color:#fff1b5}
.sacred-offerings{margin-top:1.5rem;padding:2.2rem;border-radius:18px;background:rgba(47,27,15,.72)}.section-heading{max-width:590px;margin-bottom:1.4rem}.section-heading p:last-child{margin:.45rem 0 0;color:var(--sacred-muted,#c8b58c)}.sacred-offering-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:1rem}.sacred-offering-card{padding:1.35rem;border:1px solid rgba(212,175,55,.19);border-radius:12px;background:linear-gradient(145deg,rgba(85,50,26,.48),rgba(27,13,7,.35))}.sacred-offering-card__om{color:var(--sacred-gold,#d4af37);font-size:1.25rem}.sacred-offering-card h3{margin:.5rem 0;font:600 1.35rem 'Cormorant Garamond',serif}.sacred-offering-card p{margin:0;color:var(--sacred-muted,#c8b58c);font-size:.89rem;line-height:1.55}.sacred-offering-card small{display:block;margin-top:1rem;color:var(--sacred-gold,#d4af37);font-size:.68rem;letter-spacing:.08em;text-transform:uppercase}.sacred-offerings-empty{display:flex;gap:1rem;align-items:flex-start;padding:1.2rem;border:1px dashed rgba(212,175,55,.28);border-radius:12px;color:var(--sacred-muted,#c8b58c)}.sacred-offerings-empty>span{color:var(--sacred-gold,#d4af37);font-size:1.4rem}.sacred-offerings-empty p{flex:1;margin:0}.sacred-offerings-empty a{color:var(--sacred-gold-bright,#ffd76b);white-space:nowrap}.quiet-moment{display:flex;align-items:center;gap:1.2rem;margin-top:1.5rem;padding:1.75rem 2rem;border-radius:18px;background:radial-gradient(circle at 5% 50%,rgba(212,175,55,.12),transparent 18%),rgba(47,27,15,.62)}.quiet-moment__om{color:var(--sacred-gold,#d4af37);font:2.1rem 'Noto Sans Devanagari',serif}.quiet-moment div{flex:1}.quiet-moment p:last-child{max-width:590px;margin:.35rem 0 0;color:var(--sacred-muted,#c8b58c)}.sacred-closing{margin:3.3rem 0 0;text-align:center;color:var(--sacred-gold-soft,#dfc77c);font:italic 1.25rem 'Cormorant Garamond',serif}
@keyframes presenceBreath{0%,100%{transform:scale(.97);opacity:.32}50%{transform:scale(1.04);opacity:.62}}@keyframes tinyFlame{0%,100%{transform:rotate(-40deg) scale(1)}50%{transform:rotate(-35deg) scale(.94,1.08)}}@keyframes profileParticle{0%,100%{transform:translateY(0);opacity:.15}50%{transform:translateY(-16px);opacity:.42}}
@media(max-width:900px){.sacred-dashboard{grid-template-columns:1fr}.devotee-card{display:grid;grid-template-columns:130px 1fr;column-gap:1.5rem;text-align:left}.devotee-card>.sacred-eyebrow,.devotee-photo-frame{grid-column:1}.devotee-card h2,.devotee-card__identity,.birth-star,.devotee-details,.devotee-actions{grid-column:2}.devotee-card>.sacred-eyebrow{grid-row:1}.devotee-photo-frame{grid-row:2/span 4;margin:.3rem auto}.devotee-card h2{grid-row:2}.devotee-card__identity{grid-row:3}.birth-star{grid-row:4}.devotee-details{grid-row:5}.devotee-actions{grid-row:6;justify-content:flex-start}.sacred-time{grid-template-columns:1fr}.time-summary{max-width:560px}.time-link{justify-self:start}.sacred-offerings-empty{flex-wrap:wrap}.sacred-offerings-empty a{width:100%}}@media(max-width:600px){.sacred-profile__shell{width:min(100% - 1.35rem,1180px);padding:3.2rem 0}.sacred-entrance{margin-bottom:2rem}.sacred-dashboard{gap:1rem}.devotee-card{display:block;padding:1.5rem;text-align:center}.devotee-photo-frame{margin:1.2rem auto .9rem}.devotee-details{text-align:left}.devotee-actions{justify-content:center}.gods-ear-gateway{min-height:560px;border-radius:54px 54px 15px 15px}.gateway-content{min-height:560px;padding:4rem 1.65rem 2.7rem}.gateway-pillar{display:none}.gateway-diya--left{left:9%}.gateway-diya--right{right:9%}.sacred-time,.sacred-offerings,.quiet-moment{padding:1.35rem}.time-summary{grid-template-columns:1fr}.time-summary div{padding:.55rem 0 .55rem .7rem}.quiet-moment{align-items:flex-start;flex-wrap:wrap}.quiet-moment__link{width:100%}.sacred-offerings-empty{display:block}.sacred-offerings-empty>span{display:block;margin-bottom:.5rem}.sacred-offerings-empty a{display:block;margin-top:.8rem}}@media(prefers-reduced-motion:reduce){.sacred-profile *,.sacred-profile :before,.sacred-profile :after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
/* Sacred Family Tree entry point. */
.profile-family-link{display:inline-flex;align-items:center;gap:.35rem;min-height:38px;padding:.48rem .85rem;border:1px solid rgba(212,175,55,.58);border-radius:7px;color:var(--sacred-gold-bright,#ffd76b);font:600 .78rem 'Source Sans 3',sans-serif;text-decoration:none;transition:background .2s ease,transform .2s ease}.profile-family-link:hover,.profile-family-link:focus-visible{background:rgba(212,175,55,.14);transform:translateY(-1px)}.offering-beneficiary{margin:.2rem 0 .55rem!important;color:#f7e8c2!important;font-size:.82rem!important}

/* Real observance status: this progress represents recorded service only. */
.sacred-offering-card .offering-active-label { color: #d4af37; font-size: .72rem; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; margin: .5rem 0 .2rem; }
.sacred-offering-card .offering-day { color: #f7e8c2; font-weight: 700; margin: .1rem 0; }
.sacred-offering-card .offering-remaining { display:inline-block; margin:.25rem 0 .4rem; padding:.22rem .5rem; border:1px solid rgba(212,175,55,.3); border-radius:999px; color:#ffd76b; font-size:.75rem; font-weight:700; }
.sacred-offering-card .offering-dates { color: rgba(247,232,194,.68); font-size: .82rem; margin: 0 0 .8rem; }
.observance-state, .observance-progress { border-top: 1px solid rgba(212,175,55,.22); margin-top: .75rem; padding-top: .7rem; display: grid; gap: .16rem; }
.observance-state small, .observance-progress small { color: rgba(247,232,194,.65); font-size: .67rem; letter-spacing: .07em; text-transform: uppercase; }
.observance-state strong, .observance-progress strong { color: #f7e8c2; font-size: .86rem; }
.observance-state--completed strong { color: #b9d58b; }
.observance-state--scheduled strong { color: #ffd76b; }
.observance-state--missed strong { color: #d38d72; }
.observance-progress span { background: rgba(247,232,194,.12); border-radius: 999px; display: block; height: 5px; margin-top: .25rem; overflow: hidden; }
.observance-progress i { background: linear-gradient(90deg,#b78c2c,#ffd76b); border-radius: inherit; display: block; height: 100%; }

.offering-card-heading { display:flex; align-items:center; justify-content:space-between; gap:.75rem; }
.offering-status { padding:.2rem .5rem; border:1px solid rgba(200,181,140,.25); border-radius:999px; color:#c8b58c; font-size:.67rem; font-weight:700; letter-spacing:.06em; text-transform:uppercase; }
.offering-status--active { border-color:rgba(185,213,139,.4); color:#b9d58b; background:rgba(89,124,55,.12); }
.sacred-offering-card--completed { opacity:.88; }
.offering-duration { display:grid; grid-template-columns:1fr 1fr; gap:.55rem; margin:.9rem 0; }
.offering-duration div { padding:.65rem; border:1px solid rgba(212,175,55,.16); border-radius:9px; background:rgba(18,9,4,.2); }
.offering-duration dt { color:rgba(247,232,194,.58); font-size:.65rem; letter-spacing:.06em; text-transform:uppercase; }
.offering-duration dd { margin:.15rem 0 0; color:#ffd76b; font:700 1.2rem 'Cormorant Garamond',serif; }
.offering-recipients { margin:.8rem 0; padding:.75rem 0; border-top:1px solid rgba(212,175,55,.18); border-bottom:1px solid rgba(212,175,55,.18); }
.offering-recipients small { margin:0 0 .5rem; color:rgba(247,232,194,.62); }
.offering-recipients div { display:flex; flex-wrap:wrap; gap:.4rem; }
.offering-recipients span { padding:.25rem .5rem; border-radius:999px; color:#f7e8c2; background:rgba(212,175,55,.11); font-size:.72rem; }
.offering-extend-button { width:100%; margin-top:1rem; padding:.65rem .8rem; border:1px solid rgba(255,215,107,.42); border-radius:8px; color:#ffd76b; background:rgba(212,175,55,.08); font:700 .77rem 'Source Sans 3',sans-serif; cursor:pointer; }
.offering-extend-button:hover,.offering-extend-button:focus-visible { background:rgba(212,175,55,.17); outline:2px solid transparent; }
.offering-extension-modal { position:fixed; inset:0; z-index:10030; display:grid; place-items:center; padding:1rem; }
.offering-extension-modal[hidden] { display:none; }
.offering-extension-modal__backdrop { position:absolute; inset:0; width:100%; border:0; background:rgba(12,5,2,.82); backdrop-filter:blur(6px); cursor:default; }
.offering-extension-modal>section { position:relative; width:min(100%,460px); padding:2rem; border:1px solid rgba(255,215,107,.48); border-radius:18px; color:#f7e8c2; background:linear-gradient(145deg,#4a2b16,#24130a); box-shadow:0 24px 75px rgba(0,0,0,.55); }
.offering-extension-modal h2 { margin:.3rem 0; color:#ffd76b; font:700 1.75rem 'Cormorant Garamond',serif; }
.offering-extension-modal label { display:block; margin:1.1rem 0 .35rem; color:#dfc77c; font-size:.75rem; font-weight:700; text-transform:uppercase; }
.offering-extension-modal input { width:100%; box-sizing:border-box; padding:.7rem; border:1px solid rgba(255,215,107,.4); border-radius:8px; color:#3a2416; background:#fff8e9; font:700 1rem 'Source Sans 3',sans-serif; }
.offering-extension-note,#offeringExtensionMessage { color:#c8b58c; font-size:.78rem; line-height:1.45; }
#continueExtensionPayment { width:100%; padding:.75rem; border:0; border-radius:8px; color:#2b180b; background:linear-gradient(135deg,#ffe48c,#d4af37 55%,#b57d1b); font-weight:800; cursor:pointer; }
#continueExtensionPayment:disabled { opacity:.65; cursor:wait; }
.offering-extension-close { position:absolute; top:.8rem; right:.8rem; width:32px; height:32px; border:1px solid rgba(255,215,107,.3); border-radius:50%; color:#f7e8c2; background:transparent; cursor:pointer; }

/* Purchased devotional journeys: sacred progress, devotees and offering history. */
.offering-summary { display:inline-flex; gap:.55rem; margin:0 0 1.2rem; padding:.48rem .8rem; border:1px solid rgba(212,175,55,.2); border-radius:999px; color:#dfc77c; background:rgba(212,175,55,.06); font-size:.76rem; }
.sacred-offerings .sacred-offering-grid { grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr)); }
.sacred-offering-card { position:relative; overflow:hidden; padding:1.45rem; }
.sacred-offering-card:before { content:""; position:absolute; top:-75px; right:-75px; width:170px; height:170px; border:1px solid rgba(212,175,55,.1); border-radius:50%; box-shadow:0 0 0 22px rgba(212,175,55,.025); pointer-events:none; }
.sacred-offering-card--soon { border-color:rgba(255,194,74,.46); box-shadow:inset 0 0 24px rgba(198,134,31,.07); }
.offering-card-heading { position:relative; justify-content:flex-start; }
.offering-card-heading>div { flex:1; min-width:0; }
.offering-card-heading p { margin:0; color:#c8b58c; font-size:.67rem; letter-spacing:.07em; text-transform:uppercase; }
.offering-card-heading h3 { margin:.12rem 0 0; color:#f1d477; font-size:1.42rem; line-height:1.05; }
.offering-prayer-art { display:grid; flex:0 0 48px; width:48px; height:48px; place-items:center; overflow:hidden; border:1px solid rgba(255,215,107,.38); border-radius:50%; color:#ffd76b; background:rgba(212,175,55,.1); font-size:1.35rem; }
.offering-prayer-art img { width:100%; height:100%; object-fit:cover; }
.offering-remaining-hero { display:flex; align-items:baseline; gap:.65rem; margin:1.15rem 0 .6rem; padding:.8rem 1rem; border-left:2px solid #d4af37; background:linear-gradient(90deg,rgba(212,175,55,.12),transparent); }
.offering-remaining-hero strong { color:#ffd76b; font:700 2.15rem/1 'Cormorant Garamond',serif; }
.offering-remaining-hero span { color:#f7e8c2; font:600 .82rem 'Source Sans 3',sans-serif; letter-spacing:.04em; text-transform:uppercase; }
.offering-progress>span { display:block; height:6px; overflow:hidden; border-radius:999px; background:rgba(247,232,194,.11); }
.offering-progress i { display:block; height:100%; border-radius:inherit; background:linear-gradient(90deg,#9f7121,#ffd76b); }
.offering-progress p { display:flex; justify-content:space-between; margin:.35rem 0 .9rem; color:rgba(247,232,194,.57); font-size:.69rem; }
.offering-progress b { color:rgba(212,175,55,.45); }
.offering-facts { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.55rem; margin:.8rem 0; }
.offering-facts div { padding:.62rem .7rem; border:1px solid rgba(212,175,55,.14); border-radius:9px; background:rgba(15,7,3,.18); }
.offering-facts dt,.offering-details dt,.extension-current dt { color:rgba(247,232,194,.53); font-size:.61rem; letter-spacing:.07em; text-transform:uppercase; }
.offering-facts dd,.offering-details dd,.extension-current dd { margin:.15rem 0 0; color:#f7e8c2; font-size:.82rem; font-weight:700; }
.offering-devotees { margin:1rem 0; padding:.85rem 0; border-top:1px solid rgba(212,175,55,.18); border-bottom:1px solid rgba(212,175,55,.18); }
.offering-devotees__heading { display:flex; justify-content:space-between; gap:.8rem; margin-bottom:.65rem; color:#dfc77c; font-size:.68rem; letter-spacing:.07em; text-transform:uppercase; }
.offering-devotee-list { display:flex; flex-wrap:wrap; gap:.55rem; }
.offering-devotee { display:flex; align-items:center; gap:.45rem; min-width:120px; }
.offering-devotee>span { display:grid; flex:0 0 34px; width:34px; height:34px; place-items:center; overflow:hidden; border:1px solid rgba(255,215,107,.35); border-radius:50%; color:#ffd76b; background:#352010; }
.offering-devotee img { width:100%; height:100%; object-fit:cover; }
.offering-devotee p { margin:0; line-height:1.15; }
.offering-devotee b,.offering-devotee small { display:block; }
.offering-devotee b { color:#f7e8c2; font-size:.76rem; }
.offering-devotee small { margin:.12rem 0 0; color:rgba(247,232,194,.53); font-size:.62rem; text-transform:none; letter-spacing:0; }
.offering-paid { display:flex; justify-content:space-between; gap:.8rem; margin:.8rem 0; color:#c8b58c; font-size:.75rem; }
.offering-paid strong { color:#ffd76b; }
.offering-details { margin:.8rem 0 0; border-top:1px solid rgba(212,175,55,.17); }
.offering-details summary { padding:.7rem 0; color:#dfc77c; font-size:.74rem; font-weight:700; cursor:pointer; }
.offering-details__body { padding:.2rem .75rem .8rem; border-radius:9px; background:rgba(12,5,2,.2); }
.offering-details__body>dl { display:grid; grid-template-columns:1fr 1fr; gap:.55rem; }
.offering-details h4 { margin:1rem 0 .45rem; color:#f1d477; font:700 1rem 'Cormorant Garamond',serif; }
.offering-details ol { display:grid; gap:.45rem; margin:0; padding:0; list-style:none; }
.offering-details li { display:flex; justify-content:space-between; gap:.6rem; color:#c8b58c; font-size:.68rem; }
.offering-details li strong { color:#f7e8c2; text-align:right; }
.offering-details__body>p { display:flex; justify-content:space-between; margin:.85rem 0 0; padding-top:.65rem; border-top:1px solid rgba(212,175,55,.15); color:#c8b58c; font-size:.75rem; }
.offering-details__body>p strong { color:#ffd76b; }
.past-offerings { margin-top:1.4rem; padding-top:1.1rem; border-top:1px solid rgba(212,175,55,.18); }
.past-offerings>summary { display:flex; align-items:baseline; justify-content:space-between; padding:.65rem 0; color:#dfc77c; cursor:pointer; font:700 1.1rem 'Cormorant Garamond',serif; }
.past-offerings>summary small { color:#9f8a68; font:600 .68rem 'Source Sans 3',sans-serif; letter-spacing:.04em; text-transform:uppercase; }
.past-offerings>.sacred-offering-grid { margin-top:.8rem; }
.extension-current { display:grid; grid-template-columns:1fr 1fr; gap:.6rem; margin:1rem 0; }
.extension-current div { padding:.65rem; border:1px solid rgba(212,175,55,.16); border-radius:8px; }
.extension-devotees { margin:.8rem 0; padding:.7rem; border-radius:9px; background:rgba(212,175,55,.07); }
.extension-devotees>small { color:#dfc77c; font-size:.68rem; letter-spacing:.07em; text-transform:uppercase; }
.extension-devotees>div { display:flex; flex-wrap:wrap; gap:.4rem; margin-top:.5rem; }
.extension-devotees span { color:#f7e8c2; font-size:.72rem; }
.extension-day-options { display:flex; flex-wrap:wrap; gap:.4rem; margin-bottom:.6rem; }
.extension-day-options button { padding:.4rem .65rem; border:1px solid rgba(255,215,107,.3); border-radius:999px; color:#dfc77c; background:rgba(212,175,55,.06); font-size:.7rem; font-weight:700; cursor:pointer; }
.extension-day-options button.is-selected { color:#2b180b; background:#d4af37; }
.extension-quote { display:grid; gap:.4rem; margin:.9rem 0; padding:.8rem; border:1px solid rgba(212,175,55,.2); border-radius:9px; color:#c8b58c; font-size:.73rem; }
.extension-quote span,.extension-quote>strong { display:flex; justify-content:space-between; gap:.8rem; }
.extension-quote b { color:#f7e8c2; }
.extension-quote>strong { padding-top:.45rem; border-top:1px solid rgba(212,175,55,.15); color:#ffd76b; }

/* Compact offering summaries and their full-detail dialog. */
.sacred-offering-card--compact{min-height:0;padding:0;transition:border-color .2s ease,transform .2s ease,box-shadow .2s ease}.sacred-offering-card--compact:hover{transform:translateY(-2px);border-color:rgba(255,215,107,.4);box-shadow:0 12px 26px rgba(8,3,1,.22)}
.offering-compact-trigger{position:relative;z-index:1;display:grid;gap:.8rem;width:100%;padding:1rem 1.1rem;border:0;color:inherit;background:transparent;text-align:left;cursor:pointer}.offering-compact-trigger:focus-visible{outline:2px solid #ffd76b;outline-offset:-3px;border-radius:11px}
.offering-compact-heading{display:flex;align-items:center;gap:.72rem}.offering-compact-heading .offering-prayer-art{flex-basis:42px;width:42px;height:42px}.offering-compact-title{flex:1;min-width:0}.sacred-offering-card .offering-compact-title small{margin:0;color:#c8b58c;font-size:.59rem}.offering-compact-title strong{display:block;overflow:hidden;margin-top:.15rem;color:#f1d477;font:700 1.18rem/1.05 'Cormorant Garamond',serif;text-overflow:ellipsis;white-space:nowrap}.offering-compact-heading .offering-status{flex:0 0 auto}
.offering-compact-remaining{display:flex;align-items:baseline;gap:.52rem;padding-left:.7rem;border-left:2px solid #d4af37}.offering-compact-remaining strong{color:#ffd76b;font:700 1.75rem/1 'Cormorant Garamond',serif}.offering-compact-remaining span{color:#f7e8c2;font-size:.67rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.offering-progress--compact>span{height:4px}.offering-compact-meta{display:flex;align-items:center;gap:.65rem;color:rgba(247,232,194,.62);font-size:.67rem}.offering-compact-meta span:nth-child(2){margin-left:auto}.offering-compact-meta b{color:#ffd76b;white-space:nowrap}
.offering-details-modal{position:fixed;inset:0;z-index:10020;display:grid;place-items:center;padding:1rem}.offering-details-modal[hidden]{display:none}.offering-details-modal__backdrop{position:absolute;inset:0;width:100%;border:0;background:rgba(12,5,2,.84);backdrop-filter:blur(6px);cursor:default}.offering-details-modal>section{position:relative;width:min(100%,660px);max-height:90vh;box-sizing:border-box;overflow:auto;padding:1.7rem;border:1px solid rgba(255,215,107,.46);border-radius:18px;color:#f7e8c2;background:linear-gradient(145deg,#4a2b16,#24130a);box-shadow:0 24px 75px rgba(0,0,0,.58)}.offering-popup-content{position:relative}.offering-popup-heading{display:flex;align-items:center;gap:.8rem;padding-right:2.2rem}.offering-popup-heading>div{flex:1;min-width:0}.offering-popup-heading p{margin:0;color:#c8b58c;font-size:.65rem;letter-spacing:.07em;text-transform:uppercase}.offering-popup-heading h2{margin:.12rem 0 0;color:#f1d477;font:700 1.65rem/1.05 'Cormorant Garamond',serif}.offering-popup-finance{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin:.9rem 0}.offering-popup-finance p{display:flex;justify-content:space-between;gap:.5rem;margin:0;padding:.7rem;border:1px solid rgba(212,175,55,.16);border-radius:9px;color:#c8b58c;font-size:.74rem}.offering-popup-finance strong{color:#ffd76b}.offering-history{margin-top:1rem;padding-top:.85rem;border-top:1px solid rgba(212,175,55,.18)}.offering-history h3{margin:0 0 .65rem;color:#f1d477;font:700 1.05rem 'Cormorant Garamond',serif}.offering-history ol{display:grid;gap:.45rem;margin:0;padding:0;list-style:none}.offering-history li{display:flex;justify-content:space-between;gap:.8rem;color:#c8b58c;font-size:.7rem}.offering-history li strong{color:#f7e8c2;text-align:right}
@media(max-width:600px){.offering-card-heading{align-items:flex-start;flex-wrap:wrap}.offering-status{margin-left:56px}.offering-facts,.offering-details__body>dl,.extension-current{grid-template-columns:1fr}.offering-remaining-hero strong{font-size:1.8rem}.offering-details li{display:grid}.past-offerings>summary{display:grid;gap:.2rem}.offering-extension-modal>section{max-height:92vh;overflow:auto;padding:1.5rem}.offering-progress p{gap:.5rem}.offering-paid{display:grid}.sacred-offerings .sacred-offering-grid{grid-template-columns:1fr}}
@media(max-width:600px){.offering-compact-heading{align-items:flex-start;flex-wrap:wrap}.offering-compact-heading .offering-status{margin:0 0 0 54px}.offering-compact-meta{display:grid;grid-template-columns:1fr auto}.offering-compact-meta span:nth-child(2){margin:0}.offering-compact-meta b{grid-column:1/-1}.offering-details-modal>section{max-height:94vh;padding:1.25rem}.offering-popup-heading{align-items:flex-start;flex-wrap:wrap}.offering-popup-heading .offering-status{margin-left:56px}.offering-popup-finance{grid-template-columns:1fr}.offering-history li{display:grid}.offering-facts{grid-template-columns:1fr 1fr}}

/* Mobile sacred profile book. Desktop profile presentation remains unchanged. */
.devotee-photo-trigger{appearance:none;-webkit-appearance:none;box-sizing:content-box;display:block;font:inherit;color:inherit;cursor:default}
.mobile-profile-hint,.mobile-profile-modal{display:none}
.mobile-profile-modal[hidden]{display:none!important}

@media(max-width:768px){
  .devotee-card{display:block;padding:1.45rem 1.15rem 1.35rem;text-align:center}
  .devotee-card>.sacred-eyebrow,.devotee-card>.devotee-card__ornament,.devotee-card>.devotee-details,.devotee-card>.devotee-actions{display:none}
  .devotee-photo-trigger{margin:0 auto .9rem;cursor:pointer;touch-action:manipulation}
  .devotee-photo-trigger:focus-visible{outline:2px solid #f0ca62;outline-offset:5px}
  .devotee-photo-frame{animation:mobile-profile-divine-glow 3.2s ease-in-out infinite}
  .devotee-card h2{margin-top:.65rem}
  .devotee-card__identity{margin-bottom:.95rem}
  .birth-star{max-width:19rem;margin:0 auto;padding:.8rem 1rem}
  .mobile-profile-hint{display:flex;align-items:center;justify-content:center;gap:.45rem;max-width:19rem;margin:1rem auto 0;color:#e4cfaa;font-family:var(--font-serif);font-size:.92rem;font-style:italic;line-height:1.5}
  .mobile-profile-hint span{color:#e4b940;text-shadow:0 0 12px rgba(227,177,54,.55)}
  .mobile-profile-modal:not([hidden]){position:fixed;inset:0;z-index:10050;display:grid;place-items:center;overflow:hidden}
  .mobile-profile-modal__backdrop{position:absolute;inset:0;width:100%;height:100%;border:0;background:rgba(10,3,1,.88);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);opacity:0;transition:opacity .24s ease}
  .mobile-profile-modal__book{position:relative;z-index:1;box-sizing:border-box;width:min(100%,30rem);height:100%;overflow-y:auto;scrollbar-width:none;padding:3.75rem 1.25rem 2rem;border:1px solid rgba(202,153,43,.62);background:radial-gradient(circle at 50% 9%,rgba(174,111,28,.25),transparent 29%),linear-gradient(155deg,#2b1108 0%,#170805 55%,#0f0503 100%);box-shadow:0 0 55px rgba(215,157,38,.2),inset 0 0 75px rgba(121,65,18,.14);color:#f3e4c9;text-align:center;opacity:0;transform:scale(.965) translateY(12px);transition:opacity .24s ease,transform .3s cubic-bezier(.2,.75,.25,1)}
  .mobile-profile-modal__book::-webkit-scrollbar{display:none}
  .mobile-profile-modal.is-visible .mobile-profile-modal__backdrop{opacity:1}
  .mobile-profile-modal.is-visible .mobile-profile-modal__book{opacity:1;transform:scale(1) translateY(0)}
  .mobile-profile-modal__book::before{content:"";position:absolute;inset:.65rem;pointer-events:none;border:1px solid rgba(211,165,58,.22);border-radius:1rem}
  .mobile-profile-modal__close{position:absolute;z-index:3;top:1rem;right:1rem;display:grid;place-items:center;width:2.65rem;height:2.65rem;padding:0;border:1px solid rgba(224,181,75,.65);border-radius:50%;background:rgba(48,24,11,.92);color:#f3d26f;font-family:Arial,sans-serif;font-size:1.75rem;line-height:1;cursor:pointer}
  .mobile-profile-modal__close:focus-visible{outline:2px solid #f0ca62;outline-offset:3px}
  .mobile-profile-modal__halo{position:absolute;top:2rem;left:50%;width:15rem;height:15rem;transform:translateX(-50%);border-radius:50%;background:radial-gradient(circle,rgba(223,166,51,.19),transparent 68%);pointer-events:none}
  .mobile-profile-modal__eyebrow{position:relative;margin:0 0 1.15rem;color:#d4a334;font-size:.7rem;font-weight:800;letter-spacing:.2em;text-transform:uppercase}
  .mobile-profile-modal__photo{position:relative;width:9.35rem;height:9.35rem;margin:0 auto 1.05rem;padding:.5rem;border:1px solid #c99c3b;border-radius:50%;background:linear-gradient(145deg,rgba(229,186,80,.24),rgba(55,25,11,.86));box-shadow:0 0 0 .4rem rgba(198,143,34,.08),0 0 34px rgba(230,177,55,.34);animation:mobile-profile-modal-glow 3s ease-in-out infinite}
  .mobile-profile-modal__photo img,.mobile-profile-modal__photo span{display:grid;width:100%;height:100%;place-items:center;border-radius:50%;object-fit:cover;background:#36170c;color:#e3b94a;font-size:4.2rem}
  .mobile-profile-modal__book h2{position:relative;margin:0;color:#f2d779;font-family:var(--font-serif);font-size:clamp(1.7rem,7vw,2.15rem);font-weight:600}
  .mobile-profile-modal__identity{position:relative;margin:.3rem 0 1.1rem;color:#d9c19b;font-size:.87rem}
  .mobile-profile-modal__star{position:relative;display:grid;gap:.28rem;max-width:20rem;margin:0 auto 1.5rem;padding:.75rem 1rem;border:1px solid rgba(202,153,43,.35);border-radius:999px;background:rgba(80,39,14,.44)}
  .mobile-profile-modal__star span{color:#c2a477;font-size:.62rem;font-weight:800;letter-spacing:.15em;text-transform:uppercase}
  .mobile-profile-modal__star strong{color:#edca65;font-family:var(--font-serif);font-size:1.05rem}
  .mobile-profile-modal__details{position:relative;margin:0;text-align:left}
  .mobile-profile-modal__details>div{display:grid;grid-template-columns:2.55rem minmax(0,1fr);gap:.8rem;align-items:center;padding:.9rem .2rem;border-top:1px solid rgba(202,153,43,.25)}
  .mobile-profile-modal__details>div:last-child{border-bottom:1px solid rgba(202,153,43,.25)}
  .mobile-profile-modal__details>div>span:last-child{display:block;min-width:0}
  .mobile-profile-modal__detail-icon{display:grid;place-items:center;width:2.35rem;height:2.35rem;border:1px solid rgba(216,170,58,.37);border-radius:50%;background:rgba(113,62,17,.22);color:#e2b849}
  .mobile-profile-modal__detail-icon svg{width:1.15rem;height:1.15rem;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
  .mobile-profile-modal__details small{display:block;margin:0 0 .18rem;color:#ba9a68;font-size:.61rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}
  .mobile-profile-modal__details strong{display:block;color:#f2e1c5;font-family:var(--font-serif);font-size:1rem;font-weight:500;overflow-wrap:anywhere}
  .mobile-profile-modal__actions{position:relative;display:grid;gap:.7rem;margin-top:1.45rem}
  .mobile-profile-modal__actions form{margin:0}
  .mobile-profile-modal__actions .profile-edit-link,.mobile-profile-modal__actions .profile-family-link,.mobile-profile-modal__actions .profile-logout-button{box-sizing:border-box;display:flex;align-items:center;justify-content:center;width:100%}
  body.profile-expanded{overflow:hidden}
}

@media(min-width:769px){.mobile-profile-modal{display:none!important}}
@keyframes mobile-profile-divine-glow{0%,100%{box-shadow:0 14px 34px rgba(18,5,1,.36),0 0 0 5px rgba(191,126,28,.1),0 0 20px rgba(220,164,48,.12)}50%{box-shadow:0 14px 34px rgba(18,5,1,.4),0 0 0 7px rgba(207,151,39,.14),0 0 32px rgba(236,185,65,.3)}}
@keyframes mobile-profile-modal-glow{0%,100%{box-shadow:0 0 0 .4rem rgba(198,143,34,.08),0 0 30px rgba(230,177,55,.28)}50%{box-shadow:0 0 0 .55rem rgba(209,153,38,.12),0 0 45px rgba(244,195,75,.46)}}
@media(prefers-reduced-motion:reduce){.devotee-photo-frame,.mobile-profile-modal__photo{animation:none}.mobile-profile-modal__backdrop,.mobile-profile-modal__book{transition:none}}

/* Divine Aashirwad Journey — a sacred identity rather than a game-style score. */
.divine-journey-identity{position:relative;width:min(100%,290px);margin:.75rem auto .9rem;padding:.78rem .9rem;overflow:hidden;border:1px solid rgba(220,177,65,.48);border-radius:13px;background:radial-gradient(circle at 18% 0,rgba(255,214,102,.12),transparent 45%),linear-gradient(145deg,rgba(67,37,18,.76),rgba(27,13,8,.84));box-shadow:inset 0 0 20px rgba(212,175,55,.04),0 0 22px rgba(212,175,55,.08);text-align:left;cursor:pointer;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}.divine-journey-identity:hover,.divine-journey-identity:focus-visible{transform:translateY(-2px);border-color:rgba(247,217,121,.78);box-shadow:inset 0 0 22px rgba(212,175,55,.06),0 8px 24px rgba(212,175,55,.15),0 0 18px rgba(247,217,121,.1);outline:2px solid rgba(255,226,138,.42);outline-offset:3px}.divine-journey-identity:after{content:"";position:absolute;right:-22px;top:-30px;width:82px;height:82px;border:1px solid rgba(231,193,86,.13);border-radius:50%;box-shadow:0 0 24px rgba(231,193,86,.07);pointer-events:none}.divine-journey-identity__title{position:relative;z-index:1;display:flex;align-items:center;gap:.42rem;color:#f3d77f;font:600 .72rem/1.25 'Source Sans 3',sans-serif;letter-spacing:.035em}.divine-journey-identity__padam{position:relative;z-index:1;display:flex;align-items:baseline;gap:.38rem;margin-top:.45rem;color:#d9c49b;font-size:.78rem}.divine-journey-identity__padam strong{margin-left:auto;color:#ffe28a;font:600 1.35rem/1 'Cormorant Garamond',serif;text-shadow:0 0 15px rgba(255,218,119,.24)}.divine-journey-identity>small{display:block;margin-top:.25rem;color:#bda77d;font-size:.68rem}
.bhakti-journey-modal{position:fixed;z-index:260;inset:0;display:grid;place-items:center;padding:clamp(.75rem,3vw,2rem);opacity:0;transition:opacity .3s ease}.bhakti-journey-modal[hidden]{display:none}.bhakti-journey-modal.is-visible{opacity:1}.bhakti-journey-modal__backdrop{position:absolute;inset:0;border:0;background:rgba(9,3,1,.84);backdrop-filter:blur(8px);cursor:pointer}.bhakti-journey-book{position:relative;width:min(100%,720px);max-height:min(90dvh,850px);overflow:auto;scrollbar-width:none;-ms-overflow-style:none;padding:clamp(1.5rem,4vw,2.7rem);border:1px solid rgba(224,180,62,.64);border-radius:20px;background:radial-gradient(circle at 50% 0,rgba(205,149,46,.18),transparent 31%),linear-gradient(155deg,#351b0e,#180b07 72%);box-shadow:0 24px 80px rgba(0,0,0,.58),inset 0 0 42px rgba(221,173,55,.045);color:#d9c8a5;text-align:center;transform:translateY(14px) scale(.975);transition:transform .3s ease}.bhakti-journey-book::-webkit-scrollbar{display:none;width:0;height:0}.bhakti-journey-modal.is-visible .bhakti-journey-book{transform:none}.bhakti-journey-book:before{content:"";position:absolute;inset:9px;border:1px solid rgba(228,187,75,.13);border-radius:14px;pointer-events:none}.bhakti-journey-book__close{position:sticky;z-index:3;top:0;display:grid;width:36px;height:36px;place-items:center;margin-left:auto;border:1px solid rgba(225,187,83,.4);border-radius:50%;color:#f1d77f;background:#2b160d;font-size:1.4rem;cursor:pointer}.bhakti-journey-book__lotus{margin:-1.7rem 0 .25rem;font-size:2.1rem;filter:drop-shadow(0 0 13px rgba(232,179,75,.24))}.bhakti-journey-book h2{margin:.35rem auto .8rem;color:#f4d477;font:600 clamp(1.8rem,5vw,2.7rem)/1 'Cormorant Garamond',serif}.bhakti-journey-book>p{max-width:610px;margin:.7rem auto;line-height:1.62}.bhakti-journey-book__truth{padding:1rem;border-block:1px solid rgba(216,168,57,.2);color:#ecd9ae}.bhakti-journey-book__truth strong{color:#ffe28a}.bhakti-journey-book__total{display:flex;flex-direction:column;width:min(100%,330px);margin:1.4rem auto;padding:1rem;border:1px solid rgba(224,180,62,.32);border-radius:14px;background:rgba(255,223,133,.045)}.bhakti-journey-book__total span{color:#d6ba75;font-size:.8rem;letter-spacing:.08em;text-transform:uppercase}.bhakti-journey-book__total strong{margin:.15rem 0;color:#ffe087;font:600 2.6rem/1 'Cormorant Garamond',serif}.bhakti-journey-book__total small{color:#bda87d}.bhakti-journey-book h3{margin:1.15rem 0 .6rem;color:#efcf70;font:600 1.3rem 'Cormorant Garamond',serif}.bhakti-journey-activities{display:grid;grid-template-columns:repeat(2,1fr);gap:.65rem;margin:0}.bhakti-journey-activities div{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.75rem .9rem;border-bottom:1px solid rgba(216,168,57,.22);text-align:left}.bhakti-journey-activities dt{font-size:.82rem}.bhakti-journey-activities dd{margin:0;color:#ffe087;font:600 1.15rem 'Cormorant Garamond',serif}.bhakti-referral-card{margin:1.2rem 0 0;padding:1rem;border:1px solid rgba(224,180,62,.25);border-radius:14px;background:rgba(255,255,255,.025)}.bhakti-referral-card h3{margin-top:0}.bhakti-referral-card dl{display:grid;grid-template-columns:repeat(3,1fr);gap:.5rem}.bhakti-referral-card dl div{padding:.55rem;border-right:1px solid rgba(216,168,57,.18)}.bhakti-referral-card dl div:last-child{border:0}.bhakti-referral-card dt{color:#bca981;font-size:.72rem}.bhakti-referral-card dd{margin:.2rem 0 0;color:#f4d477;font-size:1.15rem}.bhakti-referral-card p{font-size:.82rem}.bhakti-referral-card button,.bhakti-journey-book__continue{min-height:42px;padding:.55rem 1rem;border:1px solid rgba(229,190,82,.5);border-radius:8px;color:#f5d77c;background:rgba(111,66,21,.24);font-weight:700;cursor:pointer}.bhakti-journey-book__continue{display:block;width:min(100%,280px);margin:1.2rem auto 0;background:linear-gradient(135deg,#e3bd58,#aa7219);color:#281508}

@media (min-width:601px) and (max-height:950px){.bhakti-journey-modal{padding:.65rem}.bhakti-journey-book{width:min(100%,760px);max-height:calc(100dvh - 1.3rem);padding:1rem 2.2rem 1.15rem}.bhakti-journey-book__close{position:absolute;top:1rem;right:1.15rem;width:34px;height:34px}.bhakti-journey-book__lotus{margin:0 0 .05rem;font-size:1.65rem}.bhakti-journey-book>.sacred-eyebrow{margin:.15rem auto}.bhakti-journey-book h2{margin:.2rem auto .5rem;font-size:clamp(1.75rem,4vw,2.3rem)}.bhakti-journey-book>p{margin:.42rem auto;line-height:1.38}.bhakti-journey-book__truth{padding:.58rem}.bhakti-journey-book__total{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;align-items:center;width:min(100%,360px);margin:.65rem auto;padding:.55rem .85rem;text-align:left}.bhakti-journey-book__total strong{grid-column:2;grid-row:1/3;margin:0 0 0 1rem;font-size:2.15rem}.bhakti-journey-book h3{margin:.55rem 0 .25rem}.bhakti-journey-activities{gap:.25rem .65rem}.bhakti-journey-activities div{padding:.42rem .7rem}.bhakti-referral-card{margin:.6rem 0 0;padding:.55rem .75rem}.bhakti-referral-card h3{margin:0 0 .25rem}.bhakti-referral-card dl{margin:.25rem 0}.bhakti-referral-card dl div{padding:.3rem .45rem}.bhakti-referral-card dd{margin:.05rem 0 0}.bhakti-referral-card p{margin:.35rem 0}.bhakti-referral-card button,.bhakti-journey-book__continue{min-height:36px;padding:.35rem .8rem}.bhakti-journey-book__continue{margin:.6rem auto 0}}
.bhakti-increase{position:fixed;z-index:330;right:clamp(.75rem,3vw,2rem);bottom:clamp(.75rem,3vw,2rem);width:min(calc(100% - 1.5rem),390px);padding:1rem 2.8rem 1rem 4.2rem;overflow:hidden;border:1px solid rgba(229,186,68,.62);border-radius:16px;background:radial-gradient(circle at 14% 50%,rgba(255,194,66,.19),transparent 27%),linear-gradient(145deg,#3a1e0d,#1a0c07);box-shadow:0 18px 48px rgba(0,0,0,.42),0 0 28px rgba(221,168,43,.12);color:#e4d1a7;opacity:0;transform:translateY(18px);transition:opacity .35s ease,transform .35s ease}.bhakti-increase[hidden]{display:none}.bhakti-increase.is-visible{opacity:1;transform:none}.bhakti-increase>button{position:absolute;top:.45rem;right:.55rem;border:0;color:#c9b283;background:transparent;font-size:1.25rem;cursor:pointer}.bhakti-increase p{margin:0;color:#f4d477;font:600 1rem 'Cormorant Garamond',serif}.bhakti-increase strong{display:block;margin:.15rem 0;color:#ffe38b;font-size:1.25rem}.bhakti-increase small{display:block;line-height:1.35}.bhakti-increase__diya{position:absolute;left:1.3rem;top:50%;width:31px;height:13px;border:1px solid #d39b2e;border-radius:0 0 22px 22px;background:#653414;transform:translateY(5px)}.bhakti-increase__diya i{position:absolute;left:10px;bottom:10px;width:9px;height:18px;border-radius:70% 30% 70% 30%;background:linear-gradient(#fff4a8,#ffad35,#d75513);box-shadow:0 0 18px rgba(255,180,55,.6);transform:rotate(-42deg);animation:bhaktiFlame 2.5s ease-in-out infinite}.bhakti-increase__petal{position:absolute;color:rgba(244,191,99,.38);font-size:.8rem;animation:bhaktiPetal 5s ease-in-out infinite}.bhakti-increase__petal--one{right:17%;top:-8px}.bhakti-increase__petal--two{right:34%;top:-12px;animation-delay:-2.3s}@keyframes bhaktiFlame{50%{transform:rotate(-37deg) scale(1.07)}}@keyframes bhaktiPetal{0%{transform:translateY(-8px) rotate(0);opacity:0}35%{opacity:.65}100%{transform:translateY(82px) rotate(120deg);opacity:0}}.sacred-invitation-note{padding:.65rem;border:1px solid rgba(212,175,55,.32);border-radius:8px;color:#d9bd72;background:rgba(212,175,55,.05);text-align:center}
@media (min-width:601px) and (max-width:900px){.divine-journey-identity{grid-column:2;grid-row:3;margin:.65rem 0 .9rem}.devotee-card__identity{grid-row:4!important}.birth-star{grid-row:5!important}.devotee-details{grid-row:6!important}.devotee-actions{grid-row:7!important}}
@media(max-width:600px){.divine-journey-identity{width:min(100%,310px);margin:.6rem auto .85rem;padding:.68rem .8rem}.divine-journey-identity__title{font-size:.68rem}.divine-journey-identity__padam strong{font-size:1.22rem}.bhakti-journey-modal{padding:.45rem}.bhakti-journey-book{max-height:96dvh;padding:1.15rem;border-radius:16px}.bhakti-journey-book__lotus{margin:-1.55rem 0 .15rem}.bhakti-journey-activities{grid-template-columns:1fr}.bhakti-referral-card dl{grid-template-columns:1fr}.bhakti-referral-card dl div{display:flex;justify-content:space-between;border-right:0;border-bottom:1px solid rgba(216,168,57,.16)}.bhakti-increase{right:.55rem;bottom:.55rem;width:calc(100% - 1.1rem);padding-left:3.8rem}}
@media(prefers-reduced-motion:reduce){.bhakti-increase,.bhakti-journey-book,.bhakti-increase__diya i,.bhakti-increase__petal{animation:none;transition:none}}

/* Devotional voice invitation within the existing profile gateway. */
.profile-heart-voice{position:relative;width:min(100%,620px);margin:1.45rem auto .35rem;padding:1.3rem 1.25rem .4rem;border-top:1px solid rgba(212,175,55,.19);background:radial-gradient(circle at 50% 0,rgba(255,215,107,.09),transparent 14rem);text-align:center}.profile-heart-voice__divider{display:flex;align-items:center;justify-content:center;gap:.65rem;margin:-1.7rem auto .9rem;color:#ffd76b}.profile-heart-voice__divider span{width:72px;height:1px;background:linear-gradient(90deg,transparent,rgba(212,175,55,.5))}.profile-heart-voice__divider span:last-child{transform:scaleX(-1)}.profile-heart-voice__divider b{font-size:.72rem;text-shadow:0 0 12px rgba(255,215,107,.55)}.profile-heart-voice .sacred-eyebrow{margin:0 0 .35rem}.profile-heart-voice h3{margin:0 0 .85rem;color:var(--sacred-gold-bright,#ffd76b);font:600 clamp(1.65rem,3vw,2.25rem)/1 'Cormorant Garamond',Georgia,serif;text-shadow:0 0 18px rgba(255,215,107,.15)}.profile-heart-voice p{color:var(--sacred-muted,#c8b58c);font-size:.79rem;line-height:1.55}.profile-heart-voice__thoughts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem}.profile-heart-voice__thoughts span{padding:.48rem .6rem;border:1px solid rgba(212,175,55,.14);border-radius:999px;color:rgba(247,232,194,.72);background:rgba(25,12,6,.22);font-size:.72rem}.profile-heart-voice .profile-heart-voice__emphasis{margin:1rem 0 .65rem;color:#f8d976;font:600 1rem/1.35 'Cormorant Garamond',Georgia,serif}.profile-heart-voice__closing{max-width:510px;margin:.2rem auto .9rem}.profile-heart-voice__cta{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.58rem 1.15rem;border:1px solid rgba(255,215,107,.58);border-radius:999px;color:#2a1708;background:linear-gradient(135deg,#f5d56e,#bd861d);box-shadow:0 7px 20px rgba(212,175,55,.18);font:700 .78rem 'Source Sans 3',sans-serif;text-decoration:none;transition:transform .22s ease,box-shadow .22s ease}.profile-heart-voice__cta:hover,.profile-heart-voice__cta:focus-visible{transform:translateY(-2px);box-shadow:0 10px 26px rgba(255,215,107,.28);outline:2px solid rgba(255,241,185,.7);outline-offset:3px}.profile-heart-voice .gateway-note{justify-content:center;margin:.75rem 0 0}
@media(max-width:600px){.profile-heart-voice{margin-top:1.25rem;padding:1.2rem .15rem .3rem}.profile-heart-voice__thoughts{grid-template-columns:1fr 1fr;gap:.42rem}.profile-heart-voice__thoughts span{padding:.45rem .35rem;border-radius:8px;font-size:.67rem}.profile-heart-voice h3{font-size:1.65rem}.profile-heart-voice p{font-size:.76rem}.profile-heart-voice__cta{width:100%;max-width:270px}.gateway-content{justify-content:flex-start}.gods-ear-gateway,.gateway-content{min-height:0}}
@media(prefers-reduced-motion:reduce){.profile-heart-voice__cta{transition:none}}

/* Refined God's Ear sanctuary and living diyas. */
.gods-ear-gateway{isolation:isolate;background:radial-gradient(circle at 50% 39%,rgba(191,127,28,.25),transparent 25%),radial-gradient(circle at 50% 80%,rgba(111,54,13,.16),transparent 42%),linear-gradient(145deg,rgba(52,29,14,.98),rgba(18,8,5,.99));box-shadow:0 22px 55px rgba(7,2,0,.3),inset 0 0 70px rgba(225,164,44,.035);animation:gatewaySanctumPulse 9s ease-in-out infinite}.gods-ear-gateway:after{opacity:.12;animation:gatewaySacredRings 14s ease-in-out infinite}.gateway-arch{opacity:.82;box-shadow:inset 0 18px 35px rgba(215,157,39,.035),0 -8px 30px rgba(220,164,48,.04)}.gateway-arch:before,.gateway-arch:after{content:"";position:absolute;inset:14px 9%;border:1px solid rgba(220,170,53,.15);border-bottom:0;border-radius:100% 100% 0 0}.gateway-arch:after{inset:29px 18%;border-color:rgba(244,202,83,.09)}.gateway-pillar{overflow:hidden;background:linear-gradient(90deg,rgba(212,175,55,.03),rgba(234,190,69,.12),rgba(212,175,55,.025))}.gateway-pillar:after{content:"";position:absolute;inset:-35% 0;background:linear-gradient(180deg,transparent,rgba(255,222,128,.18),transparent);animation:gatewayPillarLight 7s ease-in-out infinite}.gateway-pillar--right:after{animation-delay:-3.5s}.gateway-om{animation:gatewayOmGlow 5.5s ease-in-out infinite}.gateway-presence{margin:1.45rem 0 1.25rem;border-radius:50%;background:radial-gradient(circle,rgba(255,216,104,.12),transparent 60%);filter:drop-shadow(0 0 16px rgba(219,160,42,.08))}.gateway-presence:before{content:"";position:absolute;inset:39px;border-radius:50%;background:rgba(255,218,112,.08);box-shadow:0 0 25px rgba(255,203,76,.16);animation:gatewayPresenceCore 3.8s ease-in-out infinite}.gateway-presence svg{animation:gatewayMicFloat 4.5s ease-in-out infinite}.profile-heart-voice{overflow:hidden;margin:1rem auto .3rem;padding:1.35rem 1.4rem .85rem;border:1px solid rgba(212,175,55,.18);border-radius:20px;background:radial-gradient(circle at 50% 0,rgba(255,215,107,.11),transparent 12rem),linear-gradient(145deg,rgba(46,24,12,.36),rgba(15,7,4,.18));box-shadow:inset 0 0 35px rgba(216,163,50,.025),0 12px 34px rgba(8,3,1,.12)}.profile-heart-voice:before{content:"";position:absolute;inset:-50% 25% 65%;border-radius:50%;background:rgba(255,215,107,.09);filter:blur(28px);animation:gatewayInvitationGlow 7s ease-in-out infinite;pointer-events:none}.profile-heart-voice>*{position:relative;z-index:1}.profile-heart-voice__divider{margin:-1.72rem auto .9rem}.profile-heart-voice__thoughts{gap:.6rem}.profile-heart-voice__thoughts span{position:relative;overflow:hidden;padding:.52rem .75rem;border-color:rgba(220,173,57,.2);background:linear-gradient(100deg,rgba(25,12,6,.32),rgba(76,39,12,.18));transition:border-color .25s ease,color .25s ease,transform .25s ease,box-shadow .25s ease}.profile-heart-voice__thoughts span:before{content:"✦";margin-right:.38rem;color:rgba(239,193,76,.6);font-size:.55rem}.profile-heart-voice__thoughts span:after{content:"";position:absolute;inset:0;transform:translateX(-120%);background:linear-gradient(100deg,transparent,rgba(255,224,133,.08),transparent);animation:gatewayThoughtLight 8s ease-in-out infinite}.profile-heart-voice__thoughts span:nth-child(2):after{animation-delay:-2s}.profile-heart-voice__thoughts span:nth-child(3):after{animation-delay:-4s}.profile-heart-voice__thoughts span:nth-child(4):after{animation-delay:-6s}.profile-heart-voice__thoughts span:hover{transform:translateY(-1px);border-color:rgba(238,197,86,.42);color:#f6dfaa;box-shadow:0 6px 16px rgba(8,3,1,.18)}.profile-heart-voice__cta{position:relative;overflow:visible;box-shadow:0 8px 24px rgba(212,175,55,.24),0 0 0 0 rgba(239,194,77,.16);animation:gatewayCtaBlessing 4.5s ease-in-out infinite}.gateway-diya{z-index:3;bottom:28px;width:34px;height:12px;border-color:rgba(231,184,60,.78);border-radius:2px 2px 22px 22px;background:radial-gradient(ellipse at 50% 0,#bd761c 0 12%,#6f3512 46%,#2b1309 100%);box-shadow:0 4px 10px rgba(0,0,0,.35),inset 0 -2px 4px rgba(0,0,0,.24)}.gateway-diya:before{content:"";position:absolute;left:50%;bottom:2px;width:66px;height:66px;border-radius:50%;background:radial-gradient(circle,rgba(255,190,58,.22),rgba(255,159,29,.07) 38%,transparent 68%);filter:blur(2px);transform:translateX(-50%);animation:gatewayLampAura 3.2s ease-in-out infinite;pointer-events:none}.gateway-diya:after{content:"";position:absolute;left:4px;right:4px;top:-2px;height:4px;border-radius:50%;border-top:1px solid rgba(255,219,105,.7);background:rgba(255,176,42,.08)}.gateway-diya i{left:12px;bottom:8px;width:10px;height:22px;transform-origin:50% 100%;border-radius:65% 35% 62% 38%;background:linear-gradient(to top,#dd4d0e 0 15%,#ff9b24 42%,#ffe377 72%,#fff8cf 100%);box-shadow:0 0 10px rgba(255,149,31,.75),0 0 24px rgba(255,191,53,.52),0 0 42px rgba(255,190,51,.2);animation:gatewayLivingFlame 1.65s ease-in-out infinite}.gateway-diya i b{position:absolute;left:3px;bottom:2px;width:4px;height:11px;border-radius:60% 40% 65% 35%;background:linear-gradient(to top,#ff9c22,#fff8c5);opacity:.9}.gateway-diya--right i{animation-delay:-.7s}.gateway-diya>span{position:absolute;z-index:-1;left:50%;bottom:18px;width:3px;height:3px;border-radius:50%;background:#ffd86e;box-shadow:0 0 7px #ffb431;opacity:0;animation:gatewayLampEmber 4.2s ease-out infinite}.gateway-diya>span:nth-of-type(2){margin-left:-8px;animation-delay:-1.4s;animation-duration:4.8s}.gateway-diya>span:nth-of-type(3){margin-left:7px;animation-delay:-2.8s;animation-duration:5.2s}.gateway-diya--right>span{animation-delay:-.8s}.gateway-diya--right>span:nth-of-type(2){animation-delay:-2.2s}.gateway-diya--right>span:nth-of-type(3){animation-delay:-3.6s}
@keyframes gatewaySanctumPulse{0%,100%{box-shadow:0 22px 55px rgba(7,2,0,.3),inset 0 0 70px rgba(225,164,44,.035)}50%{box-shadow:0 25px 62px rgba(7,2,0,.34),inset 0 0 92px rgba(225,164,44,.065)}}@keyframes gatewaySacredRings{0%,100%{transform:scale(.985);opacity:.08}50%{transform:scale(1.018);opacity:.15}}@keyframes gatewayPillarLight{0%,100%{transform:translateY(-35%);opacity:0}45%,60%{opacity:.72}100%{transform:translateY(35%);opacity:0}}@keyframes gatewayOmGlow{0%,100%{text-shadow:0 0 18px rgba(255,215,107,.3);transform:translateY(0)}50%{text-shadow:0 0 30px rgba(255,215,107,.58);transform:translateY(-2px)}}@keyframes gatewayPresenceCore{0%,100%{transform:scale(.86);opacity:.4}50%{transform:scale(1.12);opacity:.9}}@keyframes gatewayMicFloat{0%,100%{transform:translateY(1px)}50%{transform:translateY(-3px)}}@keyframes gatewayInvitationGlow{0%,100%{transform:scale(.82);opacity:.45}50%{transform:scale(1.12);opacity:.9}}@keyframes gatewayThoughtLight{0%,72%{transform:translateX(-120%)}88%,100%{transform:translateX(120%)}}@keyframes gatewayCtaBlessing{0%,100%{box-shadow:0 8px 24px rgba(212,175,55,.24),0 0 0 0 rgba(239,194,77,.13)}50%{box-shadow:0 10px 29px rgba(241,196,78,.3),0 0 0 6px rgba(239,194,77,0)}}@keyframes gatewayLampAura{0%,100%{transform:translateX(-50%) scale(.84);opacity:.55}50%{transform:translateX(-50%) scale(1.12);opacity:1}}@keyframes gatewayLivingFlame{0%,100%{transform:rotate(-4deg) scale(.94,1);border-radius:65% 35% 62% 38%}25%{transform:rotate(4deg) scale(1.04,.93);border-radius:52% 48% 70% 30%}55%{transform:rotate(-2deg) scale(.9,1.08);border-radius:72% 28% 54% 46%}78%{transform:rotate(3deg) scale(1.02,.97)}}@keyframes gatewayLampEmber{0%{transform:translate(0,0) scale(.5);opacity:0}16%{opacity:.8}64%{opacity:.35}100%{transform:translate(8px,-58px) scale(0);opacity:0}}
@media(max-width:600px){.profile-heart-voice{padding:1.25rem .75rem .7rem;border-radius:16px}.gateway-presence{width:88px;height:88px;margin:1.1rem 0 .9rem}.gateway-presence span:nth-child(2){inset:11px}.gateway-presence span:nth-child(3){inset:22px}.gateway-presence:before{inset:33px}.gateway-diya{bottom:18px;transform:scale(.88)}.gateway-diya--left{left:7%}.gateway-diya--right{right:7%}}
@media(prefers-reduced-motion:reduce){.gods-ear-gateway,.gods-ear-gateway:after,.gateway-arch:before,.gateway-arch:after,.gateway-pillar:after,.gateway-om,.gateway-presence:before,.gateway-presence svg,.profile-heart-voice:before,.profile-heart-voice__thoughts span:after,.profile-heart-voice__cta,.gateway-diya:before,.gateway-diya i,.gateway-diya>span{animation:none!important}}

/* Ganapati prayer history keeps immutable devotee snapshots readable on profile. */
.ganapati-prayer-history{margin:0 0 1.4rem;border:1px solid rgba(218,165,43,.38);border-radius:16px;background:rgba(48,20,7,.82);color:#f1dcae;overflow:hidden}.ganapati-prayer-history summary{padding:.85rem 1rem;color:#f4cb5d;font-weight:800;cursor:pointer}.ganapati-prayer-history>div{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:.65rem;padding:0 1rem 1rem}.ganapati-prayer-history article{display:flex;flex-direction:column;gap:.22rem;padding:.75rem;border:1px solid rgba(221,171,48,.2);border-radius:12px;background:rgba(22,7,2,.38)}.ganapati-prayer-history span,.ganapati-prayer-history small{color:#bda77e;font-size:.72rem}.ganapati-prayer-history strong{color:#ffe080;font-family:'Cormorant Garamond',Georgia,serif}

/* Compact festival history card. It appears only for devotees with a Ganapati journey. */
.ganapati-profile-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:1rem;align-items:center;margin:1.35rem 0;padding:1.3rem 1.45rem;border:1px solid rgba(218,165,43,.48);border-radius:18px;background:radial-gradient(circle at 12% 15%,rgba(240,183,52,.18),transparent 12rem),linear-gradient(135deg,#4a220d,#251005);box-shadow:inset 0 0 0 5px rgba(249,213,118,.035),0 12px 28px rgba(10,3,0,.16);color:#f2dfb6}.ganapati-profile-card__om{color:#ffda64;font:3rem/1 'Noto Sans Devanagari',sans-serif;text-shadow:0 0 18px rgba(247,194,61,.42)}.ganapati-profile-card h2{margin:.12rem 0 .35rem;color:#ffe6ab;font:600 clamp(1.45rem,3vw,2rem)/1 'Cormorant Garamond',Georgia,serif}.ganapati-profile-card p{margin:0;color:#dfc89d;font-size:.87rem}.ganapati-profile-card small{color:#edc75e;font-size:.76rem}.ganapati-profile-card__progress{height:.42rem;max-width:420px;margin:.72rem 0 .35rem;border-radius:999px;overflow:hidden;background:#1e0b03}.ganapati-profile-card__progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#be8121,#ffe181)}.ganapati-profile-card__link{padding:.6rem .9rem;border:1px solid rgba(255,214,105,.62);border-radius:999px;background:linear-gradient(135deg,#f3cf67,#b77c1c);color:#2d1506;font-size:.78rem;font-weight:800;text-decoration:none;white-space:nowrap}@media(max-width:620px){.ganapati-profile-card{grid-template-columns:auto minmax(0,1fr);padding:1.1rem}.ganapati-profile-card__link{grid-column:1/-1;text-align:center}.ganapati-profile-card__om{font-size:2.45rem}}
