
:root{--paper:#f4efe4;--ink:#171412;--wine:#4b0f0f;--wine2:#661818;--gold:#c89b32;--muted:#756a60;--panel:rgba(248,244,235,.96);--shadow:0 18px 60px rgba(15,7,5,.25);--textscale:1}
*{box-sizing:border-box}html,body{margin:0;height:100%;font-family:Georgia,"Noto Serif Devanagari","Noto Sans Devanagari",serif;background:#100a08;color:var(--paper)}body{overflow:hidden}.app{height:100dvh;display:grid;grid-template-rows:auto 1fr auto;background:radial-gradient(circle at 50% 20%,#281413 0,#100a08 68%)}
.topbar,.controls{display:flex;align-items:center;gap:.55rem;padding:.55rem .75rem;background:rgba(21,12,10,.92);backdrop-filter:blur(12px);z-index:20}.topbar{border-bottom:1px solid rgba(200,155,50,.35)}.controls{justify-content:center;border-top:1px solid rgba(200,155,50,.3)}
.brand{display:flex;align-items:center;gap:.55rem;margin-right:auto;font-weight:700;letter-spacing:.12em;color:#f7ead0}.brand b{color:var(--gold)}button,select,input{font:inherit}.btn{border:1px solid rgba(244,239,228,.18);background:rgba(255,255,255,.05);color:#f7efe2;border-radius:999px;padding:.48rem .72rem;cursor:pointer;min-height:40px}.btn:hover,.btn:focus-visible{border-color:var(--gold);outline:2px solid transparent;background:rgba(200,155,50,.14)}.btn.primary{background:var(--wine2);border-color:#7b2727}.btn.active{background:var(--gold);color:#21160c}.slidecount{font-variant-numeric:tabular-nums;color:#d7cbb9;min-width:7.5rem;text-align:center}.search{width:min(28vw,320px);border:1px solid rgba(244,239,228,.2);background:#1b100e;color:white;border-radius:999px;padding:.5rem .8rem}.search:focus{outline:2px solid var(--gold)}
.stage{position:relative;min-height:0;display:flex;align-items:center;justify-content:center;overflow:hidden}.framewrap{position:relative;width:min(94vw,calc((100dvh - 112px)*16/9));aspect-ratio:16/9;box-shadow:var(--shadow);overflow:hidden;background:var(--wine);border-radius:5px}.frame{width:100%;height:100%;object-fit:contain;display:block}.cinematic .frame{animation:push 14s linear both}.paused .frame{animation-play-state:paused}@keyframes push{from{scale:1}to{scale:1.025}}
.captionbar{position:absolute;left:0;right:0;bottom:0;display:flex;justify-content:space-between;gap:1rem;padding:.5rem .8rem;background:linear-gradient(transparent,rgba(0,0,0,.68));color:white;font-family:Arial,"Noto Sans Devanagari",sans-serif;font-size:.9rem;pointer-events:none}.progress{position:absolute;left:0;right:0;bottom:0;height:3px;background:rgba(255,255,255,.15)}.progress i{display:block;height:100%;background:var(--gold);width:0}
.drawer{position:fixed;inset:0 auto 0 0;width:min(420px,92vw);z-index:50;background:var(--panel);color:var(--ink);box-shadow:var(--shadow);translate:-102% 0;transition:translate .25s ease;display:grid;grid-template-rows:auto auto 1fr}.drawer.open{translate:0}.drawer header{padding:1rem;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #d9cdbb}.drawer header h2{margin:0;color:var(--wine)}.drawer .filters{padding:.75rem;display:flex;gap:.45rem;flex-wrap:wrap}.chapterlist{overflow:auto;padding:.4rem .65rem 2rem}.chapter{display:block;width:100%;text-align:left;border:0;border-bottom:1px solid #e2d7c7;background:transparent;padding:.75rem .45rem;color:var(--ink);cursor:pointer}.chapter strong{display:block;color:var(--wine);font-size:.96rem}.chapter small{color:var(--muted)}
.study{position:absolute;inset:0;background:var(--paper);color:var(--ink);overflow:auto;padding:clamp(1rem,3vw,3rem);display:none}.study.open{display:block}.studyarticle{max-width:920px;margin:auto;font-size:calc(1.1rem * var(--textscale));line-height:1.65}.studyarticle h1{font-size:clamp(2rem,5vw,4rem);color:var(--wine);line-height:1.03;margin:.15em 0}.studyarticle .meta{color:var(--gold);font-weight:700;letter-spacing:.08em;text-transform:uppercase}.studyarticle .body{white-space:pre-wrap}.studyarticle details{margin:1.4rem 0;border-top:1px solid #d8cab5;padding-top:.8rem}.studyarticle summary{cursor:pointer;color:var(--wine);font-weight:700}.studyarticle footer{margin-top:3rem;padding-top:1rem;border-top:1px solid #d8cab5;color:var(--muted);font-size:.88rem}
.searchresults{position:fixed;top:58px;right:12px;width:min(560px,94vw);max-height:70vh;overflow:auto;background:var(--panel);color:var(--ink);z-index:60;box-shadow:var(--shadow);border-radius:10px;display:none}.searchresults.open{display:block}.result{padding:.8rem 1rem;border-bottom:1px solid #ded2c1;cursor:pointer}.result:hover{background:#fff8e9}.result b{color:var(--wine)}.result small{display:block;color:var(--muted)}
.modehint{position:absolute;top:.7rem;left:.7rem;background:rgba(0,0,0,.55);padding:.35rem .6rem;border-radius:999px;font-family:Arial,sans-serif;font-size:.78rem;color:#f3e7d4;opacity:.76}.sr-only{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
body.light{background:#ded4c2}.light .app{background:#e9dfcf}.light .topbar,.light .controls{background:#4b0f0f}.light .framewrap{box-shadow:0 14px 45px rgba(66,25,18,.22)}
@media(max-width:760px){.brand span{display:none}.topbar{gap:.35rem}.search{width:34vw}.btn .label{display:none}.framewrap{width:100vw;border-radius:0}.captionbar{font-size:.75rem}.controls{gap:.3rem;padding:.35rem;overflow-x:auto;justify-content:flex-start}.btn{padding:.45rem .6rem}.slidecount{min-width:5.6rem}.modehint{display:none}}
@media(prefers-reduced-motion:reduce){.cinematic .frame{animation:none}.drawer{transition:none}}
