/* Website refinements use the live Spirit Broods palette and existing scroll owners. */
html[data-browser-app="1"] .sb-library-landing{min-height:calc(var(--sb-visible-height,100dvh) - 110px);display:flex;flex-direction:column;justify-content:center;gap:clamp(24px,5vh,64px);padding:24px 0 32px;box-sizing:border-box}
html[data-browser-app="1"] .sb-library-landing .sb-collection-grid{margin:0}
html[data-browser-app="1"] .sb-library-landing .sb-explore-more{align-self:center;margin:0}
html[data-browser-app="1"] .sb-library-down{align-self:center;display:grid;place-items:center;width:48px;min-height:48px;border:1px solid var(--sb-border);border-radius:50%;background:var(--sb-surface,var(--app-paper));color:var(--sb-text);font-size:26px;cursor:pointer}
html[data-browser-app="1"] [data-library-below]{display:grid;gap:24px;padding-bottom:24px;scroll-margin-top:72px}
html[data-browser-app="1"] [data-library-below]>*{min-width:0;max-width:100%;box-sizing:border-box}
html[data-browser-app="1"] [data-library-below] .site-footer{margin:0;width:100%}
html[data-browser-app="1"] [data-home-page="today"] .home-today-scripture{margin-top:32px}
html[data-browser-app="1"] :is(button,a,input,select,summary):focus-visible{outline:3px solid var(--sb-accent,var(--sb-text));outline-offset:4px}
html[data-browser-app="1"] .sb-context-options[hidden]{display:none}
@media(max-width:360px){html[data-browser-app="1"] .sb-library-landing{gap:24px}html[data-browser-app="1"] .sb-collection-grid{column-gap:8px}}
@media(prefers-reduced-motion:reduce){html[data-browser-app="1"] .sb-library-down{scroll-behavior:auto}}
html[data-browser-app="1"] .bible-word-search{padding:20px 0;border-block:1px solid var(--sb-border);margin:20px 0}
html[data-browser-app="1"] .bible-word-search label{display:block;margin-bottom:12px}
html[data-browser-app="1"] .bible-word-search input{flex:1;min-width:0;min-height:44px;font:inherit;border:1px solid var(--sb-border);border-radius:12px;padding:10px;background:var(--sb-panel);color:var(--sb-text)}
html[data-browser-app="1"] .bible-word-result{display:grid;gap:8px;text-align:start;width:100%;padding:16px;margin:8px 0;border:1px solid var(--sb-border);border-radius:14px;background:var(--sb-panel);color:var(--sb-text);font:inherit;cursor:pointer}

/* Retained quotation and footer follow the landing without empty section shells. */
html:root[data-browser-app="1"] body #main [data-library-below]>.site-footer{display:block!important}
html[data-browser-app="1"] [data-library-below]>.quote-feature{margin:0;padding:24px;min-height:0}

/* Values inspected on spiritbroods.org in both themes on 26 October 2026.
   Website scope protects the existing installed surface and entry animation. */
html:root[data-browser-app="1"]{
 --sb-bg:#fafafa;--sb-text:#161616;--sb-secondary:#626262;--sb-raised:#f1f1f1;
 --sb-panel:#fff;--sb-border:#dedede;--sb-action:#161616;--sb-action-text:#fff;
 --canvas:#fafafa;--ink:#161616;--muted:#626262;--line:#dedede;--surface:#fafafa;--surface-2:#fff;--surface-3:#f1f1f1;--accent:#161616;
 --sb-motion-control:150ms;--sb-motion-quick:150ms;--sb-motion-panel:220ms;
 --sb-motion-ease:cubic-bezier(.4,0,.2,1);--sb-motion-out:cubic-bezier(0,0,.2,1);
 --sb-action-gradient:none;
 
}
html:root[data-browser-app="1"][data-theme="dark"]{
 --sb-bg:#0a0a0a;--sb-text:#f5f5f5;--sb-secondary:#a3a3a3;--sb-raised:#1a1a1a;
 --sb-panel:#111;--sb-border:#303030;--sb-action:#fafafa;--sb-action-text:#111;
 --canvas:#0a0a0a;--ink:#f5f5f5;--muted:#a3a3a3;--line:#303030;--surface:#0a0a0a;--surface-2:#111;--surface-3:#1a1a1a;--accent:#f5f5f5;
 --sb-action-gradient:none;
 
}
html[data-browser-app="1"] :is(.sb-new-top button,.sb-pill,.sb-context-options button,.sb-collection-grid a,summary){transition:background-color var(--sb-motion-control) var(--sb-motion-ease),color var(--sb-motion-control) var(--sb-motion-ease),border-color var(--sb-motion-control) var(--sb-motion-ease)}
html[data-browser-app="1"] .sb-drawer{transition:transform var(--sb-motion-panel) var(--sb-motion-out),opacity var(--sb-motion-control) var(--sb-motion-ease)}
@supports(transition-behavior:allow-discrete){
 html[data-browser-app="1"] :is(.sb-drawer,.sb-actions,.sb-export-dialog){transition:transform var(--sb-motion-panel) var(--sb-motion-out),opacity var(--sb-motion-control) var(--sb-motion-ease),display var(--sb-motion-panel) allow-discrete,overlay var(--sb-motion-panel) allow-discrete}
}
html[data-browser-app="1"] :is(.sb-context-options,.sb-content-picker){animation:sb-website-control-in var(--sb-motion-control) var(--sb-motion-out)}
html[data-browser-app="1"] .sb-library-search button[type="submit"]{background-image:var(--sb-action-gradient)!important}
@keyframes sb-website-control-in{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}

