.app-header{z-index:25}.settings-anchor{position:relative;flex-shrink:0}.floating-settings{position:absolute;right:0;top:calc(100% + 14px);width:min(189px,calc(100vw - 40px));padding:9px;border:1px solid #ffffff55;border-radius:23px;color:white;background:linear-gradient(140deg,#756382ed,#393147f5);box-shadow:inset 0 1px #ffffff30,0 18px 50px #25183140;backdrop-filter:blur(28px) saturate(150%);-webkit-backdrop-filter:blur(28px) saturate(150%);transform-origin:top right;animation:menu-expand .2s ease-out}.floating-settings:before{content:"";position:absolute;top:-5px;right:17px;width:9px;height:9px;transform:rotate(45deg);background:#756382;border-left:1px solid #ffffff55;border-top:1px solid #ffffff55}.menu-caption{padding:8px 12px;font-size:9px;text-transform:uppercase;letter-spacing:1.8px;color:#e0d0e8}.floating-settings button,.floating-settings a{width:100%;display:flex;align-items:center;gap:12px;padding:12px;border:0;border-radius:14px;background:none;color:#fff;text-decoration:none;text-align:left;font-size:13px;min-height:52px}.floating-settings button:hover,.floating-settings a:hover{background:#ffffff15}.floating-settings .icon{width:19px;height:19px;flex-shrink:0}.floating-settings .icon:last-child{margin-left:auto;width:14px}.floating-settings small{display:block;color:#e0d0e8;font-size:10px;margin-top:2px}.floating-settings [role=switch]{border-block:1px solid #ffffff15;border-radius:0}.mini-switch{display:block;margin-left:auto;width:34px;height:20px;border-radius:20px;background:#ffffff25;border:1px solid #ffffff30;position:relative;flex-shrink:0}.mini-switch:after{content:"";position:absolute;width:14px;height:14px;border-radius:50%;top:2px;left:2px;background:white;box-shadow:0 1px 3px #0002;transition:transform .2s}[aria-checked=true] .mini-switch{background:#b19ac6}[aria-checked=true] .mini-switch:after{transform:translateX(14px)}.settings-page{display:block;padding:32px 23px calc(116px + env(safe-area-inset-bottom))}.settings-page .eyebrow{font-size:9px;letter-spacing:1.8px;text-transform:uppercase;color:var(--muted)}.settings-page h1{font-family:'Libre Caslon Display',Georgia,serif;font-size:43px;line-height:1.1;margin:12px 0 15px;letter-spacing:-.7px}.settings-intro{font-size:13px;color:#75627e;line-height:1.8;margin-bottom:28px}.settings-card{padding:23px 20px 10px;border:1px solid #ffffff95;border-radius:24px;background:linear-gradient(130deg,#ffffff55,#ffffff18);box-shadow:inset 0 1px #ffffff90;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}.settings-card h2{font-size:15px;font-weight:600;margin-bottom:8px}.settings-card>p{font-size:12px;color:#75627e}.theme-options{display:flex;gap:10px;margin:22px 0}.theme-options button{flex:1;min-width:0;background:#ffffff20;color:var(--ink);border:1px solid #ffffff60;border-radius:15px;padding:10px;font-size:11px;display:grid;gap:9px;text-align:center}.theme-options [aria-pressed=true]{border-color:#8f729f;box-shadow:0 0 0 2px #8f729f25;background:#ffffff45}.swatch{display:block;height:46px;width:100%;border-radius:9px}.swatch.rose{background:linear-gradient(140deg,#f0ded0,#dcd2e7,#c6d3e5)}.swatch.sage{background:linear-gradient(140deg,#ede8d4,#d5e1d4,#bbd3d9)}.swatch.sunset{background:linear-gradient(140deg,#f5e2c9,#eccdc9,#d6c8e5)}.settings-row{display:flex;align-items:center;gap:12px;width:100%;text-align:left;border:0;border-top:1px solid #ffffff50;padding:20px 0;min-height:70px;background:none;color:var(--ink)}.settings-row strong{font-size:13px;font-weight:500;display:block}.settings-row small{font-size:10px;display:block;margin-top:4px;color:#75627e}.settings-row .icon{flex-shrink:0;width:19px}.settings-row .mini-switch{background:#8f7a9c30}.settings-row[aria-checked=true] .mini-switch{background:#9473ac}.settings-footnote{font-size:10px;color:#75627e;text-align:center;margin-top:23px}body[data-motion=off]{animation:none!important}body[data-mode=dark]{--ink:#eee7f5;--muted:#c0aecb;--card-a:#302736;--card-b:#29263e;--card-c:#1f2d3e;color:#eee7f5;background:radial-gradient(ellipse at 12% 15%,#805b8426,transparent 52%),radial-gradient(ellipse at 90% 75%,#8b77ab20,transparent 50%),linear-gradient(155deg,var(--card-a),var(--card-b) 57%,var(--card-c));background-size:180% 180%}body[data-mode=dark] .app-header{background:#211e3030;border-bottom-color:#ffffff15}body[data-mode=dark] :is(.brand-mark,.header-note,.card-label,.theme-label,.read-time,.reading-meta .eyebrow,.duration,.scripture-ref,.scripture-glass .eyebrow,.prayer strong,.settings-intro,.settings-card>p,.settings-row small,.settings-footnote){color:#c4afd0}body[data-mode=dark] :is(.verse-content blockquote,.verse-content cite,.reading-title,.full-verse,.devotional p,.devotional p:first-child,.prayer){color:#eee3f3}body[data-mode=dark] :is(.theme-button,.preach,.scripture-glass,.prayer,.settings-card){background:linear-gradient(125deg,#ffffff12,#ffffff06);color:#eee7f5;border-color:#ffffff30;box-shadow:inset 0 1px #ffffff18,0 10px 25px -20px #0008}body[data-mode=dark] .preach .arrow{background:#ffffff12;border-color:#ffffff30}body[data-mode=dark] .card-actions{border-top-color:#ffffff20}body[data-mode=dark] .card-label .day{background:#ffffff08;border-color:#ffffff25}body[data-mode=dark] .bottom-bar{background:linear-gradient(120deg,#282235dd,#202337d9);border-top-color:#ffffff25;box-shadow:inset 0 1px #ffffff10}body[data-mode=dark] .tab{color:#bfafcc}body[data-mode=dark] .tab.active,body[data-mode=dark] .tab[aria-pressed=true]{color:white;background:#ffffff12;box-shadow:inset 0 1px #ffffff15}body[data-mode=dark] .verse-card:after{opacity:.22}body[data-mode=dark] .settings-row{border-top-color:#ffffff20}body[data-mode=dark] .theme-options button{background:#ffffff08;border-color:#ffffff25}body[data-mode=dark] .theme-options [aria-pressed=true]{border-color:#c8a5df}body[data-mode=dark] .theme-button:hover{background:#ffffff20}@keyframes menu-expand{from{opacity:0;transform:translateY(-7px) scale(.96)}to{opacity:1;transform:translateY(0) scale(1)}}@media(prefers-reduced-motion:reduce){.floating-settings,.mini-switch:after{animation:none;transition:none}}
/* Compact app chrome with a full-size touch target. */
.app-header{padding-top:calc(10px + env(safe-area-inset-top));padding-bottom:10px;min-height:64px}
.app-header .brand{font-size:30px;gap:7px;line-height:1}
.app-header .brand-mark{width:25px;height:29px}
.app-header .header-note{font-size:8px;letter-spacing:1.3px;margin-top:4px;line-height:1.3}
.app-header .theme-button{width:44px;height:44px;min-width:44px;min-height:44px}
.platform:disabled,.sheet-secondary:disabled{opacity:.45;cursor:progress}
/* Translucent floating glass menu. */
.floating-settings{background:linear-gradient(140deg,#69577870,#30263f85);border-color:#ffffff60;box-shadow:inset 0 1px #ffffff50,inset 0 -1px #ffffff12,0 16px 40px #25183128;backdrop-filter:blur(24px) saturate(155%);-webkit-backdrop-filter:blur(24px) saturate(155%)}
.floating-settings:before{background:#69577870;border-color:#ffffff60;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.floating-settings button:hover,.floating-settings a:hover{background:#ffffff18}
body[data-mode=dark] .floating-settings{background:linear-gradient(140deg,#55406265,#1e192b85);border-color:#ffffff35}
body[data-mode=dark] .floating-settings:before{background:#55406265;border-color:#ffffff35}
.sermon-audio{margin-top:24px;padding:20px;border:1px solid #ffffff95;border-radius:22px;background:linear-gradient(130deg,#ffffff60,#ffffff20);box-shadow:inset 0 1px #ffffffad;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.audio-heading{display:flex;align-items:center;gap:12px;margin-bottom:17px}.audio-symbol{width:40px;height:40px;border-radius:13px;border:1px solid #ffffff80;background:#ffffff30;display:grid;place-items:center;flex-shrink:0;color:#80628f}.audio-heading h2{font-size:13px;font-weight:600;letter-spacing:0;margin:0 0 5px}.audio-heading p{font-size:10px;color:#796685;margin:0}.sermon-audio audio{display:block;width:100%;height:44px;min-width:0}.audio-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:15px;font-size:10px;color:#796685}.audio-foot a{color:inherit;text-decoration:none;min-height:44px;display:inline-flex;align-items:center;gap:8px}.audio-error{font-size:11px;line-height:1.6;margin:10px 0 0;color:var(--ink)}body[data-mode=dark] .sermon-audio{background:linear-gradient(130deg,#ffffff12,#ffffff06);border-color:#ffffff30;box-shadow:inset 0 1px #ffffff18}body[data-mode=dark] .audio-symbol{border-color:#ffffff25;background:#ffffff08;color:#c4afd0}body[data-mode=dark] :is(.audio-foot,.audio-heading p){color:#c4afd0}
/* Readable frosted options: restored opacity behind white menu text. */
.floating-settings{background:linear-gradient(140deg,#6d5d7aeb,#393147f2);border-color:#ffffff60;backdrop-filter:blur(26px) saturate(140%);-webkit-backdrop-filter:blur(26px) saturate(140%)}
.floating-settings:before{background:#6d5d7aeb}
body[data-mode=dark] .floating-settings{background:linear-gradient(140deg,#493653ed,#211b30f5)}
body[data-mode=dark] .floating-settings:before{background:#493653ed}
.sermon-footer .audio-progress{position:absolute;top:0;left:0;width:100%;height:2px;border:0;border-radius:0;appearance:none;-webkit-appearance:none;background:#ffffff20;color:#9874ad;pointer-events:none}
.audio-progress::-webkit-progress-bar{background:#ffffff20}.audio-progress::-webkit-progress-value{background:#9874ad}.audio-progress::-moz-progress-bar{background:#9874ad}
.audio-play[aria-pressed=true] .icon{fill:currentColor}.sermon-footer .tab{padding-top:7px;padding-bottom:7px}.audio-play[aria-busy=true]{opacity:.7}
body[data-mode=dark] .audio-progress::-webkit-progress-value{background:#c8a7dc}body[data-mode=dark] .audio-progress::-moz-progress-bar{background:#c8a7dc}
/* Touch-first scripture deck, with vertical page scrolling preserved. */
body:has(#verseCard){overflow-x:clip}.verse-card{touch-action:pan-y;will-change:transform;user-select:none;-webkit-user-select:none}.verse-card:focus-visible{outline:2px solid #9972ad;outline-offset:-3px}.swipe-navigation{display:flex;align-items:center;justify-content:space-between;margin:-8px 0 18px;text-align:center}.swipe-navigation button{width:44px;height:44px;display:grid;place-items:center;border:1px solid #ffffff65;border-radius:50%;color:var(--ink);background:#ffffff25;font-size:27px;line-height:1}.swipe-navigation>div{display:grid;gap:3px}#versePosition{font-size:10px;letter-spacing:2px;color:#796685}.swipe-caption{font-size:9px;letter-spacing:.2px;color:#796685}.swipe-highlight{color:#654279;font-weight:600}.long-verse .verse-content blockquote{font-size:clamp(26px,7.3vw,34px)}.long-verse .verse-content{padding-top:30px;padding-bottom:28px}#searchResults{display:grid;gap:10px}.search-result{text-decoration:none}.search-result:hover{color:white;background:#ffffff20}.scripture-glass #scriptureLabel{font-size:8px;letter-spacing:1.3px;line-height:1.8}.scripture-glass .full-verse{margin-bottom:0}body[data-mode=dark] :is(#versePosition,.swipe-caption){color:#c4afd0}body[data-mode=dark] .swipe-navigation button{background:#ffffff08;border-color:#ffffff30}@media(prefers-reduced-motion:reduce){.verse-card{will-change:auto}}
/* The home deck is a single viewport; the preaching screen remains scrollable. */
body:has(#verseCard){height:100vh;height:100dvh;min-height:0;overflow:hidden}
body:has(#verseCard) .app-header{flex-shrink:0}
body:has(#verseCard)>main{flex:1;min-height:0;padding-bottom:calc(83px + env(safe-area-inset-bottom));overflow:hidden}
body:has(#verseCard) .verse-card{display:grid;grid-template-rows:auto minmax(0,1fr) auto;flex:1;min-height:0;padding-top:16px;padding-bottom:14px;overflow:hidden}
body:has(#verseCard) .verse-content{min-height:0;padding:20px 0;overflow:hidden;justify-content:center}
body:has(#verseCard) .verse-content blockquote{flex-shrink:0;max-width:100%;font-size:clamp(26px,5dvh,42px);line-height:1.2}
body:has(#verseCard) .verse-content .quote{flex-shrink:0;font-size:54px;height:30px;margin-bottom:13px}
body:has(#verseCard) .verse-content .quote-close{font-size:50px;height:26px;margin-top:7px}
body:has(#verseCard) .verse-content cite{font-size:9px;margin-top:14px;letter-spacing:1.6px}
body:has(#verseCard) .theme-label{font-size:11px;margin-top:9px;flex-shrink:0}
body:has(#verseCard) .card-actions{padding-top:10px}
body:has(#verseCard) .swipe-navigation{margin:0 0 9px;min-height:44px}
body:has(#verseCard) .swipe-navigation button{width:40px;height:44px;background:#ffffff18;border-color:#ffffff50}
body:has(#verseCard) .preach{min-height:50px;border-radius:16px;padding-top:6px;padding-bottom:6px}
body:has(#verseCard) .secondary-actions{display:none}
@media(max-height:640px){body:has(#verseCard) .verse-content{padding:12px 0}body:has(#verseCard) .verse-content .quote{font-size:42px;height:23px;margin-bottom:8px}body:has(#verseCard) .verse-content .quote-close{font-size:38px;height:20px;margin-top:4px}body:has(#verseCard) .verse-content cite{margin-top:10px}body:has(#verseCard) .theme-label{margin-top:6px;font-size:10px}body:has(#verseCard) .verse-card{padding-top:12px;padding-bottom:9px}}
@media(orientation:landscape) and (max-height:500px){body:has(#verseCard) .app-header{padding-top:5px;padding-bottom:5px}body:has(#verseCard) .header-note{display:none}body:has(#verseCard) .verse-card{grid-template-columns:minmax(0,1fr) minmax(120px,.6fr);grid-template-rows:auto minmax(0,1fr);gap:0 18px}body:has(#verseCard) .card-label{grid-column:1/-1}body:has(#verseCard) .card-actions{align-self:center}body:has(#verseCard) .verse-content .quote,body:has(#verseCard) .verse-content .quote-close,body:has(#verseCard) .theme-label{display:none}body:has(#verseCard) .verse-content{padding:8px 0}body:has(#verseCard) .swipe-caption{display:none}}
body:has(#verseCard) .swipe-navigation{margin-bottom:0;gap:12px}
.open-sermon{flex:1;min-height:48px;display:flex;align-items:center;justify-content:center;gap:10px;padding:10px 12px;border:1px solid #ffffff95;border-radius:16px;background:linear-gradient(120deg,#ffffff70,#ffffff25);color:var(--ink);font-size:12px;font-weight:500;text-decoration:none;box-shadow:inset 0 1px #ffffffb0,0 6px 20px -15px #6c4e8a70;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.open-sermon .icon{width:16px;height:16px;flex-shrink:0}.open-sermon:hover{color:var(--ink);background:#ffffff75}.open-sermon>span:last-child{font-size:15px;opacity:.7}
body[data-mode=dark] .open-sermon{background:linear-gradient(120deg,#ffffff18,#ffffff06);border-color:#ffffff35;box-shadow:inset 0 1px #ffffff20}
@media(max-width:350px){.open-sermon{gap:7px;font-size:11px;padding-inline:9px}body:has(#verseCard) .swipe-navigation{gap:8px}}
