/* A visible temple-inspired surface; phone layout overrides come last. */
:root{--paper:#fcf5e8;--surface:#fffdf8;--raised:#f1e2c5;--line:#bca47e;--hero:#164b3c;--hero-deep:#092e24;--accent:#794019;--gold:#856022}
:root[data-theme=dark]{--paper:#051d16;--surface:#0b2c22;--raised:#153e30;--line:#698d77;--hero:#104e38;--hero-deep:#062b1e;--accent:#f1cb88;--gold:#e4bf77}
body{background:radial-gradient(ellipse at 10% 0%,color-mix(in srgb,var(--gold) 12%,transparent),transparent 48%),var(--paper)}
.app-header,header{border-bottom:1px solid color-mix(in srgb,var(--gold) 40%,transparent)}
.header-brand-group,.header-tools{min-width:0}.header-tools{gap:8px}.brand::after{display:none}.brand span{letter-spacing:.07em}.app-header .sacred-motion-toggle,.header-tools .sacred-motion-toggle{width:42px;height:42px;min-height:42px;padding:6px;font-size:16px;color:var(--accent)}
.intro.ganesha-welcome{border:1px solid var(--line);border-radius:30px;background:radial-gradient(ellipse at 20% 75%,color-mix(in srgb,var(--gold) 24%,transparent),transparent 48%),linear-gradient(110deg,var(--raised),var(--surface) 68%);box-shadow:inset 0 0 0 7px color-mix(in srgb,var(--surface) 70%,transparent),0 14px 32px #4b351509;padding:25px 42px;gap:40px;isolation:isolate}
.ganesha-art{padding:12px 8px 4px;min-width:0}.ganesha-art::before{content:"";position:absolute;inset:2px 10px 0;border:1px solid color-mix(in srgb,var(--gold) 55%,transparent);border-radius:50% 50% 12px 12px;background:url('/sacred-mark.svg') center 45%/85% no-repeat;opacity:.35;z-index:0}.ganesha-art img{height:280px;max-width:100%;z-index:1}.ganesha-aura{inset:16% 0;background:radial-gradient(ellipse,#efbb6570,transparent 68%)}
.ganesha-welcome .ganesha-mantra{font-size:clamp(26px,3.3vw,40px);color:var(--accent);line-height:1.5}.ganesha-welcome h1{font-size:clamp(29px,3.6vw,44px);max-width:620px}.ganesha-welcome .intro-subtitle{font-size:16px;line-height:1.6;display:block}.ganesha-welcome .welcome-offering{margin-top:18px;gap:24px}.welcome-offering .sacred-diya{width:46px;height:46px;flex-basis:46px}
.temple-bell{position:absolute;top:0;width:42px;height:74px;opacity:.8;pointer-events:none;transform-origin:50% 0}.temple-bell-left{left:13px}.temple-bell-right{right:13px}
.sacred-motion-on .ganesha-welcome .diya-flame{animation:diya-breathe 2.8s ease-in-out infinite}.sacred-motion-on .ganesha-welcome .ganesha-aura{animation:sacred-light 8s ease-in-out infinite}.sacred-motion-on .temple-bell{animation:temple-bell-sway 7s ease-in-out infinite}.sacred-motion-on .temple-bell-right{animation-delay:-3.5s}.sacred-motion-paused .temple-bell{animation-play-state:paused!important}.sacred-petal{width:12px;height:20px;background:#cb795e;opacity:.25}.sacred-petal:nth-child(even){background:#dbaf53}
@keyframes temple-bell-sway{0%,100%{transform:rotate(-5deg)}50%{transform:rotate(5deg)}}
.context-bar{box-shadow:0 4px 16px #39271606;border-radius:16px}.day-significance,.panchang-glance,.answer-card,.business-planner,.activity-planner,.festival-collection-card,.rashi-card{border-color:var(--line);box-shadow:0 5px 20px #36230d08}.day-significance{border-radius:18px;border-left:4px solid var(--gold);background:linear-gradient(105deg,var(--raised),var(--surface) 55%)}
.glance-grid .hero{align-items:stretch}.hero{min-width:0;overflow:visible;border-radius:22px!important}.hero::after{opacity:.12}.hero-main,.sun-panel,.hero-top,.panchang-glance,.element-card{min-width:0}.hero h2{overflow-wrap:anywhere;line-height:1.2}.hero .sun-panel{width:100%;max-width:100%;padding-top:18px}.hero .sun{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;width:100%}.hero .sun>div{display:grid;grid-template-columns:minmax(0,1fr);align-items:start;gap:5px;min-width:0}.hero .sun>div:last-child{text-align:right}.hero .sun span{font-size:14px;line-height:1.5}.hero .sun strong{display:block;font-size:clamp(18px,1.7vw,23px);font-variant-numeric:tabular-nums;line-height:1.3;white-space:nowrap}.hero .hero-top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px}.hero-label{font-size:12px;letter-spacing:.06em}.view-switch{flex:none;display:inline-flex;max-width:100%}.view-switch button{white-space:nowrap;min-height:40px}
.panchang-glance h2{font:600 23px/1.3 "Segoe UI",sans-serif}.panchang-glance .element-card>.value{overflow-wrap:anywhere}.calendar-year-line{line-height:1.5}.section-heading{flex-wrap:wrap;gap:12px}.section-heading h2{line-height:1.3}.answer-card h3{font-family:Georgia,serif}.reading-page h1,.panel-intro h2{color:var(--ink)}
@media(max-width:800px){.glance-grid{grid-template-columns:minmax(0,1fr)!important}.glance-grid .hero{display:flex;flex-direction:column;padding:22px}.intro.ganesha-welcome{gap:20px;padding:22px 30px}.hero .sun>div{display:grid}.primary-nav{background:var(--nav);border-top:1px solid var(--line);gap:4px}.primary-nav a{min-width:0;font-size:13px;line-height:1.35}.primary-nav svg{width:22px;height:22px}.primary-nav a[aria-selected=true]{background:var(--raised);color:var(--ink)}main{padding-bottom:calc(110px + env(safe-area-inset-bottom))}}
@media(max-width:600px){.app-header{height:auto;min-height:68px;padding:10px 14px;gap:8px;flex-wrap:wrap}.header-brand-group{gap:10px}.brand{font-size:22px}.brand::before{display:none}.header-tools #connection{display:none}.header-tools{gap:6px}.header-tools .icon-button,.app-header .sacred-motion-toggle{min-width:36px;width:36px;height:40px;min-height:40px;padding:4px}.account-button{padding:8px 10px}.intro.ganesha-welcome{display:grid;grid-template-columns:minmax(90px,.8fr) minmax(0,1.6fr);gap:12px;text-align:left;padding:24px 17px 20px;border-radius:22px}.ganesha-art{padding:0}.ganesha-art img{height:156px}.ganesha-art::before{inset:0 0 0}.ganesha-welcome .ganesha-mantra{font-size:23px;line-height:1.5;margin:0 0 8px;letter-spacing:0}.ganesha-welcome h1{font-size:25px;line-height:1.18;letter-spacing:-.5px;margin:9px 0}.ganesha-welcome .devotional-line{font-size:11px!important;line-height:1.5;letter-spacing:.04em;margin:0}.ganesha-welcome .intro-subtitle{font-size:14px;line-height:1.5;margin:10px 0}.ganesha-welcome .welcome-offering{justify-content:flex-start;gap:12px;margin-top:10px}.welcome-offering .sacred-diya{width:30px;height:30px;flex-basis:30px}.welcome-offering>span{font-size:18px}.temple-bell{width:25px;height:43px;opacity:.6}.temple-bell-left{left:7px}.temple-bell-right{right:7px}.glance-grid .hero{padding:22px;gap:12px}.hero h2{font-size:30px}.hero .sun{gap:12px}.hero .sun strong{font-size:19px}.hero .sun span{font-size:13px}.hero .hero-top{gap:10px}.view-switch button{font-size:13px;padding:7px 10px}.hero #context{display:block;font-size:13px;letter-spacing:0;line-height:1.5;margin:12px 0 8px}.hero #monthName{display:inline-block;max-width:100%;font-size:13px;margin-top:10px}.hero #yearNames{font-size:13px;margin:10px 0 0}.panchang-glance{padding:20px}.panchang-glance h2{font-size:22px}.panchang-glance .element-card{grid-template-columns:72px minmax(0,1fr);column-gap:12px}.panchang-glance .element-card details{grid-column:2;grid-row:auto;max-width:100%;margin-top:6px}.panchang-glance .element-card details[open]{grid-column:1/-1;grid-row:auto}.panchang-glance .element-card>.small:not(:first-child){grid-column:2;grid-row:2}.primary-nav a{font-size:12px;letter-spacing:0;padding:8px 2px}.today-heading{display:block}.day-shortcuts{gap:10px;font-size:14px;margin-top:10px}.sacred-petal{width:9px;height:14px;opacity:.2}}
@media(max-width:360px){.intro.ganesha-welcome{grid-template-columns:90px minmax(0,1fr);gap:10px;padding:22px 14px}.ganesha-art img{height:140px}.ganesha-welcome h1{font-size:23px}.ganesha-welcome .ganesha-mantra{font-size:21px}.ganesha-welcome .intro-subtitle{font-size:13px}.glance-grid .hero{padding:20px}.hero .hero-top{display:grid;grid-template-columns:1fr}.hero .view-switch{justify-self:start}.hero .sun strong{font-size:18px}.primary-nav a{font-size:11px}.panchang-glance{padding:18px}}
@media(prefers-reduced-motion:reduce){.temple-bell,.sacred-motion-on .ganesha-welcome .diya-flame,.sacred-motion-on .ganesha-welcome .ganesha-aura{animation:none!important}}
@media print{.temple-bell{display:none}.intro.ganesha-welcome{box-shadow:none}.hero{break-inside:avoid}}

/* Dense, labelled cards; full readings expand in place. */
.glance-grid{align-items:start!important}.glance-grid .hero{height:auto;justify-content:flex-start;gap:14px}.hero .hero-top{margin-bottom:14px}.hero #tithiEnd{margin-bottom:12px}.hero #yearNames{margin:12px 0;font-size:16px}.hero .sun-panel{margin-top:0;padding-top:14px}.hero .sun{row-gap:14px}.hero .sun>div:nth-child(even){text-align:right}.hero .sun>div:nth-child(odd){text-align:left}.hero .solar-caption,.hero .sun-arc{display:none}.panchang-glance{padding:22px}.panchang-glance .element-card{padding:12px 0}.panchang-glance #elementReference{margin:0 0 12px}.panchang-glance h2{margin:0 0 10px}.panchang-glance .section-heading{margin-bottom:8px}.day-significance,.meaning-card,.rashi-card{padding:22px}.day-significance p,.meaning-card p{margin:10px 0;line-height:1.65}.day-significance .meaning-brief{display:block;-webkit-line-clamp:unset;overflow:visible}.devotional-more{padding:0;border:0;border-top:1px solid var(--line);background:none;margin:12px 0}.devotional-more summary{padding:12px 0;font-size:14px;color:var(--accent);min-height:44px}.devotional-more p{font-size:15px;line-height:1.7;color:var(--ink)}.devotional-more h5{font-size:16px;margin:12px 0 6px}.devotional-more li{padding:6px 0}.devi-feature{align-items:start;padding:16px!important;margin:14px 0!important;gap:20px!important}.devi-feature img{object-fit:contain;object-position:top;height:auto;max-height:300px}.devi-feature .devi-mantra{margin:12px 0}.devi-reading>section{margin-bottom:24px}.devi-reading p{line-height:1.8}.devi-reading-nav{gap:12px}.festival-collection-card{padding:20px!important}.festival-collection-card h2{margin:10px 0}.festival-collection-card p{line-height:1.65}.temple-sound-toggle{width:40px;height:40px;min-height:40px;padding:4px;font-size:21px;color:var(--accent);background:var(--surface)}.app-header .sacred-motion-toggle,.header-tools .sacred-motion-toggle{width:auto;min-width:62px;font-size:11px;padding:5px 7px}.header-tools{flex-wrap:wrap}.tithi-phase-label{font-weight:600;color:var(--accent)}
@media(max-width:600px){.day-significance,.meaning-card,.rashi-card{padding:18px}.panchang-glance{padding:18px}.glance-grid .hero{gap:10px;padding:20px}.hero #yearNames{font-size:14px;margin:10px 0}.hero .sun strong{font-size:18px}.hero .sun-panel{padding-top:12px}.devi-feature{grid-template-columns:90px minmax(0,1fr)!important;gap:12px!important;padding:12px!important}.devi-feature h4{font-size:22px}.devi-feature .devi-mantra{font-size:20px}.devi-feature .devotional-more{grid-column:1/-1}.app-header .sacred-motion-toggle{min-width:56px;font-size:10px}.header-tools{gap:4px}.temple-sound-toggle{width:34px;height:38px;min-height:38px}.header-tools .account-button{font-size:12px}.devi-reading .devotional-more ol{padding-left:22px}}
@media(max-width:600px){.devi-feature{display:block!important}.devi-feature>a:first-child{float:left;width:90px;margin:0 14px 10px 0}.devi-feature::after{content:'';display:block;clear:both}.devi-feature .devotional-more{clear:both}.devi-feature .devi-seal{float:left;margin-right:12px}.devi-feature .eyebrow{font-size:11px}}
@media(max-width:600px){header{height:auto;min-height:68px;padding:10px 14px;gap:8px;flex-wrap:wrap}.header-tools>a{font-size:12px}.header-brand-group{min-width:0}.hero .sun>div:nth-child(n+3) strong{white-space:normal;overflow-wrap:anywhere}}
.timing-value{display:flex;align-items:baseline;gap:.4rem;flex-wrap:wrap}
.timing-info{position:relative;min-width:0;border:0;margin:0;padding:0}
.timing-info>summary{display:inline-grid;place-items:center;min-width:36px;min-height:36px;padding:0;border-radius:50%;font-size:1rem;cursor:pointer;color:inherit;list-style:none}
.timing-info>summary::-webkit-details-marker{display:none}
.timing-info>summary:focus-visible{outline:2px solid currentColor;outline-offset:3px}
.timing-info[open]{flex-basis:100%}
.timing-note{font-size:1rem;line-height:1.55;padding:.5rem 0 0}
.timing-note h3{font-family:inherit;font-size:1rem;margin:.2rem 0 .5rem}
.timing-note p{margin:0;max-width:55ch}
@media(max-width:600px){#windowCards .window:has(.timing-info[open]){grid-column:1/-1}}

/* Audit 15 October: compact hierarchy, continuous cards and unclipped owner artwork. */
.location-hint{font-size:14px;margin:0 0 8px;color:var(--ink-soft)}
.dashboard-links{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0}
.dashboard-links a{padding:10px 14px;border:1px solid var(--line);border-radius:12px;background:var(--surface);text-decoration:none;min-height:44px;display:inline-flex;align-items:center}
.planning-desk{margin:24px 0}.planning-desk>summary{font-size:20px;padding:20px;cursor:pointer}.planning-desk>summary small{display:block;font-size:14px;font-weight:400;margin-top:6px}.planning-desk[open]>.planning-grid,.planning-desk[open]>.mercury-reminder,.planning-desk[open]>.download-desk{margin:16px}
.hero .solar-caption{display:block!important;margin:12px 0 0;font-size:14px}.hero .solar-caption a{color:inherit;text-underline-offset:3px}
.intro.ganesha-welcome{padding:14px 28px;gap:24px;margin-bottom:18px}.ganesha-art img{height:180px}.ganesha-welcome h1{font-size:clamp(26px,3vw,38px)}.welcome-offering{margin-top:4px}.ganesha-mantra{margin-bottom:4px}
.month-cell:not(.selected-day) .month-extra,.month-cell:not(.selected-day) .month-era{display:none}.month-expand{font-size:13px;text-decoration:underline}.selected-day .month-expand{display:none}
.method-facts{display:grid;grid-template-columns:minmax(120px,1fr) minmax(0,3fr);gap:12px 20px;line-height:1.65}.method-facts dt{font-weight:600}.method-facts dd{margin:0;overflow-wrap:anywhere}
.devi-feature img[src*="skandamata"],.devi-card img[src*="skandamata"]{height:auto!important;aspect-ratio:534/374;object-fit:contain}
@media(max-width:600px){.intro.ganesha-welcome{grid-template-columns:88px minmax(0,1fr);text-align:left;gap:12px;padding:14px 18px}.ganesha-art img{height:130px}.ganesha-mantra{font-size:20px;line-height:1.5}.ganesha-welcome h1{font-size:23px}.ganesha-welcome .intro-subtitle{font-size:14px}.ganesha-welcome .devotional-line,.welcome-offering{display:none}.dashboard-links{display:grid;grid-template-columns:1fr 1fr}.dashboard-links a{font-size:14px}.method-facts{grid-template-columns:1fr;gap:4px}.method-facts dd{margin-bottom:14px}.planning-desk[open]>.planning-grid,.planning-desk[open]>.mercury-reminder,.planning-desk[open]>.download-desk{margin:10px}.hero .sun{gap:16px 10px!important}.hero .sun>div{min-width:0}.hero .sun strong{font-size:clamp(17px,5vw,23px)!important}}
@media print{.month-cell .month-extra,.month-cell .month-era{display:block!important}.month-expand{display:none}}

.mobile-dock{display:none}
@media(max-width:700px){.primary-nav{display:none!important}.mobile-dock{position:fixed;z-index:70;bottom:0;left:0;right:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:4px;background:var(--surface);border-top:1px solid var(--line);padding:8px 10px max(10px,env(safe-area-inset-bottom));box-shadow:0 -5px 18px #0000000b}.mobile-dock a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;min-height:50px;text-decoration:none;font-size:13px;color:var(--ink)}.mobile-dock a>span{font-size:24px;color:var(--accent)}.header-tools #install{display:none}.day-shortcuts{display:none!important}.today-heading{margin-top:16px}}

.header-tools{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.header-tools>a{padding:8px 4px}.site-task-nav{gap:8px}

.site-task-nav{grid-template-columns:repeat(6,minmax(0,1fr))}
@media(max-width:800px){.site-task-nav{grid-template-columns:repeat(3,minmax(0,1fr))}}

/* Immediate local answers are present before the calculation worker loads. */
.quick-timing-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:0 0 20px}.quick-timing-cards>a{display:grid;gap:8px;padding:16px;border:1px solid var(--line);border-radius:16px;background:var(--surface,#fffdf8);color:var(--ink);text-decoration:none;min-width:0}.quick-timing-cards strong{font-size:16px;line-height:1.5;overflow-wrap:anywhere}.quick-timing-cards span{font-size:14px;color:var(--muted)}@media(max-width:600px){.quick-timing-cards{grid-template-columns:1fr;gap:8px}.quick-timing-cards>a{padding:12px 16px;grid-template-columns:minmax(100px,.7fr) minmax(0,1fr);align-items:center;gap:12px}}

.first-place-prompt{padding:12px 16px;border:1px solid var(--line);border-radius:14px;font-size:15px}.first-place-prompt button{margin:6px 4px;min-height:44px}
.birth-form input[type=checkbox]{width:20px;height:20px;min-height:20px;display:inline-block;vertical-align:middle;margin-right:8px;accent-color:var(--accent)}
.month-search-page .site-task-nav,.search-answer-page .site-task-nav{display:none}
.month-search-page h1{font-size:clamp(28px,4vw,44px);margin:12px 0}
.month-search-page .detail-date-nav{display:flex;flex-wrap:wrap;gap:8px 18px;margin:14px 0}
.month-search-page .detail-date-nav a{padding:5px 0}
.month-search-page .month-tools{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}
.month-search-page .month-tools[hidden]{display:none}
#natalResult [lang=ta] .kundali-cell{overflow-wrap:anywhere}

.display-script-control{display:flex;align-items:center;gap:.35rem;font-size:.85rem}.display-script-control select{width:auto;min-height:40px;padding:.35rem;max-width:105px}@media(max-width:480px){.display-script-control{font-size:0}.display-script-control select{font-size:.8rem;max-width:90px}}

.whatsapp-card-share{display:inline-flex;align-items:center;gap:.3rem;font-size:.85rem;padding:.4rem .65rem;margin:.5rem 0 0;border:1px solid currentColor;border-radius:8px;color:var(--ink);text-decoration:none;max-width:100%;width:max-content}.time-row>.whatsapp-card-share{grid-column:1/-1;font-size:.8rem;justify-self:start}.whatsapp-card-share:focus-visible{outline:3px solid currentColor;outline-offset:3px}

#tithi>.whatsapp-card-share{color:#fff1d6;border-color:#d8bb80;margin:0 1.25rem 1rem}

@media(max-width:600px){.time-row{grid-template-columns:minmax(0,1fr);gap:.4rem;font-size:14px}.time-row>div{min-width:0;font-size:14px}.time-row span,.time-row small{font-size:14px}.time-row>.whatsapp-card-share{font-size:14px;margin-top:.15rem}}

/* Homepage answers first: compact welcome, readable context, schedules before planning. */
.daily-summary{border:1px solid var(--line);border-radius:16px;background:var(--surface);padding:14px 18px;margin:12px 0 18px;min-width:0}
.daily-summary p{margin:0;line-height:1.75;overflow-wrap:anywhere}.daily-summary .summary-context{font-size:14px;color:var(--muted);margin-bottom:4px}.daily-summary .summary-context strong{color:var(--ink)}.daily-summary .summary-answer{font-size:15px}.daily-summary a{color:var(--accent);text-underline-offset:3px}
.ganesha-welcome h1{max-width:800px;font-size:clamp(24px,2.6vw,36px);line-height:1.25}.ganesha-welcome .intro-subtitle{margin:6px 0}.intro.ganesha-welcome{margin-bottom:14px}.schedule-period-label{font-weight:600;margin:8px 0}.ssr-night-schedule summary{min-height:44px;padding:12px 0;cursor:pointer}.download-desk{border:1px solid var(--line);border-radius:16px;padding:16px 20px;margin:18px 0;background:var(--surface)}
@media(max-width:600px){.daily-summary{padding:12px 15px}.daily-summary .summary-context{font-size:13px}.daily-summary .summary-answer{font-size:14px}.ganesha-welcome h1{font-size:22px}.intro.ganesha-welcome{grid-template-columns:76px minmax(0,1fr);gap:12px;padding:12px 15px}.ganesha-art img{height:118px}.ganesha-welcome .ganesha-mantra{font-size:20px}.download-desk{padding:14px 16px}.download-desk>button{max-width:100%;white-space:normal}}

.daily-summary .summary-windows{margin-top:6px;padding-top:6px;border-top:1px solid var(--line)}
@media(max-width:600px){.app-header .brand{font-size:0}.app-header .brand>span{display:inline;font-size:20px;letter-spacing:0;font-weight:600}}
/* Keep Today readable on narrow phones instead of forcing three equal buttons. */
@media(max-width:380px){.day-context .context-bar #controls{flex:1 1 132px;min-width:132px}.context-bar .date-actions{display:grid;grid-template-columns:minmax(32px,1fr) minmax(56px,1.4fr) minmax(32px,1fr);gap:3px}.context-bar .date-actions button{width:100%;min-width:0;padding:3px 4px}}
