.thumbnail-guide { --thumb-accent:#596d35; padding-bottom:40px; }
:root[data-theme='dark'] .thumbnail-guide { --thumb-accent:#b9cf8c; }
.thumbnail-guide .kicker { font-size:11px; letter-spacing:.055em; }
.thumb-hero { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(280px,.75fr); gap:80px; padding:62px 0 72px; align-items:start; }
.thumb-hero h1 { font-size:clamp(64px,8vw,116px); font-weight:500; letter-spacing:-.075em; line-height:.96; max-width:8ch; margin:24px 0 30px; }
.thumb-lede { max-width:48ch; font-size:19px; line-height:1.6; color:var(--muted); }
.thumb-links { display:flex; flex-wrap:wrap; gap:12px 22px; font-size:13px; align-items:center; }
.thumb-hero .thumb-links { margin-top:30px; }
.thumb-ledger { background:var(--field); border-top:2px solid var(--ink); padding:24px 28px; }
.thumb-number { font-size:clamp(80px,11vw,154px); line-height:1; letter-spacing:-.08em; margin:22px 0 30px; }
.thumb-ledger dl { margin:0; }
.thumb-ledger dl>div { display:flex; gap:16px; justify-content:space-between; padding:10px 0; border-top:1px solid var(--rule); font-size:12px; }
.thumb-ledger dd { margin:0; font-family:var(--mono); text-align:right; white-space:nowrap; }
.thumb-note { color:var(--muted); font-size:12px; line-height:1.7; }
.thumb-section { border-top:1px solid var(--rule-strong); padding:36px 0 64px; scroll-margin-top:24px; }
.thumb-section h2 { font-size:clamp(32px,4vw,54px); letter-spacing:-.045em; line-height:1.13; margin:16px 0 20px; font-weight:500; }
.thumb-section>p:not(.kicker) { max-width:85ch; }
.thumb-findings { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; margin-top:32px; }
.thumb-finding { padding:24px; border:1px solid var(--rule); }
.thumb-finding h3 { font-size:24px; letter-spacing:-.035em; line-height:1.3; margin:12px 0 24px; }
.thumb-finding dl>div { border-top:1px solid var(--rule); margin-top:16px; padding-top:12px; }
.thumb-finding dt { font:10px/1.6 var(--mono); text-transform:uppercase; letter-spacing:.04em; color:var(--thumb-accent); }
.thumb-finding dd { margin:6px 0 0; font-size:14px; }
.thumb-finding>p:not(.kicker),.thumb-finding li { font-size:12px; overflow-wrap:anywhere; }
.thumb-finding { min-width:0; }
.thumb-evidence { margin-top:24px; }
.thumb-evidence h4 { margin:0 0 10px; font-size:12px; font-weight:500; }
.thumb-evidence-strip { display:flex; gap:12px; overflow-x:auto; padding-bottom:10px; scroll-snap-type:x proximity; }
.thumb-evidence-strip figure { flex:0 0 min(170px,75%); margin:0; min-width:0; scroll-snap-align:start; }
.thumb-evidence-image { display:flex; justify-content:center; align-items:center; width:100%; aspect-ratio:16/10; background:var(--field); border:1px solid var(--rule); }
.thumb-evidence-image img { display:block; width:100%; height:100%; object-fit:contain; }
.thumb-evidence-strip figcaption { margin-top:7px; font:9px/1.5 var(--mono); color:var(--muted); overflow-wrap:anywhere; }
.thumb-filters { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:16px 12px; padding:24px; background:var(--field); margin-top:30px; border:1px solid var(--rule); align-items:end; }
.thumb-filters label { display:flex; flex-direction:column; gap:7px; font:11px/1.5 var(--mono); min-width:0; }
.thumb-filters .thumb-search { grid-column:1/-1; }
.thumb-filters input,.thumb-filters select { width:100%; min-width:0; min-height:44px; padding:10px 12px; background:var(--paper); border:1px solid var(--rule-strong); border-radius:0; color:var(--ink); font:14px/1.4 var(--sans); }
.thumb-filters input::placeholder { color:var(--muted); opacity:1; }
.thumb-filters .video-button { min-height:44px; }
.thumb-results { display:flex; justify-content:space-between; flex-wrap:wrap; gap:8px 24px; align-items:center; padding-block:14px; border-bottom:1px solid var(--rule); margin-bottom:26px; }
.thumb-results [role='status'] { font:12px/1.7 var(--mono); margin:0; }
.thumb-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:36px 24px; align-items:start; }
.thumb-card { min-width:0; padding-bottom:18px; border-bottom:1px solid var(--rule); scroll-margin-top:28px; }
.thumb-card:target { outline:2px solid var(--thumb-accent); outline-offset:8px; }
.thumb-image { display:flex; align-items:center; justify-content:center; aspect-ratio:16/10; background:var(--field); border:1px solid var(--rule); width:100%; overflow:hidden; text-decoration:none; }
.thumb-image img { display:block; width:100%; height:100%; object-fit:contain; }
.thumb-image:hover { border-color:var(--ink); }
.thumb-missing { display:flex; flex-direction:column; text-align:center; gap:6px; padding:20px; color:var(--muted); font-size:14px; }
.thumb-missing>span { font:32px var(--mono); }
.thumb-missing small { font-size:11px; }
.thumb-card-meta { display:flex; justify-content:space-between; flex-wrap:wrap; gap:4px 12px; color:var(--muted); font:10px/1.5 var(--mono); margin:14px 0 8px; }
.thumb-card h3 { font-size:19px; letter-spacing:-.025em; line-height:1.35; margin:0 0 9px; overflow-wrap:anywhere; }
.thumb-card h3 a { text-decoration:none; }
.thumb-card h3 a:hover { text-decoration:underline; }
.thumb-family { font-size:12px; margin:0; color:var(--thumb-accent); }
.thumb-family span { color:var(--muted); }
.thumb-card-note { font-size:12px; color:var(--muted); line-height:1.7; overflow-wrap:anywhere; }
.thumb-inline-details { font-size:12px; margin-top:14px; }
.thumb-inline-details summary,.thumb-codebook summary,.thumb-sheets summary { cursor:pointer; padding:10px 0; }
.thumb-inline-details[open] summary { border-bottom:1px solid var(--rule); }
.thumb-details { margin:16px 0 24px; }
.thumb-details>div { display:grid; grid-template-columns:minmax(100px,.7fr) minmax(0,1.3fr); gap:8px 18px; padding-block:9px; border-bottom:1px solid var(--rule); font-size:12px; }
.thumb-details dt { color:var(--muted); }
.thumb-details dd { margin:0; overflow-wrap:anywhere; white-space:pre-wrap; }
.thumb-card .thumb-details>div { grid-template-columns:1fr; gap:3px; }
.thumb-record .thumb-links { font-size:12px; }
.thumb-empty,.thumb-notice { padding:28px; border:1px solid var(--rule); background:var(--field); }
.thumb-empty h3 { margin:0; font-size:24px; letter-spacing:-.025em; }
.thumb-pagination { display:flex; justify-content:space-between; align-items:center; flex-wrap:wrap; gap:16px; margin-top:30px; padding-top:22px; border-top:1px solid var(--rule); }
.thumb-pagination span { font:12px var(--mono); color:var(--muted); }
.thumb-pagination button:disabled { opacity:.45; cursor:not-allowed; }
.thumb-sheets { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); padding:0; margin-top:28px; list-style:none; gap:16px 28px; }
.thumb-sheets li { border-top:1px solid var(--rule); padding-top:12px; min-width:0; }
.thumb-sheets h3 { font-size:16px; margin:0; }
.thumb-sheets p,.thumb-sheets summary { font-size:12px; overflow-wrap:anywhere; }
.thumb-hash { font-family:var(--mono); overflow-wrap:anywhere; }
.thumb-method-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px; margin:30px 0; }
.thumb-method-grid h3 { margin:0 0 16px; font-size:17px; }
.thumb-method-grid p,.thumb-method-grid dl { font-size:13px; }
.thumb-method-grid dd { margin:6px 0 16px; overflow-wrap:anywhere; }
.thumb-table-wrap { max-width:100%; overflow-x:auto; margin-top:24px; }
.thumb-table-wrap table { border-collapse:collapse; width:100%; font-size:12px; text-align:left; }
.thumb-table-wrap th,.thumb-table-wrap td { border-bottom:1px solid var(--rule); padding:12px 16px 12px 0; vertical-align:top; }
.thumb-table-wrap caption { text-align:left; color:var(--muted); margin-bottom:10px; }
.thumb-codebook { margin:24px 0; border-block:1px solid var(--rule); }
.thumb-downloads { padding-top:12px; }
.thumb-dialog { width:min(1180px,calc(100vw - 32px)); max-width:none; max-height:calc(100dvh - 32px); padding:28px; background:var(--paper); color:var(--ink); border:1px solid var(--rule-strong); overflow:auto; overscroll-behavior:contain; }
.thumb-dialog::backdrop { background:rgb(0 0 0 / .76); }
.thumb-dialog-top { display:flex; justify-content:space-between; gap:20px; align-items:center; }
.thumb-dialog-top button { min-height:44px; }
.thumb-dialog h2 { font-size:clamp(24px,3vw,38px); letter-spacing:-.04em; line-height:1.2; margin:16px 0 24px; }
.thumb-dialog-image { display:flex; justify-content:center; align-items:center; background:var(--field); border:1px solid var(--rule); min-height:120px; }
.thumb-dialog-image img { display:block; width:auto; height:auto; max-width:100%; max-height:70dvh; object-fit:contain; }
.thumb-dialog .thumb-details { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:0 28px; }
.thumb-dialog .thumb-details>div { grid-template-columns:minmax(110px,.7fr) minmax(0,1.3fr); }
@media(min-width:1440px) { .thumb-grid { grid-template-columns:repeat(4,minmax(0,1fr)); } }
@media(max-width:1000px) {
  .thumb-hero { gap:36px; }
  .thumb-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .thumb-filters { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .thumb-method-grid { grid-template-columns:1fr; gap:24px; }
  .thumb-sheets { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media(max-width:700px) {
  .thumb-hero { grid-template-columns:1fr; padding-top:32px; gap:30px; }
  .thumb-hero h1 { max-width:9ch; }
  .thumb-lede { font-size:17px; }
  .thumb-number { font-size:90px; }
  .thumb-ledger { padding:20px; }
  .thumb-filters { grid-template-columns:repeat(2,minmax(0,1fr)); padding:16px; }
  .thumb-findings { grid-template-columns:1fr; }
  .thumb-dialog { padding:16px; }
  .thumb-dialog .thumb-details { grid-template-columns:1fr; }
  .thumb-pagination span { order:3; flex-basis:100%; text-align:center; }
}
@media(max-width:460px) { .thumb-grid,.thumb-sheets { grid-template-columns:1fr; } .thumb-dialog .thumb-details>div { grid-template-columns:1fr; gap:3px; } }
@media print {
  .thumb-card[hidden] { display:block!important; }
  .thumb-filters,.thumb-pagination,.thumb-dialog { display:none!important; }
  .thumb-grid { display:block; }
  .thumb-card { break-inside:avoid; margin-bottom:24px; }
}
 .thumb-alternate { border:1px solid var(--rule); margin-block:20px; padding:16px; }
 .thumb-alternate summary { cursor:pointer; font-weight:600; }
 .thumb-alternate img { display:block; width:100%; height:auto; max-height:440px; object-fit:contain; margin-block:16px; }
