*{box-sizing:border-box}html{scroll-behavior:smooth}:root{--bg:#fffaf5;--surface:#fff;--text:#251914;--muted:#75635a;--brand:#8b1e1e;--brand2:#c85d25;--line:#eadbd0;--shadow:0 12px 35px rgba(70,30,10,.08)}body{margin:0;background:var(--bg);color:var(--text);font-family:system-ui,-apple-system,"Noto Sans Devanagari","Nirmala UI",sans-serif;line-height:1.65}a{text-decoration:none;color:inherit}.wrap{width:min(1120px,calc(100% - 30px));margin:auto}.top{position:sticky;top:0;z-index:30;border-bottom:1px solid var(--line);background:rgba(255,250,245,.92);backdrop-filter:blur(12px)}.nav{min-height:64px;display:flex;align-items:center;justify-content:space-between}.logo{font-weight:850;color:var(--brand);font-size:18px}.logo span{margin-left:7px}nav{display:flex;gap:16px;align-items:center;color:var(--muted);font-size:14px}nav button,.reader-tools button,.navrow a{border:1px solid var(--line);background:var(--surface);color:inherit;border-radius:9px;padding:8px 11px;cursor:pointer}.hero{padding:86px 0 70px;background:radial-gradient(circle at 82% 20%,#f5d2ad,transparent 43%)}.hero-in{display:grid;grid-template-columns:1.5fr .6fr;gap:40px;align-items:center}.eyebrow{font-size:12px;font-weight:850;color:var(--brand2);letter-spacing:.07em}h1{font-size:clamp(42px,7vw,72px);line-height:1.08;letter-spacing:-.045em;margin:9px 0 17px}h2{font-size:34px;line-height:1.2;margin:5px 0 22px}.hero p{font-size:19px;color:var(--muted);max-width:700px}.actions{display:flex;gap:10px;flex-wrap:wrap;margin:25px 0}.btn{display:inline-block;padding:11px 17px;border:1px solid var(--line);border-radius:10px;background:var(--surface);font-weight:750}.btn.primary{background:var(--brand);color:#fff;border-color:var(--brand)}.devi-mark{height:300px;border-radius:28px;background:linear-gradient(145deg,#8b1e1e,#c85d25);color:#fff;display:grid;place-items:center;align-content:center;font:90px Georgia;box-shadow:var(--shadow)}.devi-mark div{font:700 18px system-ui;margin-top:12px}.section{padding:62px 0}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.card{display:block;background:var(--surface);border:1px solid var(--line);border-radius:15px;padding:18px;transition:.15s}.card:hover{transform:translateY(-2px);box-shadow:var(--shadow)}.card b{display:block;color:var(--brand);font-size:17px}.card small{color:var(--muted)}.skeleton{padding:18px;background:var(--surface);border:1px solid var(--line);border-radius:12px;color:var(--muted)}.four{grid-template-columns:repeat(4,1fr)}footer{border-top:1px solid var(--line);padding:28px 0;color:var(--muted);font-size:13px}.footer{display:flex;justify-content:space-between}.reader{max-width:880px;padding:38px 0 70px}.reader h1{font-size:42px}.reader-tools{position:sticky;top:64px;z-index:15;padding:8px 0;display:flex;flex-wrap:wrap;gap:7px;background:var(--bg)}.navrow{display:flex;justify-content:space-between;gap:8px;margin:12px 0}.reading{background:var(--surface);border:1px solid var(--line);border-radius:17px;padding:32px;font-family:"Noto Serif Devanagari","Nirmala UI",serif;font-size:22px;line-height:2.05;box-shadow:var(--shadow)}.reading h2{font-family:system-ui;color:var(--brand);font-size:22px}.section-block{margin-bottom:36px}.ad-slot{margin:24px 0;min-height:0;text-align:center}.notice{padding:12px 15px;border:1px solid #efd0a8;background:#fff0db;border-radius:10px;color:#694b2c;font:14px system-ui}.admin{padding:28px 0 70px}.admin-card{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:22px;margin:15px 0}.field{width:100%;padding:11px;border:1px solid var(--line);border-radius:9px;background:var(--surface);color:var(--text);font:inherit}.two{display:grid;grid-template-columns:1fr 1fr;gap:18px}.editor{border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--surface)}.toolbar{display:flex;gap:5px;flex-wrap:wrap;padding:8px;border-bottom:1px solid var(--line);background:var(--bg)}.toolbar button,.toolbar select{border:1px solid var(--line);background:var(--surface);color:inherit;border-radius:7px;padding:6px 8px;cursor:pointer}.editable{min-height:320px;padding:18px;outline:0;font-family:"Noto Serif Devanagari",serif;line-height:1.9}.row{display:flex;gap:8px;flex-wrap:wrap}.btn-danger{border:1px solid #c77;background:#fff0f0;color:#900;padding:9px;border-radius:8px}.dark{--bg:#15110f;--surface:#211a17;--text:#f5e9df;--muted:#bda99e;--brand:#ef9868;--brand2:#f3ad7c;--line:#3c2e28;--shadow:0 12px 35px rgba(0,0,0,.25)}body.dark .top{background:rgba(21,17,15,.92)}body.dark .notice{background:#302319;border-color:#5a442f}@media(max-width:820px){.hero-in{grid-template-columns:1fr}.devi-mark{max-width:340px}.cards,.four{grid-template-columns:repeat(2,1fr)}.two{grid-template-columns:1fr}}@media(max-width:520px){.wrap{width:calc(100% - 20px)}nav a{display:none}.hero{padding:58px 0}.cards,.four{grid-template-columns:1fr}.reading{padding:20px;font-size:20px}.reader-tools button{flex:1}.footer{flex-direction:column;gap:8px}}
/* Reader polish */
.reader-tools{align-items:center;justify-content:center;border-bottom:1px solid var(--line);margin-bottom:14px;padding:10px 0;gap:8px}
.reader-tools button{min-height:42px;font-weight:700;transition:transform .15s,box-shadow .15s,opacity .15s}
.reader-tools button:hover{transform:translateY(-1px);box-shadow:0 5px 16px rgba(70,30,10,.08)}
.reader-tools button:disabled{opacity:.42;cursor:not-allowed;transform:none;box-shadow:none}
.navrow{margin:16px 0 22px}
.navrow a{min-width:130px;text-align:center;font-weight:700;padding:10px 14px}
.navrow a[aria-disabled="true"]{opacity:.45;pointer-events:none}
.reading{overflow-wrap:anywhere}
.reading .section-block>h1:first-child,.reading .section-block>h2:first-child,.reading .section-block>h3:first-child{color:var(--brand)}
@media(max-width:520px){
 .reader{padding-top:24px}
 .reader h1{font-size:clamp(30px,9vw,42px);line-height:1.18}
 .reader-tools{position:sticky;top:64px;padding:8px 0;background:var(--bg)}
 .reader-tools button{flex:0 1 auto;min-width:0;padding:8px 10px;font-size:13px}
 .navrow a{min-width:0;flex:1;padding:10px 7px;font-size:14px}
 .reading{padding:22px 18px;font-size:22px;line-height:1.95}
}

.list-intro{color:var(--muted);margin-top:-12px}
.content-grid{grid-template-columns:repeat(3,1fr)}
.content-card{padding:0;overflow:hidden}
.card-image{height:180px;background:linear-gradient(145deg,#f3dfc8,#ead1b7);display:grid;place-items:center;overflow:hidden;font:64px Georgia;color:var(--brand)}
.card-image img{width:100%;height:100%;object-fit:contain;display:block}
.card-body{padding:16px 18px 18px}
.card-number{display:inline-block;font-size:12px;font-weight:800;color:var(--brand2);margin-bottom:5px}
.card-body b{margin-bottom:5px}
.post-cover{margin-bottom:20px;border-radius:18px;overflow:hidden;border:1px solid var(--line);box-shadow:var(--shadow)}
.post-cover img{display:block;width:100%;height:auto;max-height:none;object-fit:contain}
.subtitle{color:var(--muted);font-size:18px}
.reading .sanskrit-text{display:block;font-family:"Noto Serif Devanagari","Nirmala UI",serif;font-weight:600;line-height:1.95;margin:18px 0;padding:20px 18px;border-radius:14px;background:#fff4cf;border:1px solid #f0dfab;box-shadow:0 4px 14px rgba(80,55,20,.06)}
.reading .hindi-text{display:block;font-family:"Noto Sans Devanagari","Nirmala UI",sans-serif;background:#f0f3f6;color:#31383d;line-height:1.9;margin:18px 0;padding:16px 18px;border-radius:12px}
.reading .tone-a,.reading .marker-part.tone-a{color:#9b1c1c}
.reading .tone-b,.reading .marker-part.tone-b{color:#246b32}
.marker-btn{font-weight:800!important}
@media(max-width:820px){.content-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.content-grid{grid-template-columns:1fr}.card-image{height:200px}.reading .sanskrit-text{padding:10px 8px}.post-cover img{height:auto;max-height:none}}

/* Admin editor previews */
.editable .sanskrit-text{display:block;font-family:"Noto Serif Devanagari","Nirmala UI",serif;font-size:1.35em;font-weight:650;line-height:1.9;padding:10px 12px;margin:10px 0;border-radius:10px;background:#fff8e8}
.editable .hindi-text{display:block;font-family:"Noto Sans Devanagari","Nirmala UI",sans-serif;background:#f0f3f6;color:#31383d;padding:12px 14px;margin:10px 0;border-radius:10px;line-height:1.85}
.editable .tone-a,.editable .marker-part.tone-a{color:#9b1c1c}.editable .tone-b,.editable .marker-part.tone-b{color:#246b32}
.marker-btn{background:#fff4d8!important}

.navrow-bottom{margin-top:28px;padding-top:18px;border-top:1px solid var(--line)}
.navrow .nav-name{display:inline-block;max-width:300px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;vertical-align:middle}
@media(max-width:520px){.navrow .nav-name{max-width:125px}.navrow a{min-width:0;flex:1}}

.reading .sanskrit-text [data-pada]{background:transparent}
.reading .sanskrit-text .tone-a{color:#9b1c1c}
.reading .sanskrit-text .tone-b{color:#246b32}
.reading .sanskrit-text .marker-part{background:transparent}
.reading .hindi-text{background:#eef2f5;border:1px solid #dfe5e9}

.editor-help{margin:10px 0;padding:9px 12px;border:1px solid var(--line);border-radius:10px;background:#fffaf0;color:var(--muted);font-size:13px}

/* Professional admin editor + TTS reading */
.admin .editor{position:relative;overflow:visible}
.admin .toolbar{position:sticky;top:0;z-index:60;box-shadow:0 4px 14px rgba(70,30,10,.06);backdrop-filter:blur(10px)}
.admin .editable{font-size:20px;min-height:420px;max-height:none;overflow:visible;white-space:pre-wrap;word-break:normal;overflow-wrap:anywhere}
.admin .editable:focus{box-shadow:inset 0 0 0 2px rgba(139,30,30,.10)}
.admin .editable [size="1"],.admin .editable [size="2"]{font-size:15px!important}
.admin .editable [size="3"]{font-size:20px!important}
.admin .editable [size="4"]{font-size:22px!important}
.admin .editable [size="5"]{font-size:25px!important}
.admin .editable [size="6"],.admin .editable [size="7"]{font-size:30px!important}
.speak-status{font-size:12px;color:var(--brand2);font-weight:750;min-height:20px;display:inline-flex;align-items:center;padding:0 3px}
.tts-word{display:inline-block;transition:transform .12s ease,background-color .12s ease,box-shadow .12s ease;border-radius:5px}
.tts-current-word{transform:scale(1.16);transform-origin:center;position:relative;z-index:3;padding:0 .08em;background:#ffe49a;box-shadow:0 2px 12px rgba(130,80,10,.18);text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px}
.reading .tts-current-word{color:inherit!important}
@media(max-width:520px){.admin .toolbar{top:0}.admin .editable{font-size:19px}.speak-status{width:100%;justify-content:center;order:10}.tts-current-word{transform:scale(1.10)}}
/* Stable editor sizing: browser-generated <font size> values map to fixed sizes. */
.admin .editable .editor-font-size-1,.admin .editable font[size="1"]{font-size:15px!important}
.admin .editable .editor-font-size-2,.admin .editable font[size="2"]{font-size:17px!important}
.admin .editable .editor-font-size-3,.admin .editable font[size="3"]{font-size:20px!important}
.admin .editable .editor-font-size-4,.admin .editable font[size="4"]{font-size:23px!important}
.admin .editable .editor-font-size-5,.admin .editable font[size="5"]{font-size:26px!important}
.admin .editable .editor-font-size-6,.admin .editable font[size="6"]{font-size:30px!important}
.admin .editable .editor-font-size-7,.admin .editable font[size="7"]{font-size:34px!important}
.admin .toolbar select{min-width:78px}
@media(max-width:520px){.admin .toolbar{max-height:none}.admin .toolbar button,.admin .toolbar select{font-size:13px;padding:7px 8px}.admin .editable{min-height:480px}}

/* Responsive editable site navigation */
#mainNav{flex-wrap:wrap}
.menu-toggle{display:none}
@media(max-width:520px){
 #mainNav{gap:8px}
 #mainNav .menu-toggle{display:inline-flex;align-items:center;justify-content:center;min-width:42px;min-height:40px}
 #mainNav a[data-site-menu]{display:none}
 #mainNav.menu-open{padding:8px 0;align-items:flex-start}
 #mainNav.menu-open a[data-site-menu]{display:block;width:100%;padding:8px 10px;border-radius:8px;background:var(--surface)}
 #mainNav.menu-open{display:flex}
 #mainNav.menu-open .menu-toggle{margin-left:auto}
}

/* Images inserted inside chapter content by URL */
.inline-content-image{display:block;margin:24px auto;text-align:center;max-width:100%}
.inline-content-image img{display:block;width:auto;height:auto;max-width:100%;max-height:none;margin:0 auto;border-radius:12px;object-fit:contain}
.reading .inline-content-image{margin:28px auto}
.reading .inline-content-image img{max-width:100%;width:auto;height:auto;max-height:none}
.editable .inline-content-image{margin:18px auto}
.editable .inline-content-image img{max-width:100%;width:auto;height:auto;max-height:420px;object-fit:contain}

/* Homepage uploaded cover images: show full image without fixed-height cropping */
.content-card .card-image{height:auto;min-height:0;aspect-ratio:auto;display:block;overflow:hidden}
.content-card .card-image img{display:block;width:100%;height:auto;max-height:none;object-fit:contain}
.content-card .card-body small{display:block;line-height:1.6;margin-top:7px;white-space:normal}

/* Homepage deity image replacing the large Om symbol */
.devi-mark{overflow:hidden;padding:18px;gap:12px}
.devi-mark .devi-photo{display:block;width:100%;height:220px;object-fit:contain;border-radius:14px}
@media(max-width:820px){.devi-mark{width:100%;max-width:340px}.devi-mark .devi-photo{height:220px}}

/* Responsive transparent image presentation on homepage */
.hero-in{grid-template-columns:minmax(0,1.5fr) minmax(0,.6fr)}
.devi-mark{height:auto;min-height:0;padding:0;margin:0;background:transparent!important;color:inherit;display:flex;align-items:center;justify-content:center;box-shadow:none;border-radius:0;overflow:visible}
.devi-mark .devi-photo{display:block;width:100%;height:auto;max-height:420px;object-fit:contain;border-radius:0}
@media(max-width:820px){.hero-in{grid-template-columns:minmax(0,1fr)}.devi-mark{width:100%;max-width:100%;margin:8px auto 0}.devi-mark .devi-photo{width:100%;height:auto;max-height:55vh}}


/* Keep the homepage deity photo compact on every screen */
.devi-mark{width:100%;max-width:250px;margin:0 auto;justify-self:center}
.devi-mark .devi-photo{width:100%;height:260px;max-height:260px;object-fit:contain}
@media(max-width:820px){.devi-mark{width:100%;max-width:190px;margin:8px auto 0}.devi-mark .devi-photo{width:100%;height:210px;max-height:210px}}


/* Fluid deity image sizing: scale naturally with screen width */
.devi-mark{width:100%;max-width:min(36vw,420px);margin:0 auto;justify-self:center}
.devi-mark .devi-photo{display:block;width:100%;height:auto;max-height:min(55vh,460px);object-fit:contain}
@media(max-width:820px){.devi-mark{width:100%;max-width:min(72vw,360px);margin:8px auto 0}.devi-mark .devi-photo{width:100%;height:auto;max-height:42vh}}
@media(max-width:420px){.devi-mark{max-width:82vw}.devi-mark .devi-photo{max-height:38vh}}


/* Fix chapter navigation buttons above and below the reading area on phones */
.navrow{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;gap:8px;width:100%;min-width:0}
.navrow a{display:flex;min-width:0;width:100%;max-width:100%;align-items:center;justify-content:center;gap:5px;white-space:normal;overflow-wrap:anywhere;word-break:normal;text-align:center;line-height:1.4;padding:12px 8px}
.navrow .nav-name{display:inline;max-width:100%;white-space:normal;overflow:visible;text-overflow:clip;overflow-wrap:anywhere}
@media(max-width:520px){.navrow{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.navrow a{font-size:clamp(12px,3.5vw,15px);padding:10px 5px;min-height:92px}.navrow .nav-name{max-width:100%;white-space:normal}}


/* Improved Sanskrit typography and additional marker color choices */
@import url('https://fonts.googleapis.com/css2?family=Tiro+Devanagari+Sanskrit:ital@0;1&family=Noto+Serif+Devanagari:wght@400;500;600;700&display=swap');
.reading .sanskrit-text,.editable .sanskrit-text{font-family:'Tiro Devanagari Sanskrit','Noto Serif Devanagari','Nirmala UI',serif}
.marker-part.marker-color-1{color:#9b1c1c}.marker-part.marker-color-2{color:#246b32}.marker-part.marker-color-3{color:#1457a6}.marker-part.marker-color-4{color:#b85b08}.marker-part.marker-color-5{color:#7836a8}

/* Sanskrit editor fixes: consistent Devanagari font, compact paragraphs and clearer toolbar states */
.admin .editable{font-family:'Tiro Devanagari Sanskrit','Noto Serif Devanagari','Nirmala UI',serif;line-height:1.75;white-space:normal;overflow-wrap:anywhere}
.admin .editable p{margin-block:0 .45em}
.admin .editable p:empty{display:none}
.admin .editable p br:only-child{display:none}
.admin .editable .sanskrit-text{font-family:'Tiro Devanagari Sanskrit','Noto Serif Devanagari','Nirmala UI',serif;font-size:1.15em;line-height:1.8;margin:8px 0;padding:8px 10px;background:#fff8e8;border:1px solid #f0dfab;border-radius:9px}
.admin .editable .hindi-text{font-family:'Noto Sans Devanagari','Nirmala UI',sans-serif;line-height:1.75;margin:8px 0;padding:8px 10px}
.admin .toolbar button:disabled{opacity:.42;cursor:not-allowed}
.admin .toolbar button:focus-visible,.admin .toolbar select:focus-visible{outline:2px solid var(--brand2);outline-offset:2px}


/* Mobile reader: compact, balanced controls and chapter navigation */
@media(max-width:520px){
 .reader{padding-top:18px;padding-bottom:34px}
 .reader #head{margin-bottom:14px}
 .reader #head h1{font-size:clamp(28px,7.5vw,36px);line-height:1.25;letter-spacing:-.02em;margin:8px 0 14px;overflow-wrap:anywhere}
 .reader-tools{
   position:static;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));
   align-items:stretch;justify-content:stretch;gap:8px;
   margin:0 0 14px;padding:12px;
   border:1px solid var(--line);border-radius:16px;
   background:var(--surface);box-shadow:0 5px 18px rgba(70,30,10,.045)
 }
 .reader-tools button{
   display:flex;align-items:center;justify-content:center;gap:4px;
   min-width:0;min-height:44px;padding:8px 4px;
   border:1px solid var(--line);border-radius:10px;
   font-size:clamp(11px,3.1vw,14px);line-height:1.25;
   white-space:normal;overflow-wrap:anywhere
 }
 .reader-tools #speak{grid-column:span 2;order:1}
 .reader-tools #stop{grid-column:span 2;order:2}
 .reader-tools #minus{order:3}\n .reader-tools #plus{order:4}\n .reader-tools #copy{grid-column:span 2;order:5}\n .reader-tools #share{grid-column:span 2;order:6}
 .reader-tools #bookmark{grid-column:span 4;order:7}
 .reader-tools .speak-status{grid-column:1/-1;order:8;min-height:0;width:100%;padding:0;text-align:center}
 .navrow{gap:8px;margin:0 0 18px}
 .navrow a{
   min-height:68px;height:100%;padding:10px 5px;
   border-radius:12px;font-size:clamp(11px,3.2vw,14px);
   line-height:1.35;box-shadow:0 2px 8px rgba(70,30,10,.035)
 }
 .navrow a:nth-child(2){font-weight:700}
 .navrow .nav-arrow{flex-shrink:0;color:var(--brand2)}
 .navrow .nav-name{font-weight:700}
 .navrow-bottom{margin-top:22px;padding-top:14px}
}
