/* ======================================================================
   321 PRAY — BRIGHT CELESTIAL GATEWAY MASTER THEME
   Clean rebuild: 2026-08-12
   One source of truth for the approved mock-up direction.
   No remote fonts. No stacked legacy theme rules.
   ====================================================================== */

:root{
  --font-body: system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;
  --font-display: Georgia,"Times New Roman",Times,serif;
  --ink:#11165f;
  --ink-soft:#30366f;
  --ink-muted:#62688f;
  --purple:#4e25b8;
  --purple-2:#7241d8;
  --violet:#a77bf0;
  --lavender:#d8c8ff;
  --cyan:#77dcff;
  --gold:#efc66f;
  --paper:#fffefd;
  --paper-2:#fbf9ff;
  --line:rgba(88,54,185,.22);
  --line-strong:rgba(88,54,185,.36);
  --navy:#061747;
  --navy-2:#0a235f;
  --panel-shadow:0 22px 62px rgba(20,22,89,.28),0 0 26px rgba(141,91,237,.20);
  --card-shadow:0 7px 18px rgba(55,40,125,.075);
  --radius-page:25px;
  --radius-card:16px;
}

*{box-sizing:border-box}
html{min-height:100%;background:#17165e;scroll-behavior:smooth}
body.book-heaven{
  margin:0!important;
  min-height:100vh!important;
  max-width:none!important;
  padding:0!important;
  overflow-x:hidden!important;
  color:var(--ink)!important;
  color-scheme:light!important;
  font-family:var(--font-body)!important;
  font-size:16px;
  line-height:1.55;
  background:#201c6b!important;
}
/* Dedicated fixed backdrop: page-level/inline CSS can no longer replace the celestial world. */
body.book-heaven>.celestial-world-bg{
  position:fixed!important;
  inset:0!important;
  z-index:0!important;
  pointer-events:none!important;
  background:
    linear-gradient(180deg,rgba(14,13,73,.015),rgba(13,13,70,.045) 67%,rgba(3,14,58,.18)),
    url('theme-backgrounds/bright-gateway-world.jpg') center top/cover no-repeat!important;
  transform:translateZ(0);
}
body.book-heaven>:not(.celestial-world-bg){position:relative;z-index:1}
body.book-heaven::before,body.book-heaven::after{display:none!important}
body.book-heaven *,body.book-heaven *::before,body.book-heaven *::after{box-sizing:border-box}
body.book-heaven button,body.book-heaven input,body.book-heaven textarea,body.book-heaven select{font-family:var(--font-body)!important}
body.book-heaven img{max-width:100%}

/* ---------- TOP NAV: exact visual grammar of approved mock-up ---------- */
body.book-heaven :is(.header,.site-header,.site-head,.ga-header,.ws-header,header.celestial-header,.site>header){
  position:relative!important;
  z-index:100!important;
  width:min(1370px,calc(100% - 34px))!important;
  min-height:72px!important;
  margin:0 auto!important;
  padding:8px 0!important;
  display:grid!important;
  grid-template-columns:minmax(210px,260px) minmax(560px,720px) minmax(150px,190px)!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  backdrop-filter:none!important;
  clip-path:none!important;
}
body.book-heaven :is(.brand,.brand-cross-logo,.ga-brand,.ws-brand){
  grid-column:1!important;
  grid-row:1!important;
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  min-width:0!important;
  padding:2px 4px!important;
  color:#fff!important;
  text-decoration:none!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
body.book-heaven :is(.brand,.brand-cross-logo,.ga-brand,.ws-brand) img,
body.book-heaven .brand-logo-img{display:none!important}
body.book-heaven .brand-emblem{
  width:48px!important;height:48px!important;flex:0 0 48px!important;
  display:grid!important;place-items:center!important;
  border:2px solid rgba(241,235,255,.96)!important;border-radius:50%!important;
  color:#fff!important;font-family:var(--font-display)!important;font-size:28px!important;line-height:1!important;
  background:radial-gradient(circle at 50% 38%,rgba(169,105,255,.62),rgba(43,38,130,.90) 62%,rgba(5,20,65,.98))!important;
  box-shadow:0 0 18px rgba(154,92,255,.48),inset 0 0 12px rgba(255,255,255,.15)!important;
  text-shadow:0 0 10px #fff!important;
}
body.book-heaven .brand-words{display:flex!important;flex-direction:column!important;align-items:flex-start!important;min-width:0!important;white-space:nowrap!important;line-height:1!important;color:#fff!important}
body.book-heaven .brand-words strong{
  color:#fff!important;font-family:var(--font-display)!important;font-size:22px!important;font-weight:700!important;letter-spacing:.035em!important;line-height:1!important;text-shadow:0 2px 10px rgba(0,0,40,.38)!important
}
body.book-heaven .brand-words small{
  margin-top:5px!important;color:#eeeaff!important;font-family:var(--font-body)!important;font-size:8px!important;font-weight:800!important;letter-spacing:.19em!important;line-height:1!important
}
body.book-heaven :is(.nav,.top-nav,.topnav,.ga-nav,.ws-nav){
  grid-column:2!important;grid-row:1!important;
  width:100%!important;max-width:720px!important;min-width:0!important;min-height:58px!important;
  justify-self:center!important;
  display:flex!important;align-items:center!important;justify-content:center!important;gap:2px!important;
  margin:0!important;padding:7px 12px!important;
  overflow-x:auto!important;white-space:nowrap!important;scrollbar-width:none!important;
  background:linear-gradient(180deg,rgba(4,18,57,.99),rgba(6,27,76,.98))!important;
  border:1px solid rgba(153,125,255,.20)!important;border-top:0!important;border-radius:0 0 18px 18px!important;
  box-shadow:0 12px 30px rgba(5,10,49,.30),0 0 16px rgba(119,78,230,.12)!important;
  backdrop-filter:blur(16px)!important;clip-path:none!important;
}
body.book-heaven :is(.nav,.top-nav,.topnav,.ga-nav,.ws-nav)::-webkit-scrollbar{display:none!important}
body.book-heaven :is(.nav,.top-nav,.topnav,.ga-nav,.ws-nav) a{
  flex:0 0 auto!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;
  padding:10px 10px!important;border:0!important;border-radius:10px!important;
  color:#fff!important;background:transparent!important;box-shadow:none!important;text-decoration:none!important;
  font-family:var(--font-body)!important;font-size:10.5px!important;font-weight:800!important;letter-spacing:.035em!important;line-height:1!important;text-transform:uppercase!important;white-space:nowrap!important
}
body.book-heaven :is(.nav,.top-nav,.topnav,.ga-nav,.ws-nav) a:is(:hover,:focus-visible,.active){
  color:#fff!important;background:linear-gradient(180deg,rgba(121,78,239,.32),rgba(79,48,178,.27))!important;
  box-shadow:0 0 15px rgba(160,105,255,.43),inset 0 -2px 0 #c0a0ff!important;outline:none!important
}
body.book-heaven :is(.tag,.header-note,.header-badge){display:none!important}
body.book-heaven :is(.share-top,.share){
  grid-column:3!important;grid-row:1!important;justify-self:end!important;
  min-width:160px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;
  padding:10px 14px!important;border:1px solid rgba(185,119,255,.94)!important;border-radius:12px!important;
  color:#fff!important;background:linear-gradient(180deg,rgba(35,43,111,.80),rgba(17,28,82,.90))!important;
  box-shadow:0 0 17px rgba(157,86,255,.34),inset 0 0 9px rgba(255,255,255,.06)!important;
  font-family:var(--font-body)!important;font-size:10.5px!important;font-weight:800!important;letter-spacing:.03em!important;line-height:1.1!important;text-transform:uppercase!important;text-decoration:none!important
}
body.book-heaven :is(.cyber-statusbar,.statusbar,.ga-status,.ws-status){display:none!important}
body.book-heaven .share-strip{width:min(900px,60vw)!important;margin:8px auto 0!important;padding:0!important;background:transparent!important;border:0!important;justify-content:flex-end!important}

/* ---------- CENTRAL PEARL-WHITE BOOK PAGE ---------- */
body.book-heaven .celestial-page-panel{
  position:relative!important;z-index:2!important;
  width:min(900px,59vw)!important;
  max-width:900px!important;
  margin:18px auto 14px!important;
  padding:19px 22px 22px!important;
  overflow:visible!important;
  color:var(--ink)!important;
  background:
    radial-gradient(circle at 50% -9%,rgba(238,232,255,.35),transparent 28rem),
    linear-gradient(180deg,rgba(255,255,255,.982),rgba(253,251,255,.962))!important;
  border:2px solid rgba(151,113,232,.37)!important;border-radius:var(--radius-page)!important;
  box-shadow:var(--panel-shadow)!important;
  backdrop-filter:blur(14px) saturate(1.04)!important;
  clip-path:none!important;
}
body.book-heaven .celestial-page-panel::before{
  content:""!important;position:absolute!important;inset:7px!important;z-index:0!important;pointer-events:none!important;
  border:1px solid rgba(132,92,222,.13)!important;border-radius:18px!important;background:transparent!important
}
body.book-heaven .celestial-page-panel>*{position:relative!important;z-index:1!important}

/* Pages with real interaction needs get only a modest width exception. */
body.book-heaven[data-page="rosary"] .celestial-page-panel{width:min(930px,61vw)!important;max-width:930px!important;padding:17px 19px 20px!important}
body.book-heaven[data-page="matching-game"] .celestial-page-panel,
body.book-heaven[data-page="symbol-meaning"] .celestial-page-panel,
body.book-heaven[data-page="remember-order"] .celestial-page-panel,
body.book-heaven[data-page="armour"] .celestial-page-panel{width:min(980px,64vw)!important;max-width:980px!important}

/* ---------- MASTHEAD ---------- */
.celestial-masthead{text-align:center!important;margin:0 auto 15px!important;padding:3px 8px 13px!important;border-bottom:1px solid rgba(88,54,185,.12)!important}
.celestial-masthead .cm-welcome{
  color:#5d2dbc!important;font-family:var(--font-display)!important;font-size:12px!important;font-weight:700!important;letter-spacing:.23em!important;line-height:1.2!important;text-transform:uppercase!important
}
.celestial-masthead .cm-brand{
  display:flex!important;align-items:center!important;justify-content:center!important;gap:15px!important;margin-top:3px!important;
  color:#2d1a9c!important;font-family:var(--font-display)!important;font-size:clamp(43px,5vw,68px)!important;font-weight:400!important;letter-spacing:.035em!important;line-height:.95!important;text-transform:uppercase!important
}
.celestial-masthead .cm-brand::before,.celestial-masthead .cm-brand::after,
.home-gateway h1::before,.home-gateway h1::after{
  content:""!important;display:block!important;flex:0 0 66px!important;width:66px!important;height:42px!important;
  background:linear-gradient(145deg,#52baff 0%,#6c55e6 48%,#a55ae7 100%)!important;
  clip-path:polygon(0 59%,18% 47%,39% 28%,29% 55%,52% 37%,44% 65%,69% 46%,57% 75%,83% 60%,67% 86%,100% 76%,75% 100%,49% 87%,24% 96%)!important;
  filter:drop-shadow(0 0 7px rgba(112,76,225,.32))!important;transform:none!important
}
.celestial-masthead .cm-brand::after,.home-gateway h1::after{transform:scaleX(-1)!important}
.celestial-masthead .cm-page{margin-top:7px!important;color:#281486!important;font-family:var(--font-display)!important;font-size:clamp(19px,2.2vw,29px)!important;font-weight:700!important;letter-spacing:.13em!important;line-height:1.1!important;text-transform:uppercase!important}
.celestial-masthead .cm-cross{margin:2px auto 0!important;color:#6338cd!important;font-family:var(--font-display)!important;font-size:17px!important;line-height:1!important}
.celestial-masthead .cm-sub{max-width:760px!important;margin:6px auto 0!important;color:#232865!important;font-family:var(--font-body)!important;font-size:13px!important;font-weight:600!important;line-height:1.45!important}

/* ---------- REMOVE LEGACY DARK SHELLS ---------- */
body.book-heaven .celestial-page-panel>main,
body.book-heaven .celestial-page-panel>.site,
body.book-heaven .celestial-page-panel main,
body.book-heaven .celestial-page-panel :is(.site,.app-shell,.wrap,.main,.ga-grid,.privacy-paper,.ws-shell,.kids-hub,.game-shell){
  width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important;
  background:transparent!important;border:0!important;box-shadow:none!important;clip-path:none!important;color:var(--ink)!important
}
body.book-heaven .celestial-page-panel :is(.site,.app-shell,.wrap,.main,.ga-grid,.privacy-paper,.ws-shell){padding-left:0!important;padding-right:0!important}
body.book-heaven .celestial-page-panel :is(.hero,.ws-hero,.ws-main,.ws-tools,.experience,.sanctuary){width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important}
body.book-heaven .celestial-page-panel .hero{background:transparent!important;border:0!important;box-shadow:none!important;clip-path:none!important}

/* ---------- TYPOGRAPHY: one reliable hierarchy ---------- */
body.book-heaven .celestial-page-panel,
body.book-heaven .celestial-page-panel :is(p,li,label,small,input,textarea,select,button,a,blockquote,cite,figcaption,td,th){font-family:var(--font-body)!important}
body.book-heaven .celestial-page-panel :is(h1,h2,h3,h4,h5,h6) :is(span,strong,b,em){font-family:inherit!important}
body.book-heaven .celestial-page-panel :is(h1,h2,h3,h4,h5,h6,.prayer-name,.event-title,.visual-head h2,.ga-title h1,.shop-copy h2){
  color:var(--ink)!important;font-family:var(--font-display)!important;text-shadow:none!important;overflow-wrap:anywhere!important
}
body.book-heaven .celestial-page-panel h1{font-weight:600!important;line-height:1.06!important;letter-spacing:-.025em!important}
body.book-heaven .celestial-page-panel h2{font-weight:600!important;line-height:1.12!important}
body.book-heaven .celestial-page-panel h3{font-weight:700!important;line-height:1.18!important}
body.book-heaven .celestial-page-panel :is(p,li,.intro,.summary,.reflection,.reflect,.prayer-text,.daily-note,.credit,.footer-note,.count-note,.mystery-reflection,.ga-panel p,.ga-module p){color:var(--ink-soft)!important;line-height:1.55!important}
body.book-heaven .celestial-page-panel :is(.kicker,.eyebrow,.section-label,.section-tag,.reference,.ref,.feature-label,.final-kicker,.count,.feast,.role,.theme,.num,.number,.ga-title .the){color:var(--purple)!important}
body.book-heaven .celestial-page-panel :is(blockquote,.scripture,.verse){color:#172064!important}
body.book-heaven .celestial-page-panel a{color:#4923a6}
body.book-heaven .celestial-page-panel :is(.muted,.sub,.subtitle,.meta,.note){color:var(--ink-muted)!important}
body.book-heaven .celestial-page-panel hr{border-color:rgba(84,43,181,.15)!important}

/* ---------- PAPER CARDS ---------- */
body.book-heaven .celestial-page-panel :is(
 .panel,.daily-card,.feature,.quote-card,.saint-card,.devotion,.prayer-card,.guide-card,.rosary-card,.prayer-box,.trinity-panel,.timer-panel,.audio-panel,.prayer-panel,.sanctuary,.sheet-panel,.final-inner,.ga-panel,.ga-module,.ga-center,.ga-completion,.ga-prayer-scroll,.ga-heaven-note,.activity-card,.game-card,.hub-card,.tile,.launcher-tile,.widget,.story-card,.miracle-card,.railcard,.module,.ws-panel,.ws-gridcard,.ws-wordlist,.ws-tool,.kids-activity-card,.shop-hero,.shop-strip
){
  color:var(--ink)!important;background:linear-gradient(180deg,rgba(255,255,255,.99),rgba(251,249,255,.98))!important;
  border:1px solid var(--line)!important;border-radius:var(--radius-card)!important;box-shadow:var(--card-shadow)!important;clip-path:none!important
}
body.book-heaven .celestial-page-panel :is(.panel,.daily-card,.saint-card,.module,.ga-module,.ws-panel,.kids-activity-card):hover{border-color:var(--line-strong)!important;box-shadow:0 10px 24px rgba(69,45,151,.12),0 0 14px rgba(128,80,226,.07)!important}

/* ---------- BUTTONS / INPUTS ---------- */
body.book-heaven .celestial-page-panel :is(.btn,.button,.primary,.action,.next,.prev,.mode-btn,.mystery-btn,.share321){
  color:#fff!important;background:linear-gradient(180deg,#7550dc,#4b22b4)!important;border:1px solid rgba(80,44,177,.18)!important;border-radius:9px!important;
  box-shadow:0 5px 12px rgba(73,35,168,.18)!important;text-shadow:none!important;font-family:var(--font-body)!important;font-weight:800!important
}
body.book-heaven .celestial-page-panel :is(.btn,.button,.primary,.action,.next,.prev,.mode-btn,.mystery-btn,.share321):is(:hover,:focus-visible){background:linear-gradient(180deg,#835ee5,#572cc1)!important;box-shadow:0 7px 16px rgba(73,35,168,.24),0 0 12px rgba(126,78,224,.18)!important;outline:none!important}
body.book-heaven .celestial-page-panel :is(input,textarea,select,.input,.search){
  color:var(--ink)!important;background:#fff!important;border:1px solid rgba(92,51,199,.26)!important;border-radius:11px!important;box-shadow:inset 0 1px 5px rgba(58,42,137,.04)!important
}
body.book-heaven .celestial-page-panel :is(input,textarea,select)::placeholder{color:#8d91ac!important;opacity:1!important}

/* ---------- HOME / LAUNCHER ---------- */
body.book-heaven[data-page="launcher"] .celestial-page-panel{width:min(900px,59vw)!important;max-width:900px!important}
.home-gateway{text-align:center!important;color:var(--ink)!important}
.home-gateway .home-eyebrow{color:#5d2dbc!important;font-family:var(--font-display)!important;font-size:12px!important;font-weight:700!important;letter-spacing:.23em!important;text-transform:uppercase!important}
.home-gateway h1{
  display:flex!important;align-items:center!important;justify-content:center!important;gap:15px!important;margin:4px 0 4px!important;
  color:#2d1a9c!important;background:none!important;-webkit-text-fill-color:currentColor!important;
  font-family:var(--font-display)!important;font-size:clamp(48px,5vw,69px)!important;font-weight:400!important;line-height:.96!important;letter-spacing:.035em!important;text-transform:uppercase!important
}
.home-gateway .gateway-subtitle{color:#2a168d!important;font-family:var(--font-display)!important;font-size:clamp(14px,1.7vw,18px)!important;font-weight:700!important;letter-spacing:.18em!important;text-transform:uppercase!important}
.home-gateway .gateway-cross{color:#6338cd!important;font-family:var(--font-display)!important;font-size:18px!important}
.home-gateway .gateway-copy{max-width:610px!important;margin:6px auto 15px!important;color:#232865!important;font-family:var(--font-body)!important;font-size:13px!important;font-weight:600!important;line-height:1.45!important}
.home-quick-grid{display:grid!important;grid-template-columns:repeat(7,minmax(0,1fr))!important;gap:8px!important;margin-top:13px!important}
.home-quick-card{min-width:0!important;padding:12px 7px 11px!important;border:1px solid var(--line)!important;border-radius:15px!important;background:linear-gradient(180deg,#fff,#fbf9ff)!important;box-shadow:var(--card-shadow)!important;text-decoration:none!important}
.home-quick-card .hq-icon{width:54px!important;height:54px!important;margin:0 auto!important;border-radius:15px!important;display:grid!important;place-items:center!important;font-size:28px!important;color:#5626bd!important;background:linear-gradient(145deg,#f4edff,#fff)!important;border:1px solid rgba(102,57,203,.12)!important}
.home-quick-card strong{display:block!important;margin-top:7px!important;color:#271581!important;font-family:var(--font-body)!important;font-size:11.5px!important;font-weight:900!important;line-height:1.2!important}
.home-quick-card span{display:block!important;margin-top:4px!important;color:#62688f!important;font-size:9.5px!important;font-weight:600!important;line-height:1.35!important}
.home-quick-card b{display:inline-block!important;margin-top:8px!important;padding:7px 13px!important;border-radius:8px!important;color:#fff!important;background:linear-gradient(180deg,#7550dc,#4b22b4)!important;font-size:8.5px!important;font-weight:900!important}
.home-widget-grid{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:9px!important;margin-top:11px!important}
.home-widget{min-height:124px!important;padding:12px 13px!important;border:1px solid var(--line)!important;border-radius:14px!important;background:linear-gradient(180deg,#fff,#fbf9ff)!important;box-shadow:var(--card-shadow)!important}
.home-widget h2{color:#2d1a9c!important;font-family:var(--font-display)!important;font-size:14px!important}.home-widget p{color:#30366f!important;font-size:11px!important;line-height:1.42!important}.home-widget .widget-quote{font-family:var(--font-display)!important;font-size:15px!important;color:#2c198f!important}
.home-stats{margin-top:9px!important;padding:8px!important;border:1px solid var(--line)!important;border-radius:13px!important;background:#fff!important}.home-stat{font-size:10.5px!important;color:#52577f!important}.home-stat strong{font-size:17px!important;color:#2d1a9c!important}
.home-shop-banner{margin-top:9px!important;padding:10px 13px!important;border:1px solid var(--line)!important;border-radius:13px!important;background:linear-gradient(90deg,#faf7ff,#fff)!important}.home-shop-banner strong{font-family:var(--font-display)!important;font-size:16px!important;color:#322095!important}.home-shop-banner span{font-size:11px!important;color:#5c6185!important}

/* ---------- PAGE-SPECIFIC CLEANUPS ---------- */
body.book-heaven[data-page="kids"] .celestial-page-panel,
body.book-heaven[data-page="matching-game"] .celestial-page-panel,
body.book-heaven[data-page="symbol-meaning"] .celestial-page-panel,
body.book-heaven[data-page="remember-order"] .celestial-page-panel,
body.book-heaven[data-page="word-search"] .celestial-page-panel{background:linear-gradient(180deg,rgba(255,255,255,.985),rgba(255,251,255,.97))!important}
body.book-heaven[data-page="guardian-angel"] :is(.ga-shell,.ga-grid),
body.book-heaven[data-page="word-search"] :is(.ws-shell,.ws-main,.ws-hero),
body.book-heaven[data-page="armour"] .site{background:transparent!important;box-shadow:none!important;border:0!important;max-width:none!important}
body.book-heaven[data-page="armour"] .celestial-page-panel :is(.complete,.prayer,.crosspanel,.footerverse){background:linear-gradient(180deg,#fff,#faf8ff)!important;border:1px solid var(--line)!important;color:var(--ink)!important;border-radius:16px!important;box-shadow:var(--card-shadow)!important}
body.book-heaven[data-page="word-search"] .word-grid{background:#eef6ff!important;border:1px solid rgba(89,78,183,.20)!important;border-radius:14px!important}
body.book-heaven[data-page="word-search"] .cell{font-family:var(--font-body)!important;color:#24336f!important;background:#fff!important;border-color:#d9ddf2!important}
body.book-heaven[data-page="word-search"] .cell.found{background:linear-gradient(135deg,#fff0a9,#e5efff)!important;border-color:#e1bd57!important}
body.book-heaven[data-page="rosary"] .celestial-page-panel .card{background:#fff!important}
body.book-heaven[data-page="rosary"] :is(.mystery-btn,.text-button){font-family:var(--font-body)!important}
body.book-heaven[data-page="saints"] .saint-card .card-copy{color:var(--ink)!important}
body.book-heaven[data-page="shop"] .shop-photo img{background:#f6f6f6!important}

/* ---------- FOOTER ---------- */
body.book-heaven :is(.footer,.ga-footer,.celestial-footer){
  width:min(1440px,calc(100% - 54px))!important;margin:0 auto 10px!important;padding:16px 24px 13px!important;
  color:#fff!important;background:linear-gradient(90deg,rgba(4,20,61,.99),rgba(7,31,79,.985),rgba(4,20,61,.99))!important;
  border:1px solid rgba(139,110,239,.28)!important;border-radius:16px!important;box-shadow:0 10px 28px rgba(0,10,45,.20)!important;clip-path:none!important
}
.celestial-footer-grid{display:grid!important;grid-template-columns:1.3fr repeat(3,1fr)!important;gap:20px!important;align-items:start!important}
.celestial-footer .footer-quote{position:relative!important;min-height:62px!important;padding-left:78px!important;color:#fff!important;font-family:var(--font-display)!important;font-size:16px!important;font-style:italic!important;line-height:1.45!important}
.celestial-footer .footer-quote::before{
  content:"✝"!important;position:absolute!important;left:3px!important;top:0!important;width:58px!important;height:58px!important;display:grid!important;place-items:center!important;
  border:2px solid rgba(225,218,255,.92)!important;border-radius:50%!important;color:#fff!important;font-family:var(--font-display)!important;font-size:32px!important;
  background:radial-gradient(circle at 50% 40%,rgba(159,91,255,.55),rgba(18,30,91,.94))!important;box-shadow:0 0 17px rgba(144,83,249,.42)!important
}
.celestial-footer h3{margin:0 0 6px!important;color:#fff!important;font-family:var(--font-body)!important;font-size:10px!important;font-weight:900!important;letter-spacing:.08em!important;text-transform:uppercase!important}
.celestial-footer a{display:block!important;margin:4px 0!important;color:#edf0ff!important;font-family:var(--font-body)!important;font-size:10.5px!important;text-decoration:none!important}
.celestial-footer a:hover{color:#fff!important;text-decoration:underline!important}
.celestial-footer .footer-bottom{margin-top:10px!important;padding-top:8px!important;border-top:1px solid rgba(255,255,255,.10)!important;color:#cbd1ed!important;font-family:var(--font-body)!important;font-size:9.5px!important;text-align:center!important}

/* ---------- RESPONSIVE ---------- */
@media(max-width:1240px){
  body.book-heaven :is(.header,.site-header,.site-head,.ga-header,.ws-header,header.celestial-header,.site>header){width:calc(100% - 24px)!important;grid-template-columns:minmax(170px,215px) minmax(500px,680px) minmax(125px,155px)!important}
  body.book-heaven .brand-emblem{width:42px!important;height:42px!important;flex-basis:42px!important;font-size:25px!important}
  body.book-heaven .brand-words strong{font-size:19px!important}.book-heaven .brand-words small{font-size:7px!important}
  body.book-heaven :is(.share-top,.share){min-width:135px!important;padding:9px 10px!important;font-size:9.5px!important}
  body.book-heaven .celestial-page-panel{width:min(900px,72vw)!important}
  body.book-heaven[data-page="rosary"] .celestial-page-panel{width:min(930px,75vw)!important}
  body.book-heaven[data-page="matching-game"] .celestial-page-panel,body.book-heaven[data-page="symbol-meaning"] .celestial-page-panel,body.book-heaven[data-page="remember-order"] .celestial-page-panel,body.book-heaven[data-page="armour"] .celestial-page-panel{width:min(980px,80vw)!important}
  .home-quick-grid{grid-template-columns:repeat(4,1fr)!important}
}
@media(max-width:980px){
  body.book-heaven{background-attachment:scroll!important;background-position:center top!important}
  body.book-heaven :is(.header,.site-header,.site-head,.ga-header,.ws-header,header.celestial-header,.site>header){display:flex!important;width:100%!important;min-height:60px!important;padding:7px 10px!important;gap:8px!important;background:rgba(5,22,64,.96)!important;border-radius:0 0 16px 16px!important}
  body.book-heaven :is(.brand,.brand-cross-logo,.ga-brand,.ws-brand){flex:0 0 auto!important}.book-heaven .brand-words small{display:none!important}.book-heaven .brand-emblem{width:36px!important;height:36px!important;flex-basis:36px!important;font-size:21px!important}.book-heaven .brand-words strong{font-size:16px!important}
  body.book-heaven :is(.nav,.top-nav,.topnav,.ga-nav,.ws-nav){flex:1 1 auto!important;min-height:44px!important;justify-content:flex-start!important;padding:0!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;overflow-x:auto!important}
  body.book-heaven :is(.nav,.top-nav,.topnav,.ga-nav,.ws-nav) a{font-size:9px!important;padding:8px 7px!important}
  body.book-heaven :is(.share-top,.share){display:none!important}
  body.book-heaven .celestial-page-panel,body.book-heaven[data-page="rosary"] .celestial-page-panel,body.book-heaven[data-page="matching-game"] .celestial-page-panel,body.book-heaven[data-page="symbol-meaning"] .celestial-page-panel,body.book-heaven[data-page="remember-order"] .celestial-page-panel,body.book-heaven[data-page="armour"] .celestial-page-panel{width:calc(100% - 64px)!important;max-width:900px!important}
  .home-widget-grid{grid-template-columns:1fr!important}
  .celestial-footer-grid{grid-template-columns:1.25fr repeat(2,1fr)!important}.celestial-footer-grid>div:nth-child(4){display:none!important}
}
@media(max-width:760px){
  body.book-heaven{font-size:15px!important}
  body.book-heaven .celestial-page-panel,body.book-heaven[data-page="rosary"] .celestial-page-panel,body.book-heaven[data-page="matching-game"] .celestial-page-panel,body.book-heaven[data-page="symbol-meaning"] .celestial-page-panel,body.book-heaven[data-page="remember-order"] .celestial-page-panel,body.book-heaven[data-page="armour"] .celestial-page-panel{width:calc(100% - 18px)!important;margin:11px auto 12px!important;padding:14px 10px 18px!important;border-radius:20px!important}
  .celestial-masthead .cm-brand{font-size:clamp(35px,12vw,50px)!important;gap:7px!important}.celestial-masthead .cm-brand::before,.celestial-masthead .cm-brand::after,.home-gateway h1::before,.home-gateway h1::after{width:38px!important;flex-basis:38px!important;height:28px!important}
  .celestial-masthead .cm-page{font-size:18px!important;letter-spacing:.08em!important}.celestial-masthead .cm-sub{font-size:12px!important}
  .home-gateway h1{font-size:clamp(38px,12vw,50px)!important;gap:7px!important}.home-quick-grid{grid-template-columns:repeat(2,1fr)!important}
  body.book-heaven :is(.footer,.ga-footer,.celestial-footer){width:calc(100% - 18px)!important;padding:15px!important}
  .celestial-footer-grid{grid-template-columns:1fr 1fr!important}.celestial-footer .footer-quote{grid-column:1/-1!important;padding-left:70px!important}.celestial-footer-grid>div:nth-child(4){display:none!important}
}
@media(max-width:480px){
  body.book-heaven .brand-words{display:none!important}
  body.book-heaven :is(.nav,.top-nav,.topnav,.ga-nav,.ws-nav) a{font-size:8.5px!important;padding:8px 6px!important}
  .home-quick-card span{display:none!important}.home-quick-card .hq-icon{width:48px!important;height:48px!important}
  .celestial-footer-grid{grid-template-columns:1fr!important}.celestial-footer .footer-quote{grid-column:auto!important}.celestial-footer-grid>div:nth-child(n+3){display:none!important}
}

/* Existing dedicated Rosary landscape mode remains functional and readable. */
@media (orientation:landscape) and (max-height:680px){
  body.book-heaven[data-page="rosary"]{background:#071846!important;overflow:hidden!important}
  body.book-heaven[data-page="rosary"] .celestial-page-panel{width:100%!important;max-width:none!important;height:calc(100dvh - 44px)!important;margin:0!important;padding:0!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;backdrop-filter:none!important;overflow:hidden!important}
  body.book-heaven[data-page="rosary"] .celestial-page-panel::before,body.book-heaven[data-page="rosary"] .celestial-masthead{display:none!important}
  body.book-heaven[data-page="rosary"] :is(.header,.site-header,.site-head){display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;width:100%!important;height:44px!important;min-height:44px!important;padding:3px 8px!important;background:rgba(5,22,64,.98)!important;border-radius:0!important}
  body.book-heaven[data-page="rosary"] .brand-emblem{width:32px!important;height:32px!important;flex-basis:32px!important;font-size:19px!important}
  body.book-heaven[data-page="rosary"] .brand-words strong{font-size:14px!important}body.book-heaven[data-page="rosary"] .brand-words small{display:none!important}
  body.book-heaven[data-page="rosary"] :is(.nav,.top-nav,.topnav){grid-column:2!important;min-height:34px!important;background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;justify-content:flex-start!important}
  body.book-heaven[data-page="rosary"] :is(.nav,.top-nav,.topnav) a{font-size:.55rem!important;padding:5px 7px!important}
}
@media (orientation:landscape) and (max-height:430px){
  body.book-heaven[data-page="rosary"] .celestial-page-panel{height:100dvh!important}
  body.book-heaven[data-page="rosary"] :is(.header,.site-header,.site-head){display:none!important}
}

/* Reduced motion */
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation:none!important;transition:none!important}}

/* ---------- LEGACY DARK-STYLE RESIDUE CLEANUP FOUND IN AUDIT ---------- */
body.book-heaven[data-page="armour"] .heroVisual{background:linear-gradient(180deg,#f7f3ff,#eef6ff)!important;border:1px solid var(--line)!important;border-radius:16px!important;box-shadow:var(--card-shadow)!important}
body.book-heaven[data-page="quotes"] .filter{background:#fff!important;color:var(--purple)!important;border:1px solid var(--line)!important;border-radius:999px!important;box-shadow:none!important}
body.book-heaven[data-page="quotes"] .filter.active{background:linear-gradient(180deg,#7550dc,#4b22b4)!important;color:#fff!important}
body.book-heaven[data-page="saints"] .themes span{background:#f2edff!important;color:#4e25b8!important;border:1px solid rgba(88,54,185,.16)!important}
body.book-heaven[data-page="saints"] .detail-image{background:linear-gradient(180deg,#f4efff,#eef6ff)!important}
body.book-heaven[data-page="life-of-jesus"] .sheet-panel,
body.book-heaven[data-page="mary"] .sheet-panel{background:linear-gradient(180deg,#fff,#fbf9ff)!important}

/* ======================================================================
   PAGE-BY-PAGE THEME COMPLETION
   Removes the remaining legacy dark module surfaces discovered by audit.
   ====================================================================== */

/* PRAY / ALTAR */
body.book-heaven[data-page="altar"] .celestial-page-panel :is(.intention,.timer-option,.our-father-text,.prayer-plaque,.recording-note){
  background:linear-gradient(180deg,#fff,#faf8ff)!important;color:var(--ink-soft)!important;border:1px solid var(--line)!important;border-radius:12px!important;box-shadow:none!important
}
body.book-heaven[data-page="altar"] .celestial-page-panel :is(.intention.selected,.timer-option.active){background:linear-gradient(180deg,#7651dc,#4c23b6)!important;color:#fff!important;border-color:transparent!important}
body.book-heaven[data-page="altar"] .celestial-page-panel .sanctuary{background:radial-gradient(circle at 50% 28%,rgba(255,235,181,.54),transparent 26%),linear-gradient(180deg,#faf7ff,#eef5ff)!important;box-shadow:var(--card-shadow)!important;border:1px solid var(--line)!important}
body.book-heaven[data-page="altar"] .celestial-page-panel .gateway-veil{background:radial-gradient(ellipse at 50% 42%,rgba(126,84,225,.08),transparent 60%)!important}
body.book-heaven[data-page="altar"] .celestial-page-panel :is(.offer-button,.begin-button,.light-next,.listen-button){background:linear-gradient(180deg,#7550dc,#4b22b4)!important;color:#fff!important;border:1px solid rgba(80,44,177,.18)!important;box-shadow:0 5px 12px rgba(73,35,168,.18)!important}
body.book-heaven[data-page="altar"] .celestial-page-panel :is(.secondary-reset,.reset-timer,.audio-stop){color:var(--purple)!important}

/* ARMOUR OF GOD */
body.book-heaven[data-page="armour"] .celestial-page-panel .heroCopy{background:linear-gradient(145deg,#fff,#f7f2ff)!important;border:1px solid var(--line)!important;border-radius:16px!important;box-shadow:var(--card-shadow)!important}
body.book-heaven[data-page="armour"] .celestial-page-panel .module button{background:#f3edff!important;color:var(--purple)!important;border:1px solid var(--line)!important}
body.book-heaven[data-page="armour"] .celestial-page-panel .module.active button{background:linear-gradient(180deg,#7550dc,#4b22b4)!important;color:#fff!important}
body.book-heaven[data-page="armour"] .celestial-page-panel :is(.heroVisual .caption,.progress){background:rgba(255,255,255,.92)!important;color:var(--purple)!important;border:1px solid var(--line)!important;box-shadow:none!important}
body.book-heaven[data-page="armour"] .celestial-page-panel .footerverse{background:linear-gradient(180deg,#fff,#faf8ff)!important;color:var(--ink)!important;border:1px solid var(--line)!important;border-radius:14px!important}

/* GUARDIAN ANGEL */
body.book-heaven[data-page="guardian-angel"] .celestial-page-panel .ga-title{background:radial-gradient(circle at 15% 15%,rgba(255,232,166,.36),transparent 32%),linear-gradient(180deg,#fff,#f8f4ff)!important;border:1px solid var(--line)!important;border-radius:16px!important;box-shadow:var(--card-shadow)!important}
body.book-heaven[data-page="guardian-angel"] .celestial-page-panel .ga-center{background:radial-gradient(circle at 50% 23%,rgba(255,229,165,.40),transparent 28%),linear-gradient(180deg,#fff,#f4f0ff)!important}
body.book-heaven[data-page="guardian-angel"] .celestial-page-panel .ga-center::before{opacity:.23!important}
body.book-heaven[data-page="guardian-angel"] .celestial-page-panel .ga-module button,
body.book-heaven[data-page="guardian-angel"] .celestial-page-panel .ga-cta button{background:linear-gradient(180deg,#7550dc,#4b22b4)!important;color:#fff!important;border:1px solid rgba(80,44,177,.18)!important}
body.book-heaven[data-page="guardian-angel"] .celestial-page-panel .ga-orbs i{background:#f4efff!important;color:var(--purple)!important;border:1px solid var(--line)!important}
body.book-heaven[data-page="guardian-angel"] .celestial-page-panel .ga-prayer-scroll{background:linear-gradient(180deg,#fffdf6,#fff8e9)!important;color:var(--ink)!important}

/* LIFE OF JESUS + MARY JOURNEY */
body.book-heaven[data-page="jesus"] .celestial-page-panel .experience,
body.book-heaven[data-page="mary"] .celestial-page-panel .experience{min-height:0!important;padding:14px 0 24px!important;background:transparent!important;overflow:visible!important}
body.book-heaven[data-page="jesus"] .celestial-page-panel .experience::before,
body.book-heaven[data-page="mary"] .celestial-page-panel .experience::before,
body.book-heaven[data-page="jesus"] .celestial-page-panel :is(.horizon,.path,.cross),
body.book-heaven[data-page="mary"] .celestial-page-panel :is(.horizon,.path,.star){display:none!important}
body.book-heaven[data-page="jesus"] .celestial-page-panel .stage-top,
body.book-heaven[data-page="mary"] .celestial-page-panel .stage-top{color:var(--ink-muted)!important}
body.book-heaven[data-page="jesus"] .celestial-page-panel .stage-dots button,
body.book-heaven[data-page="mary"] .celestial-page-panel .stage-dots button{background:#ddd3f5!important}
body.book-heaven[data-page="jesus"] .celestial-page-panel .stage-dots button.active,
body.book-heaven[data-page="mary"] .celestial-page-panel .stage-dots button.active{background:linear-gradient(90deg,#7c51dc,#a67df0)!important}
body.book-heaven[data-page="jesus"] .celestial-page-panel .scripture,
body.book-heaven[data-page="mary"] .celestial-page-panel .scripture{background:#f8f5ff!important;border-left:3px solid var(--purple-2)!important;color:var(--ink)!important}
body.book-heaven[data-page="jesus"] .celestial-page-panel :is(.tool,.navbtn,.allbtn),
body.book-heaven[data-page="mary"] .celestial-page-panel :is(.tool,.navbtn,.allbtn){background:#fff!important;color:var(--purple)!important;border:1px solid var(--line)!important}
body.book-heaven[data-page="jesus"] .celestial-page-panel :is(.tool,.navbtn,.allbtn):hover,
body.book-heaven[data-page="mary"] .celestial-page-panel :is(.tool,.navbtn,.allbtn):hover{background:#f4efff!important}
body.book-heaven[data-page="jesus"] .celestial-page-panel .final-space,
body.book-heaven[data-page="mary"] .celestial-page-panel .final-space{min-height:0!important;padding:28px 0 8px!important;background:transparent!important}
body.book-heaven[data-page="jesus"] .sheet-panel,
body.book-heaven[data-page="mary"] .sheet-panel{background:linear-gradient(180deg,#fff,#faf8ff)!important;color:var(--ink)!important;border:1px solid var(--line)!important}
body.book-heaven[data-page="jesus"] .all-item,
body.book-heaven[data-page="mary"] .all-item{background:#fff!important;color:var(--ink)!important;border:1px solid var(--line)!important}
body.book-heaven[data-page="jesus"] .all-item:hover,body.book-heaven[data-page="jesus"] .all-item.current,
body.book-heaven[data-page="mary"] .all-item:hover,body.book-heaven[data-page="mary"] .all-item.current{background:#f3edff!important}

/* MIRACLES */
body.book-heaven[data-page="miracles"] .celestial-page-panel :is(.story,.discern-card,.prayer-card,.submit-strip){background:linear-gradient(180deg,#fff,#faf8ff)!important;color:var(--ink)!important;border:1px solid var(--line)!important;border-radius:15px!important;box-shadow:var(--card-shadow)!important}
body.book-heaven[data-page="miracles"] .celestial-page-panel .story-top{background:linear-gradient(90deg,#7250dc,#b58bff)!important}
body.book-heaven[data-page="miracles"] .celestial-page-panel :is(.date-chip,.status,.filter){background:#f4efff!important;color:var(--purple)!important;border:1px solid var(--line)!important}
body.book-heaven[data-page="miracles"] .celestial-page-panel .filter:is(.active,:hover,:focus-visible){background:linear-gradient(180deg,#7550dc,#4b22b4)!important;color:#fff!important}
body.book-heaven[data-page="miracles"] .celestial-page-panel .feature-art::after{background:linear-gradient(180deg,transparent,rgba(23,20,73,.28))!important}

/* PRAYER REQUEST */
body.book-heaven[data-page="prayer-request"] .celestial-page-panel :is(.privacy-pill,.check-row,.ready,.cat,.candle-button){background:#fff!important;color:var(--ink-soft)!important;border:1px solid var(--line)!important}
body.book-heaven[data-page="prayer-request"] .celestial-page-panel .cat.selected{background:linear-gradient(180deg,#7550dc,#4b22b4)!important;color:#fff!important}
body.book-heaven[data-page="prayer-request"] .celestial-page-panel .candle-button{background:linear-gradient(180deg,#fff,#f5f0ff)!important}
body.book-heaven[data-page="prayer-request"] .celestial-page-panel .share-request{background:linear-gradient(180deg,#7550dc,#4b22b4)!important;color:#fff!important}

/* QUOTES */
body.book-heaven[data-page="quotes"] .celestial-page-panel .tools{background:#fff!important;border:1px solid var(--line)!important;border-radius:15px!important;box-shadow:var(--card-shadow)!important}
body.book-heaven[data-page="quotes"] .celestial-page-panel .search{background:#fff!important;color:var(--ink)!important;border:1px solid var(--line)!important}
body.book-heaven[data-page="quotes"] .celestial-page-panel .small-btn{background:#f4efff!important;color:var(--purple)!important;border:1px solid var(--line)!important}

/* SAINTS & APOSTLES */
body.book-heaven[data-page="saints"] .celestial-page-panel .saint-card::before{display:none!important}
body.book-heaven[data-page="saints"] .celestial-page-panel .saint-image{background:linear-gradient(180deg,#f8f4ff,#edf5ff)!important}
body.book-heaven[data-page="saints"] .celestial-page-panel .detail-image{background:linear-gradient(180deg,#f8f4ff,#edf5ff)!important}
body.book-heaven[data-page="saints"] .celestial-page-panel .prayer-card{background:#f8f5ff!important;color:var(--ink)!important;border:1px solid var(--line)!important}
body.book-heaven[data-page="saints"] .celestial-page-panel :is(.open,.altar-link){background:linear-gradient(180deg,#7550dc,#4b22b4)!important;color:#fff!important;border:0!important}

/* HOLY TRINITY */
body.book-heaven[data-page="trinity"] .celestial-page-panel .person{background:#fff!important;color:var(--ink)!important;border:1px solid var(--line)!important}
body.book-heaven[data-page="trinity"] .celestial-page-panel .light-buttons button{background:#f4efff!important;color:var(--purple)!important;border:1px solid var(--line)!important}
body.book-heaven[data-page="trinity"] .celestial-page-panel .light-buttons button.done{background:linear-gradient(180deg,#7550dc,#4b22b4)!important;color:#fff!important}
body.book-heaven[data-page="trinity"] .celestial-page-panel .reveal.open{background:linear-gradient(180deg,#fff,#f8f4ff)!important;color:var(--ink)!important;border:1px solid var(--line)!important;border-radius:15px!important}
body.book-heaven[data-page="trinity"] .celestial-page-panel .secondary{background:#fff!important;color:var(--purple)!important;border:1px solid var(--line)!important}

/* WALLPAPERS */
body.book-heaven[data-page="wallpapers"] .celestial-page-panel .wallpaper{background:linear-gradient(180deg,#fff,#faf8ff)!important;color:var(--ink)!important;border:1px solid var(--line)!important;box-shadow:var(--card-shadow)!important}
body.book-heaven[data-page="wallpapers"] .celestial-page-panel .preview-link{background:#f3efff!important}
body.book-heaven[data-page="wallpapers"] .celestial-page-panel :is(.free-pill,.filter,.note){background:#fff!important;color:var(--ink-soft)!important;border:1px solid var(--line)!important}
body.book-heaven[data-page="wallpapers"] .celestial-page-panel .filter:is(.active,:hover,:focus-visible){background:linear-gradient(180deg,#7550dc,#4b22b4)!important;color:#fff!important}
body.book-heaven[data-page="wallpapers"] .celestial-page-panel .action{background:#f4efff!important;color:var(--purple)!important;border:1px solid var(--line)!important}
body.book-heaven[data-page="wallpapers"] .celestial-page-panel .action.primary{background:linear-gradient(180deg,#7550dc,#4b22b4)!important;color:#fff!important}

/* General overflow/formatting safety found during layout audit. */
body.book-heaven .celestial-page-panel :is(section,article,aside,div,nav){min-width:0}
body.book-heaven .celestial-page-panel :is(p,li,h1,h2,h3,h4,h5,h6,blockquote){overflow-wrap:anywhere}
body.book-heaven .celestial-page-panel table{max-width:100%;border-collapse:collapse}
body.book-heaven .celestial-page-panel pre{max-width:100%;overflow:auto}
body.book-heaven .celestial-page-panel svg,body.book-heaven .celestial-page-panel canvas{max-width:100%}

/* Generic content cards are themed, but memory/learning game card buttons are
   deliberately excluded so flip/tap mechanics keep their own faces. */
body.book-heaven:not([data-page="matching-game"]):not([data-page="symbol-meaning"]) .celestial-page-panel .card{
  background:linear-gradient(180deg,rgba(255,255,255,.99),rgba(251,249,255,.98))!important;
  color:var(--ink)!important;border:1px solid var(--line)!important;border-radius:var(--radius-card)!important;box-shadow:var(--card-shadow)!important;clip-path:none!important
}
body.book-heaven:not([data-page="matching-game"]):not([data-page="symbol-meaning"]) .celestial-page-panel .card:hover{border-color:var(--line-strong)!important}

/* Protect game mechanics from global theming. */
body.book-heaven[data-page="matching-game"] .celestial-page-panel button.card,
body.book-heaven[data-page="symbol-meaning"] .celestial-page-panel button.card,
body.book-heaven[data-page="remember-order"] .celestial-page-panel button.choice{
  border-radius:inherit!important;box-shadow:inherit!important
}

/* ======================================================================
   FINAL STRUCTURE ALIGNMENT — approved bright celestial mock-up
   ====================================================================== */

/* Share actions now live in the right side of the top navigation, like the
   approved mock-up, instead of floating between the nav and the book page. */
body.book-heaven header > .share-strip,
body.book-heaven .site-header > .share-strip,
body.book-heaven .ga-header > .share-strip,
body.book-heaven .ws-header > .share-strip{
  grid-column:3!important;grid-row:1!important;justify-self:end!important;
  width:auto!important;min-width:0!important;margin:0!important;padding:0!important;
  display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:0!important;
  background:transparent!important;border:0!important;box-shadow:none!important
}
body.book-heaven header > .share-strip .share321-status,
body.book-heaven .site-header > .share-strip .share321-status,
body.book-heaven .ga-header > .share-strip .share321-status,
body.book-heaven .ws-header > .share-strip .share321-status{display:none!important}
body.book-heaven header > .share-strip .share321,
body.book-heaven .site-header > .share-strip .share321,
body.book-heaven .ga-header > .share-strip .share321,
body.book-heaven .ws-header > .share-strip .share321{
  min-width:150px!important;margin:0!important;padding:10px 13px!important;
  border:1px solid rgba(185,119,255,.94)!important;border-radius:12px!important;
  color:#fff!important;background:linear-gradient(180deg,rgba(35,43,111,.88),rgba(17,28,82,.96))!important;
  box-shadow:0 0 17px rgba(157,86,255,.34),inset 0 0 9px rgba(255,255,255,.06)!important;
  font-family:var(--font-body)!important;font-size:10px!important;font-weight:800!important;letter-spacing:.03em!important;line-height:1.1!important;text-transform:uppercase!important
}

/* Kids activity navigation is part of the pearl-white book page, not a
   separate strip floating on the celestial background. */
body.book-heaven .celestial-page-panel .kids-switcher{
  width:100%!important;max-width:none!important;margin:0 0 14px!important;padding:7px!important;
  display:flex!important;align-items:center!important;justify-content:center!important;gap:5px!important;
  overflow-x:auto!important;white-space:nowrap!important;scrollbar-width:none!important;
  background:linear-gradient(180deg,#f8f4ff,#fff)!important;border:1px solid var(--line)!important;border-radius:13px!important;
  box-shadow:none!important;clip-path:none!important
}
body.book-heaven .celestial-page-panel .kids-switcher::-webkit-scrollbar{display:none!important}
body.book-heaven .celestial-page-panel .kids-switcher a{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 auto!important;
  padding:7px 9px!important;border-radius:9px!important;color:#4d2aaa!important;background:transparent!important;border:1px solid transparent!important;
  font-family:var(--font-body)!important;font-size:10px!important;font-weight:800!important;text-decoration:none!important
}
body.book-heaven .celestial-page-panel .kids-switcher a:is(.active,:hover,:focus-visible){
  color:#fff!important;background:linear-gradient(180deg,#7550dc,#4b22b4)!important;border-color:rgba(80,44,177,.18)!important;outline:none!important
}

/* Guardian Angel closing prayer was previously outside the white page. */
body.book-heaven[data-page="guardian-angel"] .celestial-page-panel .ga-bottom{
  width:100%!important;max-width:none!important;margin:16px 0 0!important;padding:18px!important;
  color:var(--ink)!important;background:linear-gradient(180deg,#fffdf8,#f7f2ff)!important;
  border:1px solid var(--line)!important;border-radius:16px!important;box-shadow:var(--card-shadow)!important;clip-path:none!important
}
body.book-heaven[data-page="guardian-angel"] .celestial-page-panel .ga-bottom :is(h2,h3){color:var(--ink)!important;font-family:var(--font-display)!important}
body.book-heaven[data-page="guardian-angel"] .celestial-page-panel .ga-bottom :is(p,.ga-final-status){color:var(--ink-soft)!important}

/* Small supporting copy is kept inside the page rather than on the artwork. */
body.book-heaven .celestial-page-panel .footer-note{
  margin:14px 0 0!important;padding:10px 12px!important;text-align:center!important;
  color:var(--ink-muted)!important;background:#f8f5ff!important;border:1px solid rgba(88,54,185,.12)!important;border-radius:10px!important;
  font-family:var(--font-body)!important;font-size:10px!important;line-height:1.4!important
}

/* Today page: remove the last dark remnants inside the pearl-white card. */
body.book-heaven[data-page="today"] .celestial-page-panel .daily-card{background:linear-gradient(180deg,#fff,#faf8ff)!important;border:1px solid var(--line)!important;box-shadow:var(--card-shadow)!important}
body.book-heaven[data-page="today"] .celestial-page-panel .scripture{background:linear-gradient(180deg,#faf7ff,#fff)!important;border-bottom:1px solid var(--line)!important}
body.book-heaven[data-page="today"] .celestial-page-panel .scripture::after{background:#fff!important;color:var(--purple)!important;border:1px solid var(--line)!important}
body.book-heaven[data-page="today"] .celestial-page-panel .reference{color:#29168d!important;font-family:var(--font-display)!important}
body.book-heaven[data-page="today"] .celestial-page-panel .reflection{color:var(--ink-soft)!important;font-family:var(--font-display)!important}
body.book-heaven[data-page="today"] .celestial-page-panel .prayer{background:#fff!important}
body.book-heaven[data-page="today"] .celestial-page-panel .action.secondary{background:#fff!important;color:var(--purple)!important;border:1px solid var(--line)!important}

/* Find-a-Word: force the legacy dark panel/title layer fully into the light Kids language. */
body.book-heaven[data-page="word-search"] .celestial-page-panel :is(.ws-title,.ws-bottom){
  background:linear-gradient(145deg,#f8f4ff,#fffdf5)!important;color:var(--ink)!important;border:1px solid var(--line)!important;border-radius:15px!important;box-shadow:var(--card-shadow)!important;clip-path:none!important
}
body.book-heaven[data-page="word-search"] .celestial-page-panel :is(.ws-panel,.ws-gridcard,.ws-wordlist,.ws-tool,.ws-bottom){background:linear-gradient(180deg,#fff,#faf8ff)!important;color:var(--ink)!important}

/* The only full dark ribbon is the actual site footer. */
body.book-heaven .celestial-footer{
  width:min(1440px,calc(100% - 54px))!important;margin:0 auto 10px!important;padding:16px 24px 13px!important;
  color:#fff!important;background:linear-gradient(90deg,rgba(4,20,61,.99),rgba(7,31,79,.985),rgba(4,20,61,.99))!important;
  border:1px solid rgba(139,110,239,.28)!important;border-radius:16px!important;box-shadow:0 10px 28px rgba(0,10,45,.20)!important;clip-path:none!important
}

@media(max-width:980px){
  body.book-heaven header > .share-strip,body.book-heaven .site-header > .share-strip,body.book-heaven .ga-header > .share-strip,body.book-heaven .ws-header > .share-strip{display:none!important}
}
@media(max-width:760px){
  body.book-heaven .celestial-page-panel .kids-switcher{justify-content:flex-start!important;padding:6px!important}
  body.book-heaven .celestial-page-panel .kids-switcher a{font-size:9px!important;padding:7px 8px!important}
}

/* ===== HOME LAUNCHER V5 — approved illustrated icon language ===== */
body.book-heaven[data-page="launcher"] .celestial-page-panel.launcher-panel{width:min(980px,64vw)!important;max-width:980px!important;padding:20px 22px 24px!important}
body.book-heaven[data-page="launcher"] .launcher-page{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
.launcher-hero{text-align:center;padding:4px 12px 12px;border-bottom:1px solid rgba(89,54,185,.12)}
.launcher-eyebrow{color:#5d2dbc;font-family:var(--font-display);font-size:12px;font-weight:700;letter-spacing:.23em;text-transform:uppercase}
.launcher-hero h1{display:flex;align-items:center;justify-content:center;gap:15px;margin:3px 0 2px!important;color:#2d1a9c!important;font-family:var(--font-display)!important;font-size:clamp(50px,5.4vw,72px)!important;font-weight:400!important;line-height:.95!important;letter-spacing:.035em!important;text-transform:uppercase!important}
.launcher-hero h1::before,.launcher-hero h1::after{content:"";display:block;flex:0 0 70px;width:70px;height:43px;background:linear-gradient(145deg,#57bfff 0%,#6d5be7 48%,#a75bea 100%);clip-path:polygon(0 59%,18% 47%,39% 28%,29% 55%,52% 37%,44% 65%,69% 46%,57% 75%,83% 60%,67% 86%,100% 76%,75% 100%,49% 87%,24% 96%);filter:drop-shadow(0 0 7px rgba(112,76,225,.32))}.launcher-hero h1::after{transform:scaleX(-1)}
.launcher-subtitle{color:#2a168d;font-family:var(--font-display);font-size:clamp(14px,1.7vw,18px);font-weight:700;letter-spacing:.19em;text-transform:uppercase}.launcher-cross{margin:1px 0;color:#6338cd;font-family:var(--font-display);font-size:18px;line-height:1}.launcher-hero p{max-width:650px;margin:6px auto 0!important;color:#3d4276!important;font-size:12.5px!important;font-weight:600!important;line-height:1.45!important}
.launcher-group{margin-top:20px}.launcher-group-head{display:flex;align-items:end;justify-content:space-between;gap:18px;margin:0 3px 9px}.launcher-group-head>div>span{display:block;color:#6a3bc6;font-size:9.5px;font-weight:900;letter-spacing:.15em;text-transform:uppercase}.launcher-group-head h2{margin:2px 0 0!important;color:#241579!important;font-family:var(--font-display)!important;font-size:20px!important;font-weight:700!important;letter-spacing:.01em!important}.launcher-group-head p{max-width:300px;margin:0!important;color:#777b9b!important;font-size:10.5px!important;font-weight:600!important;text-align:right}
.launcher-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.launcher-card{position:relative;display:flex;flex-direction:column;align-items:center;min-width:0;min-height:178px;padding:12px 10px 11px;overflow:hidden;text-align:center;text-decoration:none!important;color:var(--ink)!important;background:linear-gradient(180deg,rgba(255,255,255,.995),rgba(249,247,255,.99))!important;border:1px solid rgba(91,54,188,.18)!important;border-radius:18px!important;box-shadow:0 8px 18px rgba(60,44,135,.075),inset 0 1px 0 #fff!important;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.launcher-card::before{content:"";position:absolute;inset:0 0 auto;height:46%;pointer-events:none;background:radial-gradient(circle at 50% 4%,rgba(192,173,255,.14),transparent 72%)}.launcher-card:is(:hover,:focus-visible){transform:translateY(-4px);border-color:rgba(102,54,206,.34)!important;box-shadow:0 13px 27px rgba(68,43,151,.14),0 0 17px rgba(138,90,234,.10)!important;outline:none}
.launcher-icon{position:relative;width:76px;height:76px;flex:0 0 76px;display:block;margin:0 auto 8px;border-radius:22px;overflow:hidden;background:#eff8ff;border:1px solid rgba(111,169,213,.26);box-shadow:0 8px 17px rgba(82,123,159,.12),0 0 0 4px rgba(255,255,255,.78)}.launcher-icon img{display:block;width:100%;height:100%;object-fit:cover;transform:scale(1.04)}.launcher-copy{position:relative;display:flex;flex:1;flex-direction:column;align-items:center;min-width:0;width:100%}.launcher-copy strong{display:block;color:#2e198d;font-family:var(--font-display);font-size:14px;font-weight:700;line-height:1.15}.launcher-copy em{display:block;min-height:31px;margin-top:4px;color:#656a8b;font-family:var(--font-body);font-size:9.5px;font-style:normal;font-weight:600;line-height:1.35}.launcher-copy b{display:inline-flex;align-items:center;gap:5px;margin-top:auto;padding-top:8px;color:#5b2abd;font-size:8.5px;font-weight:900;letter-spacing:.055em;text-transform:uppercase}.launcher-copy b span{font-size:12px;line-height:1}
.launcher-grid-featured{grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}.launcher-card-featured{min-height:205px;padding:14px 12px 12px;border-color:rgba(95,54,194,.24)!important;box-shadow:0 11px 25px rgba(60,44,135,.11),0 0 13px rgba(133,88,227,.07)!important}.launcher-card-featured .launcher-icon{width:90px;height:90px;flex-basis:90px;border-radius:25px;box-shadow:0 10px 22px rgba(82,123,159,.14),0 0 0 5px rgba(255,255,255,.84)}.launcher-card-featured .launcher-copy strong{font-size:16px}.launcher-card-featured .launcher-copy em{font-size:10px}.launcher-card-featured.tint-gold{background:linear-gradient(180deg,#fffdf5,#fff9e9)!important}.launcher-card-featured.tint-rose{background:linear-gradient(180deg,#fffafd,#fff4f8)!important}.launcher-card-featured.tint-blue{background:linear-gradient(180deg,#fbfdff,#f1f8ff)!important}.launcher-card-featured.tint-violet{background:linear-gradient(180deg,#fdfbff,#f6f2ff)!important}.launcher-kids .launcher-card{background:linear-gradient(180deg,#fff,#fbfbff)!important}
.launcher-more-links{display:flex;justify-content:center;align-items:center;gap:9px;flex-wrap:wrap;margin-top:18px;padding:11px 12px;border-top:1px solid rgba(88,54,185,.12)}.launcher-more-links a{color:#5130a6!important;font-size:10px;font-weight:800;text-decoration:none!important}.launcher-more-links a:hover{text-decoration:underline!important}.launcher-more-links span{color:#b2a3d7}
@media(max-width:1240px){body.book-heaven[data-page="launcher"] .celestial-page-panel.launcher-panel{width:min(940px,78vw)!important}}
@media(max-width:900px){body.book-heaven[data-page="launcher"] .celestial-page-panel.launcher-panel{width:calc(100% - 28px)!important;max-width:none!important}.launcher-grid,.launcher-grid-featured{grid-template-columns:repeat(2,minmax(0,1fr))}.launcher-group-head p{display:none}}
@media(max-width:560px){body.book-heaven[data-page="launcher"] .celestial-page-panel.launcher-panel{width:calc(100% - 16px)!important;padding:16px 11px 18px!important;border-radius:20px!important}.launcher-hero h1{font-size:44px!important;gap:8px}.launcher-hero h1::before,.launcher-hero h1::after{width:42px;flex-basis:42px;height:27px}.launcher-grid,.launcher-grid-featured{gap:8px}.launcher-card,.launcher-card-featured{min-height:159px;padding:10px 8px}.launcher-icon,.launcher-card-featured .launcher-icon{width:66px;height:66px;flex-basis:66px;border-radius:19px}.launcher-copy strong,.launcher-card-featured .launcher-copy strong{font-size:13px}.launcher-copy em,.launcher-card-featured .launcher-copy em{font-size:8.8px;min-height:28px}.launcher-group-head h2{font-size:17px!important}}


/* --- Launcher v6: illustrated icon dashboard --- */
body.book-heaven[data-page="launcher"] .celestial-page-panel.launcher-panel{width:min(1100px,74vw)!important;max-width:1100px!important;padding:18px 20px 22px!important}
body.book-heaven[data-page="launcher"] .launcher-page{width:100%!important;max-width:none!important;margin:0!important;padding:0!important}
.launcher-hero{text-align:center;padding:4px 12px 14px;border-bottom:1px solid rgba(89,54,185,.12)}
.launcher-hero p{max-width:760px;margin:8px auto 0!important;color:#2f3f7a!important;font-size:14px!important;font-weight:600!important;line-height:1.45!important}
.launcher-tile-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:12px;margin-top:18px}
.launcher-tile,.launcher-quick-card{position:relative;display:flex;text-decoration:none!important;color:var(--ink)!important;background:linear-gradient(180deg,rgba(255,255,255,.995),rgba(249,247,255,.99))!important;border:1px solid rgba(91,54,188,.18)!important;border-radius:18px!important;box-shadow:0 8px 18px rgba(60,44,135,.075),inset 0 1px 0 #fff!important;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.launcher-tile::before,.launcher-quick-card::before{content:"";position:absolute;inset:0 0 auto;height:40%;pointer-events:none;background:radial-gradient(circle at 50% 5%,rgba(192,173,255,.14),transparent 72%)}
.launcher-tile:is(:hover,:focus-visible),.launcher-quick-card:is(:hover,:focus-visible){transform:translateY(-4px);border-color:rgba(102,54,206,.34)!important;box-shadow:0 13px 27px rgba(68,43,151,.14),0 0 17px rgba(138,90,234,.10)!important;outline:none}
.launcher-tile{min-height:236px;padding:12px 10px 13px;flex-direction:column;align-items:center;text-align:center}
.launcher-tile-icon{width:96px;height:96px;display:flex;align-items:center;justify-content:center;margin:0 auto 10px;overflow:hidden;border-radius:24px;background:rgba(255,255,255,.8);box-shadow:0 8px 17px rgba(82,123,159,.08),0 0 0 4px rgba(255,255,255,.78)}
.launcher-tile-icon img{display:block;width:100%;height:100%;object-fit:contain}
.launcher-tile strong{display:block;color:#2e198d;font-family:var(--font-display);font-size:14px;font-weight:700;line-height:1.15;text-transform:uppercase}
.launcher-tile em{display:block;min-height:54px;margin-top:6px;color:#5d648a;font-family:var(--font-body);font-size:10px;font-style:normal;font-weight:600;line-height:1.38}
.launcher-tile b,.launcher-quick-copy b{display:inline-flex;align-items:center;justify-content:center;align-self:center;margin-top:auto;padding:9px 14px;border-radius:999px;background:linear-gradient(180deg,#7142ec,#5026ba);box-shadow:0 7px 16px rgba(84,42,180,.22);color:#fff;font-size:9px;font-weight:900;letter-spacing:.06em;text-transform:uppercase}
.launcher-quick-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:16px}
.launcher-quick-card{align-items:center;gap:12px;min-height:164px;padding:16px}
.launcher-quick-icon{width:92px;height:92px;flex:0 0 92px;display:flex;align-items:center;justify-content:center;border-radius:22px;background:rgba(255,255,255,.82);box-shadow:0 8px 17px rgba(82,123,159,.08),0 0 0 4px rgba(255,255,255,.78)}
.launcher-quick-icon img{display:block;width:100%;height:100%;object-fit:contain}
.launcher-quick-copy{display:flex;flex:1;flex-direction:column;min-width:0}
.launcher-quick-copy strong{display:block;color:#2e198d;font-family:var(--font-display);font-size:18px;font-weight:700;line-height:1.1}
.launcher-quick-copy em{display:block;margin-top:7px;color:#545d84;font-family:var(--font-body);font-size:11px;font-style:normal;font-weight:600;line-height:1.45}
.launcher-quick-copy b{align-self:flex-start;margin-top:12px}
.launcher-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:16px;padding-top:12px;border-top:1px solid rgba(88,54,185,.12)}
.launcher-stat{padding:10px 12px;border-radius:15px;border:1px solid rgba(91,54,188,.12);background:rgba(255,255,255,.58);text-align:center}
.launcher-stat span{display:block;color:#4120b1;font-family:var(--font-display);font-size:28px;font-weight:700;line-height:1}
.launcher-stat small{display:block;margin-top:4px;color:#5d648a;font-size:10px;font-weight:800;line-height:1.3}
@media(max-width:1240px){body.book-heaven[data-page="launcher"] .celestial-page-panel.launcher-panel{width:min(1040px,90vw)!important}.launcher-tile-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:900px){body.book-heaven[data-page="launcher"] .celestial-page-panel.launcher-panel{width:calc(100% - 28px)!important;max-width:none!important}.launcher-tile-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.launcher-quick-grid{grid-template-columns:1fr}.launcher-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){body.book-heaven[data-page="launcher"] .celestial-page-panel.launcher-panel{width:calc(100% - 16px)!important;padding:16px 11px 18px!important;border-radius:20px!important}.launcher-tile-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.launcher-tile{min-height:220px;padding:10px 8px 11px}.launcher-tile-icon{width:84px;height:84px}.launcher-tile em{min-height:44px;font-size:9px}.launcher-quick-card{padding:14px;gap:10px;min-height:150px}.launcher-quick-icon{width:78px;height:78px;flex-basis:78px}.launcher-quick-copy strong{font-size:16px}.launcher-quick-copy em{font-size:10px}.launcher-stats{grid-template-columns:1fr 1fr;gap:8px}}
