
:root{--paper:#F2EFE5;--ink:#171914;--soft:#55584E;--umber:#765026;--blue:#314A87;--rule:#C3C1B6;font-family:'Inter',ui-sans-serif,system-ui,sans-serif;color:var(--ink);background:var(--paper);font-synthesis:none}
*{box-sizing:border-box}body{margin:0}a{color:var(--blue)}a:focus-visible,button:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--blue);outline-offset:4px}
header,main,.empty{max-width:1440px;margin:0 auto}header{padding:34px 32px 22px;border-bottom:1px solid var(--ink)}
.back{display:inline-block;color:var(--umber);font-family:'JetBrains Mono',ui-monospace,monospace;font-size:11px;letter-spacing:.04em;margin-bottom:22px;text-decoration:none}.back:hover{text-decoration:underline}
h1{font-family:'Playfair Display',Georgia,serif;font-weight:500;font-size:clamp(30px,3.4vw,46px);line-height:1.1;margin:0 0 14px;max-width:1100px}
header p{color:var(--soft)}.intro{font-size:13px;margin:0 0 12px;font-family:'JetBrains Mono',ui-monospace,monospace}.scope{max-width:1030px;font-size:13px;line-height:1.7;margin:0 0 26px}
.filters{display:flex;gap:14px;flex-wrap:wrap;align-items:end;padding-top:18px;border-top:1px solid var(--rule)}.filters label{font-family:'JetBrains Mono',ui-monospace,monospace;font-size:10px;letter-spacing:.06em;text-transform:uppercase}
.filters select{display:block;background:var(--paper);color:var(--ink);border:1px solid var(--rule);border-radius:0;font-family:'Inter',ui-sans-serif,system-ui,sans-serif;font-size:12px;min-height:38px;margin-top:8px;padding:8px;max-width:240px}
.filters button{background:var(--ink);color:var(--paper);border:1px solid var(--ink);border-radius:0;min-height:38px;padding:8px 14px;font-family:'Inter',ui-sans-serif,system-ui,sans-serif;font-size:12px;cursor:pointer}
header .results{margin:16px 0 0;font-family:'JetBrains Mono',ui-monospace,monospace;font-size:10px;color:var(--soft)}.results a{margin-left:8px}
main{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:30px 22px;padding:28px 32px 48px}.card{border-top:1px solid var(--ink);padding-top:14px;min-width:0}.card>a{display:block}.card img{width:100%;height:300px;object-fit:contain;background:#E9E6DC}.card h3{font-family:'Playfair Display',Georgia,serif;font-size:18px;font-weight:500;margin:14px 0 9px;line-height:1.3}
.card p{font-size:12px;color:var(--soft);line-height:1.65}.card .frame-meta{margin:0 0 6px}.card .evidence-kind{font-family:'JetBrains Mono',ui-monospace,monospace;font-size:10px;color:var(--blue);letter-spacing:.02em;margin:6px 0}.card .snapshot-date{font-family:'JetBrains Mono',ui-monospace,monospace;font-size:9px;color:var(--soft);margin:6px 0 14px}.card nav{line-height:1.9;margin-top:12px;font-size:11px}
details{font-size:12px;border-top:1px solid var(--rule);padding-top:12px}summary{cursor:pointer;color:var(--umber);font-family:'JetBrains Mono',ui-monospace,monospace;font-size:10px}.empty{padding:32px}.card[hidden],.empty[hidden]{display:none}
dialog{background:var(--paper);color:var(--ink);border:1px solid var(--ink);width:96vw;max-width:1440px;max-height:95vh;padding:16px}dialog::backdrop{background:#171914c9}.viewer-bar{display:flex;align-items:center;gap:14px;border-bottom:1px solid var(--rule);padding-bottom:12px;margin-bottom:14px}.viewer-bar h2{font-family:'Playfair Display',Georgia,serif;font-size:20px;font-weight:500;margin:0;flex:1}.viewer-bar a{font-size:11px;white-space:nowrap}.viewer-bar button{background:var(--ink);color:var(--paper);border:0;padding:9px 14px;cursor:pointer}#viewer-image{display:block;width:100%;max-height:calc(95vh - 110px);object-fit:contain}
@media(max-width:700px){header{padding:24px 18px 20px}.back{margin-bottom:18px}h1{font-size:31px;line-height:1.15}.intro{font-size:11px;line-height:1.7}.scope{font-size:12px;line-height:1.65}.filters{display:grid;grid-template-columns:1fr 1fr;gap:14px 10px}.filters select{max-width:none;width:100%;min-width:0}.filters button{align-self:end}main{padding:22px 18px 36px;grid-template-columns:repeat(auto-fill,minmax(230px,1fr))}.card img{height:340px}.viewer-bar{gap:10px}.viewer-bar h2{font-size:16px}.viewer-bar a{display:none}}

.source-note { margin-top: .9rem; font-size: 14px; line-height: 1.6; color: #55584E; } .source-note summary { cursor: pointer; text-decoration: underline; text-underline-offset: 4px; } .source-note summary:focus-visible { outline: 2px solid #314A87; outline-offset: 4px; }