/* Retrospective archive presentation. Scoped to bf-* classes; inherits the site's CSS variables where present. */
.bf-page{--bf-ink:var(--ink,#1c2430);--bf-paper:var(--paper,#fafafa);--bf-muted:var(--muted,#55606d);--bf-line:var(--line,#cfd6dd);--bf-soft:var(--soft,var(--tint,#eef1f4));--bf-card:var(--card,#fff);--bf-accent:var(--accent,#2a4d8f);--bf-mono:var(--mono,Consolas,"Courier New",monospace)}
.bf-wrap{width:min(1180px,calc(100% - 40px));margin:auto}
.bf-banner{background:var(--bf-ink);color:var(--bf-paper);font:11px var(--bf-mono);letter-spacing:.04em;padding:10px 0}.bf-banner .bf-wrap{display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap}.bf-banner a{color:inherit;text-decoration:underline}
.bf-main{padding-block:32px 64px}
.bf-eyebrow{font:11px var(--bf-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--bf-muted);margin:0 0 12px}
.bf-lead{font-size:1.15rem;line-height:1.55;max-width:760px;color:var(--bf-ink)}
.bf-small{font-size:.85rem;color:var(--bf-muted)}
.bf-index-header h1,.bf-page-header h1{margin:0 0 14px;font-size:clamp(2rem,5vw,3.6rem);line-height:1.05;letter-spacing:-.02em}
.bf-page-header{max-width:900px;margin-bottom:32px}.bf-breadcrumbs{font:12px var(--bf-mono);color:var(--bf-muted);margin:0 0 10px}.bf-breadcrumbs a{color:inherit}
.bf-tools{display:flex;gap:16px;align-items:end;justify-content:space-between;margin:24px 0;flex-wrap:wrap}.bf-search{display:block;flex:1;min-width:240px;max-width:520px;font:12px var(--bf-mono)}.bf-search input,.bf-sort select{display:block;width:100%;margin-top:6px;padding:10px 12px;border:1px solid var(--bf-line);background:var(--bf-card);color:var(--bf-ink);font:inherit;font-size:15px}.bf-sort{font:12px var(--bf-mono);min-width:200px}
.bf-filters{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 12px}.bf-filters button{border:1px solid var(--bf-line);background:var(--bf-card);color:var(--bf-ink);padding:8px 14px;font:12px var(--bf-mono);cursor:pointer}.bf-filters button[aria-pressed="true"]{background:var(--bf-ink);color:var(--bf-paper);border-color:var(--bf-ink)}
.bf-count{font:12px var(--bf-mono);color:var(--bf-muted);margin:0 0 18px}
.bf-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px}
.bf-card{min-width:0;border:1px solid var(--bf-line);background:var(--bf-card);display:flex;flex-direction:column;padding:20px}.bf-card-top{display:flex;justify-content:space-between;align-items:center;gap:10px;border-bottom:1px solid var(--bf-line);padding-bottom:12px;margin-bottom:14px}.bf-card-top b{font:1.6rem var(--bf-mono);color:var(--bf-muted)}.bf-card h3{font-size:1.35rem;line-height:1.2;margin:0 0 10px;letter-spacing:-.01em}.bf-card h3 a{color:inherit;text-decoration:none}.bf-card h3 a:hover{text-decoration:underline}.bf-card p{color:var(--bf-muted);font-size:.95rem;line-height:1.55;margin:0 0 14px}.bf-card-date{font:11px var(--bf-mono);color:var(--bf-muted);margin-bottom:14px}.bf-card-bottom{display:flex;justify-content:space-between;gap:12px;margin-top:auto;padding-top:12px;border-top:1px solid var(--bf-line);font:11px var(--bf-mono)}.bf-card-bottom a{color:inherit}
.bf-empty{text-align:center;padding:48px 20px;border:1px dashed var(--bf-line)}.bf-button{display:inline-block;border:1px solid var(--bf-ink);background:var(--bf-ink);color:var(--bf-paper);padding:10px 18px;font:inherit;cursor:pointer;text-decoration:none}
.bf-layout{display:grid;grid-template-columns:260px minmax(0,1fr);gap:40px;align-items:start}
.bf-aside{position:sticky;top:20px;border:1px solid var(--bf-line);background:var(--bf-soft);padding:20px;font-size:.9rem}.bf-aside>p{margin:0 0 16px;line-height:1.5}
.bf-provenance{margin:0 0 18px;display:grid;gap:8px}.bf-provenance div{display:grid;grid-template-columns:1fr;gap:2px;border-top:1px solid var(--bf-line);padding-top:8px}.bf-provenance dt{font:10px var(--bf-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--bf-muted)}.bf-provenance dd{margin:0;font-weight:600}
.bf-contents{display:grid;gap:6px}.bf-contents-title{font:10px var(--bf-mono);letter-spacing:.08em;color:var(--bf-muted);margin:0 0 6px}.bf-contents a{color:inherit;font-size:.88rem;line-height:1.4}
.bf-prose{min-width:0;max-width:720px;font-size:1.05rem;line-height:1.7}.bf-prose h2{font-size:1.5rem;line-height:1.2;margin:2em 0 .6em;letter-spacing:-.01em}.bf-prose h2:first-child{margin-top:0}.bf-prose p{margin:0 0 1.2em}.bf-prose ul{padding-left:1.2em;margin:0 0 1.2em}.bf-prose li{margin-bottom:.5em}.bf-prose a{color:var(--bf-accent);text-underline-offset:.18em}
.bf-note{border:1px solid var(--bf-line);background:var(--bf-soft);padding:16px 18px;margin:1.5em 0}.bf-note strong{display:block;font:11px var(--bf-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--bf-muted);margin-bottom:6px}.bf-note p{margin:0 0 .6em}
.bf-sources{margin-top:2.5em;border-top:2px solid var(--bf-ink);padding-top:1.2em}.bf-sources h2{margin-top:0}.bf-source{border-bottom:1px solid var(--bf-line);padding:12px 0}.bf-source a{font-weight:600;overflow-wrap:anywhere}.bf-source p{margin:4px 0 0;font-size:.95rem}.bf-source .bf-small{font:11px var(--bf-mono)}
.bf-related{margin-top:2em}.bf-related h2{font-size:1.2rem}.bf-related ul{list-style:none;padding:0;margin:0}.bf-related li{border-top:1px solid var(--bf-line);padding:10px 0}.bf-related a{color:inherit}
@media (max-width:900px){.bf-layout{grid-template-columns:1fr}.bf-aside{position:static}.bf-wrap{width:min(1180px,calc(100% - 32px))}.bf-banner .bf-wrap{flex-direction:column;gap:6px}}
@media print{.bf-banner,.bf-tools,.bf-filters{display:none}}

/* Entry images (added 2026-09-17). Source-published visuals, owner-review-pending. */
.bf-figure{margin:0 0 32px}.bf-figure img{display:block;width:100%;height:auto;max-height:640px;object-fit:contain;background:var(--bf-soft);border:1px solid var(--bf-line)}
.bf-figure figcaption{font:12px/1.6 var(--bf-mono);color:var(--bf-muted);padding:10px 0;border-bottom:1px solid var(--bf-line)}.bf-figure .bf-credit{display:block;margin-top:4px}.bf-figure a{color:inherit}
.bf-card-thumb{display:block;margin:0 0 14px;background:var(--bf-soft);border:1px solid var(--bf-line)}.bf-card-thumb img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}
/* --- record cards and category accents (added 17 September 2026) --- */
.bf-page{--bf-c0:#2a4d8f;--bf-c1:#1f6f5c;--bf-c2:#8a4b1d;--bf-c3:#6a3d86;--bf-c4:#1d5f7a;--bf-c5:#8a2f4b;--bf-c6:#4a5a24}
.bf-cat-0{--bf-cat:var(--bf-c0)}.bf-cat-1{--bf-cat:var(--bf-c1)}.bf-cat-2{--bf-cat:var(--bf-c2)}.bf-cat-3{--bf-cat:var(--bf-c3)}.bf-cat-4{--bf-cat:var(--bf-c4)}.bf-cat-5{--bf-cat:var(--bf-c5)}.bf-cat-6{--bf-cat:var(--bf-c6)}
.bf-card{position:relative}
.bf-card[class*="bf-cat-"]::before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--bf-cat,var(--bf-accent))}
.bf-page-header[class*="bf-cat-"]{border-left:3px solid var(--bf-cat,var(--bf-accent));padding-left:18px}
.bf-record{margin:0 0 32px;border:1px solid var(--bf-line);border-left:3px solid var(--bf-cat,var(--bf-accent));background:var(--bf-soft);padding:18px 20px}
.bf-rec-head{display:flex;flex-wrap:wrap;gap:10px;align-items:baseline;justify-content:space-between;font:11px var(--bf-mono);letter-spacing:.08em;text-transform:uppercase;color:var(--bf-muted)}
.bf-rec-pub{color:var(--bf-cat,var(--bf-accent));font-weight:700}
.bf-rec-title{margin:10px 0 14px;font-size:1.05rem;line-height:1.45;color:var(--bf-ink)}
.bf-rec-dates{display:flex;flex-wrap:wrap;gap:8px 28px;margin:0 0 10px;font:12px var(--bf-mono)}
.bf-rec-dates dt{color:var(--bf-muted);letter-spacing:.04em;text-transform:uppercase;font-size:10px}
.bf-rec-dates dd{margin:2px 0 0;color:var(--bf-ink);font-variant-numeric:tabular-nums}
.bf-record .bf-small{display:block;margin-top:6px;padding-top:10px;border-top:1px solid var(--bf-line);font-size:.8rem}
.bf-card-record{display:flex;flex-direction:column;gap:6px;margin:0 0 14px;padding:14px;background:var(--bf-soft);border:1px solid var(--bf-line);font:11px var(--bf-mono);min-height:64px;justify-content:center}
.bf-card-record .bf-rec-pub{font-size:12px;letter-spacing:.04em;overflow-wrap:anywhere}
.bf-card-record .bf-rec-when{color:var(--bf-muted);font-variant-numeric:tabular-nums}
@media (prefers-color-scheme:dark){.bf-page:not([data-theme="light"]){--bf-c0:#7fa5e8;--bf-c1:#63c0a6;--bf-c2:#d9925c;--bf-c3:#b389d1;--bf-c4:#6fb2cf;--bf-c5:#dd7f9b;--bf-c6:#9aad6a}}

/* Homepage entry point into the retrospective archive. Colours come from the host site through
   currentColor and a translucent border, so this block adopts each design rather than overriding it. */
.bf-promo{margin:3rem 0 0;padding:1.75rem;border:1px solid color-mix(in srgb,currentColor 22%,transparent);border-radius:2px;display:grid;gap:.75rem}
.bf-promo-eyebrow{margin:0;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;opacity:.65}
.bf-promo h2{margin:0;font-size:clamp(1.3rem,3vw,1.7rem);text-wrap:balance}
.bf-promo-lead{margin:0;max-width:62ch;line-height:1.55}
.bf-promo-note{margin:0;max-width:70ch;font-size:.85rem;line-height:1.5;opacity:.75}
.bf-promo-link{justify-self:start;margin-top:.25rem;font-weight:600;text-decoration:none;border-bottom:2px solid color-mix(in srgb,currentColor 45%,transparent);padding-bottom:.1rem}
.bf-promo-link:hover,.bf-promo-link:focus-visible{border-bottom-color:currentColor}
@media (max-width:520px){.bf-promo{padding:1.25rem}}
