*{box-sizing:border-box}:root{--bg:#1c080c;--card:#fffaf2;--sa:#ffb020;--or:#e8741e;--mar:#6b1d2a;--ink:#3a1218}
body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:radial-gradient(circle at 50% -10%,#7a2632,var(--bg) 60%) fixed;color:#fff3e0;line-height:1.55;min-height:100vh}
header{position:sticky;top:0;z-index:5;display:flex;align-items:center;gap:.5rem;padding:.8rem 1rem;background:#1c080ccc;backdrop-filter:blur(8px);border-bottom:1px solid #ffb02033}
.brand{color:#ffd9a0;font-weight:700;font-size:1.1rem;text-decoration:none}.by{font-size:.75rem;opacity:.7}.stats{margin-left:auto;font-size:.8rem;color:var(--sa)}
main{max-width:640px;margin:auto;padding:1rem 1rem 2rem}
.chat{display:flex;flex-direction:column;gap:.6rem;min-height:40vh}
.msg{max-width:88%;padding:.75rem 1rem;border-radius:18px;animation:in .35s ease both}
.guide{align-self:flex-start;background:#ffffff14;border:1px solid #ffb02033;border-bottom-left-radius:6px}
.me{align-self:flex-end;background:var(--or);color:#fff;border-bottom-right-radius:6px}
.typing{display:inline-flex;gap:4px}.typing i{width:7px;height:7px;border-radius:50%;background:#ffd9a0;animation:dot 1s infinite}.typing i:nth-child(2){animation-delay:.15s}.typing i:nth-child(3){animation-delay:.3s}
.quick{display:flex;flex-wrap:wrap;gap:.45rem;margin:.8rem 0}
.chip,.btn{background:#ffffff10;border:1px solid #ffb02066;color:#ffe6c2;padding:.55rem .9rem;border-radius:99px;font-size:.9rem;cursor:pointer;min-height:42px;font-family:inherit;text-decoration:none;display:inline-flex;align-items:center;gap:.3rem;transition:transform .15s,background .15s}
.chip:hover,.btn:hover{background:#ffb02026;transform:translateY(-1px)}.btn.solid{background:var(--or);border-color:var(--or);color:#fff}
.composer{position:sticky;bottom:.6rem;display:flex;gap:.5rem;background:#2a0c12ee;padding:.4rem;border-radius:99px;border:1px solid #ffb02044}
.composer input{flex:1;background:transparent;border:0;color:#fff;font-size:16px;padding:.6rem .8rem}.composer input::placeholder{color:#ffd9a099}
.composer button{width:46px;height:46px;border-radius:50%;border:0;background:var(--or);color:#fff;font-size:1.1rem;cursor:pointer}
.verse{align-self:stretch;max-width:100%;background:var(--card);color:var(--ink);border-radius:20px;padding:1.3rem;box-shadow:0 12px 40px #0008;animation:flip .7s cubic-bezier(.2,.8,.2,1) both;transform-origin:top}
.verse .ref{color:#c0571a;font-weight:700;font-size:.85rem;letter-spacing:.04em}.verse h2{margin:.1rem 0 .6rem;color:var(--mar);font-family:Georgia,serif}
.sa{font-size:1.15rem;color:var(--mar);white-space:pre-line;margin:.4rem 0}.tr{font-style:italic;color:#7a4a3a;white-space:pre-line;font-size:.9rem}.mean{font-size:1.07rem;font-weight:600;font-family:Georgia,serif}
.box{background:#fdecd6;border-radius:14px;padding:.8rem 1rem;margin:.8rem 0}.box b{color:var(--mar)}
.verse .btn{background:#6b1d2a10;color:var(--mar);border-color:#6b1d2a40;font-size:.85rem}.verse .btn.solid{background:var(--mar);color:#fff}
.row{display:flex;flex-wrap:wrap;gap:.4rem;margin-top:.6rem}
textarea{width:100%;min-height:90px;border-radius:12px;border:1px solid #e3b57a;padding:.7rem;font:inherit;font-size:16px;color:var(--ink)}
.breath{display:flex;flex-direction:column;align-items:center;gap:.6rem;padding:1rem 0}.circle{width:150px;height:150px;border-radius:50%;background:radial-gradient(#ffb020,#e8741e);display:grid;place-items:center;color:#fff;font-weight:700;transform:scale(.6);transition:transform 4s ease-in-out;box-shadow:0 0 40px #ffb02088}
.circle.grow{transform:scale(1)}
.deeper{font-size:.85rem;color:#7a4a3a;border-top:1px dashed #e3b57a;margin-top:1rem;padding-top:.7rem}.deeper a{color:var(--mar);font-weight:600}
.votd{margin-top:1.5rem;background:#ffffff0c;border-radius:16px;padding:.8rem 1rem}.votd summary{cursor:pointer;color:var(--sa);font-weight:600}
footer{text-align:center;padding:1.5rem;color:#ffd9a099;font-size:.8rem}.small{font-size:.72rem}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--sa);outline-offset:2px}
@keyframes in{from{opacity:0;transform:translateY(8px)}}@keyframes dot{50%{opacity:.25;transform:translateY(-3px)}}@keyframes flip{from{opacity:0;transform:perspective(900px) rotateX(-70deg)}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
.brand,.stats{white-space:nowrap}@media(max-width:480px){.by{display:none}.stats{font-size:.72rem}}.verse:focus{outline:none}

.vg{margin:.35rem 0 .6rem;display:flex;flex-wrap:wrap;gap:.25rem .6rem;align-items:baseline;font-size:.85rem}.vg a{color:#b5651d;text-decoration:none;border-bottom:1px solid rgba(255,176,32,.4)}.vg small{opacity:.6;font-size:.72rem}
.btn.tts{margin:.2rem 0 .7rem;font-size:.85rem}
.wbw{margin:.4rem 0 .8rem;border:1px solid rgba(255,176,32,.25);border-radius:12px;padding:.55rem .8rem;background:rgba(255,255,255,.03)}.wbw summary{cursor:pointer;color:#b5651d;font-weight:600;font-size:.9rem}
.wbw dl{margin:.6rem 0 0;display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:.4rem}.wbw dl div{background:rgba(107,29,42,.05);border-radius:8px;padding:.35rem .5rem}.wbw dt{font-style:italic;color:#8a2432;font-size:.85rem}.wbw dd{margin:0;font-size:.8rem;color:#3a1a10}
.wbw[open] dl{animation:fadein .35s ease}@keyframes fadein{from{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.wbw[open] dl{animation:none}}

.aud{display:flex;align-items:center;gap:.6rem;margin:.5rem 0}.aud .bar{flex:1;height:3px;border-radius:3px;background:rgba(200,160,80,.22);overflow:hidden}.aud .bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,#c9a24a,#e8c97a);transition:width .25s linear}.vg small a{color:inherit}
/* polish v3 */
body{background:radial-gradient(1200px 600px at 50% -10%,rgba(232,201,122,.18),transparent 60%),radial-gradient(900px 500px at 100% 110%,rgba(128,20,30,.10),transparent 60%),var(--bg,#fbf6ee);background-attachment:fixed}
.sa{font-family:"Noto Serif Devanagari","Tiro Devanagari Sanskrit","Kohinoor Devanagari",serif;font-size:1.32rem;line-height:1.9;letter-spacing:.01em;text-align:center;margin:.9rem 0 .4rem}
.tr{text-align:center;line-height:1.7}
.aud{background:linear-gradient(180deg,#fffaf0,#f8eedb);border:1px solid rgba(201,162,74,.35);border-radius:999px;padding:.35rem .9rem .35rem .35rem;margin:.7rem 0;box-shadow:0 1px 0 #fff inset,0 4px 14px rgba(128,20,30,.06)}
.aud .tts{margin:0;border-radius:999px;white-space:nowrap;background:linear-gradient(135deg,#7a1424,#a3263a);color:#fff;border:0;padding:.5rem 1rem;font-weight:600}
.aud .bar{height:4px;position:relative}
.aud:has([aria-pressed=true]){box-shadow:0 0 0 3px rgba(232,201,122,.35),0 6px 22px rgba(201,162,74,.35);animation:glow 2.4s ease-in-out infinite}
.aud:has([aria-pressed=true]) .bar{background:repeating-linear-gradient(90deg,rgba(201,162,74,.35) 0 3px,transparent 3px 6px);animation:wave 1.2s linear infinite}
@keyframes glow{50%{box-shadow:0 0 0 5px rgba(232,201,122,.22),0 8px 26px rgba(201,162,74,.45)}}
@keyframes wave{to{background-position:12px 0}}
.card,.verse{animation:rise .6s cubic-bezier(.2,.8,.2,1) both}
@keyframes rise{from{opacity:0;transform:translateY(14px) scale(.985)}to{opacity:1;transform:none}}
@media (max-width:520px){.sa{font-size:1.18rem}.aud{padding-right:.7rem}.aud .tts{padding:.45rem .8rem;font-size:.9rem}}
@media (prefers-reduced-motion:reduce){.aud,.aud .bar,.card,.verse{animation:none!important}}
.dp p,.dp ul{margin:.5em 0 0;line-height:1.55}.dp ul{padding-left:1.2em}.dp li{margin:.3em 0}
.dp .echo{margin:.6em 0;padding:.4em .7em;border-left:3px solid currentColor;opacity:.95}.dp .echo .sa{font-size:1.02em}.dp .echo cite{display:block;font-size:.85em;opacity:.75;font-style:normal}

.dp.echoes{background:linear-gradient(135deg,rgba(212,160,23,.14),rgba(128,0,32,.10));border:1px solid rgba(212,160,23,.55);border-radius:14px;padding:.6em .9em;margin:.9em 0}.dp.echoes>summary{font-weight:700;color:#b8860b;font-size:1.05em}.dp.echoes .ecount{font-weight:400;font-size:.75em;opacity:.8;margin-left:.4em}.dp.echoes .echo{border-left:3px solid #d4a017;background:rgba(255,255,255,.04);border-radius:6px}.dp.echoes .echo cite{color:#d4a017;opacity:.9}
/* polish v9 */
.msg.verse{animation:rise .45s ease both}@keyframes rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.msg.verse,.fi{animation:none!important;transition:none!important}}
.hero{display:block;width:100%;height:auto;aspect-ratio:3/1;border-radius:12px;margin:-2px 0 10px;background:#3c0a16}
.echo{border-left:3px solid #e8b040;background:rgba(232,176,64,.07);border-radius:10px;padding:10px 12px}
.sb{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:6px}.badge{background:#5c1220;color:#ffd98a;border:1px solid #e8b040;border-radius:999px;padding:2px 10px;font-size:.78rem;font-weight:600}.tag{color:#e8b040;font-size:.72rem;border:1px dashed rgba(232,176,64,.6);border-radius:999px;padding:2px 8px}
.krishna{background:linear-gradient(135deg,rgba(30,90,110,.18),rgba(232,176,64,.12));border-radius:12px;padding:10px 12px;margin-bottom:10px}.kl{margin:0 0 4px;font-weight:600}.kl small{font-weight:400;opacity:.75}
.another{text-align:center;margin-top:10px}
.mini{position:fixed;left:50%;bottom:84px;transform:translateX(-50%);z-index:50;display:flex;gap:8px;align-items:center;background:#2a0710;color:#ffe9c2;border:1px solid #e8b040;border-radius:999px;padding:6px 8px 6px 14px;box-shadow:0 6px 24px rgba(0,0,0,.35);max-width:94vw}.mini[hidden]{display:none}.mini span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:60vw;font-size:.9rem}.mini button{min-width:40px;min-height:40px;border-radius:50%;border:0;background:#e8b040;color:#2a0710;font-weight:700}
#mt{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:44vw}
.mini #ms{font-size:.78rem}
html:not([data-theme=light]) #votd .aud{background:linear-gradient(180deg,#3d1220,#2a0c16);border-color:rgba(201,162,74,.5);box-shadow:0 4px 14px rgba(0,0,0,.35)}
.rl{transition:background .3s}
.rl.on{background:rgba(232,176,64,.32);border-radius:4px}
.tools{margin:14px 0}.trow{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0}.trow .chip input{vertical-align:middle}
.mood .mq{margin:0 0 4px}.mbtn button{font-size:1.4rem;min-width:44px;min-height:44px;background:none;border:1px solid transparent;border-radius:10px}.mbtn button.on{border-color:#e8b040;background:rgba(232,176,64,.15)}.strip{display:flex;gap:6px;opacity:.85}
.sadh .diyas{display:flex;flex-wrap:wrap;gap:2px}.diyas i{font-style:normal;filter:grayscale(1) opacity(.35)}.diyas i.lit{filter:none}
.flip{perspective:900px;max-width:420px;margin:10px auto;cursor:pointer}.fi{position:relative;min-height:240px;transition:transform .6s;transform-style:preserve-3d}.flip.on .fi{transform:rotateY(180deg)}
.ff,.fb{position:absolute;inset:0;backface-visibility:hidden;border-radius:14px;border:1px solid #e8b040;padding:16px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}.ff{background:#5c1220;color:#ffd98a;font-size:3rem}.ff small{font-size:.9rem}.fb{transform:rotateY(180deg);background:#3c0a16 center/cover;color:#fff3e0;text-shadow:0 1px 3px #000}
@media (max-width:520px){.chip,.btn{min-height:44px}main{padding-left:12px;padding-right:12px}.echo{padding:9px 10px}}
@media (prefers-color-scheme:dark){.echo{background:rgba(232,176,64,.1)}.tag{color:#f2c86a}.badge{color:#ffe3a3}}
/* v10 */
.ebar{display:flex;gap:6px;margin-left:auto;flex-wrap:wrap}.ebar button{min-height:44px;min-width:44px;border-radius:12px;border:1px solid #e8b040;background:transparent;color:inherit;font:inherit;cursor:pointer;padding:0 10px}
header{display:flex;align-items:center;flex-wrap:wrap;gap:8px}
.epanel{background:#2a0710;color:#ffe9c2;border:1px solid #e8b040;border-radius:16px;padding:12px 16px;margin:8px 0}.epanel h3{margin:.8em 0 .3em;font-size:1rem}.fav{padding:6px 0;border-bottom:1px solid rgba(232,176,64,.3)}.fav button{background:none;border:0;color:inherit;min-width:36px;min-height:36px}
.explore{margin:10px 0}.explore summary{cursor:pointer;min-height:44px;padding:10px 0;font-weight:600}
.vact{display:flex;gap:6px;flex-wrap:wrap;margin:6px 0}.vact .btn{min-height:40px}
.chip,.btn,button{min-height:44px}
:focus-visible{outline:3px solid #ffb020!important;outline-offset:2px}
kbd{border:1px solid currentColor;border-radius:4px;padding:0 4px}
[data-theme=light] body{background:#fbf6ee;color:#3a1218}[data-theme=light] .epanel{background:#fff3df;color:#3a1218}[data-theme=light] .footer,[data-theme=light] footer{color:#5a2a30}[data-theme=light] .msg.guide{color:#3a1218}
header{flex-wrap:nowrap}.brand{white-space:nowrap}.ebar{flex-wrap:nowrap;margin-left:0}.ebar button{min-height:40px;min-width:40px;padding:0 8px}
@media (max-width:480px){.ebar .lbl{display:none}.stats{display:none}}
.composer input:focus-visible{outline:none!important}.composer:focus-within{border-color:#ffb020;box-shadow:0 0 0 2px #ffb02066}
[data-theme=light] .chip,[data-theme=light] .btn{background:#fff;color:#6b1d2a;border-color:#c98a1a}
[data-theme=light] .chip:hover,[data-theme=light] .btn:hover{background:#ffeccc}
[data-theme=light] .votd{background:#fff3df}[data-theme=light] .explore summary{color:#3a1218}
[data-theme=light] .msg.guide,[data-theme=light] .msg.user{color:#3a1218}
@media (max-width:480px){.ebar{margin-left:auto}}

/* ===== v11 typography: self-hosted OFL fonts (Tiro Devanagari Sanskrit, Cormorant Garamond, Inter) ===== */
@font-face{font-family:"Tiro Devanagari Sanskrit";src:url(fonts/tiro-devanagari-sanskrit-devanagari-400-normal.woff2) format("woff2");font-weight:400;font-display:swap;unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+25CC,U+A830-A839,U+A8E0-A8FF}


@font-face{font-family:"Cormorant Garamond";src:url(fonts/cormorant-garamond-latin-600-normal.woff2) format("woff2");font-weight:600 700;font-display:swap}





:root{--serif:"Cormorant Garamond",Georgia,serif;--deva:"Tiro Devanagari Sanskrit","Noto Serif Devanagari",serif;--ui:Inter,system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;--gold:#b8862b}
body{font-family:var(--ui);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
.brand,h1,h2,h3{font-family:var(--serif);letter-spacing:.01em}
.brand{font-size:1.3rem;font-weight:600}
.verse{background:linear-gradient(180deg,#fffdf8,#fff6e6);border:1px solid #e9cf9a;box-shadow:0 1px 0 #fff inset,0 18px 50px #0009,0 0 0 6px #ffb02014;padding:1.5rem 1.4rem 1.3rem}
.verse h2{font-family:var(--serif);font-size:2rem;font-weight:600;color:var(--mar);text-align:center;margin:.2rem 0 .2rem;line-height:1.15}
.verse .ref{text-align:center;color:var(--gold);font-family:var(--ui);font-size:.72rem;letter-spacing:.18em;font-weight:600}
.verse .sa{font-family:var(--deva);font-size:1.45rem;line-height:2;color:#5a1420;text-align:center;margin:1.1rem auto .5rem;padding:1rem 0 .9rem;max-width:34em;position:relative;border-top:1px solid #e3c68a;border-bottom:1px solid #e3c68a}
.verse .sa::before{content:"ॐ";font-family:var(--deva);position:absolute;top:0;left:50%;transform:translate(-50%,-55%);background:#fffcf4;color:var(--gold);padding:0 .6em;font-size:1.25rem;line-height:1}
.verse .tr{font-family:var(--serif);font-style:italic;font-weight:500;font-size:1.12rem;line-height:1.65;color:#7a4a3a;text-align:center}
.verse .mean{font-family:var(--serif);font-weight:600;font-size:1.32rem;line-height:1.45;color:#3a1218;text-align:center;margin:1rem .3rem}
.verse p,.verse li{line-height:1.65}
@media (max-width:520px){.verse{padding:1.2rem 1rem}.verse h2{font-size:1.6rem}.verse .sa{font-size:1.24rem;line-height:1.95}.verse .mean{font-size:1.18rem}}
/* Sant Vani echoes v12 */
.echoes .echo{margin:0;padding:1.1rem .4rem 1rem;border:0;border-left:0;background:none}
.echoes .echo+.echo{border-top:1px solid transparent;border-image:linear-gradient(90deg,transparent,rgba(232,176,64,.55),transparent) 1}
.echoes .echo .sa{font-family:"Tiro Devanagari Sanskrit","Noto Serif Devanagari",serif;font-size:1.22rem;line-height:1.85;margin:.5rem 0 .35rem}
.echoes .echo .tl{font-family:"Cormorant Garamond",Georgia,serif;font-style:italic;font-weight:500;font-size:1.02rem;line-height:1.5;opacity:.72;text-align:center;margin:0 0 .6rem;overflow-wrap:anywhere}
.echoes .echo .en{font-family:Inter,system-ui,sans-serif;font-size:.95rem;line-height:1.6;margin:0 0 .5rem}
.echoes .echo cite{display:block;font-style:normal;font-variant:small-caps;letter-spacing:.05em;font-size:.82rem;color:#c99a2e;text-align:right}

.ebar .svlink{display:inline-flex;align-items:center;min-height:40px;min-width:40px;justify-content:center;border-radius:12px;border:1px solid #e8b040;color:inherit;text-decoration:none;padding:0 8px}
.svmore{display:block;text-align:right;font:500 .8rem Inter,system-ui,sans-serif;color:#c99a2e;margin-top:.3rem;text-decoration:none}.svmore:hover{text-decoration:underline}
/* v14 polish */
.verse .sa{border-top:0;background:linear-gradient(90deg,transparent,#e3c68a 15%,#e3c68a 42%,transparent 42%,transparent 58%,#e3c68a 58%,#e3c68a 85%,transparent) top/100% 1px no-repeat;text-wrap:balance;line-height:1.8}
.verse .sa::before{background:transparent}
.echo .sa{border:0!important;background:none!important;padding:0!important;text-wrap:balance;line-height:1.7!important;text-align:center}
.echo .sa::before{content:none!important}
.tag{border:1px solid rgba(232,176,64,.35);background:rgba(232,176,64,.08)}
.echoes .echo cite,.sv cite{font-variant:normal;font-size:.74rem;letter-spacing:.02em;line-height:1.4;opacity:.85;text-align:right;text-wrap:balance}
main{padding-bottom:6.5rem}
[class*=netlify-badge],[id*=netlify-badge],a[href*="netlify.com"][style*=fixed]{display:none!important}

[data-theme=light] header{background:#fbf6eeee;border-bottom-color:#c98a1a55;color:#3a1218}
[data-theme=light] header *{color:#3a1218}
[data-theme=light] header a,[data-theme=light] header button,[data-theme=light] header summary{color:#6b1d2a;border-color:#c98a1a}
[data-theme=light] header [aria-current],[data-theme=light] header .cur,[data-theme=light] header b,[data-theme=light] header strong{color:#7a3a00}
[data-theme=dark] header,:root:not([data-theme=light]) header{color:#f5e6d0}
.sv.flash{animation:svf 1.8s ease-out}@keyframes svf{0%,40%{background:#e8b04040;box-shadow:0 0 0 2px #e8b040}100%{background:transparent;box-shadow:none}}
.bdg{font-style:normal;font-size:.75em;padding:0 .45em;border-radius:.6em;border:1px solid currentColor;white-space:nowrap}.bdg.complete{color:#2e7d32}.bdg.partial{color:#a15c00}

.secnav{display:flex;flex-wrap:wrap;gap:.45rem;margin:.2rem 0 1rem}
.secnav button{font:inherit;font-size:.85rem;padding:.32rem .85rem;border-radius:2rem;border:1px solid var(--gold);background:transparent;color:inherit;cursor:pointer}
.secnav button:hover{background:var(--gold);color:#fff}
.sechead{font-family:var(--serif);font-size:1.5rem;color:var(--mar);margin:1.7rem 0 .7rem;padding-bottom:.25rem;border-bottom:2px solid var(--gold);scroll-margin-top:1rem}
.sechead small{font-family:var(--ui);font-size:.78rem;color:var(--or);white-space:nowrap}
.sechead .secdesc{display:block;font-family:var(--ui);font-size:.95rem;font-weight:400;color:var(--ink);opacity:.72;margin-top:.2rem;line-height:1.45}

/* v129 — the lamp: a living brand mark and a warm glow over the guide */
@keyframes lampSway{0%,100%{transform:rotate(-2.2deg)}50%{transform:rotate(2.6deg)}}
.brand{display:inline-block;transform-origin:50% 85%;animation:lampSway 3.4s ease-in-out infinite}
header::after{content:'';position:absolute;inset:0;background:radial-gradient(55% 130% at 50% -10%,rgba(255,190,80,.16),transparent 70%);pointer-events:none}

/* v131 modern pack */
#tabbar{position:fixed;left:0;right:0;bottom:0;z-index:40;display:none;background:#2a0e12f2;backdrop-filter:blur(10px);border-top:1px solid #e8b04055;padding-bottom:env(safe-area-inset-bottom)}
#tabbar a{flex:1;display:flex;flex-direction:column;align-items:center;gap:1px;padding:.5rem 0 .45rem;color:#ffe6c2;text-decoration:none;font:500 .72rem Inter,sans-serif}
#tabbar a[aria-current="page"]{color:#ffb020}
@media(max-width:899px){#tabbar{display:flex}body{padding-bottom:64px}}
[data-theme=light] #tabbar{background:#fffaf0f5;border-top-color:#b8862b55}
[data-theme=light] #tabbar a{color:#6b1d2a}
[data-theme=light] #tabbar a[aria-current="page"]{color:#b8862b}
:focus-visible{outline:2px solid #ffb020;outline-offset:2px;border-radius:6px}
.sv{box-shadow:0 1px 2px #00000022,0 14px 34px #0000002e}
.tgtag{margin-right:.45rem}
.vod-ctx{max-width:34rem;margin:.7rem auto .2rem;text-align:center;font-style:italic;opacity:.85}
.gl{margin:.45rem 0}.gl b{color:var(--sa)}
.skel{border:1px solid #e8b04033;border-radius:16px;padding:1.1rem;margin:1rem 0;background:#e8b04008}
.skel i{display:block;height:14px;border-radius:7px;background:linear-gradient(90deg,#e8b04014 25%,#e8b04030 50%,#e8b04014 75%);background-size:200% 100%;animation:shim 1.3s infinite;margin:.55rem 0}
@keyframes shim{to{background-position:-200% 0}}
@media (prefers-reduced-motion:reduce){.skel i{animation:none}}
.faq{max-width:40rem;margin:2rem auto 0;text-align:left}
.faq summary{cursor:pointer;color:var(--sa);font-weight:600;padding:.4rem 0}
.faq p{margin:.2rem 0 .6rem}

/* v134 front-page paths + saint's voice */
.paths{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin:.9rem 0 .2rem}
@media(min-width:700px){.paths{grid-template-columns:repeat(4,1fr)}}
.path{display:flex;flex-direction:column;align-items:flex-start;gap:.15rem;padding:.8rem .9rem;border:1px solid #ffb02055;border-radius:16px;background:linear-gradient(160deg,#ffb02014,transparent 65%);color:inherit;text-decoration:none;cursor:pointer;font-family:inherit;text-align:left;animation:rise .55s cubic-bezier(.2,.8,.2,1) both;transition:transform .15s,background .15s,border-color .15s}
.path:nth-child(2){animation-delay:.07s}.path:nth-child(3){animation-delay:.14s}.path:nth-child(4){animation-delay:.21s}
.path:hover,.path:focus-visible{background:#ffb0201f;border-color:#ffb020;transform:translateY(-2px)}
.path .pi{font-size:1.35rem;line-height:1.2}
.path b{font:600 1.05rem "Cormorant Garamond",Georgia,serif;color:var(--sa,#ffb020)}
.path small{opacity:.78;font-size:.8rem}
.voth{font:600 1.15rem "Cormorant Garamond",Georgia,serif;color:var(--sa);margin:.1rem 0 .5rem}
.svoice{margin-top:1.5rem;background:#ffffff0c;border-radius:16px;padding:.9rem 1rem}
.svoice .sa{font-family:"Tiro Devanagari Sanskrit","Noto Serif Devanagari",serif;font-size:1.2rem;line-height:1.8;text-align:center;color:#ffe6c2;margin:.4rem 0}
.svoice .tr{text-align:center;opacity:.8;font-style:italic;margin:.2rem 0}
.svoice .mean{font-size:1.02rem;line-height:1.55}
.svoice cite{display:block;text-align:right;font-style:normal;font-variant:small-caps;letter-spacing:.04em;color:#c99a2e;font-size:.85rem;margin:.3rem 0}
[data-theme=light] .svoice{background:#fff3df}
[data-theme=light] .path b,[data-theme=light] .voth{color:#7a5208}
[data-theme=light] .svoice .sa{color:#3a1218}
@media (prefers-reduced-motion:reduce){.path{animation:none}}

/* v135 professional polish: composer + tile icons */
.composer button{background:transparent;border:1px solid #ffb02055;color:#ffb020}
.composer button[type=submit]{background:#e8b040;border-color:#e8b040;color:#2a0c12;font-size:1rem}
.composer button svg{stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;display:block;margin:auto}
#mic.rec{color:#ff7d95;border-color:#ff7d95}
[data-theme=light] .composer{background:#fffdf8f2;border-color:#dcbc72;box-shadow:0 4px 18px #7a52081c}
[data-theme=light] .composer input{color:#3a1218}
[data-theme=light] .composer input::placeholder{color:#7a520880}
[data-theme=light] .composer button{border-color:#c9a24a88;color:#7a5208}
[data-theme=light] .composer button[type=submit]{background:#e8b040;border-color:#e8b040;color:#2a0c12}
.path .pi svg{width:27px;height:27px;stroke:#c9a24a;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;display:block}
[data-theme=light] .path{background:#fffdf8;border-color:#dcbc72;box-shadow:0 1px 4px #7a52081a}
[data-theme=light] .path .pi svg{stroke:#7a5208}
.chat{min-height:0}
[data-theme=light] .guide{background:#fff;border-color:#e5cf9a}

/* v153 icon system (homepage): drawn line icons, no emoji stickers */
.ic{width:20px;height:20px;stroke:currentColor;fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;flex:none;vertical-align:-4px}
.ic .hf{fill:currentColor;stroke:none}
.bmark{width:25px;height:25px;vertical-align:-6px;margin-right:.35rem}
#tabbar .ic{width:21px;height:21px;vertical-align:0}
.ebar .ic{vertical-align:-5px}

/* v153 living motion: a breathing flame, dust in sunlight, gentle rises */
.bmark{filter:drop-shadow(0 0 5px #ffb02059)}
.bmark .fl{transform-box:fill-box;transform-origin:50% 100%;animation:flk 2.8s ease-in-out infinite}
@keyframes flk{0%,100%{transform:scaleY(1) skewX(0deg)}30%{transform:scaleY(1.05) skewX(1.1deg)}55%{transform:scaleY(.985) skewX(-.8deg)}75%{transform:scaleY(1.03) skewX(.5deg)}}
.motewrap{position:fixed;top:0;left:0;right:0;height:54vh;overflow:hidden;pointer-events:none;z-index:0}
main{position:relative;z-index:1}
.mote{position:absolute;bottom:-12px;border-radius:50%;background:radial-gradient(circle,#ffd98a,#ffb02000 70%);opacity:0;animation:drift linear infinite}
.mote:nth-child(1){left:12%;width:7px;height:7px;animation-duration:17s;animation-delay:0s}
.mote:nth-child(2){left:28%;width:4px;height:4px;animation-duration:13s;animation-delay:3s}
.mote:nth-child(3){left:47%;width:6px;height:6px;animation-duration:19s;animation-delay:6s}
.mote:nth-child(4){left:63%;width:4px;height:4px;animation-duration:14s;animation-delay:1.5s}
.mote:nth-child(5){left:78%;width:7px;height:7px;animation-duration:18s;animation-delay:8s}
.mote:nth-child(6){left:90%;width:5px;height:5px;animation-duration:15s;animation-delay:4.5s}
@keyframes drift{0%{transform:translate3d(0,0,0);opacity:0}12%{opacity:.75}55%{opacity:.5}100%{transform:translate3d(14px,-54vh,0);opacity:0}}
.svoice:not([hidden]){animation:rise .55s ease both}
@media (prefers-reduced-motion:reduce){.bmark .fl{animation:none}.mote{animation:none;display:none}}

/* v153 draw card rebuilt: art as a banner, words on solid ground */
.fi{display:grid;min-height:240px}
.ff,.fb{grid-area:1/1;position:relative}
.ff{display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;border-radius:14px;border:1px solid #e8b040;min-height:240px}
.fb{transform:rotateY(180deg);background:var(--card);color:var(--ink);text-shadow:none;padding:0;overflow:hidden;display:flex;flex-direction:column;justify-content:flex-start;align-items:stretch;text-align:center;border-radius:14px;border:1px solid #e8b040}
.fbanner{height:104px;flex:none;background-size:cover;background-position:center 38%;position:relative}
.fbanner::after{content:"";position:absolute;left:0;right:0;bottom:0;height:46px;background:linear-gradient(180deg,transparent,var(--card))}
.fbody{padding:.35rem 1.15rem 1.15rem;display:flex;flex-direction:column;align-items:center;gap:.5rem}
.fsrc{font:600 .7rem var(--ui,Inter,sans-serif);letter-spacing:.16em;text-transform:uppercase;color:#8a6414;margin:0}
.ftitle{font-family:var(--serif,Georgia,serif);font-size:1.4rem;font-weight:600;color:var(--mar);margin:0}
.fo{font-family:var(--deva,serif);font-size:1.1rem;line-height:1.9;color:#5a1420;margin:0;white-space:pre-line}
.ftl{font-family:var(--serif,Georgia,serif);font-style:italic;font-size:.95rem;line-height:1.55;color:#7a4a3a;margin:0;white-space:pre-line}
.fen{font-family:var(--serif,Georgia,serif);font-weight:600;font-size:1.13rem;line-height:1.5;color:#3a1218;margin:0;white-space:pre-line}
.fnote{font:.78rem var(--ui,Inter,sans-serif);color:#8a6414;opacity:.85;margin:0}
.frow{display:flex;gap:.5rem;flex-wrap:wrap;justify-content:center;margin-top:.35rem}
.fb .chip.solid{background:var(--mar);color:#fff;border-color:var(--mar)}

/* v153 — beautiful & powerful: living sky, aura, path strip */
.sky{position:absolute;inset:0;overflow:hidden;pointer-events:none}
.sky i{position:absolute;width:2px;height:2px;border-radius:50%;background:#ffe9a8;opacity:0;animation:twk 3.5s ease-in-out infinite}
@keyframes twk{0%,100%{opacity:0}50%{opacity:.85}}
html[data-theme=light] .sky{display:none}
.hero{animation:blight 9s ease-in-out infinite}
@keyframes blight{0%,100%{filter:brightness(1)}50%{filter:brightness(1.07)}}
.fbanner{animation:fbdrift 18s ease-in-out infinite alternate}
@keyframes fbdrift{from{background-position:center 30%}to{background-position:center 56%}}
.votd{position:relative;isolation:isolate}
.votd::before{content:'';position:absolute;left:0;right:0;top:-14px;height:250px;z-index:-1;background:radial-gradient(560px 210px at 50% 0%,rgba(232,176,64,.16),transparent 70%);animation:aura 7s ease-in-out infinite;pointer-events:none}
@keyframes aura{0%,100%{opacity:.55}50%{opacity:1}}
.svoice{position:relative;overflow:hidden}
.svoice::before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,#e8b040,#ffe9a8,#e8b040,transparent);background-size:200% 100%;animation:shim 5s linear infinite}
.pathstrip{margin-top:1.1rem;background:#ffffff0c;border:1px solid #e8b0402e;border-radius:16px;padding:.8rem 1rem .7rem}
html[data-theme=light] .pathstrip{background:#fff3df}
.ps-h{margin:0 0 .55rem;font-size:.78rem;letter-spacing:.14em;text-transform:uppercase;color:#e8b040;font-weight:700}
.ps-steps{display:flex;align-items:flex-start}
.ps-step{flex:1;text-align:center;position:relative}
.ps-step::before{content:'';position:absolute;top:13px;left:-50%;width:100%;height:2px;background:#e8b04030}
.ps-step:first-child::before{display:none}
.ps-step.done::before{background:#e8b040}
.ps-dot{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;border:2px solid #e8b04088;color:#2a0c12;font-size:.8rem;font-weight:800;background:transparent;position:relative;z-index:1;transition:background .4s ease,border-color .4s ease}
.ps-step.done .ps-dot{background:linear-gradient(180deg,#ffd98a,#e8b040);border-color:#e8b040}
.ps-l{display:block;margin-top:.3rem;font-size:.72rem;letter-spacing:.04em;opacity:.85}
.ps-step.done .ps-l{opacity:1;font-weight:700}
.ps-n{margin:.55rem 0 0;font-size:.78rem;opacity:.75}
.ps-done{margin:.55rem 0 0;font-size:.85rem;color:#e8b040;font-weight:600}
@media (prefers-reduced-motion:reduce){.sky i,.hero,.fbanner,.votd::before,.svoice::before{animation:none!important}.sky i{opacity:.5}}

/* v153: 44px tap targets everywhere (QA audit item 12) */
.mini button{min-width:44px;min-height:44px}
.fav button{min-width:44px;min-height:44px}
.ebar button{min-width:44px;min-height:44px}
.vact .btn{min-height:44px}

/* v153: player completion — seek/volume row, playing indicator, listening mode */
.mini{flex-wrap:wrap;max-width:96vw;row-gap:2px}
.mini .mrow2{flex:1 1 100%;display:flex;align-items:center;gap:10px;padding:0 4px 2px}
#mseek{flex:1 1 auto;accent-color:#e8b040;height:22px}
#mvol{width:62px;accent-color:#e8b040;height:22px}
#mtime{font-size:12px;color:#ffd98a;min-width:74px;text-align:right;font-variant-numeric:tabular-nums}
.mini button svg{vertical-align:-3px}
#mrep.on{background:#ffd98a;color:#2a0710;box-shadow:0 0 0 2px #e8b040 inset}
.eq{display:none;align-items:flex-end;gap:2.5px;height:14px;margin-right:2px}
.mini.playing .eq{display:inline-flex}
.eq i{width:3.5px;height:6px;background:#e8b040;border-radius:2px;animation:eqb .9s ease-in-out infinite}
.eq i:nth-child(2){animation-delay:.18s}
.eq i:nth-child(3){animation-delay:.36s}
@keyframes eqb{0%,100%{height:5px}50%{height:14px}}
#lfocus{position:fixed;inset:0;z-index:90;background:linear-gradient(180deg,#31101b,#1c060c);color:#fdf6e3;padding:9vh 6vw 6vh;overflow-y:auto;text-align:center}
#lfocus[hidden]{display:none}
#lfocus #fx{position:absolute;top:14px;right:14px;min-width:44px;min-height:44px;border-radius:50%;border:1px solid rgba(232,176,64,.6);background:transparent;color:#ffe9c2;font-size:17px}
#lfocus .fref{color:#e8b040;letter-spacing:.14em;text-transform:uppercase;font-size:13.5px;margin:0 0 26px}
#lfocus .fo{font-family:'Tiro Devanagari Sanskrit',serif;font-size:clamp(23px,4.8vw,36px);line-height:1.95;color:#ffe9c2;white-space:pre-line}
#lfocus .ftl{font-style:italic;color:#f3d9a4;font-size:clamp(15.5px,3vw,19px);line-height:1.8;white-space:pre-line;margin-top:20px}
#lfocus .fen{font-size:clamp(17.5px,3.5vw,22.5px);line-height:1.8;max-width:730px;margin:22px auto 0;color:#fdf6e3}
#lfocus .frow{margin-top:30px}
#lfocus .fnote{color:rgba(253,246,227,.55);font-size:13.5px;margin-top:26px}
@media (prefers-reduced-motion: reduce){.eq i{animation:none;height:9px}}
.bookrow{margin:14px 0 4px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.bookrow small{opacity:.75;font-size:.85em}

/* v155 AI prompts */
#pdialog{max-width:36rem;width:calc(100% - 2rem);border:1px solid #e8b04099;border-radius:16px;background:#1c080c;color:#fff3df;padding:1rem 1.2rem;max-height:85vh;overflow:auto}
#pdialog::backdrop{background:#0009}
#pdialog h2{font:600 1.3rem "Cormorant Garamond",Georgia,serif;color:#e8b040;margin:.2rem 0}
#pdialog .small{font:.85rem Inter,sans-serif;opacity:.85}
#pdialog .dbtn{text-align:right}
#pdialog .dbtn button{min-height:36px;padding:0 1rem;border-radius:99px;border:1px solid #e8b04099;background:none;color:#ffd9a0;cursor:pointer}
.pcard{border:1px solid #e8b04044;border-radius:12px;padding:.7rem .9rem;margin:.6rem 0;background:#0002}
.pcard h4{margin:.1rem 0;font:600 1.05rem "Cormorant Garamond",Georgia,serif;color:#ffd9a0}
.ppurp{font:.85rem Inter,sans-serif;opacity:.8;margin:.15rem 0}
.ptext{white-space:pre-wrap;font:.92rem/1.5 Inter,sans-serif;background:#0003;border-radius:8px;padding:.55rem .7rem;margin:.45rem 0}
[data-theme=light] #pdialog{background:#fffaf0;color:#3a1218}
[data-theme=light] .pcard h4{color:#7a5208}
[data-theme=light] .ptext{background:#7a1f160d}
