/* Article reader restored from the earlier Crónicas theme. */
.single-post .cronicas-reader { padding: 1.15rem; margin: 0 0 1.5rem; border: 1px solid var(--border-color, #dbe3eb); border-radius: 8px; background: var(--surface-color, #f6f8fa); color: var(--text-primary, inherit); }
.single-post .cronicas-reader h2 { font-family: inherit; font-size: 1rem; line-height: 1.4; margin: 0 0 1rem; }
.single-post .cronicas-reader-controls { display: flex; flex-wrap: wrap; align-items: center; gap: .6rem; }
.single-post .cronicas-reader button, .single-post .cronicas-reader select { font: inherit; font-size: .9rem; min-height: 42px; padding: .5rem .7rem; border: 1px solid var(--border-color, #dbe3eb); border-radius: 4px; background: var(--bg-color, #fff); color: inherit; }
.single-post .cronicas-reader button { cursor: pointer; font-weight: 600; }
.single-post .cronicas-reader [data-reader-play] { display: inline-flex; align-items: center; justify-content: center; gap: .45rem; background: #d71920; color: #fff; border-color: #d71920; }
.single-post .cronicas-reader [data-reader-play] svg { flex: 0 0 19px; }
.single-post .cronicas-reader [data-reader-play]:hover:not(:disabled) { background: #b9151b; border-color: #b9151b; }
.single-post .cronicas-reader button:disabled { opacity: .45; cursor: default; }
.single-post .cronicas-reader label { display: flex; align-items: center; gap: .5rem; font-size: .85rem; min-width: 0; }
.single-post .cronicas-reader .cronicas-reader-voice { flex-basis: 100%; }
.single-post .cronicas-reader select { max-width: 100%; min-width: 0; }
.single-post .cronicas-reader-voice select { flex: 0 1 340px; }
.single-post .cronicas-reader-status { font-size: .8rem; margin: .75rem 0 0; line-height: 1.4; }

/* A visible heading identifies the icon-only sharing actions. */
.single-post .post-share-bar { align-items: stretch; padding: 1.25rem; }
.single-post .post-share-bar .share-bar-title { display: block; text-transform: none; letter-spacing: normal; font-size: .875rem; }
.single-post .post-share-bar .share-bar-icons { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: .5rem; width: 100%; max-width: 340px; }
.single-post .post-share-bar .share-btn { display: flex; align-items: center; justify-content: center; width: 100%; min-width: 0; height: 48px; padding: 0; gap: 0; box-sizing: border-box; }
.single-post .post-share-bar .share-btn svg { width: 20px; height: 20px; }
.single-post .post-share-bar .share-btn:focus-visible { outline: 2px solid var(--accent-color); outline-offset: 3px; }

/* Agreement appears beside its checkbox beneath the comment field. */
.single-post .comments-area .cronicas-comment-agreement { display: flex; align-items: flex-start; gap: .65rem; margin: 1rem 0 0; }
.single-post .comments-area .cronicas-comment-agreement input[type="checkbox"] { appearance: auto; width: 18px; height: 18px; min-width: 18px; flex: 0 0 18px; margin: .2rem 0 0; accent-color: var(--accent-color); }
.single-post .comments-area .cronicas-comment-agreement label { margin: 0; font-size: .9rem; line-height: 1.6; font-weight: 400; }
.single-post .cronicas-comment-agreement a { text-decoration: underline; text-underline-offset: 3px; }

/* Related news spans the article grid, then precedes the widgets on smaller screens. */
.single-post .article-layout > .related-posts-section { grid-column: 1 / -1; width: 100%; max-width: 100%; min-width: 0; margin: 2rem 0 var(--space-xl); padding: 0; }

@media (max-width: 1024px) {
    .single-post .article-layout { display: flex; flex-direction: column; }
    .single-post .article-layout > .article-body-wrapper,
    .single-post .article-layout > .related-posts-section,
    .single-post .article-layout > .sidebar-column { width: 100%; min-width: 0; max-width: 100%; }
    .single-post .article-layout > .article-body-wrapper { order: 0; }
    .single-post .article-layout > .related-posts-section { order: 1; }
    .single-post .article-layout > .sidebar-column { order: 2; position: static; top: auto; margin-top: 0; }
}

@media (max-width: 768px) {
    .single-post .article-body p,
    .single-post .article-body li,
    .single-post .takeaways-content p { text-align: justify; text-align-last: start; hyphens: auto; overflow-wrap: break-word; }
}

@media (max-width: 480px) {
    .single-post .cronicas-reader-controls > button { flex: 1 1 40%; }
    .single-post .cronicas-reader-controls > label { flex-basis: 100%; }
    .single-post .cronicas-reader select { flex: 1; width: 0; }
    .single-post .post-share-bar { padding: 1rem .75rem; }
    .single-post .post-share-bar .share-bar-icons { gap: .35rem; }
    .single-post .post-share-bar .share-btn { height: 44px; }
}
