/* Knowledge base articles: extends thinq.css, uses its theme variables only */
.table-scroll { overflow-x: auto; margin: 1.25rem 0 1.75rem; }
.blog-table { width: 100%; border-collapse: collapse; font-size: .95rem; background: var(--surface); border: 1px solid var(--line); border-radius: var(--r-sm); }
.blog-table th, .blog-table td { text-align: left; vertical-align: top; padding: .75rem .9rem; border-bottom: 1px solid var(--line); color: var(--text-soft); }
.blog-table thead th { color: var(--text); font-weight: 600; font-size: .85rem; border-bottom: 2px solid var(--text); background: var(--surface-2); }
.blog-table tbody th { color: var(--text); font-weight: 500; }
.blog-table tbody tr:last-child > * { border-bottom: 0; }
.blog-prose ol { padding-left: 1.3rem; }
.blog-prose li { margin-bottom: .45rem; }
.byline a { color: var(--box-text); }
.blog-dates { font-size: .88rem; color: var(--box-soft); margin: .5rem 0 0; }
.blog-preview-flag { display: inline-block; font-size: .85rem; color: var(--box-text); background: rgba(249,196,98,.14); border: 1px solid var(--gold); border-radius: var(--r-sm); padding: .4rem .75rem; margin: 0 0 1rem; }
.blog-preview-flag strong { color: var(--gold); margin-right: .35rem; }
.blog-source { font-size: .95rem; margin-top: 2rem; }
.blog-author { display: grid; grid-template-columns: 88px 1fr; gap: 1.1rem; align-items: center; margin-top: 2.5rem; padding: 1.25rem; background: var(--surface); border: 1px solid var(--line); border-radius: var(--r-md); }
.blog-author img { width: 88px; height: 88px; object-fit: cover; border-radius: 50%; background: #fff; }
.blog-author p { margin: 0; font-size: .95rem; }
.blog-author .blog-author-name { font-weight: 600; color: var(--text); margin-bottom: .25rem; }
.blog-author a { text-decoration: none; }
.blog-upcoming { color: var(--text-mute); }
.blog-upcoming em { font-style: normal; font-size: .8rem; }
.blog-review h2 { font-size: var(--t-lg); }
.blog-schedule { list-style: none; padding: 0; margin: 1rem 0 0; }
.blog-schedule li { display: grid; grid-template-columns: 1fr auto auto; gap: 1rem; align-items: center; padding: .8rem 0 .8rem 1rem; border-bottom: 1px solid var(--line); border-left: 5px solid var(--c); font-size: .95rem; }
.blog-schedule time { color: var(--text-mute); font-size: .85rem; }
.blog-status { font-size: .75rem; font-weight: 600; padding: .2rem .6rem; border-radius: 999px; }
.blog-status.is-scheduled { background: color-mix(in srgb, var(--gold) 24%, transparent); color: var(--text); }
.blog-status.is-live { background: color-mix(in srgb, var(--mint) 22%, transparent); color: var(--text); }
@media (max-width: 640px) {
  .blog-author { grid-template-columns: 1fr; }
  .blog-schedule li { grid-template-columns: 1fr; gap: .3rem; }
}
