:root{color-scheme:light;--paper:#f6f4ed;--ink:#202c2b;--muted:#536461;--line:#c4cec7;--accent:#125c50;--notice:#fff1ce}
*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.6 system-ui,-apple-system,sans-serif}a{color:var(--accent);text-underline-offset:4px}a:hover{text-decoration-thickness:2px}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:3px solid #b25b12;outline-offset:4px}header,main,footer{max-width:1320px;margin:auto;padding:28px 40px}header{padding-bottom:14px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:24px}.brand{font:700 28px Georgia,serif;text-decoration:none;color:var(--ink)}.brand span{display:block;font:12px system-ui;letter-spacing:.13em;text-transform:uppercase;margin-top:5px;color:var(--muted)}nav{font-family:Georgia,serif;font-weight:400;display:flex;align-items:center;gap:24px;flex-wrap:wrap}nav a,nav button{display:inline-flex;align-items:center;min-height:44px}header nav a{text-decoration:none}nav form{margin:0}main{min-height:75vh;padding-top:48px}h1{font:normal clamp(34px,5vw,64px)/1.13 Georgia,serif;max-width:1000px;margin:14px 0 20px;overflow-wrap:anywhere}h2{font:normal 27px/1.3 Georgia,serif;margin:0 0 16px}h3{font-size:18px;line-height:1.5}p{margin:10px 0 20px}.eyebrow{text-transform:uppercase;font-size:12px;letter-spacing:.12em;font-weight:700;color:var(--muted);margin:22px 0 8px}.lede{font-size:20px;max-width:760px;color:var(--muted)}section{margin:32px 0}.prose{max-width:780px}.sources{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.source-card{border:1px solid var(--line);border-top:3px solid var(--accent);padding:24px;margin:16px 0}.source-card p{font-size:15px}.source-card h2{font-size:25px}.notice{background:var(--notice);border-left:3px solid #916119;padding:14px 18px}.metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(145px,1fr));gap:12px;margin:30px 0}.metrics div{border-top:1px solid var(--line);padding-top:10px}.metrics dt{font-size:13px;overflow-wrap:anywhere}.metrics dd{font:32px Georgia,serif;margin:4px 0}.scroll{overflow:auto}table{border-collapse:collapse;width:100%;text-align:left}th{font-size:12px;letter-spacing:.06em;text-transform:uppercase;background:#e9ede7}td,th{border-bottom:1px solid var(--line);padding:16px;vertical-align:top}td:first-child{min-width:220px}small{display:block;color:var(--muted);margin-top:5px}.status{display:inline-block;font-size:13px;padding:4px 9px;background:#e5eae4;white-space:nowrap}.status.failed,.status.blocked,.status.partial{background:#fff1ce;color:#624412}.status.succeeded{background:#d8eee2;color:#174b36}label{display:block;font-weight:600;margin-bottom:6px}input{font:inherit;padding:10px 12px;min-height:44px;border:1px solid #71847b;border-radius:0;background:white;color:var(--ink);max-width:100%;width:100%}.narrow{max-width:440px}button,.button{font:600 16px/1.5 system-ui;display:inline-block;background:var(--accent);color:white;border:0;padding:12px 20px;min-height:44px;cursor:pointer;text-decoration:none}button.link{background:none;color:var(--accent);padding:0;font-weight:400}.errorlist{color:#932818}dt{color:var(--muted);font-size:13px}dd{margin:0 0 10px}.mono{font:13px/1.6 ui-monospace,monospace;overflow-wrap:anywhere}.evidence-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px}.pdf-preview{width:100%;height:800px;border:1px solid var(--line)}.trade{padding:12px 0 24px;border-bottom:1px solid var(--line)}pre{white-space:pre-wrap;overflow-wrap:anywhere;font:12px/1.6 ui-monospace,monospace;background:#edf0e9;padding:16px;max-width:100%}.source-text{max-height:900px;overflow:auto}summary{cursor:pointer;min-height:44px;padding:8px 0}.source-links li{padding:5px 0}footer{border-top:1px solid var(--line);font-size:13px;color:var(--muted)}.skip,.sr-only{position:absolute;left:-10000px}.skip:focus{position:fixed;left:20px;top:10px;background:white;padding:12px;z-index:2}
@media(max-width:800px){header,main,footer{padding:24px 20px}header{padding-bottom:12px;align-items:flex-start;flex-direction:column;gap:10px}nav{gap:16px}.sources,.evidence-grid{grid-template-columns:1fr}.source-card{margin:0}.lede{font-size:18px}h1{font-size:38px}.metrics{grid-template-columns:repeat(2,minmax(0,1fr))}td,th{padding:12px}.source-text{max-height:480px}}
/* Public pages. */
main.public-page{padding-top:24px}.public-page>h1{margin-top:0}.public-page>.lede{max-width:1000px}
.empty-edition{padding:32px;border:1px solid var(--line);border-top:3px solid var(--accent);max-width:850px}.idea{padding:24px 0;border-top:1px solid var(--line)}.idea h3{font:28px Georgia,serif;margin:0 0 12px}.idea small{font:16px system-ui}.fineprint{font-size:14px;color:var(--muted);max-width:880px}@media(max-width:800px){.brand{font-size:25px}nav{font-size:14px;gap:14px}.empty-edition{padding:24px}}

