/* Shared semantic foundations, used by reading, discovery and application tools. */
:root{--app-foundation:#F8FAFF;--app-card:#FFFFFF;--app-subtle:#ECEFF8;--app-frost:#EDF1FF;--app-text:#171E29;--app-secondary:#626C7A;--app-border:#DCE1EB;--app-control-border:#626C7A;--app-accent:#958AA8;--app-sage:#82988F;--app-radius:14px;--app-motion:180ms}
html[data-theme="dark"]{--app-foundation:#0B0D12;--app-card:#171B23;--app-subtle:#11141A;--app-frost:#202631;--app-text:#F8FAFF;--app-secondary:#CAD1DC;--app-border:#434B57;--app-control-border:#B0B8C3}
html body.application-surface{--canvas:var(--app-foundation);--paper:var(--app-foundation);--surface:var(--app-foundation);--surface-1:var(--app-card);--surface-2:var(--app-card);--surface-3:var(--app-subtle);--soft:var(--app-frost);--ink:var(--app-text);--muted:var(--app-secondary);--line:var(--app-border);background:var(--canvas)!important;color:var(--ink)!important}
html[data-theme="light"] body.application-surface.quiet-reading{--canvas:#F8FAFF;--paper:#F8FAFF;--surface:#F8FAFF;--surface-3:#EDF1FF;--soft:#EDF1FF;--ink:#0B0D12;--muted:#626C7A;--line:#DCE1EB}
html[data-theme="dark"] body.application-surface.quiet-reading{--surface-2:#11141A}
html body.application-surface main{color:var(--ink)}
html[data-theme="light"] body.application-surface.discovery-surface{background:var(--app-foundation)!important}
html[data-theme="light"] body.application-surface.discovery-surface main{background:var(--app-foundation)!important}
html[data-theme="dark"] body.application-surface :is(.platform-form,.platform-panel,.platform-hero){background:transparent!important}
html body.application-surface :is(.platform-button-secondary,.research-button,.research-icon,.save-control,.button.ghost,.quiet-button){border-color:var(--app-control-border)!important;box-shadow:none!important;min-height:44px;font-size:13px;line-height:1.35}
html body.application-surface .platform-field :is(input,textarea,select){background:var(--surface-2)!important;color:var(--ink)!important;border-color:var(--app-control-border)!important}
html body.application-surface :is(.research-button,.platform-button-secondary):hover{background:var(--surface-3)!important}
html body.application-surface main .resource-hero{margin-top:24px!important}
html body.application-surface main .archive-quote-card{min-height:0!important;height:auto!important;padding-block:24px!important;display:block!important}
html body.application-surface main .archive-quote-card blockquote{margin:12px 0 16px!important;line-height:1.55!important}
html body.application-surface main .archive-quote-card :is(.quote-attribution,.quote-actions,.inline-action-zone,.inline-save-zone,.quote-context,.quote-related){margin-block:10px!important;padding-block:0!important;min-height:0!important}
html body.application-surface main .archive-quote-card details{margin-block:10px!important}
html body.application-surface main .archive-quote-card details summary{min-height:44px}
html body.application-surface main :is(.witness-card,.witness-list-row) .portrait-monogram{white-space:nowrap!important;word-break:normal!important;font-size:clamp(18px,2.2vw,28px)!important;line-height:1!important;letter-spacing:-.035em}
/* All witness-list and related-record photographs keep square *image* pixels.
   Don't alter the card layout, portrait identity, aspect ratio or cropping. */
html body.application-surface main .witness-card>.portrait-box,
html body.application-surface main .witness-list-row>.portrait-box,
html body.application-surface main :is(.witness-card,.witness-list-row) :is(.portrait-box,.owner-portrait-frame),
html body.application-surface main :is(.witness-card,.witness-list-row) :is(.portrait-box,.owner-portrait-frame) :is(img,.owner-portrait,.portrait),
html body.application-surface main :is(.witness-card,.witness-list-row) > img,
html body.application-surface main .home-witness-grid :is(img.owner-portrait,.portrait-box>img){
 border-radius:0!important
}
html body.application-surface main .portrait-monogram>.witness-placeholder-flame{
 width:clamp(25px,3vw,38px)!important;height:clamp(25px,3vw,38px)!important;
 flex:0 0 auto;stroke:currentColor!important;fill:none!important;
 color:var(--muted)!important;stroke-width:1.6!important
}
html body.application-surface main .portrait-monogram:has(>.witness-placeholder-flame){
 display:grid!important;place-items:center!important;
 color:var(--muted)!important;background:var(--soft)!important
}

html body.application-surface main .resource-row.illustrated-resource{display:grid!important;grid-template-columns:190px minmax(0,1fr)!important;align-items:start!important;gap:24px!important;padding-block:24px!important;border-bottom:1px solid var(--line)!important}
.resource-visual{overflow:hidden;border-radius:12px;background:var(--app-subtle);aspect-ratio:3/2}
html body.application-surface main .resource-visual img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;margin:0!important;transition:transform 240ms ease}
.illustrated-resource:hover .resource-visual img{transform:scale(1.025)}
html body.application-surface main .resource-actions{display:flex!important;flex-wrap:wrap;gap:10px;align-items:center}
.activity-hub{padding:clamp(20px,3vw,36px);border:1px solid var(--line);border-radius:20px;background:var(--surface-2);color:var(--ink);margin:24px 0;font-family:var(--font-ui);min-width:0;box-sizing:border-box}
.activity-heading{display:flex;justify-content:space-between;gap:20px;align-items:center;border-bottom:1px solid var(--line);padding-bottom:20px;margin-bottom:24px}
.activity-heading h2{font:600 clamp(25px,3vw,36px)/1.15 var(--font-ui);letter-spacing:-.04em;margin:8px 0}
.activity-heading p{font-size:14px;color:var(--muted);line-height:1.6;margin:8px 0}
.activity-heading img{width:180px;max-width:30%;height:auto}
.activity-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-block:20px 28px}
.activity-stats>div{display:flex;flex-direction:column;gap:6px;border-left:2px solid var(--app-accent);padding-left:14px}
.activity-stats strong{font:500 clamp(28px,4vw,44px)/1 var(--font-ui);font-variant-numeric:tabular-nums;letter-spacing:-.045em}
.activity-stats span{font-size:12px;line-height:1.5;color:var(--muted)}
.activity-insights{display:grid;grid-template-columns:1.2fr 1fr;gap:32px;padding-block:8px 22px}
.activity-label{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;margin-bottom:14px;font-size:12px}
.activity-label h3,.activity-hub>section h3{font:500 15px/1.4 var(--font-ui);margin:0}
.activity-label span{color:var(--muted);font-size:11px}
.activity-calendar{display:grid;grid-template-columns:repeat(14,minmax(0,1fr));gap:5px;max-width:400px}
.activity-day{aspect-ratio:1;border:1px solid var(--line);border-radius:4px;background:var(--surface-3);min-width:0}
.activity-day[data-count="1"]{background:var(--app-accent)}.activity-day[data-count="2"]{background:var(--muted)}.activity-day[data-count="3"]{background:var(--ink)}
.activity-hub progress,.reading-session progress{display:block;width:100%;height:8px;accent-color:var(--ink);border:0;border-radius:8px;background:var(--line)}
.activity-hub progress::-webkit-progress-bar,.reading-session progress::-webkit-progress-bar{background:var(--line);border-radius:8px}
.activity-hub progress::-webkit-progress-value,.reading-session progress::-webkit-progress-value{background:var(--ink);border-radius:8px;transition:width var(--app-motion) ease}
.activity-insights p,.activity-storage{font-size:12px;line-height:1.6;color:var(--muted)}
.activity-routes{display:flex;flex-wrap:wrap;gap:8px;border-block:1px solid var(--line);padding-block:16px;margin-bottom:20px}
.activity-recent{list-style:none;padding:0;margin:8px 0 20px}.activity-recent li{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:12px 0;border-bottom:1px solid var(--line);font-size:13px}.activity-recent a{color:var(--ink);text-decoration:none}.activity-recent small{color:var(--muted)}
.activity-settings summary,.reading-session summary,.saved-verses summary{cursor:pointer;min-height:44px;font:500 13px/1.5 var(--font-ui);display:flex;align-items:center;gap:12px}
.activity-settings form{display:flex;gap:16px;align-items:center;flex-wrap:wrap;padding-block:12px;font-size:13px}.activity-settings input[type="number"]{width:70px}
.activity-page-intro{padding-block:36px 0}.activity-page-intro h1{font-size:clamp(28px,4vw,42px);letter-spacing:-.04em}.activity-page-intro p{font-size:14px;line-height:1.6;color:var(--muted);max-width:60ch}
.reading-session{box-sizing:border-box;padding:12px 20px;margin-block:24px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2);max-width:760px;}
.reading-session summary{justify-content:space-between}.session-tools{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding-block:16px}
.session-tools output{display:block;font:500 36px/1.2 var(--font-ui);letter-spacing:-.04em;font-variant-numeric:tabular-nums}.session-label,.session-tools label{font-size:12px;color:var(--muted)}
.session-tools label{justify-self:end}.session-tools input{width:64px;margin-left:8px}.session-tools .platform-actions,.session-tools p,.session-tools progress{grid-column:1/-1}.session-tools p{font-size:12px;color:var(--muted);line-height:1.6;margin:0}
.activity-settings input,.session-tools input,.verse-tools select{font:400 16px/1.5 var(--font-ui);color:var(--ink);background:var(--surface-2);border:1px solid var(--app-control-border);border-radius:8px;min-height:44px;padding:6px 8px;box-sizing:border-box}
.verse-tools{padding:16px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2);margin-block:16px 20px;font-family:var(--font-ui)}
.verse-toolbar{display:grid;gap:12px}.verse-toolbar strong{font-size:13px}.verse-toolbar label{font-size:12px}.verse-toolbar select{max-width:100%;margin-left:6px}
.verse-tools .research-status{min-height:0;font-size:12px}.saved-verses ul{list-style:none;padding:0;margin:0}.saved-verses li{display:flex;gap:10px;align-items:center;flex-wrap:wrap;border-top:1px solid var(--line);padding:10px 0;font-size:13px}.saved-verses a{color:var(--ink)}.saved-verses span{font-size:11px;color:var(--muted)}.saved-verses button{margin-left:auto}
html body.application-surface .verse-number{display:inline-flex;align-items:center;justify-content:center;min-width:44px;min-height:44px;vertical-align:baseline;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--muted);font:500 12px/1 var(--font-ui);cursor:pointer;margin-inline-end:4px}
html body.application-surface .verse-number[aria-pressed="true"]{border-color:var(--app-control-border);background:var(--surface-3);color:var(--ink)}
html body.application-surface .verse-number[data-bookmarked="true"]::after{content:'◆';font-size:8px;margin-left:4px}
html body.application-surface .scripture-passage p[data-highlight]{padding:8px 12px;border-radius:8px;border-left:3px solid var(--app-accent)}
html body.application-surface .scripture-passage p[data-highlight="silver"]{text-decoration:underline;text-decoration-color:var(--muted);text-underline-offset:5px;background:var(--surface-3)}
html body.application-surface .scripture-passage p[data-highlight="lilac"]{background:color-mix(in srgb,var(--app-accent) 18%,var(--paper));border-left-style:double}
html body.application-surface .scripture-passage p[data-highlight="frost"]{background:var(--soft);border-left-style:dashed}
html body.application-surface .bible-reader{max-width:820px;margin-inline:auto}
html body.application-surface .bible-reader-head{margin-block:20px 12px!important;gap:16px;flex-wrap:wrap;align-items:center}
html body.application-surface .bible-reader-head h2{font-size:clamp(26px,3vw,36px)!important;margin:6px 0!important}
html body.application-surface .scripture-overlay-head h2{font-size:clamp(23px,3vw,32px)!important;line-height:1.2!important}
html body.application-surface .scripture-overlay-actions :is(a,button){padding:10px 14px!important;border-radius:10px!important;font-size:13px!important;min-height:44px!important;background:transparent!important;color:var(--ink)!important;border:1px solid var(--app-control-border)!important}
html body.application-surface .bible-controls{gap:12px!important;padding-block:14px!important}
@media(max-width:700px){
 html body.application-surface main .resource-row.illustrated-resource{grid-template-columns:100px minmax(0,1fr)!important;gap:16px!important}
 html body.application-surface main .illustrated-resource .resource-actions{grid-column:2!important}
 .activity-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px}.activity-insights{grid-template-columns:1fr;gap:20px}.activity-heading img{width:110px}
 .activity-calendar{grid-template-columns:repeat(14,minmax(0,1fr));max-width:100%}
 html body.application-surface{--discovery-quote-size:22px;--type-quote:22px}
 html body.application-surface main .archive-quote-card blockquote{max-width:100%!important}
 .reading-session{margin-inline:16px;width:calc(100% - 32px);padding:12px 16px}.session-tools{grid-template-columns:1fr}.session-tools label{justify-self:start}
 .verse-toolbar .platform-actions{gap:8px}.verse-toolbar label{width:100%}.verse-toolbar select{display:block;margin:6px 0 0;width:100%}
}
@media(max-width:359px){html body.application-surface main .resource-row.illustrated-resource{grid-template-columns:1fr!important}.resource-visual{max-height:180px;max-width:240px}html body.application-surface main .illustrated-resource .resource-actions{grid-column:1!important}}
@media(prefers-reduced-motion:reduce){.resource-visual img,.activity-hub progress::-webkit-progress-value,.reading-session progress::-webkit-progress-value{transition:none!important}.illustrated-resource:hover .resource-visual img{transform:none}}
@media print{.reading-session,.verse-tools,.activity-settings{display:none!important}}

