:root{--reader-scale:1}
.reader-hero p,.room p,.verse{font-size:calc(clamp(1.08rem,1.9vw,1.24rem)*var(--reader-scale))}
.reading-progress{position:fixed;z-index:80;top:0;left:0;height:3px;width:0;background:linear-gradient(90deg,var(--gold),var(--gold2));transition:width .15s}
.reader-tools{position:fixed;z-index:45;right:16px;bottom:16px;display:flex;gap:7px;padding:8px;border:1px solid rgba(236,213,156,.35);border-radius:999px;background:rgba(6,31,41,.96);box-shadow:0 12px 32px rgba(0,0,0,.26)}
.reader-tools button,.scripture-modes button,.speech-controls button,.verse-controls button{border:1px solid rgba(236,213,156,.46);border-radius:999px;padding:10px 13px;background:transparent;color:#fff;font:700 .61rem var(--sans);letter-spacing:.08em;text-transform:uppercase;cursor:pointer}
.reader-tools button.active,.scripture-modes button.active,.speech-controls button:first-child{color:#14282d;background:var(--gold)}
.reader-tools button:focus-visible,.scripture-modes button:focus-visible,.speech-controls button:focus-visible,.verse-controls button:focus-visible{outline:3px solid var(--gold2);outline-offset:2px}
.scripture-modes,.speech-controls,.verse-controls{display:flex;align-items:center;justify-content:center;gap:8px;flex-wrap:wrap;margin:20px 0}
.speech-controls{padding:14px;border-top:1px solid rgba(236,213,156,.2);border-bottom:1px solid rgba(236,213,156,.2)}
.speech-controls button:disabled,.verse-controls button:disabled{opacity:.35;cursor:not-allowed}.speech-controls span,.verse-controls span{font:600 .68rem var(--sans);letter-spacing:.04em;color:var(--gold2)}
.verse{transition:opacity .3s,background .3s,padding .3s}.verse.focus{opacity:1;padding-left:14px;background:linear-gradient(90deg,rgba(236,213,156,.14),transparent)}.verse.dim{opacity:.24}
.annotated-word{display:inline;padding:0 2px;border:0;border-bottom:2px solid var(--gold);color:inherit;background:linear-gradient(180deg,transparent 62%,rgba(209,166,71,.27) 62%);font:inherit;line-height:inherit;cursor:pointer}.annotated-word:hover,.annotated-word:focus-visible{color:#fff4cf;background:rgba(209,166,71,.24);outline:2px solid var(--gold2);outline-offset:2px}.annotation-popover{position:fixed;z-index:120;display:none;width:min(420px,calc(100vw - 24px));max-height:min(460px,calc(100vh - 24px));overflow:auto;padding:24px 28px;border:1px solid rgba(209,166,71,.75);border-radius:4px;color:#392d23;background:linear-gradient(180deg,#fffdf8,#f2e5cc);box-shadow:0 22px 65px rgba(0,0,0,.48)}.annotation-popover.open{display:block}.annotation-popover h2{margin:7px 34px 10px 0;color:#17313a;font-size:clamp(1.9rem,5vw,2.7rem);line-height:1}.annotation-popover p{margin:0;font-size:1.04rem;line-height:1.6}.annotation-close{position:absolute;top:8px;right:12px;border:0;color:#17313a;background:transparent;font-size:1.8rem;cursor:pointer}
.window-button{width:100%;color:inherit;font-family:inherit;text-align:left;cursor:pointer}.window-button span{display:block;margin-top:12px;color:#8d631f;font:700 .61rem var(--sans);letter-spacing:.08em;text-transform:uppercase}
.journal-label{display:block;margin:30px 0 8px;color:var(--deep);font:700 .65rem var(--sans);letter-spacing:.14em;text-transform:uppercase}.journal{width:100%;min-height:170px;padding:18px;border:1px solid var(--line);border-radius:3px;color:var(--ink);background:#fffdf8;font:calc(1.05rem*var(--reader-scale)) var(--serif);line-height:1.6;resize:vertical}.journal-status{min-height:24px;padding-top:7px;color:var(--muted);font:600 .66rem var(--sans)}
.reader-dialog{width:min(570px,calc(100% - 28px));max-height:88vh;padding:0;border:1px solid var(--line);color:var(--ink);background:linear-gradient(180deg,#fffaf1,#f1e3c8);box-shadow:0 24px 70px rgba(0,0,0,.45)}.reader-dialog::backdrop{background:rgba(3,15,20,.78);backdrop-filter:blur(4px)}.dialog-card{position:relative;padding:clamp(28px,6vw,52px)}.dialog-card h2{margin:10px 0 18px;color:var(--night);font-size:clamp(2.4rem,6vw,4rem);line-height:.95}.dialog-card p{font-size:1.08rem;line-height:1.65}.dialog-close{position:absolute;top:12px;right:14px;border:0;color:var(--night);background:transparent;font-size:2rem;cursor:pointer}
.field,.field-check{display:block;margin:18px 0;font:700 .72rem var(--sans);letter-spacing:.06em;text-transform:uppercase}.field input[type=range],.field select{display:block;width:100%;margin-top:9px}.field select{padding:10px;border:1px solid var(--line);background:#fffaf1}.dialog-actions{display:flex;gap:10px;margin-top:24px}.dialog-actions button{padding:11px 17px;border:1px solid var(--gold);border-radius:999px;color:#fff;background:var(--deep);cursor:pointer}.dialog-actions .secondary{color:var(--deep);background:transparent}.status{min-height:26px;color:var(--muted)}
.continue-panel{margin:44px auto 0;padding:28px;border:1px solid var(--line);background:rgba(255,250,241,.72);box-shadow:0 12px 34px rgba(52,37,21,.09)}.continue-panel[hidden]{display:none}.continue-panel h3{margin:7px 0 5px;color:var(--night);font-size:2rem}.continue-panel p{margin:0 0 16px}.continue-panel a{display:inline-block;padding:11px 16px;border-radius:999px;color:#14282d;background:var(--gold);font:700 .65rem var(--sans);letter-spacing:.08em;text-decoration:none;text-transform:uppercase}
/* The reader may be hosted inside a tall Google Sites iframe. Do not size an
   individual page from that iframe's viewport height; doing so creates several
   screens of empty space. Each page keeps its own content-driven dimensions. */
.reader-page--active{min-height:0}
#root>section[hidden]{display:none!important}
.page-turner{display:grid;grid-template-columns:minmax(130px,1fr) minmax(150px,320px) minmax(130px,1fr);align-items:center;gap:18px;padding:20px max(24px,calc((100% - 1080px)/2));border-top:1px solid rgba(236,213,156,.3);border-bottom:1px solid rgba(236,213,156,.22);color:#fff;background:#061f29}
.page-turner p{margin:0;text-align:center}.page-turner span,.page-turner small{display:block}.page-turner span{color:var(--gold2);font:700 .68rem var(--sans);letter-spacing:.12em;text-transform:uppercase}.page-turner small{margin-top:5px;color:rgba(255,255,255,.68);font:600 .62rem var(--sans);letter-spacing:.06em}
.page-turner button{min-height:46px;padding:11px 18px;border:1px solid rgba(236,213,156,.5);border-radius:999px;color:#13272a;background:var(--gold);font:700 .65rem var(--sans);letter-spacing:.08em;text-transform:uppercase;cursor:pointer}.page-turner button:first-child{justify-self:start}.page-turner button:last-child{justify-self:end}.page-turner button:disabled{opacity:.38;cursor:default}.page-turner button:focus-visible{outline:3px solid var(--gold2);outline-offset:3px}
.reduce-motion *{scroll-behavior:auto!important;transition:none!important;animation:none!important}
@media(max-width:720px){.reader-tools{left:10px;right:10px;bottom:10px;justify-content:center;border-radius:8px}.reader-tools button{padding:9px 8px;font-size:.55rem}.footer{padding-bottom:95px}.speech-controls{align-items:stretch;flex-direction:column}.speech-controls span{text-align:center}.verse-controls{display:grid;grid-template-columns:1fr 1fr}.verse-controls span{grid-column:1/-1;grid-row:1;text-align:center}.page-turner{grid-template-columns:1fr 1fr;gap:10px;padding:16px 14px}.page-turner p{grid-column:1/-1;grid-row:1}.page-turner button{width:100%;padding:10px 8px;font-size:.58rem}.page-turner button:first-child{grid-column:1}.page-turner button:last-child{grid-column:2}}
