/* Shared reading layout; semantic section styles are assigned by the content metadata. */
body:has(.blog-editorial) { overflow-x: clip; overflow-y: visible; }
.blog-editorial { --editorial-line: rgba(124,108,255,.2); --editorial-surface: rgba(255,255,255,.68); }
.blog-editorial .blog-article-shell { max-width: 1120px; }
.blog-editorial .blog-article-hero h1 { max-width: 970px; font-size: clamp(34px,4.6vw,60px); line-height: 1.1; text-wrap: balance; }
.blog-editorial .blog-article-lead { max-width: 700px; }
.blog-editorial .blog-article-cover { max-height: 340px; object-fit: cover; box-shadow: none; border-radius: 24px; }
.blog-editorial .blog-article-hero { padding-bottom: 0; }
.blog-editorial .blog-content-layout { max-width: 1120px; grid-template-columns: minmax(0,700px) minmax(230px,280px); gap: 56px; padding-top: 40px; }
.blog-editorial .blog-content { min-width: 0; }
.blog-editorial .editorial-icon { width: 22px; height: 22px; flex: 0 0 22px; }
.blog-editorial .editorial-eyebrow { display: flex; align-items: center; gap: 10px; margin: 0 0 18px; font-size: 12px; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; color: var(--accent-dark); }
.blog-editorial .editorial-overview { padding: clamp(24px,4vw,36px); border: 1px solid var(--editorial-line); border-radius: 24px; background: var(--editorial-surface); margin-bottom: 52px; }
.blog-editorial .editorial-overview h2 { font-size: clamp(26px,3vw,35px); line-height: 1.2; }
.blog-editorial .editorial-overview ul { padding: 0; list-style: none; gap: 16px; }
.blog-editorial .editorial-overview li { display: flex; gap: 12px; font-size: 16px; line-height: 1.65; }
.blog-editorial .editorial-overview li svg { margin-top: 3px; color: var(--accent-dark); }
.blog-editorial .editorial-section { scroll-margin-top: 120px; }
.blog-editorial .editorial-section h2 { font-size: clamp(26px,3vw,34px); line-height: 1.2; text-wrap: balance; }
.blog-editorial .editorial-section p { line-height: 1.85; }
.blog-editorial .editorial-section .editorial-eyebrow { line-height: 1.4; }
.editorial-number { display: inline-grid; place-items: center; width: 30px; height: 30px; border: 1px solid var(--editorial-line); border-radius: 50%; }
.blog-editorial .editorial-examples ul { list-style: none; padding: 0; gap: 12px; }
.blog-editorial .editorial-examples li { padding: 18px 22px; border-left: 3px solid #ad9adc; border-radius: 0 16px 16px 0; background: var(--editorial-surface); }
.blog-editorial .editorial-practice { padding: clamp(22px,4vw,32px); border: 1px solid var(--editorial-line); border-radius: 24px; background: linear-gradient(125deg,rgba(214,229,219,.32),var(--editorial-surface)); }
.blog-editorial .editorial-practice ul { list-style: none; padding: 0; counter-reset: steps; gap: 18px; }
.blog-editorial .editorial-practice li { display: flex; gap: 14px; counter-increment: steps; }
.blog-editorial .editorial-practice li::before { content: counter(steps,decimal-leading-zero); color: var(--accent-dark); font-weight: 750; }
.editorial-sidebar { position: sticky; top: 100px; max-height: calc(100dvh - 120px); overflow-y: auto; scrollbar-width: thin; overscroll-behavior: contain; padding-right: 6px; }
.editorial-toc ol { list-style: none; margin: 0; padding: 0; display: grid; gap: 4px; }
.editorial-toc a { display: flex; align-items: baseline; gap: 12px; padding: 12px 10px; border-left: 2px solid transparent; color: var(--text-muted); font-size: 14px; line-height: 1.5; text-decoration: none; border-radius: 0 10px 10px 0; transition: background .18s,color .18s; }
.editorial-toc a span { font-size: 11px; opacity: .7; }
.editorial-toc a:hover,.editorial-toc a[aria-current] { color: var(--accent-dark); background: rgba(124,108,255,.07); border-left-color: var(--accent-dark); }
.blog-editorial a:focus-visible,.editorial-toc summary:focus-visible { outline: 3px solid var(--accent-dark); outline-offset: 4px; }
.editorial-side-note { margin-top: 28px; padding: 24px 12px 0; border-top: 1px solid var(--editorial-line); }
.editorial-side-note p { font-size: 17px; line-height: 1.65; }
.editorial-side-note a { color: var(--accent-dark); font-size: 14px; text-underline-offset: 4px; }
.editorial-toc--mobile { display: none; }
html[data-theme="dark"] .blog-editorial { --editorial-surface: rgba(28,34,50,.72); --editorial-line: rgba(185,168,255,.23); }
@media(max-width:900px) {
  .blog-editorial .blog-content-layout { grid-template-columns: minmax(0,1fr); max-width: 760px; }
  .editorial-sidebar { display: none; }
  .editorial-toc--mobile { display: block; margin: 0 0 40px; border-block: 1px solid var(--editorial-line); padding: 6px 0; }
  .editorial-toc summary { display: flex; align-items: center; gap: 12px; min-height: 52px; cursor: pointer; font-weight: 700; list-style: none; }
  .editorial-toc summary::-webkit-details-marker { display: none; }
  .editorial-toc summary > span { margin-left: auto; font-size: 24px; }
  .editorial-toc[open] summary > span { transform: rotate(45deg); }
  .editorial-toc ol { padding-bottom: 14px; }
  .blog-editorial .editorial-overview { margin-bottom: 24px; }
}
@media(max-width:620px) {
  .blog-editorial .blog-article-hero h1 { font-size: 34px; }
  .blog-editorial .blog-article-cover { aspect-ratio: 16/9; border-radius: 18px; }
  .blog-editorial .blog-content-layout { padding-top: 24px; }
  .blog-editorial .editorial-section + .editorial-section { margin-top: 36px; }
  .blog-editorial .editorial-examples li { padding: 16px 18px; }
  .blog-editorial .editorial-section p,.blog-editorial .editorial-section li { font-size: 17px; }
}
@media(prefers-reduced-motion:reduce) { .blog-editorial *, .blog-editorial *::before { transition: none !important; scroll-behavior: auto !important; } }

.blog-editorial .editorial-overview h2.editorial-eyebrow { font-size: 12px; line-height: 1.5; }
.blog-editorial .editorial-summary { font-size: clamp(18px,2vw,22px); line-height: 1.65; margin: 0; text-wrap: pretty; }
.blog-editorial #article-sources { scroll-margin-top: 120px; }
.blog-editorial .editorial-section-body > :last-child { margin-bottom: 0; }
.blog-editorial .editorial-section-body { overflow-wrap: anywhere; }
.blog-editorial .editorial-preparation,
.blog-editorial .editorial-steps,
.blog-editorial .editorial-support:not(.editorial-long),
.blog-editorial .editorial-comparison:not(.editorial-long) {
  padding: clamp(22px,4vw,32px); border: 1px solid var(--editorial-line); border-radius: 24px;
  background: var(--editorial-surface);
}
.blog-editorial .editorial-preparation,
.blog-editorial .editorial-steps { background: linear-gradient(125deg,rgba(214,229,219,.25),var(--editorial-surface)); }
.blog-editorial .editorial-preparation ul { list-style: none; padding: 0; counter-reset: preparation; }
.blog-editorial .editorial-preparation li { display: flex; gap: 14px; counter-increment: preparation; }
.blog-editorial .editorial-preparation li::before { content: counter(preparation,decimal-leading-zero); font-weight: 750; color: var(--accent-dark); }
.blog-editorial .editorial-steps ol { padding-left: 0; display: grid; gap: 18px; list-style: none; }
.blog-editorial .editorial-steps li { padding: 0 0 18px; border-bottom: 1px solid var(--editorial-line); }
.blog-editorial .editorial-steps li:last-child { padding-bottom: 0; border-bottom: 0; }
/* Recommendations are alternatives, not a prescribed order. */
.blog-editorial .editorial-practice ul { counter-reset: none; }
.blog-editorial .editorial-practice li::before { content: '•'; }
.blog-editorial .editorial-context > h2,
.blog-editorial .editorial-therapy > h2 { padding-bottom: 18px; border-bottom: 1px solid var(--editorial-line); }
.blog-editorial .editorial-caution,
.blog-editorial .editorial-safety { padding: 26px; border-left: 3px solid #ad9adc; border-radius: 0 20px 20px 0; background: rgba(124,108,255,.055); }
.blog-editorial .editorial-safety { border-color: #ae7d46; background: rgba(176,132,74,.085); }
.blog-editorial .editorial-safety > .editorial-eyebrow { color: #80572d; }
html[data-theme="dark"] .blog-editorial .editorial-safety > .editorial-eyebrow { color: #e8bf8c; }
.blog-editorial .editorial-signs li::marker { color: var(--accent-dark); }
.blog-editorial .editorial-examples:not(:has(ul)) .editorial-section-body { padding: 20px 24px; border-left: 3px solid #ad9adc; border-radius: 0 16px 16px 0; background: var(--editorial-surface); }
/* Long essays retain an open reading column, with emphasis on the heading only. */
.blog-editorial .editorial-long { padding: 0; background: none; border: 0; border-radius: 0; }
.blog-editorial .editorial-long > h2 { padding-left: 18px; border-left: 3px solid var(--editorial-line); }
.blog-editorial .editorial-long.editorial-safety > h2 { border-left-color: #ae7d46; }
.blog-editorial .editorial-long.editorial-examples li { padding: 0; border: 0; border-radius: 0; background: none; }
@media(max-width:620px) {
  .blog-editorial .editorial-caution,.blog-editorial .editorial-safety { padding: 20px; }
  .blog-editorial .editorial-long { padding: 0; }
  .blog-editorial .editorial-examples:not(:has(ul)) .editorial-section-body { padding: 18px; }
}
/* A single optional invitation after the article, never interrupting the reading. */
.blog-editorial .article-check-offer{display:flex;align-items:flex-start;gap:22px;margin:42px 0;padding:30px;border:1px solid var(--editorial-line);border-radius:24px;background:linear-gradient(135deg,var(--editorial-surface),rgba(124,108,255,.07))}
.article-check-icon{display:grid;place-items:center;width:50px;height:50px;flex-shrink:0;border-radius:16px;background:rgba(124,108,255,.1);color:#6953cf;font-size:25px}
.article-check-body{min-width:0}.article-check-eyebrow{font-size:11px;font-weight:750;letter-spacing:.07em;text-transform:uppercase;color:#6953cf}
.blog-editorial .article-check-offer h2{font-size:clamp(23px,2.6vw,29px);line-height:1.25;margin:12px 0 14px;letter-spacing:-.025em}
.blog-editorial .article-check-offer p{font-size:15px;line-height:1.75;margin:0 0 22px}
.article-check-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap;margin-bottom:17px}
.blog-editorial .article-check-actions a{display:inline-flex;justify-content:center;align-items:center;gap:20px;min-height:48px;padding:12px 19px;border:1px solid rgba(105,83,207,.35);border-radius:13px;background:rgba(124,108,255,.08);color:#5945b9;text-decoration:none;font-size:14px;font-weight:750;transition:background .15s}
.blog-editorial .article-check-actions a:hover{background:rgba(124,108,255,.16)}.article-check-actions a:focus-visible{outline:3px solid #8c76e8;outline-offset:4px}.article-check-actions>span{font-size:12px;color:var(--text-muted)}
.article-check-body small{display:block;font-size:12px;line-height:1.7;color:var(--text-muted)}
.article-check-offer--phq-9 .article-check-icon{color:#a3637d;background:rgba(185,120,150,.12)}
html[data-theme="dark"] .article-check-offer{background:linear-gradient(135deg,#1c2133,#26243a)}
html[data-theme="dark"] .article-check-icon,html[data-theme="dark"] .article-check-eyebrow,html[data-theme="dark"] .article-check-actions a{color:#c2b2ff}
html[data-theme="dark"] .article-check-offer--phq-9 .article-check-icon{color:#e4adc4}
@media(max-width:700px){.blog-editorial .article-check-offer{padding:22px 20px;gap:16px;flex-direction:column;margin:32px 0;border-radius:21px}.blog-editorial .article-check-offer h2{font-size:25px}.article-check-actions{align-items:stretch;flex-direction:column;gap:12px}.article-check-actions>span{font-size:12px}.blog-editorial .article-check-offer p{font-size:14px}.article-check-icon{width:44px;height:44px;font-size:23px}}
@media(prefers-reduced-motion:reduce){.blog-editorial .article-check-actions a{transition:none}}

.article-check-art{width:140px;height:auto;flex-shrink:0;color:#8a75b5;align-self:center}.article-check-offer--saying-no .article-check-art{color:#68998e}.blog-editorial .article-check-offer--saying-no{background:linear-gradient(135deg,var(--editorial-surface),rgba(104,153,142,.09))}html[data-theme="dark"] .article-check-art{color:#c0a9e6}html[data-theme="dark"] .article-check-offer--saying-no .article-check-art{color:#9acbbd}@media(max-width:700px){.article-check-art{width:156px;align-self:flex-start;margin:-8px 0 -4px}}

/* Contextual invitations share the directory's compact illustrated style. */
.blog-editorial .article-check-offer{position:relative;display:block;padding:27px 140px 25px 27px;border-radius:20px;background:var(--editorial-surface);margin:34px 0}
.article-check-offer .directory-illustration{position:absolute;right:22px;top:32px;width:98px;height:85px;color:#8172bd;--check-card:var(--editorial-surface)}
.article-check-offer--phq-9 .directory-illustration,.article-check-offer--self-criticism .directory-illustration{color:#b47d91}.article-check-offer--saying-no .directory-illustration,.article-check-offer--navigator .directory-illustration{color:#65968a}
.blog-editorial .article-check-offer h2{font-size:25px;line-height:1.3;margin:12px 0 10px}.blog-editorial .article-check-offer p{font-size:14px;line-height:1.65;margin-bottom:16px}
.article-check-eyebrow{font-size:10px;letter-spacing:.07em}.article-check-actions{gap:8px 18px;margin-bottom:12px}.blog-editorial .article-check-actions a{background:transparent;border:0;padding:0;min-height:44px;font-size:14px;justify-content:flex-start;gap:10px}.blog-editorial .article-check-actions a:hover{background:transparent;text-decoration:underline;text-underline-offset:4px}.article-check-actions>span{font-size:11px}.article-check-body small{font-size:11px}
html[data-theme="dark"] .article-check-offer .directory-illustration{color:#b8a5f4}html[data-theme="dark"] .article-check-offer--phq-9 .directory-illustration,html[data-theme="dark"] .article-check-offer--self-criticism .directory-illustration{color:#daa4b8}html[data-theme="dark"] .article-check-offer--saying-no .directory-illustration,html[data-theme="dark"] .article-check-offer--navigator .directory-illustration{color:#9dccc0}
@media(max-width:700px){.blog-editorial .article-check-offer{padding:23px 20px}.article-check-offer .directory-illustration{right:16px;top:18px;width:64px;height:56px}.article-check-eyebrow{display:block;padding-right:60px;min-height:42px;line-height:1.6}.blog-editorial .article-check-offer h2{font-size:23px;margin-top:12px}.article-check-actions{align-items:flex-start;gap:0}.blog-editorial .article-check-actions a{width:100%;min-height:48px}.article-check-actions>span{margin:3px 0 9px}}

/* Keep preparation list numbers together on narrow screens. */
.blog-editorial .editorial-preparation li::before{flex-shrink:0;min-width:2ch;white-space:nowrap}