.application-reading-desk{grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:700px){.application-reading-desk{grid-template-columns:repeat(2,minmax(0,1fr))}}

.witness-record-mark span{white-space:nowrap!important;word-break:normal!important;font-size:clamp(18px,2vw,24px)!important;letter-spacing:-.04em}

html body.application-surface main .resource-row.illustrated-resource::before{display:none!important;content:none!important}

/* Resource image and its description share the first row; the small action belongs below its description. */
html body.application-surface main .illustrated-resource .resource-visual{grid-row:1/3;align-self:start}
html body.application-surface main .illustrated-resource .resource-actions{grid-column:2!important;justify-self:start!important;margin:0!important;align-self:start!important}
html body.application-surface main .resource-actions .button{display:inline-flex!important;align-items:center!important;gap:8px!important;white-space:nowrap!important;min-height:44px!important;padding:8px 14px!important;font:500 13px/1.2 var(--font-ui)!important;width:auto!important;border-radius:10px!important}
html body.application-surface main .resource-actions .icon{width:18px!important;height:18px!important;flex-shrink:0}
html body.application-surface main .resource-actions .button span{white-space:nowrap}
html body.application-surface .quote-attribution .quote-index-terms::before{display:none}
html body.application-surface main .archive-quote-card .quote-actions{border:0!important;padding-top:8px!important}
html body.application-surface main .archive-quote-card{border-top:0!important;border-bottom:1px solid var(--line)!important}
html body.application-surface .discovery-views{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:0!important;border:1px solid var(--app-control-border);border-radius:12px;overflow:hidden;margin:12px 0!important;padding:0!important}
html body.application-surface .discovery-views :is(button,a){font:500 13px/1.3 var(--font-ui)!important;text-align:center;display:flex;align-items:center;justify-content:center;min-height:44px;box-sizing:border-box;border:0!important;border-radius:0!important;padding:10px 8px!important;text-decoration:none;color:var(--ink);background:transparent}
html body.application-surface .discovery-views [aria-pressed="true"]{background:var(--soft)!important;box-shadow:inset 0 -2px var(--ink)}
html body.application-surface .discovery-views :is(button,a):focus-visible{outline:2px solid var(--ink);outline-offset:-4px}
html body.application-surface [data-discovery-note]{display:block;font-size:12px;margin:0 0 12px;color:var(--muted)}
html body.application-surface main .quote-archive-controls{gap:10px!important;margin:12px 0!important;padding:0!important}
html body.application-surface main .quote-archive-controls :is(input,select){min-height:44px!important;padding:10px 12px!important;font-size:16px!important;border-radius:10px!important}
html body.application-surface main .quote-archive-hero{margin-bottom:14px!important;padding-block:20px!important}
html body.application-surface .source-disclosure{font:400 13px/1.6 var(--font-ui)!important;margin-block:16px;border:0!important;color:var(--muted)}
html body.application-surface .source-disclosure summary{cursor:pointer;display:list-item;min-height:44px;padding-block:10px;box-sizing:border-box;font-weight:500;color:var(--ink)}
html body.application-surface .source-disclosure :is(p,li,a){font:400 13px/1.65 var(--font-ui)!important;overflow-wrap:anywhere}
html body.application-surface .source-disclosure ul{padding-left:20px}
html body.application-surface .owner-portrait{display:block!important;width:100%!important;height:auto!important;object-fit:contain!important;border-radius:0!important;aspect-ratio:3/4;margin:0!important}
.owner-portrait-frame{width:min(240px,100%);background:transparent;overflow:hidden;border-radius:0;margin:0 0 20px}
.owner-reading-contents{margin:16px 0 24px;padding:12px 16px;border:1px solid var(--line);border-radius:12px;font:400 13px/1.5 var(--font-ui)}
.owner-reading-contents summary{cursor:pointer;min-height:44px;display:flex;align-items:center;font-weight:600}
.owner-reading-contents nav{display:grid;gap:10px;padding-bottom:12px}
.owner-reading-contents a{color:var(--ink);text-decoration:none;min-height:32px;display:flex;align-items:center}
.owner-record-index{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-block:24px}
.owner-record-link{padding:20px;border:1px solid var(--line);border-radius:14px;text-decoration:none;color:var(--ink);background:var(--surface-2);display:flex;flex-direction:column;gap:8px}
.owner-record-link small{color:var(--muted);font:400 12px/1.5 var(--font-ui)}
.owner-record-link:hover{border-color:var(--app-accent)}
html body.application-surface .footer-connect{border-top:0!important;background:#0B0D12!important;margin-top:0!important;padding-top:12px!important}
html body.application-surface .footer-connect-panel{background:#0B0D12!important;border-color:#626C7A!important;border-radius:14px!important;box-shadow:none!important;padding:20px!important}
html body.application-surface .footer-connect-panel input{font-size:16px!important;min-width:0;min-height:44px}
html body.application-surface .footer-connect-panel button{min-height:44px!important;font-size:14px!important;padding:10px 20px!important;white-space:nowrap}
@media(max-width:700px){
 html body.application-surface main .archive-quote-card blockquote{font-size:var(--reader-font-size,22px)!important;line-height:var(--reader-line-height,1.55)!important}
 html body.application-surface .owner-record-index{grid-template-columns:1fr}
 html body.application-surface .footer-connect-panel{padding:18px!important}
 html body.application-surface .footer-connect-panel{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:12px!important}
 html body.application-surface .footer-connect-panel button{justify-self:start!important;width:auto!important}
}
@media(max-width:359px){html body.application-surface main .illustrated-resource .resource-visual{grid-row:auto}html body.application-surface main .illustrated-resource .resource-actions{grid-column:1!important}.discovery-views :is(button,a){font-size:12px!important}}

html body.application-surface main .quote-archive-controls .search-field{flex-basis:300px!important}
html body.application-surface main .quote-archive-controls .filter-select{min-width:0!important;flex-basis:150px!important}
html body.application-surface main .quote-archive-controls :is(input,select){height:44px!important}
@media(max-width:700px){html body.application-surface main .quote-archive-controls{display:grid!important;grid-template-columns:1fr 1fr!important}.quote-archive-controls .search-field{grid-column:1/-1}.quote-archive-controls select{width:100%!important}.discovery-views{margin-top:8px!important}}

html body.application-surface .site-footer{border-top:0!important;background:#0B0D12!important}

/* One George Müller biography presentation system for all applicable reading routes. */
html body.biography-master main .read-masthead>div{min-width:0}
html body.biography-master main .read-portrait.owner-portrait-frame{
  width:min(240px,100%)!important;height:auto!important;max-height:none!important;
  max-width:100%!important;overflow:hidden!important;border-radius:0!important;margin:0!important
}
html body.biography-master main .read-portrait img.owner-portrait{
  display:block!important;width:100%!important;height:auto!important;aspect-ratio:3/4!important;
  object-fit:contain!important;border-radius:0!important
}
/* One-line, compact metadata with contained scrolling when space is insufficient. */
html body.biography-master main .general-profile-meta.profile-facts{
  display:flex!important;grid-template-columns:none!important;flex-wrap:nowrap!important;
  max-width:100%!important;width:100%!important;min-width:0!important;
  align-self:stretch!important;overflow-x:auto!important;overflow-y:hidden!important;
  scrollbar-width:none!important;-ms-overflow-style:none!important;
  overscroll-behavior-inline:contain;box-sizing:border-box!important;
  margin:10px 0 0!important;padding:0!important;border:1px solid var(--line)!important;
  border-radius:12px!important;background:var(--surface-2)!important
}
html body.biography-master main .general-profile-meta.profile-facts::-webkit-scrollbar{display:none!important;width:0!important;height:0!important}
html body.biography-master main .general-profile-meta.profile-facts:focus-visible{outline:2px solid var(--ink)!important;outline-offset:3px!important}
html body.biography-master main .profile-facts .profile-fact + .profile-fact{border:0!important;box-shadow:none!important;background-image:none!important}
html body.biography-master main .profile-facts .profile-fact{
  display:inline-flex!important;flex-direction:row!important;align-items:center!important;
  width:max-content!important;max-width:none!important;min-width:0!important;
  gap:12px!important;margin:0!important;padding:9px 13px!important;
  white-space:nowrap!important;overflow-wrap:normal!important;word-break:normal!important;
  font:400 13px/1.4 var(--font-ui)!important;
  text-decoration:none!important;border-bottom:0!important;box-shadow:none!important
}
html body.biography-master main .profile-facts .profile-fact strong{
  display:inline!important;flex:none!important;margin:0!important;padding:0!important;
  white-space:nowrap!important;font:600 10px/1.4 var(--font-ui)!important;
  letter-spacing:.075em!important;color:var(--muted)!important
}
html body.biography-master main .profile-facts .profile-fact span{
  display:inline!important;flex:none!important;white-space:nowrap!important;
  overflow-wrap:normal!important;word-break:normal!important
}
html body.biography-master main :is(.inline-save-zone,.inline-action-zone){
  display:flex!important;flex-wrap:wrap!important;align-items:center!important;
  justify-content:flex-start!important;gap:8px!important;
  min-height:0!important;margin:12px 0!important
}
html body.biography-master main :is(.inline-save-zone,.inline-action-zone) :is(.save-control,.platform-button-secondary,.research-button,[data-share-control]){
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
  width:auto!important;min-height:44px!important;min-width:0!important;
  padding:9px 12px!important;gap:7px!important;white-space:nowrap!important;
  font:500 12px/1.3 var(--font-ui)!important;border:1px solid var(--app-control-border)!important;
  border-radius:11px!important;background:transparent!important;color:var(--ink)!important
}
html body.biography-master main .share-control-wrap{flex:0 0 auto!important;min-width:0!important}
.share-status.share-toast{
  position:fixed!important;inset:auto max(16px,env(safe-area-inset-right)) max(20px,env(safe-area-inset-bottom)) auto!important;
  z-index:1200!important;display:block!important;pointer-events:none!important;
  max-width:min(320px,calc(100vw - 32px))!important;padding:10px 15px!important;
  border:1px solid var(--app-control-border,var(--line))!important;
  border-radius:12px!important;background:var(--surface-2,#F8FAFF)!important;
  color:var(--ink,#0B0D12)!important;box-shadow:0 8px 26px #0B0D1218!important;
  font:500 13px/1.45 var(--font-ui)!important
}
.share-status.share-toast:empty{display:none!important}
html body.biography-master main .reader-settings{margin:0 0 8px!important;padding:0!important;min-height:0!important}
html body.biography-master main .reader-settings summary{
  min-height:44px!important;box-sizing:border-box!important;
  padding:9px 0!important;margin:0!important;line-height:1.5!important
}
html body.biography-master main .reader-settings .reader-options{padding:10px 0!important}
html body.biography-master main .reading-aside{height:auto!important;min-height:0!important}
@media(max-width:600px){
  /* Mobile masthead display:contents: make the metadata span both grid columns. */
  html body.biography-master main .read-masthead.has-portrait .general-profile-meta.profile-facts{
    grid-column:1 / -1!important;justify-self:stretch!important;width:100%!important;max-width:100%!important
  }
}
@media(max-width:900px){
  html body.biography-master main .reading-body{padding-top:12px!important;margin-top:0!important}
  html body.biography-master main .reading-layout{
    display:flex!important;flex-direction:column!important;align-items:stretch!important;
    gap:12px!important;min-height:0!important
  }
  html body.biography-master main .reading-aside{
    display:flex!important;flex-wrap:wrap!important;align-items:flex-start!important;
    align-content:flex-start!important;gap:8px 14px!important;
    width:100%!important;min-width:0!important;min-height:0!important;
    margin:0!important;padding:0!important
  }
  html body.biography-master main .reading-aside .reader-settings{flex:0 0 auto!important;margin:0!important}
  html body.biography-master main .reading-layout>.prose{margin-top:0!important}
}
@media(max-width:359px){
  html body.biography-master main :is(.inline-save-zone,.inline-action-zone){gap:6px!important}
  html body.biography-master main :is(.inline-save-zone,.inline-action-zone) :is(.save-control,.platform-button-secondary,[data-share-control]){padding-inline:9px!important;font-size:12px!important}
}

/* Non-obstructive sharing: supplementary choices enter normal document flow,
   not a dark absolute/fixed menu that covers the reading. */
html body.application-surface main .share-inline-options{
 display:flex!important;align-items:center!important;flex-wrap:wrap!important;
 gap:8px!important;box-sizing:border-box!important;
 width:100%!important;max-width:950px!important;min-width:0!important;
 padding:10px 0 14px!important;margin:8px auto 0!important;
 border-top:1px solid var(--line)!important;border-bottom:1px solid var(--line)!important;
 background:transparent!important;position:static!important;
 z-index:auto!important;box-shadow:none!important;overflow:visible!important
}
html body.application-surface main .share-inline-options[hidden]{display:none!important}
html body.application-surface main .share-inline-options .share-options-label{
 flex-basis:100%!important;color:var(--muted)!important;
 font:500 12px/1.5 var(--font-ui)!important
}
html body.application-surface main .share-inline-options :is(button,a){
 display:inline-flex!important;align-items:center!important;justify-content:center!important;
 min-height:44px!important;padding:8px 12px!important;
 border:1px solid var(--line)!important;border-radius:10px!important;
 background:transparent!important;color:var(--ink)!important;
 box-shadow:none!important;text-decoration:none!important;
 font:500 13px/1.4 var(--font-ui)!important
}
html body.application-surface main .share-inline-options :is(button,a):focus-visible{
 outline:2px solid var(--ink)!important;outline-offset:2px!important
}
/* Shared dark footer. Subscribe retains Explore's native disclosure row.
   Email and button are adjacent at every supported viewport, never stacked. */
html body.application-surface .site-footer{
 background:#0B0D12!important;border:0!important;
 padding-bottom:max(12px,env(safe-area-inset-bottom))!important
}
html body.application-surface .site-footer>.footer-newsletter-disclosure{
 display:block!important;margin:0!important;
 padding:0 clamp(18px,4.3vw,66px)!important;
 border:0!important;background:#0B0D12!important;color:#F8FAFF!important;
 box-shadow:none!important
}
html body.application-surface .site-footer>.footer-newsletter-disclosure>summary{
 border:0!important;background:transparent!important;box-shadow:none!important
}
html body.application-surface .site-footer>.footer-newsletter-disclosure .footer-connect{
 display:block!important;width:100%!important;max-width:none!important;
 margin:0!important;padding:14px 0 4px!important;
 border:0!important;border-radius:0!important;
 background:#0B0D12!important;box-shadow:none!important
}
html body.application-surface .site-footer .footer-connect .subscribe-form{
 display:block!important;width:100%!important;max-width:100%!important;margin:0!important
}
html body.application-surface .site-footer .footer-connect-copy{
 display:block!important;min-width:0!important;margin:0 0 14px!important;padding:0!important
}
html body.application-surface .site-footer .footer-connect-copy h2{
 color:#F8FAFF!important;white-space:normal!important;overflow-wrap:break-word!important;
 margin:0!important;font:500 clamp(17px,2vw,22px)/1.4 var(--font-ui)!important
}
html body.application-surface .site-footer .footer-subscribe-layout{
 display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;
 align-items:center!important;gap:clamp(10px,2.5vw,22px)!important;
 width:100%!important;max-width:100%!important;min-height:0!important;
 margin:0!important;padding:0!important;
 border:0!important;border-radius:0!important;
 background:#0B0D12!important;box-shadow:none!important
}
html body.application-surface .site-footer .footer-subscribe-layout input{
 display:block!important;box-sizing:border-box!important;
 width:100%!important;min-width:0!important;max-width:100%!important;
 min-height:44px!important;height:48px!important;
 margin:0!important;padding:8px 0!important;
 background:transparent!important;border:0!important;border-radius:0!important;
 color:#F8FAFF!important;box-shadow:none!important;
 font:400 16px/1.35 var(--font-ui)!important
}
html body.application-surface .site-footer .footer-subscribe-layout input::placeholder{
 color:#B0B8C3!important;opacity:1!important
}
html body.application-surface .site-footer .footer-subscribe-layout input:focus-visible{
 outline:0!important;border-radius:0!important;
 box-shadow:inset 0 -2px 0 #B0B8C3!important
}
html body.application-surface .site-footer .footer-subscribe-layout .subscribe-button{
 display:inline-flex!important;align-items:center!important;justify-content:center!important;
 justify-self:end!important;min-width:0!important;max-width:100%!important;
 min-height:44px!important;width:auto!important;height:auto!important;
 margin:0!important;padding:12px clamp(14px,2.8vw,24px)!important;
 border:0!important;border-radius:999px!important;white-space:nowrap!important;
 background:#F8FAFF!important;color:#0B0D12!important;box-shadow:none!important;
 font:500 clamp(13px,1.45vw,16px)/1.2 var(--font-ui)!important
}
html body.application-surface .site-footer>.footer-newsletter-disclosure+.footer-directory{
 margin:0!important;padding:0 clamp(18px,4.3vw,66px) 18px!important;
 background:#0B0D12!important
}
html body.application-surface .site-footer .footer-directory-group{
 border:0!important;background:transparent!important
}
/* Explore begins immediately below Subscribe with the same hairline that
   divides all subsequent directory rows. No separate footer subsection gap. */
html body.application-surface .site-footer .footer-directory>.footer-directory-group:first-child,
html body.application-surface .site-footer .footer-directory>.footer-directory-group+.footer-directory-group{
 border-top:1px solid rgba(176,184,195,.16)!important
}
html body.application-surface .site-footer :is(.footer-brand-lockup,.footer-bottom){
 background:#0B0D12!important;border:0!important;box-shadow:none!important
}
@media(max-width:620px){
 html body.application-surface .site-footer>.footer-newsletter-disclosure{
  padding-inline:12px!important;margin-bottom:0!important
 }
 html body.application-surface .site-footer>.footer-newsletter-disclosure+.footer-directory{
  padding:0 12px 18px!important
 }
 html body.application-surface .site-footer .footer-subscribe-layout{
  grid-template-columns:minmax(0,1fr) auto!important;gap:10px!important
 }
 html body.application-surface .site-footer .footer-subscribe-layout .subscribe-button{
  min-width:0!important;width:auto!important;max-width:100%!important;
  padding:12px 14px!important;font-size:14px!important
 }
 html body.application-surface main .share-inline-options{gap:6px!important}
 html body.application-surface main .share-inline-options :is(button,a){
  padding:8px 10px!important;font-size:12px!important
 }
}
@media(max-width:360px){
 html body.application-surface .site-footer>.footer-newsletter-disclosure{padding-inline:12px!important}
 html body.application-surface .site-footer .footer-subscribe-layout{gap:8px!important}
 html body.application-surface .site-footer .footer-subscribe-layout .subscribe-button{
  padding:12px!important;font-size:13px!important
 }
 html body.application-surface .site-footer .footer-subscribe-layout input{font-size:16px!important}
}
@media(prefers-reduced-motion:reduce){
 html body.application-surface .site-footer .footer-directory-group>summary::after{transition:none!important}
}

/* Closed copy alerts stay hidden in every mode, regardless of native toast CSS. */
html body.application-surface .toast[hidden]{display:none!important}
html body.application-surface .share-status.sr-only{
 position:absolute!important;width:1px!important;height:1px!important;
 overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important;
 border:0!important;padding:0!important;margin:-1px!important
}

/* Optional public measurement stays in flow and never covers the reader. */
.insights-choice,.insights-preferences{box-sizing:border-box;max-width:1100px;margin:32px auto;padding:24px;display:flex;align-items:center;gap:24px;border:1px solid var(--app-border,#DCE1EB);border-radius:16px;background:var(--app-card,#F8FAFF);color:var(--app-text,#171E29);font-family:var(--font-ui,sans-serif)}
.insights-choice p,.insights-preferences p{font-size:13px;line-height:1.7;max-width:720px}.insights-choice>div:first-child{flex:1}.insights-choice>div:last-child{display:flex;gap:10px;flex-wrap:wrap}.insights-choice button,.insights-preferences button{min-height:44px;border:1px solid currentColor;border-radius:999px;padding:10px 16px;background:transparent;color:inherit;font:inherit;cursor:pointer}.insights-choice a{color:inherit;text-decoration:underline}.insights-preferences{display:block}.insights-choice button:focus-visible,.insights-preferences button:focus-visible{outline:2px solid currentColor;outline-offset:4px}@media(max-width:720px){.insights-choice{margin:20px 16px;flex-direction:column;align-items:flex-start;padding:20px}.insights-preferences{padding:18px}}
/* Shared app controls: contained fields, coherent focus and readable account security. */
html body.application-surface :is(input,select,textarea,button,.platform-card,.platform-panel){box-sizing:border-box}
html body.application-surface :is(input:not([type=checkbox]):not([type=radio]),select,textarea){max-width:100%;min-width:0;font-size:16px}
html body.application-surface :is(.platform-button,.platform-button-secondary){display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:11px 18px;border-radius:12px;line-height:1.4;text-decoration:none;word-break:normal;overflow-wrap:normal}
html body.application-surface .platform-field{min-width:0;display:grid;gap:8px}
html body.application-surface .platform-field :is(input,select,textarea){width:100%;padding:12px 14px;border-radius:10px;min-height:46px}
html body.application-surface :is(button,input,select,textarea,a,summary):focus-visible{outline:2px solid var(--app-text);outline-offset:4px}
html body.application-surface #account-security{scroll-margin-top:100px;min-width:0}
.mfa-enrollment{display:grid;gap:16px;margin-top:20px;padding-top:22px;border-top:1px solid var(--app-border);max-width:600px}
.mfa-enrollment h3,.mfa-code-form h3{margin:0;font-size:21px;line-height:1.4}.mfa-enrollment>p{line-height:1.7;margin:0;color:var(--app-secondary)}
.mfa-qr{display:block;width:216px;height:216px;max-width:100%;object-fit:contain;padding:12px;background:#fff;border:1px solid var(--app-border);border-radius:14px}
.mfa-manual summary{min-height:44px;display:flex;align-items:center;cursor:pointer;font-size:14px}.mfa-manual code{display:block;overflow-wrap:anywhere;padding:14px;background:var(--app-subtle);border:1px solid var(--app-border);border-radius:10px;font-size:15px;line-height:1.8;user-select:all}
.mfa-code-form{display:grid;gap:16px;max-width:440px;width:100%;padding-block:12px}.mfa-code-form .platform-field{display:grid!important;gap:8px}.mfa-code-form label{font-size:13px!important;line-height:1.5;text-transform:none!important;letter-spacing:0!important}.mfa-code-form input[name=code]{display:block;width:100%;height:52px;font-size:22px!important;letter-spacing:.25em;font-variant-numeric:tabular-nums;line-height:1.3}.mfa-code-form button{justify-self:start}
