/* Shared, optional article features; existing boxed framing stays in single-post.css. */
.originals-post-introduction { font-size: 1.18em; line-height: 1.65; color: var(--originals-reference-muted-color, var(--originals-muted)); max-width: 70ch; margin-block: 0 28px; overflow-wrap: anywhere; }
.originals-post-introduction > :first-child { margin-block-start: 0; }
.originals-post-introduction > :last-child { margin-block-end: 0; }
.originals-article-content :is(h2,h3) { scroll-margin-block-start: calc(var(--originals-header-scroll-offset, 0px) + 24px); }
.originals-reading-progress { position: fixed; inset-inline: 0; top: var(--originals-progress-top, 0px); height: var(--originals-progress-height, 3px); z-index: 90; pointer-events: none; }
.originals-reading-progress[hidden] { display: none; }
.originals-reading-progress > span { display: block; height: 100%; background: var(--originals-progress-color, #245c46); transform: scaleX(0); transform-origin: left center; }
[dir="rtl"] .originals-reading-progress > span { transform-origin: right center; }
.originals-author-biography { padding-block: 24px; border-block: 1px solid var(--originals-line); }
body .originals-main .originals-author-biography h2, body .originals-main .originals-related-posts > h2 { font-size: clamp(22px, 2.2vw, 32px); line-height: 1.25; margin-block: 0 20px; }
.originals-author-biography > a { display: inline-block; margin-top: 12px; font-size: .9em; }
.originals-related-posts { margin-block: 40px; }
.originals-related-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; }
.originals-related-card { min-width: 0; }
.originals-related-image { display: block; margin-bottom: 14px; }
.originals-related-image img { display: block; width: 100%; height: auto; aspect-ratio: 1.5; object-fit: cover; border-radius: 8px; }
.originals-related-card time { color: var(--originals-reference-muted-color, var(--originals-muted)); font-size: .8rem; }
body .originals-main .originals-related-card h3 { font-size: clamp(19px, 2vw, 25px); line-height: 1.3; margin: 8px 0 0; }
.originals-related-card h3 a { text-decoration: none; }
.originals-related-card h3 a:hover { text-decoration: underline; }

/* Shared article tools use theme typography/buttons, with no external embeds. */
.originals-article-share { margin-block: 32px; padding-block: 24px; border-block: 1px solid var(--originals-line); }
body .originals-main .originals-article-share > h2 { margin: 0 0 16px; color: inherit; font: 600 .9rem/1.4 var(--originals-font-body); letter-spacing: 0; text-transform: none; }
.originals-share-controls { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; }
.originals-share-controls input[data-originals-share-url] { flex: 1 1 220px; min-width: 0; width: 100%; color: inherit; font: inherit; font-size: .85rem; border-radius: 6px; }
.originals-share-controls [hidden] { display: none; }
.originals-share-email { display: inline-flex; padding: 8px 0; font-size: .9rem; }
.originals-share-status { margin: 12px 0 0; font-size: .85rem; }
.originals-share-status:empty { margin: 0; }
.originals-related-inline { clear: both; margin-block: 40px; padding-block: 28px; border-block: 1px solid var(--originals-line); font-size: 1rem; line-height: 1.5; }
.originals-related-inline .originals-related-grid { grid-template-columns: repeat(var(--originals-related-columns, 2), minmax(0, 1fr)); gap: 24px; }
.originals-related-inline .originals-related-card .originals-related-image { text-decoration: none; }
.originals-article-content .originals-related-inline .originals-related-card h3 { margin: 8px 0 0; }
body .originals-main .originals-reference .originals-article-content .originals-related-inline > h2 { font-size: clamp(22px,2.2vw,32px); line-height: 1.25; margin: 0 0 20px; }
@media (max-width:780px) { .originals-related-inline .originals-related-grid { grid-template-columns: repeat(var(--originals-related-mobile-columns, 1), minmax(0, 1fr)); gap: 20px; } }
@media (max-width:520px) { .originals-related-posts:not(.originals-related-inline) .originals-related-grid { grid-template-columns: 1fr; } }
@media print { .originals-article-share { display: none; } }