.recent-trades{min-width:740px}.recent-trades td:first-child{min-width:100px}.recent-trades td{overflow-wrap:anywhere}.recent-trades tr[data-trade-id]{position:relative}.trade-link:after{content:"";position:absolute;inset:0}.recent-trades tr[data-trade-id]:hover,.recent-trades tr[data-trade-id]:focus-within{background:#e9ede7}.trade-link:focus-visible:after{outline:3px solid #b25b12;outline-offset:-3px}.scroll:focus-visible{outline:3px solid #b25b12;outline-offset:4px}.disclosures{list-style:none;padding:0}.disclosures li{padding:16px 0;border-bottom:1px solid var(--line);overflow-wrap:anywhere}.disclosures p{margin:6px 0 0}.trade-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px 32px}.trade-facts dd{overflow-wrap:anywhere}.price-change{font:32px Georgia,serif}

.portfolio-periods{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem;margin:1.5rem 0}.portfolio-periods article{border-top:2px solid currentColor;padding-top:.75rem}.portfolio-return{font-size:2rem;font-weight:700}details{margin:1rem 0}summary{cursor:pointer}#politician-search{max-width:100%;padding:.6rem} .portfolio-periods p{overflow-wrap:anywhere}@media(max-width:650px){.portfolio-periods{grid-template-columns:1fr}}
.politician-link{position:relative;z-index:1}
.politician-heading{display:flex;align-items:baseline;justify-content:space-between;gap:20px}.politician-heading h1{min-width:0}.politician-heading small{flex-shrink:0;margin:0;font-size:12px;white-space:nowrap}.politician-bio{display:flex;gap:8px 24px}.politician-bio>span{min-width:0}@media(max-width:650px){.politician-bio{gap:12px;font-size:14px}.politician-bio>span:last-child{flex-shrink:0}}

/* Split homepage tables; each table owns any overflow, not the page. */
.home-trade-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.home-trade-grid>div{min-width:0}.home-trade-grid h3{margin-top:0}.home-trades{min-width:440px}.home-trades td,.home-trades th{padding:12px 8px}.home-trades td:first-child{min-width:70px}
.trade-filters{display:flex;align-items:flex-end;flex-wrap:wrap;gap:16px;margin:28px 0}.filter-field{flex:1 1 220px;min-width:0}.trade-filters select{width:100%;font:inherit;padding:10px 12px;min-height:46px;border:1px solid #71847b;background:white;color:var(--ink)}select:focus-visible{outline:3px solid #b25b12;outline-offset:4px}.filter-actions{display:flex;align-items:center;gap:16px;flex-wrap:wrap}.filter-actions a{display:inline-flex;align-items:center;min-height:44px}
.trade-combobox{position:relative}.trade-options{position:absolute;top:100%;left:0;right:0;max-height:260px;overflow:auto;list-style:none;margin:0;padding:0;background:white;border:1px solid #71847b;z-index:5}.trade-options[hidden]{display:none}.trade-options li{padding:10px 12px;overflow-wrap:anywhere;cursor:pointer}.trade-options [aria-selected=true]{background:#d8eee2;outline:2px solid var(--accent);outline-offset:-2px}.filter-field .errorlist{padding-left:20px}
@media(max-width:800px){.home-trade-grid{grid-template-columns:1fr}.trade-filters{align-items:stretch}.filter-field{flex-basis:100%}}
.holder-row{position:relative}.holder-row:hover,.holder-row:focus-within{background:#e9ede7}.holder-row td:first-child{min-width:0}

/* Compact homepage rankings preserve source order when stacked. */
.home-ranking-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.home-ranking-grid>section{min-width:0;margin-bottom:0}.home-ranking-grid td,.home-ranking-grid th{padding:12px 8px;overflow-wrap:anywhere}.home-ranking-grid td:first-child{min-width:0;width:44px}.home-ranking-grid th:first-child{white-space:nowrap}.home-ranking-grid td:last-child{white-space:nowrap}.home-ranking-grid .fineprint{margin-top:16px}.home-ranking-grid table{table-layout:auto}@media(max-width:800px){.home-ranking-grid{grid-template-columns:1fr;gap:0}}

.politician-search{max-width:640px}.politician-search>div{display:flex;gap:12px}.politician-search input{flex:1;min-width:0}.politician-search button{flex-shrink:0}

/* Size ranking columns for their contents; keep headers and data rows aligned. */
.stock-rankings{table-layout:fixed;min-width:340px;font-variant-numeric:tabular-nums}
.stock-rankings th,.stock-rankings td{padding:10px 8px;vertical-align:middle}
.stock-rankings th{height:48px;line-height:1.4;white-space:nowrap}
.stock-rankings td{height:48px;white-space:nowrap}
.stock-rankings th:first-child{width:48px}
.stock-rankings td:first-child{min-width:0;color:var(--muted)}
.stock-rankings th:nth-child(2){width:76px}
.stock-rankings th:nth-child(4){width:116px}
.stock-rankings th:nth-child(n+3),.stock-rankings td:nth-child(n+3){text-align:right}
.activity-rankings{min-width:320px;table-layout:auto}
.activity-rankings th,.activity-rankings td{padding:10px 6px}
.activity-rankings th{white-space:normal}
.activity-rankings th:nth-child(2){width:auto}
.activity-rankings th:nth-child(n+3){width:auto}
.stock-ranking-grid{display:grid;grid-template-columns:minmax(0,1.5fr) repeat(2,minmax(0,1fr));column-gap:24px}
.stock-ranking-grid>section{display:grid;grid-template-rows:subgrid;grid-row:span 3;min-width:0}
.stock-ranking-grid .scroll{align-self:start}
@media(max-width:1160px){.stock-ranking-grid,.stock-ranking-grid>section{display:block}.stock-ranking-grid>section{max-width:560px}}

.recent-trades details{position:relative;z-index:1}

.politician-table .trade-link{text-decoration:none}.politician-table th{white-space:nowrap}.politician-table th,.politician-table td{padding:12px 10px}.politician-table th:first-child{width:1%}.politician-table td:first-child{min-width:0;white-space:nowrap}.politician-table td:nth-child(4){white-space:nowrap}

.stock-heat{font-variant-numeric:tabular-nums}.stock-heat th,.stock-heat td{padding:12px 6px;overflow-wrap:normal}.stock-heat th:nth-child(2),.stock-heat td{white-space:nowrap}.stock-heat th:nth-child(n+3),.stock-heat td:nth-child(n+3){text-align:right}

.home-ranking-grid .stock-heat th,.home-ranking-grid .stock-heat td{padding-left:3px;padding-right:3px}

.rank-badge{display:inline-block;padding:1px 6px;border:1px solid var(--line);border-radius:5px;background:#e9ede7;color:var(--accent);font-size:12px;font-weight:600;line-height:1.5;vertical-align:middle;white-space:nowrap}
