/* Site Theme controls and the approved image treatment. */
.hero{position:relative;isolation:isolate}
.hero::before,.hero::after{content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;display:var(--hero-photo-display,none);border-radius:inherit}
.hero::before{background-image:var(--hero-image);background-size:cover;background-position:var(--hero-position,center);filter:var(--hero-photo-filter,none)}
.hero::after{background:rgba(0,0,0,var(--hero-overlay,.55));background:var(--hero-photo-mask,rgba(0,0,0,var(--hero-overlay,.55)))}
html[data-theme=dark]{--hero-photo-filter:grayscale(1);--hero-photo-mask:linear-gradient(180deg,rgba(1,30,47,.57),rgba(1,30,47,.78))}
html[data-theme=dark] .hero::after{background:linear-gradient(180deg,color-mix(in srgb,var(--hero-tint) 57%,transparent),color-mix(in srgb,var(--hero-tint) 78%,transparent)),rgba(0,0,0,calc(var(--hero-overlay,.55) * .35))}
@media(prefers-color-scheme:dark){html:not([data-theme=light]){--hero-photo-filter:grayscale(1);--hero-photo-mask:linear-gradient(180deg,rgba(1,30,47,.57),rgba(1,30,47,.78))}html:not([data-theme=light]) .hero::after{background:linear-gradient(180deg,color-mix(in srgb,var(--hero-tint) 57%,transparent),color-mix(in srgb,var(--hero-tint) 78%,transparent)),rgba(0,0,0,calc(var(--hero-overlay,.55) * .35))}}
/* Autofill retains password-manager support and adopts the already-selected theme. */
.admin-page input:-webkit-autofill,.admin-page input:-webkit-autofill:hover,.admin-page input:-webkit-autofill:focus,.admin-page input:-webkit-autofill:active{-webkit-text-fill-color:var(--ink);caret-color:var(--ink);-webkit-box-shadow:0 0 0 1000px var(--raised) inset!important;box-shadow:0 0 0 1000px var(--raised) inset!important}
.admin-page input:autofill{color:var(--ink);background:var(--raised);box-shadow:0 0 0 1000px var(--raised) inset!important;caret-color:var(--ink)}
.settings-breadcrumb{color:var(--soft);font-size:12px;margin:0 0 8px}.settings-menu summary{cursor:pointer;list-style:none;padding:10px 12px;display:flex;align-items:center;justify-content:space-between;min-height:44px;box-sizing:border-box}.settings-menu summary::-webkit-details-marker{display:none}.settings-menu summary:after{content:'›';font-size:22px}.settings-menu[open] summary:after{transform:rotate(90deg)}.settings-submenu{display:flex;flex-direction:column;align-items:stretch;padding-left:12px}.settings-submenu a{display:block;font-size:13px!important;padding:10px!important}.settings-menu summary:focus-visible{outline:2px solid var(--accent)}
.theme-editor-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(270px,1fr);gap:18px;align-items:start}.theme-editor-grid>*{min-width:0}.theme-editor-grid .card{padding:20px;margin-bottom:18px}.theme-editor-grid h3{margin:0 0 12px}.theme-color-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px}.theme-color-label{font-size:12px;color:var(--soft);display:flex;flex-direction:column;gap:5px}.theme-color-control{display:flex;gap:6px;align-items:center}.theme-color-control input[type=color]{width:38px;height:40px;min-width:38px;border:1px solid var(--line);padding:2px;background:var(--raised);border-radius:5px}.theme-color-control input[type=text]{min-width:0;width:100%;font:13px monospace;padding:9px 5px}.theme-type-row{border-top:1px solid var(--line);padding:8px 0}.theme-type-row summary{cursor:pointer;min-height:36px;font-weight:600}.theme-type-row summary span{font-weight:400;font-size:12px;color:var(--soft);margin-left:10px}.theme-type-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:10px 0}.theme-type-fields label{display:flex;flex-direction:column;font-size:12px;gap:5px}.theme-type-fields input,.theme-type-fields select{width:100%;min-width:0;font-size:14px;height:40px;box-sizing:border-box;padding:0 7px}.theme-preview-column{position:sticky;top:16px}.theme-preview-controls{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:10px}.theme-preview-controls label{font-size:12px}.theme-preview-controls select{height:36px;padding:0 7px}.theme-preview{background:var(--bg);color:var(--ink);border:1px solid var(--line);border-radius:10px;padding:20px;overflow-wrap:anywhere;overflow:hidden}.theme-preview h1,.theme-preview h2,.theme-preview h3,.theme-preview h4,.theme-preview h5,.theme-preview h6{margin:0 0 12px}.theme-preview-brand{display:flex;align-items:center;gap:8px;font-family:Georgia,serif;font-weight:600;font-size:17px;margin-bottom:24px}.theme-preview-brand svg{flex:none}.theme-preview-brand em{color:var(--brand)}.theme-preview-panel{background:var(--raised);border:1px solid var(--line);border-radius:8px;padding:16px}.theme-preview-soft{color:var(--soft)}.theme-preview-link{color:var(--accent)}.theme-preview-nav{display:flex;justify-content:space-around;background:var(--mobile-nav-bg);border:1px solid var(--mobile-nav-line);border-radius:30px;padding:15px 5px;margin-top:15px}.theme-preview hr{border:0;border-top:1px solid var(--line);margin:16px 0}.theme-preview [data-preview-role=label]{letter-spacing:.18em;color:var(--accent)}.theme-save-row{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0 35px}.theme-preview .btn{font-family:inherit}.theme-preview [data-preview-role=verse]{font-family:Georgia,serif}.theme-preview [data-preview-role^=h]{font-family:Georgia,serif}.theme-preview [data-preview-role=h1]{font-size:32px}.theme-preview [data-preview-role=h2]{font-size:26px}.theme-preview [data-preview-role=h3]{font-size:22px}
@media(max-width:1000px){.theme-editor-grid{grid-template-columns:minmax(0,1fr)}.theme-preview-column{position:static}.theme-preview{max-width:600px}}
@media(max-width:420px){.theme-color-grid{grid-template-columns:1fr}.theme-editor-grid .card{padding:15px}}
.rich-content{overflow-wrap:anywhere}.rich-content>:first-child{margin-top:0}.rich-content>:last-child{margin-bottom:0}.rich-content p{margin:0 0 .8em}.rich-content ul,.rich-content ol{padding-left:1.5em}.rich-content li{margin:.3em 0}.rich-content blockquote{border-left:3px solid var(--accent);border-radius:0;margin:1em 0;padding:.2em 1em}.rich-content img{max-width:100%;height:auto}.rich-content table{max-width:100%;border-collapse:collapse}.rich-content th,.rich-content td{border:1px solid var(--line);padding:8px}.rich-content h1,.rich-content h2,.rich-content h3,.rich-content h4,.rich-content h5,.rich-content h6{font-family:var(--serif);line-height:1.2}.rich-inline>p:only-child{display:inline}.subs .rich-content ul,.subs .rich-content ol{list-style:revert}.subs .rich-content li{padding:0}.subs .rich-content li::before{content:none}