/* Focus is the layout state; keyboard detection is not a prerequisite. The
   existing viewport owner publishes visible height and pan. No input remount,
   fixed search dock, scroll lock or guessed keyboard height is needed. */
html:root[data-browser-app="1"][data-home-search-focus="1"] body #main{
 height:calc(var(--sb-visible-height,100dvh) + var(--sb-visible-top,0px))!important;
 padding:calc(64px + env(safe-area-inset-top)) 0 0!important;
 container:sb-search-viewport / size;
}
html:root[data-browser-app="1"][data-home-search-focus="1"] body #main [data-home-pager]{height:100%!important}
html:root[data-browser-app="1"][data-home-search-focus="1"] body #main :is(.sb-home-pages,.sb-swipe-hint,.sb-home-content>.collection-shortcuts){display:none!important}
html:root[data-browser-app="1"][data-home-search-focus="1"] body #main [data-home-pager]>[data-home-page="home"]{padding-bottom:0!important;scroll-padding-bottom:20px}
html:root[data-browser-app="1"][data-home-search-focus="1"] body #main .sb-home-content{
 min-height:100%;padding-top:calc(12px + var(--sb-visible-top,0px));padding-bottom:max(16px,env(safe-area-inset-bottom));gap:8px;
}
html:root[data-browser-app="1"][data-home-search-focus="1"] body .sb-home-emblem{min-height:0;flex:1 1 0;padding:0;overflow:hidden}
html:root[data-browser-app="1"][data-home-search-focus="1"] body .sb-home-emblem img{width:88px;height:min(88px,max(24px,calc(var(--sb-visible-height,100dvh) - 250px)));object-fit:contain}
@container sb-search-viewport (max-height:260px){
 html[data-home-search-focus="1"] :is(.sb-home-heading,.sb-home-greeting,.sb-explore-prompt){display:none!important}
}
html[data-browser-app="1"] .sb-home-search-area{border-radius:24px;background-image:none}
html[data-browser-app="1"][data-home-search-focus="1"] .sb-notification-invitation{display:none}
html:root[data-browser-app="1"][data-home-search-focus="1"] body #main [data-home-pager] .sb-content-picker{max-height:max(44px,calc(var(--sb-visible-height,100dvh) - 160px))}
html:root[data-browser-app="1"] body #main [data-home-page="home"] .search-assist-links{top:auto;bottom:calc(100% + 8px);max-height:max(44px,calc(var(--sb-visible-height,100dvh) - 180px));margin:0;box-sizing:border-box}
html[data-browser-app="1"] [data-home-page="home"] .search-assist-links:empty{display:none!important}
/* The layout follows each viewport resize directly. Only a short opacity entry
   animates the settled composition; never interpolate viewport-sized heights. */
html[data-browser-app="1"][data-home-search-focus="1"] :is(.sb-home-emblem,.sb-home-search-area){animation:sb-website-search-in var(--sb-motion-panel) var(--sb-motion-out)}
@keyframes sb-website-search-in{from{opacity:.8}to{opacity:1}}
@media(prefers-reduced-motion:reduce){
 html[data-browser-app="1"] :is(.sb-drawer,.sb-new-top button,.sb-pill,.sb-context-options,.sb-context-options button,.sb-content-picker,.sb-collection-grid a,summary,.sb-home-emblem,.sb-home-search-area){animation:none!important;transition:none!important}
}


/* Website drawer stays left; the contextual control and overflow stay right. */
html:root[data-browser-app="1"] body .sb-new-top.sb-home-top{inset:0 0 auto!important;width:100%!important;padding:calc(8px + env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) 8px max(12px,env(safe-area-inset-left))!important;height:calc(64px + env(safe-area-inset-top))!important;display:flex!important;justify-content:space-between;background:transparent}
html[data-browser-app="1"] .sb-new-top>.sb-header-spacer{flex:1}
html:root[data-browser-app="1"] body .sb-new-top>button{min-width:44px;min-height:44px}
html[data-browser-app="1"] .sb-home-heading:empty{display:none!important}

