.prayerbook-shell { max-width: 980px; }
.prayerbook-hero, .prayerbook-reader__header { max-width: 760px; }
.prayerbook-kicker { color: #6c757d; font-size: .82rem; font-weight: 700; letter-spacing: .08em; margin-bottom: .55rem; text-transform: uppercase; }
.prayerbook-hero h1, .prayerbook-reader h1 { font-size: clamp(2.1rem, 6vw, 3.4rem); line-height: 1.08; }
.prayerbook-lead, .prayerbook-reader__header p { color: #6c757d; font-size: 1.12rem; }
.prayerbook-card { align-items: center; background: #fff; border: 1px solid #dee2e6; border-radius: 14px; color: #212529; display: flex; gap: 1rem; min-height: 124px; padding: 1.35rem; transition: border-color .2s ease, box-shadow .2s ease, transform .2s ease; }
.prayerbook-card:hover, .prayerbook-card:focus { border-color: #17a2b8; box-shadow: 0 8px 24px rgba(0,0,0,.1); color: #212529; text-decoration: none; transform: translateY(-2px); }
.prayerbook-card__icon { align-items: center; border: 1px solid #d7dfe4; border-radius: 50%; color: #52606a; display: flex; flex: 0 0 48px; height: 48px; justify-content: center; }
.prayerbook-card__icon svg { fill: none; height: 25px; stroke: currentColor; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.8; width: 25px; }
.prayerbook-card__body { display: flex; flex: 1; flex-direction: column; gap: .3rem; }
.prayerbook-card__body strong { font-size: 1.28rem; }
.prayerbook-card__body span { color: #6c757d; }
.prayerbook-back { font-weight: 600; }
.prayerbook-content { font-size: 18px; line-height: 1.6; margin-top: 2rem; }
.prayerbook-content h2, .prayerbook-content h3, .prayerbook-content h4 { line-height: 1.25; margin: 2.4rem 0 1rem; }
.prayerbook-content h2 { font-size: 1.75rem; }
.prayerbook-content h3 { font-size: 1.4rem; }
.prayerbook-content h4 { font-size: 1.2rem; }
.prayerbook-content table { border-collapse: collapse; width: 100%; }
.prayerbook-content td, .prayerbook-content th { border-bottom: 1px solid #dee2e6; padding: 1rem 0; vertical-align: top; }
.prayerbook-original > :last-child, .prayerbook-translation__body > :last-child { margin-bottom: 0; }
.prayerbook-translation { font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif; font-size: .88em; margin-top: .75rem; }
.prayerbook-translation summary { color: #16889a; cursor: pointer; display: inline-flex; font-weight: 600; list-style: none; padding: .35rem 0; }
.prayerbook-translation summary::-webkit-details-marker { display: none; }
.prayerbook-translation summary::after { content: "\2193"; margin-left: .45rem; }
.prayerbook-translation[open] summary::after { content: "\2191"; }
.prayerbook-translation__body { border-left: 3px solid #d7dfe4; color: #5f6b73; margin-top: .5rem; padding: .25rem 0 .25rem 1rem; }
.reading-progress-bar { background: #007bff; height: 4px; left: 0; position: fixed; top: 0; transition: width .1s ease-out; width: 0; z-index: 99999; }
.reader-settings-btn { align-items: center; background: #fff; border: 1px solid #ddd; border-radius: 50%; bottom: 10px; box-shadow: 0 2px 5px rgba(0,0,0,.1); color: #212529; cursor: pointer; display: flex; height: 44px; justify-content: center; left: 10px; position: fixed; width: 44px; z-index: 1000; }
.reader-settings-shutter { background: #fff; box-shadow: -2px 0 14px rgba(0,0,0,.12); height: 100%; overflow-y: auto; padding: 2rem 1.5rem; position: fixed; right: 0; top: 0; transform: translateX(100%); transition: transform .28s ease; width: 340px; max-width: calc(100vw - 24px); z-index: 10001; }
.reader-settings-shutter.active { transform: translateX(0); }
.reader-settings-overlay { background: rgba(0,0,0,.5); display: none; height: 100%; left: 0; position: fixed; top: 0; width: 100%; z-index: 10000; }
.reader-settings-overlay.active { display: block; }
.reader-settings-shutter .close { font-size: 2rem; font-weight: 300; }
.reader-settings-actions { margin-top: 2rem; text-align: center; }
.reader-settings-done { width: 100%; }
.reader-settings-reset { color: #6c757d; cursor: pointer; display: inline-block; margin-top: .85rem; text-decoration: underline; }
@media (max-width: 767.98px) {
  .reader-settings-shutter { border-radius: 16px 16px 0 0; bottom: 0; box-shadow: 0 -8px 20px rgba(0,0,0,.18); height: auto; max-height: 76vh; max-width: 100%; padding: 1.25rem 1.25rem calc(1.25rem + env(safe-area-inset-bottom)); top: auto; transform: translateY(100%); width: 100%; }
  .reader-settings-shutter.active { transform: translateY(0); }
}
[data-theme=dark] .prayerbook-kicker, [data-theme=dark] .prayerbook-lead, [data-theme=dark] .prayerbook-reader__header p, [data-theme=dark] .prayerbook-card__body span { color: #b8c6d7; }
[data-theme=dark] .prayerbook-card { background: #0d151e; border-color: #263646; color: #f5f5f5; }
[data-theme=dark] .prayerbook-card:hover, [data-theme=dark] .prayerbook-card:focus { border-color: #70baf5; color: #f5f5f5; }
[data-theme=dark] .prayerbook-card__icon { border-color: #263646; color: #b8c6d7; }
[data-theme=dark] .prayerbook-content td, [data-theme=dark] .prayerbook-content th { border-color: #2c2c2c; }
[data-theme=dark] .prayerbook-translation summary { color: #70baf5; }
[data-theme=dark] .prayerbook-translation__body { border-color: #263646; color: #b8c6d7; }
[data-theme=dark] .reading-progress-bar { background: #70baf5; }
[data-theme=dark] .reader-settings-btn { background: #333; border-color: #444; color: #fff; }
[data-theme=dark] .reader-settings-shutter { background: #222; border-left: 1px solid #444; color: #fff; }
[data-theme=dark] .reader-settings-reset { color: #adb5bd; }
