:root{--color-bg: #faf5ec;--color-text: #2b2420;--color-muted: #6b5f54;--color-accent: #bfa15a;--color-highlight: #f3e6c4;--font-ui: "Inter", system-ui, -apple-system, sans-serif;--font-serif: "Libre Baskerville", Georgia, "Times New Roman", serif;--reader-font-size: 1.125rem;--reader-line-height: 1.8;--reader-print-font-size: .92rem;--reader-print-line-height: 1.55}*{box-sizing:border-box}html,body{margin:0;padding:0}body{background:var(--color-bg);color:var(--color-text);font-family:var(--font-ui);line-height:1.5;-webkit-font-smoothing:antialiased}.app{max-width:1280px;margin:0 auto;padding:0 1.25rem 4rem}.app-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 0;margin-bottom:1.5rem;border-bottom:1px solid rgba(0,0,0,.08)}.app-title{font-size:1.25rem;font-weight:600;letter-spacing:.01em}.sponsor-button{font-size:.9rem;color:var(--color-text);text-decoration:none;border:1px solid var(--color-accent);border-radius:999px;padding:.35rem .9rem;transition:background-color .15s ease}.sponsor-button:hover{background-color:var(--color-highlight)}.reader-controls{display:flex;flex-wrap:wrap;gap:1rem;max-width:1180px;margin:0 auto 1.2rem}.selector{display:flex;flex-direction:column;gap:.25rem;font-size:.85rem;color:var(--color-muted)}.selector select{font-family:var(--font-ui);font-size:1rem;color:var(--color-text);background:#fff;border:1px solid rgba(0,0,0,.15);border-radius:8px;padding:.45rem .6rem}.search-box{flex:1 1 100%}.search-form{display:flex;flex-direction:column;gap:.25rem}.search-label{font-size:.85rem;color:var(--color-muted)}.search-input-row{display:flex;min-height:2.9rem}.search-input{min-width:0;flex:1;color:var(--color-text);background:#ffffffc7;border:1px solid rgba(0,0,0,.15);border-right:0;border-radius:8px 0 0 8px;font-family:var(--font-ui);font-size:1rem;padding:.55rem .75rem}.search-input:focus{outline:2px solid rgba(191,161,90,.75);outline-offset:-2px}.search-button{min-width:5.25rem;padding:.45rem .9rem;border:1px solid rgba(0,0,0,.15);border-radius:0 8px 8px 0;background:var(--color-highlight);color:var(--color-text);cursor:pointer;font-family:var(--font-ui);font-size:.95rem;font-weight:600}.search-button:hover{background:#ead9ad}.search-button:focus-visible{outline:2px solid rgba(191,161,90,.75);outline-offset:2px}.search-message{margin:.45rem 0 0;color:var(--color-muted);font-size:.9rem}.search-results{display:grid;max-height:18rem;margin-top:.6rem;overflow:auto;background:#fffaf0eb;border:1px solid rgba(95,72,38,.16);border-radius:8px}.search-result{display:grid;gap:.15rem;padding:.7rem .85rem;border:0;border-top:1px solid rgba(95,72,38,.12);background:transparent;color:var(--color-text);cursor:pointer;font:inherit;text-align:left}.search-result:first-child{border-top:0}.search-result:hover{background:#bfa15a1f}.search-result:focus-visible{outline:2px solid rgba(191,161,90,.75);outline-offset:-2px}.search-result-reference{color:#7a622c;font-size:.82rem;font-weight:700}.search-result-text{display:-webkit-box;overflow:hidden;font-family:var(--font-serif);font-size:.95rem;line-height:1.45;-webkit-box-orient:vertical;-webkit-line-clamp:2}.text-size-control{display:flex;flex-direction:column;gap:.25rem;font-size:.85rem;color:var(--color-muted)}.text-size-toggle{display:flex;min-height:2.9rem;overflow:hidden;background:#ffffffad;border:1px solid rgba(0,0,0,.15);border-radius:8px}.text-size-option{min-width:4.25rem;padding:.45rem .7rem;border:0;border-left:1px solid rgba(0,0,0,.1);background:transparent;color:var(--color-text);cursor:pointer;font-family:var(--font-ui);font-size:.92rem}.text-size-option:first-child{border-left:0}.text-size-option:hover{background:#bfa15a24}.text-size-option:focus-visible{position:relative;z-index:1;outline:2px solid rgba(191,161,90,.75);outline-offset:-2px}.text-size-option--active{background:var(--color-highlight);font-weight:600}.audio-controls{display:flex;align-items:end;gap:.5rem;min-height:2.9rem}.audio-button{min-height:2.9rem;padding:.45rem .85rem;border:1px solid rgba(0,0,0,.15);border-radius:8px;background:#ffffffad;color:var(--color-text);cursor:pointer;font-family:var(--font-ui);font-size:.95rem}.audio-button:hover:not(:disabled){background:#bfa15a24}.audio-button:focus-visible{outline:2px solid rgba(191,161,90,.75);outline-offset:2px}.audio-button:disabled{cursor:not-allowed;opacity:.55}.audio-button--primary{background:var(--color-highlight);font-weight:600}.audio-button--primary:hover:not(:disabled){background:#ead9ad}.audio-error{max-width:1180px;margin:-.35rem auto 1rem;color:#8f2d1d;font-size:.95rem}.open-bible{position:relative;width:100%;max-width:1180px;margin:0 auto;padding:.35rem .42rem .55rem;background:#2a261f;border-radius:11px 11px 8px 8px;box-shadow:inset 0 0 0 1px #ffffff0f,0 14px 28px #2a1f1224}.open-bible[data-text-size=normal]{--reader-print-font-size: .92rem;--reader-print-line-height: 1.55}.open-bible[data-text-size=large]{--reader-print-font-size: 1.08rem;--reader-print-line-height: 1.6}.open-bible[data-text-size=extra-large]{--reader-print-font-size: 1.24rem;--reader-print-line-height: 1.65}.book-pages{position:relative;min-height:28rem;padding:1.8rem 3.25rem 2rem;overflow:hidden;background:linear-gradient(90deg,rgba(0,0,0,.045),transparent 8%,transparent 92%,rgba(0,0,0,.04)),repeating-linear-gradient(90deg,#dfc79f 0,#dfc79f 1px,#f6e7cd 1px,#f6e7cd 3px) left / 1.05rem 100% no-repeat,repeating-linear-gradient(90deg,#f6e7cd 0,#f6e7cd 1px,#dfc79f 1px,#dfc79f 3px) right / 1.05rem 100% no-repeat,linear-gradient(90deg,#fff9ed,#fffdf8 48.8%,#efe6d9,#fffdf8 51.2%,#fff9ed);border:1px solid rgba(79,59,31,.18);border-radius:8px 8px 5px 5px;box-shadow:inset 0 0 12px #6f4d2312,inset 0 -5px 9px #8a602c17}.book-pages:before{position:absolute;top:0;bottom:0;left:50%;width:.55rem;transform:translate(-50%);background:linear-gradient(90deg,transparent,rgba(83,58,27,.06) 35%,rgba(74,52,25,.1) 50%,rgba(255,255,255,.32) 65%,transparent);content:"";pointer-events:none}.book-pages:after{position:absolute;right:1.05rem;bottom:0;left:1.05rem;height:.32rem;background:linear-gradient(180deg,#976b311f,#f4deb838);content:"";pointer-events:none}.book-ribbon{position:absolute;bottom:-3.1rem;left:50%;z-index:0;width:.72rem;height:3.7rem;transform:translate(-50%);background:linear-gradient(90deg,#151515,#38332b 44%,#111);border-radius:0 0 3px 3px;box-shadow:0 5px 8px #0003}.reader-heading{position:relative;z-index:1;width:calc((100% - 3rem)/2);margin:0 0 1.25rem;font-family:var(--font-serif);font-size:1.45rem;font-weight:600;letter-spacing:.16em;text-align:center;text-transform:uppercase}.reader-heading:after{display:block;width:4.7rem;height:.45rem;margin:.42rem auto 0;background:radial-gradient(circle at center,var(--color-accent) 0 2px,transparent 2.5px),linear-gradient(90deg,transparent 0 8%,rgba(191,161,90,.8) 8% 92%,transparent 92% 100%);background-position:center,center;background-size:100% 100%,100% 1px;background-repeat:no-repeat;content:""}.reader-status{padding:2rem 0;color:var(--color-muted)}.verses{position:relative;z-index:1;font-family:var(--font-serif);font-size:var(--reader-print-font-size);line-height:var(--reader-print-line-height);column-count:2;column-gap:3rem;text-align:left;text-wrap:pretty}.verse{display:grid;width:100%;grid-template-columns:2.2rem 1fr;column-gap:.75rem;align-items:start;margin:0 0 .68rem;padding:.05rem .1rem;border:0;border-radius:3px;background:transparent;color:var(--color-text);cursor:pointer;break-inside:avoid;font:inherit;text-align:left;transition:background-color .15s ease,color .15s ease;-webkit-box-decoration-break:clone;box-decoration-break:clone}.verse:hover{background:#bfa15a24}.verse:focus-visible{outline:2px solid rgba(191,161,90,.75);outline-offset:3px}.verse--selected{background:var(--color-highlight)}.verse--playing{background:#ead18b;box-shadow:inset 3px 0 0 var(--color-accent)}.verse-number{font-family:var(--font-ui);font-size:.74em;font-weight:500;line-height:1.45;color:#5f5241;white-space:nowrap}.verse-text{display:block}@media(max-width:760px){.app{max-width:100%}.open-bible{max-width:100%;padding:0;background:transparent;border-radius:0;box-shadow:none}.book-pages{min-height:0;padding:1.5rem 1.15rem 1.75rem;border-radius:12px;background:#fffaf0}.book-pages:before,.book-pages:after,.book-ribbon{display:none}.reader-heading{width:100%;font-size:1.15rem}.verses{column-count:1;column-gap:0;text-align:left}.audio-controls,.text-size-control{width:100%}.audio-button{flex:1}}
