/* Core visuals come unchanged from /blog.css and /site-layout.css. */
.ba-main { min-height: 55vh; }
.ba-main > .ba-state, .ba-main > .ba-back, .ba-main > .ba-unsupported { grid-column: 1 / -1; }
.ba-card-copy .read-article { padding-top: 24px; }
.ba-cover { overflow: hidden; }
.ba-cover img { width: 100%; height: auto; }
.ba-metadata p { margin: 0; }
.ba-language-status { margin: 0; text-align: center; }
.ba-language-status:not(:empty) { padding: 16px; background: #f8f4ed; }
.ba-pagination { display: flex; flex-wrap: wrap; justify-content: center; gap: 25px; margin-top: 36px; font-size: 14px; }
.ba-pagination a, .ba-button { font: inherit; color: #74551d; border: 1px solid #dbCAA8; padding: 9px 16px; text-decoration: none; background: transparent; cursor: pointer; }
.ba-state { padding: 65px 0; text-align: center; }
.ba-state h1 { font-size: 28px; }
.ba-loading-dot { display: block; width: 26px; height: 26px; margin: 0 auto 20px; border: 2px solid #dbCAA8; border-top-color: #a78545; border-radius: 50%; animation: ba-spin 1s linear infinite; }
@keyframes ba-spin { to { transform: rotate(360deg); } }
.ba-image-error { padding: 45px 20px; background: #f8f4ed; color: #716251; text-align: center; }
.article-content { overflow-wrap: anywhere; }
.article-content h3 { margin: 28px 0 16px; }
.article-content ul, .article-content ol { padding-left: 24px; }
.article-content li { margin-bottom: 10px; }
.ba-table-scroll { overflow-x: auto; margin: 30px 0; }
.article-content table { border-collapse: collapse; width: 100%; min-width: 520px; font-size: 14px; }
.article-content thead { background: #f8f4ed; }
.article-content tbody { background: #fff; }
.article-content tr { border-bottom: 1px solid #e5ddcf; }
.article-content th, .article-content td { padding: 14px; text-align: left; vertical-align: top; }
.ba-sources { padding: 25px; margin: 36px 0 25px; background: #f7f3eb; border-left: 3px solid #a78545; overflow-wrap: anywhere; }
.ba-sources h2 { font-size: 24px; margin: 0 0 20px; }
.ba-sources ol { padding-left: 20px; margin: 0; }
.ba-sources li { margin-bottom: 14px; }
.ba-source-domain { display: block; font-size: 12px; color: #716251; }
@media(prefers-reduced-motion:reduce) { .ba-loading-dot { animation: none; } }