:where(.rich-paragraph){margin:1em 0}.hero .sub{color:var(--hero-soft);max-width:52ch;margin:0 auto 24px}

.macro-row .rich-paragraph{margin:0}.history-panel .rich-paragraph{margin:0;line-height:1.55}.timeline-explanation .rich-paragraph{line-height:1.7;max-width:76ch}.timeline-book-span .rich-paragraph,.timeline-dating .rich-paragraph{font-size:14px;line-height:1.65;margin:8px 0}
@media(max-width:720px){.timeline-explanation .rich-paragraph{font-size:15px}}

.rich-content a{color:var(--accent);text-decoration:underline}

/* Align the visible heading cap with the sidebar on side-by-side admin pages. */
.admincontent > .page-h,.admincontent > .ref-h h2,.admincontent > .ref-h .page-h{line-height:1.1}
.admincontent > .ref-h{align-items:flex-start}
@media(min-width:821px){
  .adminwrap-heading-crumb{padding-top:52px}
  .adminwrap-heading-crumb .admincontent{position:relative}
  .admincontent > .settings-breadcrumb,.admincontent > .adminback{position:absolute;top:-28px;left:0;margin:0}
  .admincontent > .page-h,.admincontent > .ref-h h2{margin-top:-.13em}
  @supports(text-box-trim:trim-start){
    .admincontent > .page-h,.admincontent > .ref-h h2{margin-top:0;text-box-trim:trim-start;text-box-edge:cap alphabetic}
  }
}

.rich-content figure{max-width:100%;margin:1em 0}.rich-content figcaption{color:var(--soft);font-size:.9em;margin-top:.4em}
