/* Karmakaryam cinematic adaptive Mandir + cross-feature CX polish — 2026-08-17 */
:root{--kk-cine-gold:#d8b45f;--kk-cine-gold-soft:#f2d88d;--kk-cine-stone:#080706;--kk-cine-panel:#11100d;--kk-cine-radius:22px;--kk-cine-focus:rgba(242,216,141,.78)}

/* Shared interaction/CX layer */
.kk-btn,.kk-chip,.kk-segment-btn,.kk-list-btn,.kk-icon-btn,.kk-dock-btn,.kk-input,.kk-textarea,.kk-select{scroll-margin:88px}
.kk-btn:focus-visible,.kk-chip:focus-visible,.kk-segment-btn:focus-visible,.kk-list-btn:focus-visible,.kk-icon-btn:focus-visible,.kk-dock-btn:focus-visible,.kk-input:focus-visible,.kk-textarea:focus-visible,.kk-select:focus-visible,.kk-deity-card:focus-visible,.kk-mandir-offering:focus-visible,.kk-mandir-ambience:focus-visible,.kk-mandir-step:focus-visible{outline:2px solid var(--kk-cine-focus);outline-offset:3px}
.kk-btn-danger{color:#ffd7cf;background:rgba(166,56,40,.12);border:1px solid rgba(220,94,72,.24)}.kk-btn-danger:hover{background:rgba(166,56,40,.2);border-color:rgba(220,94,72,.4)}
.kk-section-head{gap:12px}.kk-section-note{max-width:560px;line-height:1.45}.kk-card,.kk-list,.kk-input,.kk-textarea,.kk-select{transition:border-color .18s ease,box-shadow .18s ease,background .18s ease,transform .18s ease}
html[data-kk-theme="dark"] .kk-card:hover{border-color:rgba(216,180,95,.2)}
html[data-kk-theme="dark"] .kk-input:hover,html[data-kk-theme="dark"] .kk-textarea:hover,html[data-kk-theme="dark"] .kk-select:hover{border-color:rgba(216,180,95,.28)}

/* Today + hubs: slightly denser, clearer continuation hierarchy */
.kk-today-dashboard{gap:14px}.kk-today-layout,.kk-today-primary,.kk-today-side{gap:14px}.kk-quick-grid{gap:8px}.kk-quick-action{min-height:68px}.kk-panel-head h2,.kk-panel-head h3{max-width:720px}
@media(min-width:1000px){.kk-today-hero{min-height:198px}.kk-today-title{font-size:clamp(34px,3.2vw,49px)}.kk-today-layout{grid-template-columns:minmax(0,1.24fr) minmax(300px,.76fr)}}

/* Feature-page rhythm */
.kk-shell-inner>div>.kk-hero{box-shadow:0 18px 46px rgba(0,0,0,.18)}
html[data-kk-theme="dark"] .kk-shell-inner>div>.kk-hero{background:radial-gradient(circle at 92% 0,rgba(216,180,95,.08),transparent 26%),linear-gradient(145deg,rgba(20,18,15,.97),rgba(10,9,8,.99));border-color:rgba(216,180,95,.12)}
.kk-shell-inner>div>.kk-hero+.kk-segments{border-radius:18px}
html[data-kk-theme="dark"] .kk-shell-inner>div>.kk-hero+.kk-segments{background:rgba(10,9,8,.88);border-color:rgba(216,180,95,.1)}

/* ===================== Cinematic Mandir ===================== */
.kk-mandir-workspace{position:relative;display:grid;grid-template-columns:minmax(156px,190px) minmax(0,1fr) minmax(245px,300px);gap:12px;align-items:start;margin-top:12px;min-width:0}
.kk-mandir-panel{min-width:0;background:linear-gradient(180deg,rgba(16,14,11,.96),rgba(9,8,7,.985));border:1px solid rgba(216,180,95,.13);border-radius:20px;box-shadow:0 18px 48px rgba(0,0,0,.25)}
.kk-mandir-deity-rail{position:sticky;top:86px;padding:12px;max-height:calc(100vh - 118px);overflow:auto}.kk-mandir-deity-rail h3,.kk-mandir-side h3{margin:2px 2px 11px;color:#f6e8c8;font-size:11px;letter-spacing:.08em;text-transform:uppercase}
.kk-mandir-deity-list{display:grid;gap:6px}.kk-mandir-deity-button{appearance:none;display:grid;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:9px;width:100%;min-height:54px;padding:7px 8px;text-align:left;color:#c9bda8;background:transparent;border:1px solid transparent;border-radius:13px;cursor:pointer;font:inherit;transition:.17s ease}.kk-mandir-deity-button:hover{color:#f1dfb2;background:rgba(216,180,95,.045);border-color:rgba(216,180,95,.1)}.kk-mandir-deity-button[data-active="true"]{color:#fff2c6;background:linear-gradient(135deg,rgba(216,180,95,.15),rgba(216,180,95,.05));border-color:rgba(216,180,95,.3);box-shadow:0 10px 24px rgba(0,0,0,.2)}
.kk-mandir-deity-mark{width:36px;height:36px;display:grid;place-items:center;border-radius:12px;color:var(--kk-mandir-accent-soft,#f2d88d);background:rgba(216,180,95,.07);border:1px solid rgba(216,180,95,.1);font-family:"Noto Serif Devanagari","Noto Serif Telugu",Georgia,serif;font-size:16px}.kk-mandir-deity-button strong{display:block;font-size:10px;line-height:1.25}.kk-mandir-deity-button small{display:block;margin-top:2px;color:#7f7567;font-size:8px;line-height:1.25}

.kk-mandir-center{min-width:0;display:grid;gap:10px}.kk-mandir-stage-cinematic{position:relative;isolation:isolate;overflow:hidden;min-height:470px;display:grid;place-items:end center;padding:24px;background:radial-gradient(circle at 50% 36%,var(--kk-mandir-halo,rgba(216,180,95,.16)),transparent 22%),radial-gradient(circle at 50% 72%,color-mix(in srgb,var(--kk-mandir-accent,#d8b45f) 14%,transparent),transparent 35%),linear-gradient(180deg,var(--kk-mandir-sanctum,#15110d),#080706 72%);border:1px solid rgba(216,180,95,.2);border-radius:25px;box-shadow:0 30px 78px rgba(0,0,0,.46),inset 0 0 0 1px rgba(255,255,255,.015)}
.kk-mandir-stage-cinematic:before{content:"";position:absolute;z-index:-1;left:50%;top:43px;width:min(74%,620px);height:75%;transform:translateX(-50%);border:1px solid color-mix(in srgb,var(--kk-mandir-accent,#d8b45f) 35%,transparent);border-bottom:0;border-radius:48% 48% 4px 4px/26% 26% 4px 4px;box-shadow:0 0 0 12px rgba(216,180,95,.018),0 0 0 25px rgba(216,180,95,.01),inset 0 34px 80px rgba(0,0,0,.42)}
.kk-mandir-stage-cinematic:after{content:"";position:absolute;z-index:-1;inset:auto 10% 0;height:22%;background:linear-gradient(180deg,transparent,rgba(216,180,95,.04)),repeating-linear-gradient(90deg,rgba(216,180,95,.035) 0 1px,transparent 1px 64px);border-top:1px solid rgba(216,180,95,.09);transform:perspective(440px) rotateX(64deg);transform-origin:bottom}
.kk-mandir-arch{position:absolute;inset:16px 18px auto;height:92px;border-top:1px solid rgba(216,180,95,.17);border-radius:50%;opacity:.75}.kk-mandir-pillar{position:absolute;top:84px;bottom:34px;width:22px;border-left:1px solid rgba(216,180,95,.15);border-right:1px solid rgba(216,180,95,.07);background:linear-gradient(90deg,rgba(0,0,0,.22),rgba(216,180,95,.045),rgba(0,0,0,.28));box-shadow:0 0 28px rgba(0,0,0,.34)}.kk-mandir-pillar.left{left:36px}.kk-mandir-pillar.right{right:36px}
.kk-mandir-lamp{position:absolute;bottom:36px;width:52px;height:86px;display:grid;place-items:end center;filter:drop-shadow(0 0 13px rgba(240,177,67,.22))}.kk-mandir-lamp.left{left:14%}.kk-mandir-lamp.right{right:14%}.kk-mandir-lamp:before{content:"";width:30px;height:9px;border-radius:50%;background:linear-gradient(90deg,#6e4c19,#e1b85d,#72501a);box-shadow:0 17px 0 -2px #7a581f,0 32px 0 -5px #4d391b}.kk-mandir-lamp:after{content:"";position:absolute;bottom:58px;width:13px;height:29px;border-radius:55% 45% 55% 45%;background:radial-gradient(circle at 50% 65%,#fff7c1 0 18%,#f2c451 36%,#d97f1d 62%,transparent 67%);transform-origin:50% 100%}
.kk-mandir-smoke{position:absolute;left:18%;bottom:62px;width:26px;height:120px;opacity:.18;filter:blur(6px);background:linear-gradient(180deg,transparent,rgba(239,230,210,.34),transparent);border-radius:50%}
.kk-mandir-idol{position:relative;z-index:3;width:min(42vw,260px);aspect-ratio:1;display:grid;place-items:center;margin-bottom:102px;color:var(--kk-mandir-accent-soft,#f2d88d);background:radial-gradient(circle,rgba(216,180,95,.14),rgba(216,180,95,.035) 50%,transparent 70%);border:1px solid color-mix(in srgb,var(--kk-mandir-accent,#d8b45f) 35%,transparent);border-radius:50%;box-shadow:0 0 0 14px rgba(216,180,95,.018),0 0 90px var(--kk-mandir-halo,rgba(216,180,95,.15));font-family:"Noto Serif Devanagari","Noto Serif Telugu",Georgia,serif;font-size:clamp(54px,8vw,96px);text-shadow:0 12px 36px rgba(0,0,0,.54)}
.kk-mandir-idol:before{content:"";position:absolute;inset:10%;border:1px solid rgba(216,180,95,.08);border-radius:50%;box-shadow:0 0 0 14px rgba(216,180,95,.012)}
.kk-mandir-offering-tray{position:absolute;z-index:4;left:50%;bottom:35px;transform:translateX(-50%);width:min(65%,390px);height:66px;border-radius:50%;background:radial-gradient(ellipse at 50% 35%,rgba(242,216,141,.2),rgba(91,64,22,.78) 55%,rgba(20,14,8,.94) 72%);border:1px solid rgba(216,180,95,.24);box-shadow:0 16px 30px rgba(0,0,0,.38)}
.kk-mandir-stage-copy{position:absolute;z-index:5;left:18px;right:18px;top:16px;display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.kk-mandir-stage-copy>div{min-width:0}.kk-mandir-stage-copy span{display:block;color:#9f927e;font-size:8px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.kk-mandir-stage-copy strong{display:block;margin-top:4px;color:#fff0c4;font-family:"Playfair Display",Georgia,serif;font-size:21px;font-weight:600}.kk-mandir-stage-copy small{display:block;margin-top:4px;color:#8f8270;font-size:9px;line-height:1.4}
.kk-mandir-bell{appearance:none;min-width:42px;height:42px;display:grid;place-items:center;color:#e2c374;background:rgba(8,7,6,.7);border:1px solid rgba(216,180,95,.2);border-radius:50%;cursor:pointer}.kk-mandir-bell svg{width:18px;height:18px}

.kk-mandir-actionbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 13px;background:rgba(13,12,10,.96);border:1px solid rgba(216,180,95,.13);border-radius:18px;box-shadow:0 14px 36px rgba(0,0,0,.2)}.kk-mandir-action-copy{min-width:0}.kk-mandir-action-copy span{display:block;color:#9f927e;font-size:8px;letter-spacing:.1em;text-transform:uppercase}.kk-mandir-action-copy strong{display:block;margin-top:3px;color:#f6e7bd;font-size:12px}.kk-mandir-action-buttons{display:flex;align-items:center;gap:7px;flex-wrap:wrap;justify-content:flex-end}

.kk-mandir-side{position:sticky;top:86px;display:grid;gap:10px}.kk-mandir-side>.kk-mandir-panel{padding:13px}.kk-mandir-progress{display:grid;gap:5px}.kk-mandir-step{display:grid;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:43px;padding:6px 7px;color:#82786a;background:transparent;border:1px solid transparent;border-radius:11px}.kk-mandir-step-index{width:27px;height:27px;display:grid;place-items:center;border:1px solid rgba(216,180,95,.16);border-radius:50%;font-size:9px;font-weight:800}.kk-mandir-step-copy strong{display:block;font-size:9px}.kk-mandir-step-copy small{display:none}.kk-mandir-step[data-active="true"]{color:#f5e4b7;background:rgba(216,180,95,.07);border-color:rgba(216,180,95,.2)}.kk-mandir-step[data-active="true"] .kk-mandir-step-index{color:#0a0907;background:linear-gradient(135deg,#b98f38,#e6c875);border-color:transparent;box-shadow:0 0 22px rgba(216,180,95,.16)}.kk-mandir-step[data-done="true"]{color:#a9b99a}.kk-mandir-step[data-done="true"] .kk-mandir-step-index{color:#cfe2c1;background:rgba(135,162,118,.12);border-color:rgba(135,162,118,.22)}.kk-mandir-step-tail{font-size:8px;color:#6e655a}
.kk-mandir-offerings{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.kk-mandir-offering{appearance:none;min-height:68px;display:grid;place-items:center;align-content:center;gap:4px;padding:7px;color:#9a8f7e;background:rgba(255,255,255,.018);border:1px solid rgba(216,180,95,.1);border-radius:12px;cursor:pointer;font:inherit}.kk-mandir-offering-symbol{font-size:18px;color:#b8994b}.kk-mandir-offering strong{font-size:8px}.kk-mandir-offering[data-active="true"]{color:#f0dba1;background:rgba(216,180,95,.08);border-color:rgba(216,180,95,.27);box-shadow:0 8px 18px rgba(0,0,0,.18)}
.kk-mandir-ambience-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.kk-mandir-ambience{appearance:none;min-height:58px;padding:7px;text-align:left;color:#8d8272;background:rgba(255,255,255,.018);border:1px solid rgba(216,180,95,.09);border-radius:11px;cursor:pointer;font:inherit}.kk-mandir-ambience strong{display:block;font-size:8px}.kk-mandir-ambience span{display:block;margin-top:3px;font-size:7px;line-height:1.3;color:#6f665b}.kk-mandir-ambience[data-active="true"]{color:#f0dba1;background:rgba(216,180,95,.065);border-color:rgba(216,180,95,.25)}
.kk-mandir-sound-row{display:flex;align-items:center;gap:7px;margin-top:9px}.kk-mandir-sound-row .kk-btn{min-height:38px;padding:7px 10px;font-size:9px}

/* Deity ambience modifiers */
.kk-mandir-stage-cinematic[data-ambience="deepam"]{filter:saturate(1.06) brightness(1.05)}.kk-mandir-stage-cinematic[data-ambience="deepam"] .kk-mandir-lamp{filter:drop-shadow(0 0 20px rgba(240,177,67,.38))}
.kk-mandir-stage-cinematic[data-ambience="quiet"]{filter:saturate(.78) brightness(.86)}.kk-mandir-stage-cinematic[data-ambience="quiet"] .kk-mandir-lamp.right{opacity:.4}.kk-mandir-stage-cinematic[data-ambience="quiet"] .kk-mandir-smoke{opacity:.1}
.kk-mandir-stage-cinematic[data-ambience="festival"] .kk-mandir-idol{box-shadow:0 0 0 14px rgba(216,180,95,.025),0 0 112px var(--kk-mandir-halo,rgba(216,180,95,.2))}.kk-mandir-stage-cinematic[data-ambience="festival"]:before{box-shadow:0 0 0 12px rgba(216,180,95,.026),0 0 0 25px rgba(216,180,95,.018),0 0 0 39px rgba(216,180,95,.008),inset 0 34px 80px rgba(0,0,0,.38)}

/* Rich motion: always optional and non-blocking */
.kk-mandir-workspace[data-motion="rich"] .kk-mandir-lamp:after{animation:kk-cine-flame 2.4s ease-in-out infinite}.kk-mandir-workspace[data-motion="rich"] .kk-mandir-lamp.right:after{animation-delay:-1.1s}.kk-mandir-workspace[data-motion="rich"] .kk-mandir-smoke{animation:kk-cine-smoke 6.8s ease-in-out infinite}.kk-mandir-workspace[data-motion="rich"] .kk-mandir-idol{animation:kk-cine-halo 6s ease-in-out infinite}.kk-mandir-workspace[data-paused="true"] *{animation-play-state:paused!important}
.kk-mandir-offer-pop{animation:kk-cine-offer .48s cubic-bezier(.2,.8,.2,1)}.kk-mandir-bell-ring{animation:kk-cine-bell .5s ease-out}
@keyframes kk-cine-flame{0%,100%{transform:rotate(-2deg) scale(.96);opacity:.86}50%{transform:rotate(2deg) scale(1.08);opacity:1}}
@keyframes kk-cine-smoke{0%,100%{transform:translate3d(0,8px,0) scaleX(.7);opacity:.08}45%{transform:translate3d(10px,-26px,0) scaleX(1.1);opacity:.2}70%{transform:translate3d(-7px,-42px,0) scaleX(.85);opacity:.11}}
@keyframes kk-cine-halo{0%,100%{transform:scale(.985);filter:brightness(.98)}50%{transform:scale(1.015);filter:brightness(1.06)}}
@keyframes kk-cine-offer{0%{transform:scale(.94)}55%{transform:scale(1.06);box-shadow:0 0 0 5px rgba(216,180,95,.08)}100%{transform:scale(1)}}
@keyframes kk-cine-bell{0%{transform:rotate(0)}20%{transform:rotate(-11deg)}45%{transform:rotate(9deg)}70%{transform:rotate(-5deg)}100%{transform:rotate(0)}}

/* Japa */
.kk-tap-counter{position:relative}.kk-counter-wrap .kk-row-wrap{justify-content:center}.kk-japa-history-row{box-shadow:0 10px 24px rgba(0,0,0,.12)}
html[data-kk-theme="dark"] .kk-tap-counter{background:radial-gradient(circle at 34% 28%,#5c3b22 0%,#261d14 38%,#0b0a08 74%);border-color:#d8bd7c!important;box-shadow:0 0 0 1px rgba(216,180,95,.14),0 28px 76px rgba(0,0,0,.44),inset 0 0 0 1px rgba(255,255,255,.04)!important}

/* Sadhana */
.kk-day-grid{align-items:center}.kk-day-dot{transition:transform .16s ease,border-color .16s ease,background .16s ease,box-shadow .16s ease}.kk-day-dot:hover:not([disabled]){transform:translateY(-1px)}

/* Jyotish */
.kk-rashi-chart{isolation:isolate}.kk-sky-planet{transition:transform .17s ease,border-color .17s ease,box-shadow .17s ease}.kk-sky-planet:hover{transform:translateY(-2px)}html[data-kk-theme="dark"] .kk-sky-planet:hover{border-color:rgba(216,180,95,.25);box-shadow:0 20px 44px rgba(0,0,0,.3)}

/* Scripture + mantra reading */
.kk-scripture-language,.kk-scripture-text{box-shadow:inset 0 1px rgba(255,255,255,.02),0 14px 34px rgba(0,0,0,.15)}.kk-scripture-language-label{font-weight:820}.kk-gita-chapter{min-height:68px}.kk-gita-reading-rule{opacity:.85}

/* Journey / forms */
.kk-label{font-weight:720}.kk-textarea{resize:vertical}.kk-journal-prompts .kk-chip:hover{transform:translateY(-1px)}.kk-dream-row{overflow:hidden}.kk-dream-row:hover{transform:translateY(-1px)}

/* Garden */
html[data-kk-theme="dark"] .kk-garden-viewer{background:radial-gradient(circle at 50% 12%,rgba(101,128,78,.08),transparent 34%),linear-gradient(180deg,#0f110d,#090a08);border-color:rgba(142,167,112,.15);box-shadow:0 24px 58px rgba(0,0,0,.34)}html[data-kk-theme="dark"] .kk-garden-hint{color:#b8b09f;background:rgba(9,10,8,.75);border-color:rgba(142,167,112,.16)}html[data-kk-theme="dark"] .kk-garden-pick{background:#11120e;border-color:rgba(142,167,112,.12)}

/* Mobile Mandir */
@media(max-width:980px){.kk-mandir-workspace{grid-template-columns:minmax(132px,160px) minmax(0,1fr)}.kk-mandir-side{grid-column:1/-1;position:relative;top:auto;grid-template-columns:1fr 1fr}.kk-mandir-progress{grid-template-columns:repeat(4,minmax(0,1fr));gap:5px}.kk-mandir-step{grid-template-columns:25px minmax(0,1fr);min-height:48px}.kk-mandir-step-tail{display:none}.kk-mandir-offerings{grid-template-columns:repeat(5,minmax(0,1fr))}}
@media(max-width:760px){
 .kk-shell-inner{padding-left:14px;padding-right:14px}.kk-mandir-workspace{display:flex;flex-direction:column;gap:9px}.kk-mandir-center{order:1;width:100%}.kk-mandir-deity-rail{order:2;position:relative;top:auto;width:100%;max-height:none;padding:9px}.kk-mandir-deity-rail h3{display:none}.kk-mandir-deity-list{display:flex;overflow-x:auto;gap:6px;padding-bottom:2px;scrollbar-width:none}.kk-mandir-deity-list::-webkit-scrollbar{display:none}.kk-mandir-deity-button{flex:0 0 116px;grid-template-columns:31px minmax(0,1fr);min-height:48px;padding:6px}.kk-mandir-deity-mark{width:30px;height:30px;border-radius:10px;font-size:13px}.kk-mandir-deity-button small{display:none}.kk-mandir-side{order:3;display:grid;grid-template-columns:1fr;width:100%;gap:8px}.kk-mandir-stage-cinematic{min-height:390px;padding:18px;border-radius:22px}.kk-mandir-idol{width:min(56vw,210px);margin-bottom:84px;font-size:clamp(48px,17vw,78px)}.kk-mandir-stage-copy strong{font-size:18px}.kk-mandir-stage-copy small{max-width:220px}.kk-mandir-pillar{top:74px;bottom:28px;width:17px}.kk-mandir-pillar.left{left:20px}.kk-mandir-pillar.right{right:20px}.kk-mandir-lamp.left{left:8%}.kk-mandir-lamp.right{right:8%}.kk-mandir-offering-tray{width:72%;bottom:27px}.kk-mandir-actionbar{position:sticky;bottom:calc(78px + env(safe-area-inset-bottom,0px));z-index:20;align-items:flex-start;flex-direction:column;padding:10px 11px;background:rgba(9,8,7,.94);backdrop-filter:blur(14px)}.kk-mandir-action-buttons{width:100%;justify-content:flex-start}.kk-mandir-action-buttons .kk-btn-primary{flex:1}.kk-mandir-progress{grid-template-columns:repeat(2,minmax(0,1fr))}.kk-mandir-offerings{grid-template-columns:repeat(5,minmax(0,1fr))}.kk-mandir-offering{min-height:60px;padding:5px}.kk-mandir-offering strong{font-size:7px}.kk-mandir-ambience-list{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:430px){.kk-mandir-stage-cinematic{min-height:354px}.kk-mandir-stage-copy{left:13px;right:13px}.kk-mandir-idol{margin-bottom:74px}.kk-mandir-offering-tray{height:54px}.kk-mandir-progress{grid-template-columns:1fr 1fr}.kk-mandir-step{min-height:44px}.kk-mandir-offerings{grid-template-columns:repeat(3,minmax(0,1fr))}.kk-mandir-ambience-list{grid-template-columns:1fr 1fr}}
@media(prefers-reduced-motion:reduce){.kk-mandir-workspace *,.kk-mandir-offer-pop,.kk-mandir-bell-ring,.kk-sky-planet,.kk-day-dot,.kk-dream-row,.kk-journal-prompts .kk-chip{animation:none!important;transition:none!important;scroll-behavior:auto!important}.kk-mandir-workspace[data-motion="rich"]{--kk-motion-disabled:1}}
