/* Thoughts About God PWA experience • v0.7.0
   Scoped to the installed app and plugin-owned surfaces. No global theme resets. */
:root {
  --tag-app-blue: #1586b9;
  --tag-app-blue-deep: #145e83;
  --tag-app-green: #91ca37;
  --tag-app-ink: #173644;
  --tag-app-muted: #55707d;
  --tag-app-line: #dce9ed;
  --tag-app-canvas: #f6fafb;
  --tag-app-white: #fff;
  --tag-app-shadow: 0 12px 36px rgba(14, 58, 77, .075);
}
.tag-app-icon { display:inline-block; width:1.25em; height:1.25em; flex:none; vertical-align:middle; pointer-events:none; }
.tag-mobile-app-home *, .tag-mobile-app-home *::before, .tag-mobile-app-home *::after,
.tag-mobile-app-nav *, .tag-mobile-app-nav *::before, .tag-mobile-app-nav *::after,
.tag-mobile-app-explore *, .tag-mobile-app-explore *::before, .tag-mobile-app-explore *::after { box-sizing:border-box; }
.tag-mobile-app-home a, .tag-mobile-app-home button, .tag-mobile-app-explore a, .tag-mobile-app-explore button,
.tag-mobile-app-nav a, .tag-mobile-app-nav button { -webkit-tap-highlight-color:transparent; touch-action:manipulation; }
.tag-mobile-app-home :is(a,button,input):focus-visible,
.tag-mobile-app-explore :is(a,button,input):focus-visible,
.tag-mobile-app-nav :is(a,button):focus-visible,
.tag-mobile-app-button:focus-visible { outline:3px solid #7dcbed !important; outline-offset:3px; }
.tag-mobile-app-home a { text-decoration:none !important; }

/* Full-width, safe-area-aware app home; NOT a global WordPress layout override. */
html.tag-mobile-app-standalone .tag-mobile-app-home {
  display:block !important;
  width:min(100% - clamp(24px,4vw,72px), 1320px);
  max-width:none;
  margin:clamp(12px,2.5vw,28px) auto clamp(32px,4vw,58px);
  padding:0;
  color:var(--tag-app-ink);
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  font-size:16px;
  line-height:1.55;
}
html.tag-mobile-app-standalone body { padding-bottom:calc(88px + env(safe-area-inset-bottom)) !important; }
.tag-mobile-app-home__masthead {
  display:flex; justify-content:space-between; align-items:center; gap:14px;
  margin-bottom:clamp(15px,2vw,23px); padding:0 2px;
}
.tag-mobile-app-home__identity { display:flex; align-items:center; gap:12px; min-width:0; }
.tag-mobile-app-home__identity img { width:50px; height:50px; border:1px solid #e1edf0; border-radius:14px; background:#fff; object-fit:contain; }
.tag-mobile-app-home__identity div { display:flex; flex-direction:column; min-width:0; }
.tag-mobile-app-home__identity span { color:var(--tag-app-blue-deep); letter-spacing:.13em; font-weight:800; font-size:10px; line-height:1.4; }
.tag-mobile-app-home__identity strong { color:var(--tag-app-ink); font-size:clamp(17px,2.8vw,22px); font-weight:800; letter-spacing:-.025em; line-height:1.18; }
.tag-mobile-app-home__today { color:var(--tag-app-muted); font-size:13px; font-weight:650; text-align:right; }

.tag-mobile-app-home__hero {
  display:grid; grid-template-columns:minmax(0,1.6fr) minmax(180px,.7fr); align-items:stretch;
  gap:12px; width:100%; min-height:clamp(280px,31vw,410px); padding:clamp(25px,5vw,61px);
  border:1px solid rgba(255,255,255,.3); border-radius:clamp(23px,3vw,35px);
  background:linear-gradient(117deg,#0b344c 0%,#125d83 55%,#1b8cbd 100%);
  box-shadow:0 20px 48px rgba(12,71,102,.18); isolation:isolate;
}
.tag-mobile-app-home__hero::before { content:""; position:absolute; z-index:-1; inset:0; background:radial-gradient(ellipse at 95% 0%,rgba(156,221,246,.22),transparent 46%); pointer-events:none; }
.tag-mobile-app-home__hero-copy { align-self:center; max-width:650px; }
.tag-mobile-app-home__kicker { display:flex; align-items:center; gap:8px; margin:0 0 15px !important; color:#c9effd !important; font-size:clamp(10px,1.4vw,13px) !important; font-weight:750 !important; letter-spacing:.065em !important; text-transform:uppercase; }
.tag-mobile-app-home__kicker .tag-app-icon { color:#d5ed92; font-size:19px; }
.tag-mobile-app-home__hero h2 { max-width:16ch; color:#fff !important; font-size:clamp(29px,4.4vw,57px) !important; font-weight:850 !important; letter-spacing:-.044em; line-height:1.075 !important; text-wrap:balance; }
.tag-mobile-app-home__hero p:not(.tag-mobile-app-home__kicker) { max-width:52ch; margin:15px 0 0 !important; color:rgba(255,255,255,.9) !important; font-size:clamp(14px,1.5vw,17px) !important; line-height:1.6 !important; }
.tag-mobile-app-home__hero-actions { display:flex; flex-wrap:wrap; align-items:center; gap:13px; margin-top:24px; }
.tag-mobile-app-home__hero-actions a { display:inline-flex; min-height:49px; justify-content:center; align-items:center; gap:9px; padding:12px 17px; border-radius:12px; color:#fff !important; font-size:14px; font-weight:750; line-height:1.3; transition:transform .18s ease,background .18s ease,box-shadow .18s ease; }
.tag-mobile-app-home__hero-actions a:hover { transform:translateY(-2px); }
.tag-mobile-app-home__hero-actions .tag-mobile-app-home__hero-primary { background:#a1dc45; color:#14332d !important; box-shadow:0 7px 16px rgba(14,45,35,.12); }
.tag-mobile-app-home__hero-actions .tag-mobile-app-home__hero-primary:hover { background:#b1e560; }
.tag-mobile-app-home__hero-actions .tag-mobile-app-home__hero-secondary { border:1px solid rgba(255,255,255,.45); background:rgba(255,255,255,.075); }
.tag-mobile-app-home__hero-actions .tag-mobile-app-home__hero-secondary:hover { background:rgba(255,255,255,.15); }
.tag-mobile-app-home__hero-decoration { position:relative; min-width:0; align-self:stretch; opacity:.87; pointer-events:none; }
.tag-mobile-app-home__sun { position:absolute; width:min(19vw,210px); aspect-ratio:1; top:4%; right:8%; border-radius:50%; background:linear-gradient(140deg,#eff8c0,#a6d651 60%,#7fbc43); box-shadow:0 0 0 20px rgba(194,231,180,.07),0 0 0 58px rgba(194,231,180,.04),0 20px 62px rgba(4,42,55,.18); }
.tag-mobile-app-home__horizon { position:absolute; right:-65%; bottom:-32%; width:180%; height:74%; border-radius:50% 50% 0 0; border:2px solid rgba(255,255,255,.22); transform:rotate(-13deg); }
.tag-mobile-app-home__horizon::before, .tag-mobile-app-home__horizon::after { content:""; position:absolute; inset:18% -9% -15%; border:1px solid rgba(255,255,255,.2); border-radius:50% 50% 0 0; }
.tag-mobile-app-home__horizon::after { inset:40% -13% -35%; }

/* Search uses WordPress native GET s parameter, no new endpoint or cookies. */
.tag-mobile-app-home__search { display:block; width:100%; margin:clamp(20px,2.6vw,30px) 0 0; }
.tag-mobile-app-home__search label, .tag-mobile-app-explore__search label { display:block; margin:0 0 8px; font-size:13px; font-weight:750; color:var(--tag-app-ink); }
.tag-mobile-app-home__search-field { display:flex; align-items:center; gap:10px; border:1px solid var(--tag-app-line); border-radius:17px; padding:7px 7px 7px 18px; background:#fff; box-shadow:0 8px 24px rgba(23,66,83,.04); }
.tag-mobile-app-home__search-field>.tag-app-icon { width:21px; height:21px; color:#5c8ca2; }
.tag-mobile-app-home__search input[type=search] { width:100%; flex:1; min-width:0; min-height:42px; margin:0; padding:7px 0; border:0 !important; border-radius:0; box-shadow:none !important; outline:none !important; background:transparent; color:var(--tag-app-ink); font:inherit; font-size:15px; }
.tag-mobile-app-home__search input[type=search]::placeholder { color:#77909b; opacity:1; }
.tag-mobile-app-home__search-field:focus-within { outline:3px solid #c2e8f5; outline-offset:2px; border-color:#4ba7cd; }
.tag-mobile-app-home__search-field button { display:inline-flex; flex:none; align-items:center; justify-content:center; gap:8px; min-height:43px; padding:10px 19px; border:0; border-radius:12px; background:#177fa9; color:#fff; font:inherit; font-size:14px; font-weight:750; cursor:pointer; }
.tag-mobile-app-home__search-field button:hover { background:#12658b; }

.tag-mobile-app-home__section { margin:clamp(30px,4.6vw,57px) 0 0; }
.tag-mobile-app-home__section-head { display:flex; justify-content:space-between; align-items:end; gap:16px; margin:0 0 17px; }
.tag-mobile-app-home__section-head div>span, .tag-mobile-app-home__support>div>span { display:block; margin-bottom:6px; color:var(--tag-app-blue-deep); font-size:11px; font-weight:800; line-height:1.3; letter-spacing:.13em; }
.tag-mobile-app-home__section-head h3, .tag-mobile-app-home__support h3 { margin:0 !important; color:var(--tag-app-ink) !important; font-size:clamp(22px,3vw,32px) !important; font-weight:800 !important; letter-spacing:-.033em; line-height:1.17 !important; }
.tag-mobile-app-home__section-head>a { display:inline-flex; align-items:center; gap:7px; min-height:44px; flex:none; padding:0 7px; color:#1376a1 !important; font-size:14px; font-weight:750; }
.tag-mobile-app-home__section-head>a:hover { color:#115a7f !important; }
.tag-mobile-app-home__actions { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:13px; margin:0; }
.tag-mobile-app-home__action { display:flex; min-width:0; min-height:153px; flex-direction:column; align-items:flex-start; justify-content:center; gap:5px; padding:clamp(16px,2.5vw,25px); border:1px solid var(--tag-app-line); border-radius:19px; background:#fff; box-shadow:var(--tag-app-shadow); text-align:left; color:var(--tag-app-ink) !important; transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease; }
.tag-mobile-app-home__action:hover { transform:translateY(-3px); border-color:#a7d7e9; box-shadow:0 16px 34px rgba(14,58,77,.12); }
.tag-mobile-app-home__action:active { transform:translateY(0); }
.tag-mobile-app-home__action-icon { display:inline-flex; width:43px; height:43px; margin-bottom:5px; align-items:center; justify-content:center; border-radius:13px; background:#eaf6fa; color:#147ba7; font-size:22px; }
.tag-mobile-app-home__action:nth-child(2n) .tag-mobile-app-home__action-icon { background:#eff8e5; color:#447e22; }
.tag-mobile-app-home__action strong { font-size:clamp(15px,1.6vw,17px); font-weight:780; line-height:1.23; }
.tag-mobile-app-home__action small { margin:0; color:var(--tag-app-muted); font-size:13px; line-height:1.35; }
.tag-mobile-app-home__devotionals { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); align-items:stretch; gap:14px; }
.tag-mobile-app-home__latest { display:flex; flex-direction:column; min-width:0; min-height:230px; margin:0; padding:clamp(19px,2.8vw,28px); border:1px solid var(--tag-app-line); border-radius:21px; background:#fff; box-shadow:var(--tag-app-shadow); color:var(--tag-app-ink); }
.tag-mobile-app-home__latest.is-featured { border-color:#b4ddeb; background:linear-gradient(160deg,#fff,#f0f9fb); }
.tag-mobile-app-home__latest-meta { display:flex; align-items:center; gap:6px; margin:0 0 10px; color:#537a8e; font-size:11px; font-weight:800; letter-spacing:.035em; text-transform:uppercase; }
.tag-mobile-app-home__latest-meta .tag-app-icon { font-size:16px; }
.tag-mobile-app-home__latest h4 { margin:0 !important; color:var(--tag-app-ink) !important; font-size:clamp(19px,2.2vw,24px) !important; font-weight:790 !important; letter-spacing:-.03em; line-height:1.22 !important; }
.tag-mobile-app-home__latest h4 a { color:inherit !important; }
.tag-mobile-app-home__latest h4 a:hover { color:#176d93 !important; }
.tag-mobile-app-home__latest p { margin:10px 0 13px !important; color:#576e7a !important; font-size:14px !important; line-height:1.65 !important; }
.tag-mobile-app-home__read { display:inline-flex; align-items:center; gap:6px; min-height:38px; margin-top:auto; color:#0f729e !important; font-size:13px; font-weight:800; }
.tag-mobile-app-home__read:hover .tag-app-icon { transform:translateX(3px); }
.tag-mobile-app-home__read .tag-app-icon { transition:transform .2s ease; }
.tag-mobile-app-home__support { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:18px; padding:clamp(22px,4vw,39px); border:1px solid #dbe9d7; border-radius:24px; background:linear-gradient(115deg,#eff8e9,#edf7f7); }
.tag-mobile-app-home__support>div { max-width:620px; }
.tag-mobile-app-home__support h3 { max-width:34ch; font-size:clamp(21px,2.5vw,28px) !important; }
.tag-mobile-app-home__support p { max-width:57ch; margin:10px 0 0 !important; color:#536e66 !important; font-size:14px !important; line-height:1.6 !important; }
.tag-mobile-app-home__support>a { display:inline-flex; min-height:47px; flex:none; align-items:center; gap:9px; padding:11px 17px; border-radius:12px; background:#186b91; color:#fff !important; font-size:14px; font-weight:750; }
.tag-mobile-app-home__support>a:hover { background:#0c5377; }

/* App-only bottom navigation. All controls are at least 44px touch targets. */
html.tag-mobile-app-standalone .tag-mobile-app-nav { grid-template-columns:repeat(5,minmax(0,1fr)); align-items:stretch; min-height:73px; padding:7px max(8px,env(safe-area-inset-right)) calc(7px + env(safe-area-inset-bottom)) max(8px,env(safe-area-inset-left)); border-top:1px solid #dce9ef; background:rgba(255,255,255,.97); box-shadow:0 -9px 30px rgba(18,61,82,.09); }
.tag-mobile-app-nav :is(a,button) { appearance:none; display:flex; flex-direction:column; justify-content:center; align-items:center; gap:3px; min-width:0; min-height:55px; padding:7px 1px; border:0; border-radius:13px; background:transparent; color:#607b89; font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; text-decoration:none !important; cursor:pointer; }
.tag-mobile-app-nav :is(a,button)>.tag-app-icon { font-size:23px; width:23px; height:23px; }
.tag-mobile-app-nav :is(a,button)>strong { font-size:11px; font-weight:750; line-height:1.1; letter-spacing:.005em; }
.tag-mobile-app-nav :is(a,button):is(.is-active,[aria-expanded="true"]) { background:#eaf7fa; color:#116c96; }
.tag-mobile-app-nav :is(a,button):hover { color:#0b668e; background:#f0f8fa; }
html.tag-mobile-app-standalone .tag-mobile-app-notify { bottom:calc(89px + env(safe-area-inset-bottom)); }

/* Accessible full-width Explore sheet. Hidden in normal browser mode. */
.tag-mobile-app-explore[hidden] { display:none !important; }
.tag-mobile-app-explore { display:none; }
html.tag-mobile-app-standalone .tag-mobile-app-explore:not([hidden]) { position:fixed; z-index:2147483050; inset:0; display:flex; align-items:flex-end; justify-content:center; padding:max(12px,env(safe-area-inset-top)) max(10px,env(safe-area-inset-right)) 0 max(10px,env(safe-area-inset-left)); font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; }
.tag-mobile-app-explore__backdrop { position:absolute; inset:0; background:rgba(9,30,42,.58); backdrop-filter:blur(5px); -webkit-backdrop-filter:blur(5px); animation:tagAppFade .2s ease both; }
.tag-mobile-app-explore__sheet { position:relative; display:flex; flex-direction:column; width:min(100%,760px); max-height:min(90dvh,880px); min-height:0; padding:clamp(19px,3.7vw,31px); padding-bottom:calc(22px + env(safe-area-inset-bottom)); border:1px solid rgba(226,240,245,.9); border-radius:25px 25px 0 0; background:var(--tag-app-white); color:var(--tag-app-ink); overflow:auto; overscroll-behavior:contain; box-shadow:0 -15px 75px rgba(8,39,53,.24); animation:tagAppSheetIn .28s cubic-bezier(.2,.85,.25,1) both; }
.tag-mobile-app-explore__header, .tag-mobile-app-explore__brand { display:flex; align-items:center; gap:12px; }
.tag-mobile-app-explore__header { justify-content:space-between; margin:0 0 19px; }
.tag-mobile-app-explore__brand { min-width:0; }
.tag-mobile-app-explore__brand img { width:47px; height:47px; border:1px solid #e5edf0; border-radius:12px; object-fit:contain; }
.tag-mobile-app-explore__brand span { display:block; margin-bottom:2px; color:#39718b; font-size:10px; font-weight:800; letter-spacing:.095em; }
.tag-mobile-app-explore__brand h2 { margin:0 !important; font-size:clamp(22px,4vw,27px) !important; line-height:1.1 !important; font-weight:800 !important; color:var(--tag-app-ink) !important; }
.tag-mobile-app-explore__close { display:inline-flex; flex:none; width:44px; height:44px; align-items:center; justify-content:center; border:1px solid #dce9ed; border-radius:50%; background:#f6fafb; color:#385c6d; cursor:pointer; }
.tag-mobile-app-explore__search { margin:0 0 17px; }
.tag-mobile-app-explore__search>div { display:flex; align-items:center; gap:10px; min-height:54px; padding:5px 6px 5px 15px; border:1px solid #cedfe6; border-radius:14px; background:#f8fbfc; }
.tag-mobile-app-explore__search>div:focus-within { border-color:#62b4d4; outline:2px solid #c7ebf6; }
.tag-mobile-app-explore__search>div>.tag-app-icon { color:#5b8ea3; font-size:22px; }
.tag-mobile-app-explore__search input[type=search] { flex:1; min-width:0; margin:0; padding:8px 0; min-height:38px; border:0 !important; outline:0 !important; box-shadow:none !important; background:transparent; color:var(--tag-app-ink); font:inherit; font-size:15px; }
.tag-mobile-app-explore__search button { display:inline-flex; width:44px; height:44px; align-items:center; justify-content:center; border:0; border-radius:11px; background:#167da7; color:#fff; cursor:pointer; }
.tag-mobile-app-explore__links { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.tag-mobile-app-explore__links>a { display:flex; align-items:center; gap:12px; min-width:0; min-height:77px; padding:13px; border:1px solid var(--tag-app-line); border-radius:15px; background:#fff; color:var(--tag-app-ink) !important; text-decoration:none !important; transition:border-color .18s ease,transform .18s ease; }
.tag-mobile-app-explore__links>a:hover { border-color:#99d4ea; transform:translateY(-1px); }
.tag-mobile-app-explore__links>a>.tag-app-icon:first-child { width:36px; height:36px; padding:8px; border-radius:12px; background:#eaf6fa; color:#187da6; }
.tag-mobile-app-explore__links>a>span { display:flex; min-width:0; flex:1; flex-direction:column; }
.tag-mobile-app-explore__links strong { color:var(--tag-app-ink); font-size:14px; font-weight:760; line-height:1.25; }
.tag-mobile-app-explore__links small { color:#607b88; font-size:11px; line-height:1.4; }
.tag-mobile-app-explore__links>a>.tag-app-icon:last-child { font-size:15px; color:#7495a5; }
.tag-mobile-app-explore__reader { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:12px; padding:17px 0; margin-top:16px; border-top:1px solid var(--tag-app-line); border-bottom:1px solid var(--tag-app-line); }
.tag-mobile-app-explore__reader strong, .tag-mobile-app-explore__reader small { display:block; }
.tag-mobile-app-explore__reader strong { color:var(--tag-app-ink); font-size:14px; }
.tag-mobile-app-explore__reader small { color:#67808c; font-size:12px; }
.tag-mobile-app-explore__reader [role=group] { display:flex; gap:4px; padding:4px; border:1px solid #dce9ed; border-radius:12px; background:#f6fafb; }
.tag-mobile-app-explore__reader button { min-width:43px; min-height:40px; border:0; border-radius:8px; background:transparent; color:#426b7f; font-size:14px; font-weight:800; cursor:pointer; }
.tag-mobile-app-explore__reader button[aria-pressed=true] { background:#176f96; color:#fff; }
.tag-mobile-app-explore__footer { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:12px; margin-top:17px; }
.tag-mobile-app-explore__footer button { display:inline-flex; min-height:44px; align-items:center; gap:7px; padding:10px 14px; border:1px solid #d8e5e9; border-radius:10px; background:#fff; color:#1a5d7c; font:inherit; font-size:13px; font-weight:750; cursor:pointer; }
.tag-mobile-app-explore__footer button:last-child { background:#167da7; color:#fff; border-color:#167da7; }
body.tag-mobile-app-explore-open { overflow:hidden !important; }
html.tag-mobile-app-explore-open .tag-mobile-app-notify,
html.tag-mobile-app-explore-open .tag-mobile-app-notify-trigger { visibility:hidden !important; pointer-events:none !important; }

/* Keep media inside long WordPress devotional/article bodies on-screen, without resizing unrelated theme containers. */
html.tag-mobile-app-standalone body.single :is(.entry-content,.wp-block-post-content,.post-content,.article-content) { max-width:100%; overflow-wrap:anywhere; }
html.tag-mobile-app-standalone body.single :is(.entry-content,.wp-block-post-content,.post-content,.article-content) :is(img,video,iframe,table) { max-width:100%; }
html.tag-mobile-app-standalone body.single :is(.entry-content,.wp-block-post-content,.post-content,.article-content) :is(img,video) { height:auto; }

/* Reading sizes only activate when explicitly chosen; never change site article defaults. */
html.tag-mobile-app-standalone[data-tag-app-reading-size="larger"] :is(.entry-content,.wp-block-post-content,.post-content,.article-content) :is(p,li,blockquote) { font-size:1.15em !important; line-height:1.78 !important; }
html.tag-mobile-app-standalone[data-tag-app-reading-size="smaller"] :is(.entry-content,.wp-block-post-content,.post-content,.article-content) :is(p,li,blockquote) { font-size:.96em !important; line-height:1.6 !important; }
/* Smooth, discrete reading progress only on real single-article views. */
.tag-mobile-app-reading-progress { display:none; }
html.tag-mobile-app-standalone body.single .tag-mobile-app-reading-progress { position:fixed; z-index:2147482980; inset:0 0 auto; display:block; height:3px; background:transparent; pointer-events:none; }
.tag-mobile-app-reading-progress>span { display:block; width:100%; height:100%; transform:scaleX(0); transform-origin:left; background:linear-gradient(90deg,#1689b8,#92cf38); }

/* Existing branded launch screen. Keeps the administrator's optional custom background. */
.tag-mobile-app-splash { background:linear-gradient(180deg,rgba(7,31,45,.1),rgba(7,31,45,.39)),var(--tag-mobile-app-splash-image),linear-gradient(145deg,#0d354b 0%,#147ba9 60%,#3b9ab7 100%); }
.tag-mobile-app-splash__brand { background:rgba(255,255,255,.98); border-color:rgba(255,255,255,.8); box-shadow:0 22px 68px rgba(5,35,52,.28); }
.tag-mobile-app-splash__icon { object-fit:contain; background:#fff; }
.tag-mobile-app-splash__rays { opacity:.55; }
.tag-mobile-app-splash__eyebrow { color:#d8efb7 !important; }
.tag-mobile-app-splash__credit { color:rgba(255,255,255,.74) !important; }

/* Existing install, alert and splash UI continue to use the established JS. Visuals only. */
.tag-mobile-app-offer__card,.tag-mobile-app-notify__inner,.tag-mobile-app-modal__panel { border-color:#d8e7ec; color:var(--tag-app-ink); box-shadow:0 16px 58px rgba(9,49,67,.19); }
.tag-mobile-app-offer__eyebrow { color:#2a789f; }
.tag-mobile-app-offer h2,.tag-mobile-app-modal h2 { color:var(--tag-app-ink) !important; }
.tag-mobile-app-button--primary { border-color:#137da7; background:#188dbd; color:#fff; }
.tag-mobile-app-button--primary:hover,.tag-mobile-app-button--primary:focus-visible { background:#146f97; }
.tag-mobile-app-button--secondary { border-color:#d7e5e9; background:#f2f8fa; color:#315d72; }
html.tag-mobile-app-standalone .tag-mobile-app-offer,html.tag-mobile-app-standalone .tag-mobile-app-notify { left:max(12px,env(safe-area-inset-left)); right:max(12px,env(safe-area-inset-right)); }

@keyframes tagAppSheetIn { from { opacity:.75; transform:translateY(22px); } to { opacity:1; transform:translateY(0); } }
@keyframes tagAppFade { from { opacity:0; } to { opacity:1; } }

@media(max-width:900px) {
  .tag-mobile-app-home__hero { grid-template-columns:minmax(0,1fr) 150px; padding:clamp(22px,4vw,39px); }
  .tag-mobile-app-home__sun { width:145px; }
  .tag-mobile-app-home__devotionals { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .tag-mobile-app-home__latest:last-child:nth-child(odd) { grid-column:1/-1; }
}
@media(max-width:600px) {
  html.tag-mobile-app-standalone .tag-mobile-app-home { width:calc(100% - 24px); margin-top:calc(12px + env(safe-area-inset-top)); }
  .tag-mobile-app-home__masthead { gap:8px; }
  .tag-mobile-app-home__identity img { width:44px; height:44px; }
  .tag-mobile-app-home__identity strong { font-size:16px; }
  .tag-mobile-app-home__today { font-size:10px; max-width:96px; }
  .tag-mobile-app-home__hero { display:block; min-height:0; padding:26px 22px 30px; border-radius:23px; }
  .tag-mobile-app-home__hero h2 { font-size:clamp(30px,9.5vw,41px) !important; }
  .tag-mobile-app-home__hero p:not(.tag-mobile-app-home__kicker) { font-size:14px !important; }
  .tag-mobile-app-home__hero-actions { margin-top:20px; }
  .tag-mobile-app-home__hero-actions a { width:100%; }
  .tag-mobile-app-home__hero-decoration { position:absolute; inset:0; width:auto; z-index:-1; opacity:.19; }
  .tag-mobile-app-home__sun { top:12px; right:-25px; width:170px; }
  .tag-mobile-app-home__horizon { right:-80%; bottom:-18%; }
  .tag-mobile-app-home__actions { grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
  .tag-mobile-app-home__action { min-height:138px; padding:16px; }
  .tag-mobile-app-home__action strong { font-size:15px; }
  .tag-mobile-app-home__action small { font-size:12px; }
  .tag-mobile-app-home__devotionals { grid-template-columns:1fr; }
  .tag-mobile-app-home__latest:last-child:nth-child(odd) { grid-column:auto; }
  .tag-mobile-app-home__latest { min-height:0; }
  .tag-mobile-app-home__section { margin-top:33px; }
  .tag-mobile-app-home__search-field { padding-left:13px; }
  .tag-mobile-app-home__search-field button { padding:10px 12px; }
  .tag-mobile-app-home__search-field button>.tag-app-icon { display:none; }
  .tag-mobile-app-home__support { border-radius:19px; }
  .tag-mobile-app-home__support>a { width:100%; justify-content:center; }
  .tag-mobile-app-explore__links { grid-template-columns:1fr; gap:8px; }
  .tag-mobile-app-explore__links>a { min-height:63px; }
  .tag-mobile-app-explore__links small { font-size:12px; }
}
@media(max-width:360px) {
  .tag-mobile-app-home__today { display:none; }
  .tag-mobile-app-home__actions { gap:8px; }
  .tag-mobile-app-home__action { padding:13px; }
  .tag-mobile-app-nav :is(a,button)>strong { font-size:10px; }
  .tag-mobile-app-explore__reader { align-items:flex-start; }
}
@media(min-width:1367px) {
  /* A PWA can open as a desktop standalone window; do not hide its navigation. */
  html.tag-mobile-app-standalone .tag-mobile-app-nav { display:grid !important; }
}
@media(prefers-reduced-motion:reduce) {
  .tag-mobile-app-home *, .tag-mobile-app-nav *, .tag-mobile-app-explore *, .tag-mobile-app-explore__backdrop, .tag-mobile-app-explore__sheet { animation:none !important; transition:none !important; scroll-behavior:auto !important; }
}
@media(prefers-contrast:more) {
  .tag-mobile-app-home__action,.tag-mobile-app-home__latest,.tag-mobile-app-explore__links>a { border-color:#7798a7; }
  .tag-mobile-app-nav :is(a,button):is(.is-active,[aria-expanded="true"]) { outline:2px solid #126b91; }
}
