/* Recent Updates list (js/updates.js). Uses the site tokens from css/style.css. */
.bf-updates { max-width: 860px; }
.bf-updates-list { list-style: none; margin: 0; padding: 0; display: grid; gap: 14px; }
.bf-update article { background: var(--paper, #fff); border: 1px solid var(--rule, #dcdcd8); border-left: 4px solid var(--accent, #e2451c); border-radius: 4px; padding: 16px 18px; }
.bf-update-meta { display: flex; flex-wrap: wrap; gap: 6px 14px; margin: 0 0 6px; font-size: 13.5px; color: var(--stone, #6a6a68); }
.bf-update-cat { font-weight: 700; text-transform: uppercase; letter-spacing: .04em; color: var(--ink, #151515); }
.bf-update-expired { font-weight: 700; color: #8a1c0c; background: #fdeceb; padding: 0 6px; border-radius: 3px; }
.bf-update-valid { color: #1f6b3a; }
.bf-update-title { margin: 0 0 6px; font-size: 18px; line-height: 1.3; }
.bf-update-title a { color: inherit; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 3px; }
.bf-update-title a:hover { color: var(--accent, #e2451c); }
.bf-update-summary { margin: 0 0 6px; line-height: 1.55; }
.bf-update-source { margin: 0; font-size: 14px; color: var(--stone, #6a6a68); overflow-wrap: anywhere; }
.bf-updates-foot { margin: 14px 0 0; font-size: 14px; color: var(--stone, #6a6a68); }
.bf-updates-foot a { font-weight: 600; }
.bf-updates-filters { display: flex; flex-wrap: wrap; gap: 8px; margin: 0 0 10px; }
.bf-updates-filter { font: inherit; font-size: 15px; min-height: 44px; padding: 8px 14px; border: 1px solid var(--rule, #dcdcd8); border-radius: 22px; background: var(--paper, #fff); color: var(--ink, #151515); cursor: pointer; }
.bf-updates-filter span { color: var(--stone, #6a6a68); }
.bf-updates-filter[aria-pressed="true"] { background: var(--ink, #151515); border-color: var(--ink, #151515); color: #fff; }
.bf-updates-filter[aria-pressed="true"] span { color: #ddd; }
.bf-updates-filter:focus-visible, .bf-update a:focus-visible, .bf-updates-foot a:focus-visible { outline: 3px solid var(--fire, #e2451c); outline-offset: 2px; }
.bf-updates-count { margin: 0 0 12px; font-size: 14px; color: var(--stone, #6a6a68); min-height: 1.2em; }
.bf-updates-loading, .bf-updates-empty, .bf-updates-error { padding: 14px 16px; border: 1px dashed var(--rule, #dcdcd8); border-radius: 4px; color: var(--graphite, #262626); background: var(--ash, #f3f3f1); }
.bf-updates-error { border-style: solid; border-color: #e6b8b0; background: #fff6f4; margin: 0 0 12px; }
.updates-method { max-width: 860px; }
.updates-method li { margin-bottom: 6px; }
@media (max-width: 480px) {
  .bf-update article { padding: 14px; }
  .bf-update-title { font-size: 17px; }
}
@media print {
  .bf-updates-filters, .bf-updates-count { display: none; }
  .bf-update[hidden] { display: list-item !important; }
  .bf-update article { border-left-width: 2px; break-inside: avoid; }
}
