:root{--paper:#96989b;--dream:#a6a8ab;--ink:#17181a;--ink2:#2f3033;--ink3:#3c3d40;--gold:#e0b04a}
*{box-sizing:border-box}html{background:var(--paper)}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.6 Georgia,"Times New Roman",serif}
main{max-width:720px;margin:0 auto;padding:28px 16px 64px}
.kicker{margin:0 0 6px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink2)}
h1{font:600 clamp(26px,5vw,34px)/1.15 Georgia,serif;margin:0 0 12px}h2{font:600 22px/1.25 Georgia,serif;margin:34px 0 8px;padding-top:14px;border-top:1.5px solid var(--ink)}
h3{font:600 17px Georgia,serif;margin:20px 0 6px}
a{color:var(--ink)}nav.top{display:flex;flex-wrap:wrap;gap:6px 16px;margin:0 0 22px;font-size:14px}nav.top a[aria-current]{font-weight:600;text-decoration:none;border-bottom:2px solid var(--gold)}
.card{background:var(--dream);border:1.5px solid var(--ink);box-shadow:3px 3px 0 var(--shadow,var(--ink));padding:12px 14px;margin:14px 0}
table{border-collapse:collapse;width:100%;margin:10px 0;font-size:15px}th,td{text-align:left;padding:6px 8px;border-bottom:1px solid var(--ink3);vertical-align:top}th{font-weight:600;border-bottom:1.5px solid var(--ink)}
td.n{font-variant-numeric:tabular-nums;white-space:nowrap}.tag{display:inline-block;font-size:12px;padding:1px 7px;border:1px solid var(--ink);margin-right:4px}.tag.x{background:var(--ink);color:var(--paper)}
button,.btn{font:600 15px Georgia,serif;min-height:44px;padding:8px 14px;background:var(--ink);color:var(--paper);border:1.5px solid var(--ink);cursor:pointer;text-decoration:none;display:inline-block}button:hover,.btn:hover{background:var(--gold);color:var(--ink)}
.small{font-size:14px;color:var(--ink2)}footer{margin-top:48px;font-size:13px;color:var(--ink2)}
.wrap{overflow-x:auto}

/* PM, 20 Oct: the logo, top left on every page, home */
#home{position:fixed;z-index:6;left:12px;top:10px;display:inline-block;padding:5px 9px 6px;background:rgba(23,24,26,.62);border:1px solid rgba(224,176,74,.55);text-decoration:none;font:600 19px/1 Georgia,"Times New Roman",serif;letter-spacing:.01em;color:#5b8fd0;-webkit-text-stroke:.6px #e0b04a}#home:hover,#home:focus-visible{background:rgba(23,24,26,.85);outline:2px solid #e0b04a;outline-offset:2px}@media (max-width:759px){#home{font-size:16px;left:8px;top:8px}}
body{padding-top:44px}

/* in-page clips */
p.embed .yt{display:block;width:100%;aspect-ratio:16/9;border:1.5px solid var(--ink);background:#111 linear-gradient(transparent,rgba(0,0,0,.35));color:#eee;font:15px/1.35 Georgia,serif;text-align:left;padding:14px;cursor:pointer;position:relative}p.embed .yt::after{content:"\25B6";position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:44px;color:#e0b04a}p.embed .ytf{display:block;width:100%;aspect-ratio:16/9;border:1.5px solid var(--ink)}

/* dark theme (PM, 20 Oct). Contrast computed: ink 13.2:1, ink2 9.6:1, ink3 6.1:1 on the dark paper; gold 8.5:1 */
:root[data-theme=dark]{--paper:#1b1c1e;--dream:#26272a;--ink:#e6e2d6;--ink2:#c6c2b8;--ink3:#9d9a92;--shadow:rgba(0,0,0,.55);color-scheme:dark}
#home img{display:inline-block;vertical-align:-5px;margin:-2px 6px -2px -2px}
nav.top{align-items:center}.themebtn{margin-left:auto;font:600 11px/1 system-ui,sans-serif;letter-spacing:.1em;text-transform:uppercase;min-height:32px;padding:6px 10px;background:transparent;color:var(--ink);border:1.5px solid var(--ink)}.themebtn:hover{background:var(--ink);color:var(--paper)}.themebtn[aria-pressed="true"]{border-color:var(--gold);color:var(--gold)}.themebtn:focus-visible{outline:3px solid var(--gold);outline-offset:2px}

/* the menu and skip link (PM, 20 Oct) */
.skip{position:fixed;z-index:30;left:12px;top:-60px;padding:10px 14px;background:#17181a;color:#efc9a2;border:2px solid #e0b04a;font:600 15px system-ui,sans-serif;text-decoration:none}.skip:focus{top:10px}
.sitehead{position:fixed;z-index:9;left:12px;top:10px;display:flex;gap:6px;align-items:flex-start}.sitehead #home{position:static}
#menubtn{font:600 11px/1 system-ui,sans-serif;letter-spacing:.1em;text-transform:uppercase;min-height:34px;padding:6px 11px;background:rgba(23,24,26,.62);color:#e6e2d6;border:1px solid rgba(224,176,74,.55);cursor:pointer}
#menubtn:hover,#menubtn[aria-expanded="true"]{background:rgba(23,24,26,.92)}#menubtn:focus-visible{outline:2px solid #e0b04a;outline-offset:2px}
#menu{position:absolute;left:0;top:calc(100% + 6px);margin:0;padding:6px 0;list-style:none;min-width:240px;background:#17181a;border:1px solid #e0b04a;box-shadow:0 8px 22px rgba(0,0,0,.45)}
#menu a{display:block;padding:11px 16px;color:#e6e2d6;font:16px/1.3 Georgia,serif;text-decoration:none}#menu a:hover,#menu a:focus-visible{background:#2b2c2f;color:#efc9a2;outline:none}#menu a[aria-current]{color:#e0b04a}

/* Report 2 data page: the claim trace table (27 Oct) */
.tracewrap{overflow-x:auto;margin:12px 0 28px}table.trace{border-collapse:collapse;font-size:13.5px;min-width:640px}table.trace td,table.trace th{padding:5px 8px;border-bottom:1px solid var(--ink2);text-align:left;vertical-align:top}table.trace td:first-child{font-variant-numeric:tabular-nums}
/* 28 Oct (PM: "tables are weird"): on a phone the trace table reads as cards, one claim each, instead of a table cut off at the right edge */
table.trace thead th{position:sticky;top:0;background:var(--paper,#e6dcc6)}
@media (max-width:640px){
.tracewrap{overflow-x:visible}
table.trace{min-width:0}
table.trace thead{display:none}
table.trace tr{display:grid;grid-template-columns:2.2em 1fr;column-gap:6px;padding:10px 0;border-bottom:1px solid var(--ink2)}
table.trace td{display:block;border:0;padding:1px 0}
table.trace td:first-child{grid-row:1/span 3;font-weight:700}
table.trace td:nth-child(2){font-weight:600}
table.trace td:nth-child(3)::before{content:"Value: ";color:var(--ink2)}
table.trace td:nth-child(4){font-size:12.5px;color:var(--ink2);word-break:break-word}
table.trace td:nth-child(4)::before{content:"Source: "}
}
