/* One continuous contents track, moved by page progress, never independently scrolled. */
.article-aside {top:var(--contents-top,125px);overflow:visible;max-height:none}
.article-aside:not(.progress-ready) {position:static}
.article-aside nav {position:relative;margin-top:18px}
.article-aside nav ol {position:relative;list-style:none;margin:0;padding:6px 4px;transition:none}
.article-aside nav li {margin:0;padding:0}
.article-aside nav a {display:grid;grid-template-columns:25px minmax(0,1fr);gap:9px;position:relative;padding:10px 4px 10px 12px;border-left:1px solid var(--line);font:500 14px/1.5 var(--sans);color:var(--muted);text-decoration:none}
.article-aside nav a[data-progress=completed] {border-left:2px solid var(--accent);padding-left:11px}
.article-aside nav a[aria-current] {border-left:3px solid var(--accent);padding-left:10px;color:var(--ink)}
.article-aside nav a[aria-current] .section-marker {color:var(--accent);font-weight:600}
.article-aside nav a[aria-current]::before {content:'';position:absolute;left:-5px;top:17px;width:7px;height:7px;background:var(--accent);border-radius:50%}
:root[data-presentation=restorative] .article-aside nav a[aria-current]::before {width:5px;height:5px;left:-4px;top:18px}
.section-marker {font-size:12px;font-variant-numeric:tabular-nums;padding-top:2px}
.article-contents-toggle {display:none}
.article-aside[data-contents-mode=track] nav {height:var(--contents-height);overflow:clip;--fade-top:0px;--fade-bottom:0px;mask-image:linear-gradient(to bottom,transparent,#000 var(--fade-top),#000 calc(100% - var(--fade-bottom)),transparent)}
.article-aside[data-contents-mode=track] nav[data-earlier=true] {--fade-top:16px}
.article-aside[data-contents-mode=track] nav[data-later=true] {--fade-bottom:20px}
.article-aside nav:focus-within {mask-image:none}
.article-prose {display:flow-root}
.article-body {container-type:inline-size;container-name:article-reading}
.article-prose :is(h2,h3) {clear:both;scroll-margin-top:var(--article-anchor-offset,155px)}
.article-prose :is(h2,h3):focus-visible {outline:2px solid var(--focus);outline-offset:8px}
/* shared-scripture:start – also used by the Book CSS build */
.scripture-ref {text-decoration-style:dotted;text-underline-offset:.2em;white-space:normal}
.scripture-preview {position:fixed;z-index:1000;box-sizing:border-box;max-height:calc(100dvh - 24px);overflow:auto;border:1px solid var(--control-line);background:var(--paper);color:var(--ink);box-shadow:0 12px 36px #0003;padding:14px;font:15px/1.55 var(--sans)}
.scripture-preview-controls {display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid var(--line);padding-bottom:8px}
.scripture-preview button {min-height:44px;padding:6px 12px;border:1px solid var(--control-line);background:var(--surface);color:var(--ink);font:inherit;cursor:pointer}
.scripture-preview iframe {display:block;width:100%;border:0;margin:10px 0;background:white}
.scripture-preview-status {margin:10px 0}
.scripture-preview-destination {display:block;padding:10px 0;color:var(--accent);font-weight:500}
/* shared-scripture:end */

@media(max-width:1000px) {
 .article-layout {display:block;max-width:720px}
 .article-aside.progress-ready {position:sticky;top:var(--contents-top,95px);z-index:8;margin:0 0 28px;padding:0;border-top:0;background:var(--bg);box-shadow:0 8px 14px -14px var(--ink)}
 .progress-ready .article-contents-heading,.progress-ready:not(.contents-open) #article-contents {display:none}
 .progress-ready .article-contents-toggle {display:grid;grid-template-columns:1fr auto;grid-template-rows:repeat(3,19px);gap:2px 12px;width:100%;text-align:left;border:0;border-block:1px solid var(--line);background:var(--bg);color:var(--ink);padding:10px 4px;font:13px/1.45 var(--sans);cursor:pointer;min-height:83px}
 .article-mobile-count {grid-row:2;grid-column:1;font-size:12px;color:var(--muted)}
 .article-current-label {grid-row:3;grid-column:1 / -1;font-size:13px;white-space:nowrap;text-overflow:ellipsis;overflow:hidden;min-width:0}
 .article-contents-action {grid-row:1;grid-column:2;color:var(--accent);font-size:12px}
 .article-aside.progress-ready.contents-open {position:relative;top:auto;scroll-margin-top:calc(var(--contents-top) + 12px);box-shadow:none}
 .article-aside nav {height:auto;overflow:visible;mask-image:none}
 .article-aside nav ol {transform:none}
 .article-aside nav a {min-height:44px}
}

/* A resource beside the prose: no card background, and no article-ending rule. */
.editorial-callout {box-sizing:border-box;display:flow-root;margin:28px 0;padding:0 0 0 20px;border-left:2px solid var(--accent);background:transparent;color:var(--ink);font:15px/1.55 var(--sans)}
.editorial-callout .editorial-callout-eyebrow {margin:0 0 12px;font:500 11px/1.5 var(--sans);letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}
.editorial-callout .editorial-callout-title {margin:0 0 10px;font:600 21px/1.25 var(--serif);color:var(--ink)}
.editorial-callout .editorial-callout-description {margin:0 0 4px;font:400 14px/1.6 var(--sans);color:var(--muted)}
.editorial-callout-image {display:block;width:92px;height:auto;float:left;margin:0 16px 10px 0;object-fit:contain}
.editorial-callout--article .editorial-callout-image {width:144px;float:right;margin:0 0 12px 20px;aspect-ratio:16/9;object-fit:cover}
.editorial-callout--coaching .editorial-callout-image {width:84px}
.editorial-callout--coaching {display:grid;grid-template-columns:84px minmax(0,1fr);gap:10px 16px}
.editorial-callout--coaching .editorial-callout-copy {display:contents}
.editorial-callout--coaching .editorial-callout-eyebrow,.editorial-callout--coaching .editorial-callout-description,.editorial-callout--coaching .editorial-callout-link {grid-column:1 / -1;margin:0}
.editorial-callout--coaching .editorial-callout-image {float:none;grid-column:1;grid-row:2;margin:0}
.editorial-callout--coaching .editorial-callout-title {grid-column:2;grid-row:2;margin:0}
.editorial-callout--book .editorial-callout-image {box-shadow:0 3px 10px #0002}
.editorial-callout .editorial-callout-link {display:inline-flex;align-items:center;gap:6px;min-height:44px;font:500 14px/1.5 var(--sans);color:var(--accent);text-underline-offset:4px}
.editorial-callout .editorial-callout-link:focus-visible {outline:2px solid var(--accent);outline-offset:4px}
.editorial-callout .editorial-callout-provenance {font:400 13px/1.5 var(--sans);margin:0 0 8px;color:var(--muted)}
:root[data-presentation=restorative] .editorial-callout {border-left:1px solid var(--line);padding-left:22px}
@container article-reading (min-width:700px) {
 .editorial-callout {float:right;clear:right;width:300px;margin:6px 0 24px 32px;padding-left:20px}
 .editorial-callout--article .editorial-callout-image {float:none;width:100%;margin:0 0 14px}
}
@media(max-width:480px){
 .editorial-callout {padding-left:16px}
 .editorial-callout--article .editorial-callout-image {float:none;width:min(100%,240px);margin:0 0 12px}
}
.callout-review-examples {max-width:760px;margin-bottom:80px}
.callout-review-examples>section {margin-bottom:60px;display:flow-root;container-type:inline-size;container-name:article-reading}
.article-list--illustrated>li {display:grid;grid-template-columns:180px minmax(0,1fr);gap:30px;align-items:start}
.article-list-image {margin:4px 0 0;aspect-ratio:4/3;overflow:hidden}
.article-list-image img {display:block;width:100%;height:100%;object-fit:cover}

@media(max-width:680px){
 .article-list--illustrated>li {grid-template-columns:80px minmax(0,1fr);gap:18px}
 .article-list--illustrated h3 {font-size:25px}
}
@media print{.article-aside.progress-ready{display:none}.editorial-callout{break-inside:avoid}}
