:root{--bg:#050809;--panel:#090f11;--panel2:#0d1517;--ink:#e8e6df;--muted:#a7b1b0;--line:#31464a;--shadow:rgba(0,0,0,.68);--cyan:#29d7dc;--bracket:rgba(41,215,220,.6);--magenta:var(--cyan);--verified:#55ef78;--amber:#ffb000;--danger:#ff4638;--mono:"Space Mono","IBM Plex Mono","JetBrains Mono",SFMono-Regular,Consolas,monospace;--serif:"Goudy Bookletter 1911",Georgia,"Times New Roman",serif;--sans:"Segoe UI",Candara,"Trebuchet MS",Arial,sans-serif;--controls-height:104px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--controls-height) + 28px)}body{margin:0;background:linear-gradient(107deg,transparent 22%,rgba(255,255,255,.025) 47%,transparent 70%),var(--bg);color:var(--ink);font:16px/1.58 var(--sans);overflow-wrap:break-word}button,input,select{font:inherit;color:inherit}button,a,summary,input,select{-webkit-tap-highlight-color:transparent}a{color:var(--cyan);text-decoration-thickness:1px;text-underline-offset:4px}a:hover{text-decoration:underline}button,select,summary{cursor:pointer}button,input,select{border:1px solid var(--line);border-radius:0;background:var(--panel2)}button{padding:9px 12px;line-height:1.3;min-height:42px}button:hover{border-color:var(--bracket);background:#152326}button:active{background:#1b2c2e}input,select{width:100%;min-height:44px;padding:9px 11px}select{padding-right:26px}input::placeholder{color:#819392}button:focus-visible,a:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--cyan);outline-offset:4px}button:disabled{opacity:.5;cursor:default}[hidden]{display:none!important}.shell{width:min(1160px,calc(100% - 30px));margin:0 auto}.micro,.file-code,.source-ref,.source-num,.service-record,.classification,.candidate-meta,.topic-tag,.source-check-dot,.nav-link>span:first-child{font-family:var(--mono);font-variant-numeric:tabular-nums}.micro{font-size:10px;line-height:1.6;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}.skip-link{position:fixed;top:-80px;left:20px;padding:12px;background:var(--ink);color:var(--bg);z-index:100}.skip-link:focus{top:12px}.service-record{border-top:2px solid var(--cyan);border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr auto;align-items:center;gap:20px;padding:18px 0 16px;margin-top:24px;font-size:10px;letter-spacing:.08em;line-height:1.55;color:var(--muted)}.service-record strong{font-weight:400;color:var(--ink)}.origin{display:flex;gap:13px;align-items:center}.origin-node{height:7px;width:7px;flex:0 0 7px;background:var(--cyan);border-radius:50%;box-shadow:0 0 9px rgba(41,215,220,.5)}.service-date{text-align:right}.service-date time{color:var(--ink)}.hero{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(240px,1fr);gap:56px;padding:49px 0 39px}.hero-kicker{color:var(--cyan);margin-bottom:20px}.hero h1{font-family:var(--serif);font-weight:400;font-size:clamp(2rem,6vw,4.65rem);letter-spacing:.075em;line-height:1.08;text-transform:uppercase;margin:0 0 22px;max-width:100%}.hero-deck{color:var(--ink);font-size:17px;line-height:1.58;max-width:55ch;margin:0 0 24px}.stamp-wrap{padding:5px 4px 10px}.classification{display:inline-block;color:var(--amber);border:1px solid currentColor;transform:rotate(-2deg);padding:7px 10px 6px;font-size:10px;letter-spacing:.12em;max-width:100%;overflow-wrap:anywhere;box-shadow:inset 0 0 0 2px var(--bg),inset 0 0 0 3px rgba(255,176,0,.25)}.hero-caption{color:var(--muted);font-size:12px;max-width:55ch;margin:9px 0 22px}.hero-actions{display:flex;gap:10px;flex-wrap:wrap}.button{min-height:44px;display:inline-flex;align-items:center;gap:20px;padding:10px 13px;border:1px solid var(--line);color:var(--ink);text-decoration:none;font-size:13px}.button:hover{border-color:var(--cyan);text-decoration:none;background:rgba(41,215,220,.045)}.button.primary{border-color:var(--bracket)}.button span{color:var(--cyan)}.hud{position:relative;isolation:isolate;background:linear-gradient(112deg,transparent 15%,rgba(255,255,255,.02) 53%,transparent 75%),var(--panel);border:1px solid var(--line);box-shadow:0 15px 35px -20px var(--shadow)}.hud::before,.hud::after{content:"";position:absolute;pointer-events:none;width:14px;height:14px;z-index:1}.hud::before{left:-1px;top:-1px;border-left:1px solid var(--bracket);border-top:1px solid var(--bracket)}.hud::after{right:-1px;bottom:-1px;border-right:1px solid var(--bracket);border-bottom:1px solid var(--bracket)}.election-panel{padding:26px 28px 23px;align-self:stretch;display:flex;flex-direction:column;justify-content:space-between;min-width:0}.election-date{display:flex;flex-direction:column;align-items:flex-start;padding-top:21px;font-family:var(--serif);font-weight:400;line-height:1}.election-date span{font:14px/1 var(--mono);letter-spacing:.3em}.election-date strong{font-weight:400;font-size:clamp(6rem,11vw,9.4rem);line-height:1.05;letter-spacing:-.025em}.poll-hours{font:12px/1.5 var(--mono);letter-spacing:.12em;color:var(--muted);margin:14px 0 0}.city-lines{color:#53777b;width:100%;padding-top:20px;opacity:.7}.city-lines svg{width:100%;display:block}.tape-label{display:flex;flex-direction:column;gap:7px;margin-top:15px;padding-top:15px;border-top:1px solid var(--line);font:10px/1.5 var(--mono);letter-spacing:.06em}.tape-label .micro{font-size:8px;color:#879b9c}.signal-strip{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-bottom:35px}.signal-strip>div{display:flex;align-items:center;gap:13px;padding:15px 14px;border-right:1px solid var(--line)}.signal-strip>div:first-child{padding-left:0}.signal-strip>div:last-child{border:0}.signal-strip strong{font:26px/1.1 var(--serif);color:var(--ink)}.signal-strip span{font:9px/1.6 var(--mono);letter-spacing:.06em;color:var(--muted);max-width:13ch}.control-strip{display:grid;grid-template-columns:minmax(180px,1fr) minmax(170px,.68fr) auto auto;align-items:end;gap:10px;padding:16px 0;background:rgba(5,8,9,.98);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.control-strip label{min-width:0}.control-strip label>.micro{display:block;margin-bottom:5px}.control-strip button{margin-bottom:1px;font-size:12px;white-space:nowrap}.workspace{display:grid;grid-template-columns:213px minmax(0,1fr);gap:30px;padding-top:31px;align-items:start}.field-index{position:sticky;top:calc(var(--controls-height) + 22px);min-width:0}.index-heading{padding:0 0 17px;border-bottom:1px solid var(--line)}.field-index nav{display:flex;flex-direction:column}.nav-link{display:grid;grid-template-columns:22px 1fr;gap:7px;color:var(--muted);text-decoration:none;padding:10px 9px 10px 0;border-bottom:1px solid rgba(49,70,74,.5);font-size:12px;line-height:1.4}.nav-link>span:first-child{color:#728b8d;font-size:9px;padding-top:2px}.nav-link:hover,.nav-link[aria-current="page"]{color:var(--ink);text-decoration:none;background:linear-gradient(90deg,rgba(41,215,220,.045),transparent)}.nav-link[aria-current="page"]{border-right:2px solid var(--cyan)}.nav-link[aria-current="page"]>span:first-child{color:var(--cyan)}.index-note{font-size:11px;line-height:1.6;color:var(--muted);margin:23px 0 18px}.index-status{display:flex;gap:9px;font-size:10px;line-height:1.7;color:var(--muted)}.source-check-dot{height:4px;width:4px;flex:0 0 4px;margin-top:7px;background:var(--cyan)}main{min-width:0}.result-status{margin:0 0 12px;color:var(--muted);font:10px/1.6 var(--mono);letter-spacing:.06em;text-transform:uppercase}.record-section{margin-bottom:25px;padding:29px 31px 32px;scroll-margin-top:calc(var(--controls-height) + 24px)}.section-header{margin-bottom:23px;padding-bottom:22px;border-bottom:1px solid var(--line)}.section-node{display:flex;align-items:flex-start;gap:9px}.section-node::before{content:"";width:4px;height:4px;background:var(--cyan);flex:0 0 4px;margin-top:6px}.section-header h2{font:400 clamp(1.55rem,3.5vw,2.65rem)/1.08 var(--serif);letter-spacing:.075em;margin:15px 0 0}.section-body{max-width:78ch}.copy{max-width:78ch;line-height:1.58;margin:0 0 17px}.copy b,.copy strong{font-weight:600}.subhead{font-family:var(--sans);font-size:17px;line-height:1.38;font-weight:600;margin:29px 0 12px}.subhead:first-child{margin-top:0}.small{font-size:12px;line-height:1.6;color:var(--muted)}.copy.small{margin-bottom:18px}.copy.note{font-size:14px;color:var(--ink);border-left:2px solid var(--amber);padding:9px 0 9px 15px;margin:20px 0}.copy.roster{border-bottom:1px solid rgba(49,70,74,.45);padding:11px 0;margin:0;font-size:14px}.copy.roster+.subhead{margin-top:31px}.rule{height:1px;background:var(--line);margin:21px 0}.source-ref{display:inline-flex;align-items:center;justify-content:center;font-size:9px;line-height:1.3;color:var(--cyan);border:1px solid var(--line);padding:3px 5px;margin:0 1px;vertical-align:1px;text-decoration:none;white-space:nowrap;scroll-margin-top:calc(var(--controls-height) + 24px)}.source-ref:hover{background:#183033;text-decoration:none;border-color:var(--cyan)}.evidence-caveat{color:var(--amber);font-size:13px;line-height:1.6}.candidate-controls{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:22px 0 12px}.candidate-controls label{font-size:11px;color:var(--muted);min-width:0}.candidate-controls select{display:block;font-size:12px;margin-top:5px}.candidate-controls label:first-child{grid-column:1/-1}.topic-explainer{margin:13px 0 22px}.profile-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 16px;color:var(--muted);font-size:11px}.profile-actions>div{display:flex;flex-wrap:wrap;gap:6px}.profile-actions button{font-size:10px;min-height:34px;padding:8px}.candidate-list{display:flex;flex-direction:column;gap:10px}.candidate-card{background-color:var(--panel2);box-shadow:none}.candidate-card summary{display:flex;align-items:center;gap:15px;list-style:none;padding:17px 16px;min-height:80px}.candidate-card summary::-webkit-details-marker{display:none}.file-code{color:var(--cyan);font-size:10px;line-height:1.3;letter-spacing:.06em}.candidate-heading{flex:1;min-width:0;display:flex;flex-direction:column;gap:7px}.candidate-name{font:400 21px/1.2 var(--serif);letter-spacing:.02em;color:var(--ink)}.candidate-meta{font-size:9px;color:var(--muted);line-height:1.6}.expand-icon{font:22px/1 var(--mono);color:var(--cyan);width:20px;flex:0 0 20px;text-align:center}.candidate-card[open]>.candidate-content{border-top:1px solid var(--line)}.candidate-card[open]>summary .expand-icon{font-size:0}.candidate-card[open]>summary .expand-icon::before{content:'−';font-size:22px}.candidate-content{padding:18px 20px 21px}.record-label{margin-bottom:12px;font-size:9px;color:var(--muted)}.candidate-content .copy{font-size:14px}.topic-tags{display:flex;gap:6px;flex-wrap:wrap;margin-top:19px}.topic-tag{border:1px solid var(--line);padding:4px 6px;color:var(--muted);font-size:8px;line-height:1.5}.supplement{margin-top:23px;border-top:1px solid var(--line);padding-top:17px}.supplement h4{font-size:14px;font-weight:600;margin:0 0 10px}.issue-evidence{padding:15px 0;border-bottom:1px solid var(--line)}.issue-evidence .micro{color:var(--cyan);font-size:9px}.issue-evidence p{font-size:13px;margin:8px 0}.supplement-link{font-size:11px;display:inline-block;max-width:100%;overflow-wrap:anywhere}.check-date{display:block;font-size:8px;margin-top:5px}.gap-note{border-left:2px solid var(--amber);padding:4px 0 4px 12px;margin-top:20px;color:var(--muted)}.gap-note ul{padding-left:17px;margin:0;font-size:12px}.office-note{font-size:12px;margin-top:20px}.office-note summary{padding:10px;border:1px solid var(--line);color:var(--muted)}.office-note>div{padding:4px 12px}.office-note .supplement-link{display:block;margin:7px 0}.source-card{margin:14px 0;padding:19px 20px;background-color:var(--panel2);box-shadow:none;scroll-margin-top:calc(var(--controls-height) + 20px)}.source-heading{display:flex;align-items:baseline;gap:15px}.source-heading .file-code{flex:0 0 26px}.source-heading h3{font-size:16px;line-height:1.4;font-weight:500;margin:0}.source-card p{font-size:12px;line-height:1.65;color:var(--muted);margin:13px 0}.source-links{display:flex;gap:7px;flex-wrap:wrap}.external-source{display:flex;align-items:center;gap:8px;border:1px solid var(--line);text-decoration:none;font-size:10px;line-height:1.4;padding:7px 8px;max-width:100%;min-width:0;overflow-wrap:anywhere}.external-source:hover{border-color:var(--cyan);text-decoration:none}.source-num{color:var(--muted);font-size:8px}.external-source span:last-child{margin-left:auto}.source-card:target{border-color:var(--cyan);outline:1px solid var(--bracket);outline-offset:3px}.empty-state{padding:25px;border:1px dashed var(--line);color:var(--muted);font-size:14px}.site-footer{display:grid;grid-template-columns:1fr 1fr auto;gap:25px;border-top:1px solid var(--line);margin-top:40px;padding:25px 0 35px}.site-footer p{font-size:11px;line-height:1.65;color:var(--muted);margin:8px 0 0;max-width:50ch}.back-top{font-size:10px;white-space:nowrap}.crt-overlay,.film-overlay{position:fixed;inset:0;pointer-events:none}.crt-overlay{z-index:50;background:repeating-linear-gradient(to bottom,rgba(0,0,0,.075) 0 1px,transparent 1px 5px),repeating-linear-gradient(to right,rgba(255,0,0,.012) 0 1px,rgba(0,255,0,.01) 1px 2px,rgba(0,0,255,.012) 2px 3px),radial-gradient(ellipse at center,transparent 47%,rgba(0,0,0,.08) 72%,rgba(0,0,0,.42) 118%)}.film-overlay{z-index:49;opacity:.055;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='700' height='700'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.78' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.65' filter='url(%23noise)'/%3E%3Cg fill='white'%3E%3Ccircle cx='59' cy='109' r='1.3'/%3E%3Ccircle cx='517' cy='227' r='.9'/%3E%3Ccircle cx='331' cy='589' r='1.2'/%3E%3Ccircle cx='631' cy='648' r='1'/%3E%3C/g%3E%3Cpath d='M187 51v369M584 201v422' stroke='white' stroke-width='.65' opacity='.24'/%3E%3C/svg%3E");animation:grain-drift 24s steps(2,end) infinite}.texture-off .crt-overlay,.texture-off .film-overlay{display:none}.noscript{padding:20px;max-width:800px;margin:20px auto;color:var(--amber)}@keyframes grain-drift{0%,100%{background-position:0 0}50%{background-position:9px -13px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}}
@media(max-width:1000px){.hero{gap:28px}.workspace{grid-template-columns:180px minmax(0,1fr);gap:22px}.record-section{padding:25px 23px}.nav-link{font-size:11px}.hero-actions{gap:7px}.button{font-size:12px;padding:10px}.control-strip{gap:7px;grid-template-columns:minmax(160px,1fr) minmax(150px,.7fr) auto auto}.control-strip button{font-size:11px;padding:9px}.source-heading{gap:10px}.candidate-name{font-size:20px}.election-panel{padding:25px 22px}}
@media(max-width:760px){.hero{gap:22px;grid-template-columns:minmax(0,1.4fr) minmax(180px,1fr);padding-top:33px}.hero h1{font-size:clamp(2rem,6vw,3.3rem)}.hero-deck{font-size:14px}.hero-kicker{font-size:8px}.election-panel{padding:21px 17px}.election-date strong{font-size:100px}.election-panel>.micro{font-size:8px}.classification{font-size:8px}.hero-caption{font-size:11px}.city-lines{padding-top:15px}.signal-strip>div{gap:9px;padding:12px 9px}.signal-strip span{font-size:8px}.signal-strip strong{font-size:22px}.workspace{grid-template-columns:1fr}.field-index{display:none}.control-strip{grid-template-columns:minmax(130px,1fr) minmax(120px,.85fr) auto;gap:8px}.control-strip .search-label{grid-column:1/3}.control-strip .section-select{grid-row:2;grid-column:1/3}.control-strip #reset-search{grid-column:3;grid-row:1}.control-strip #print-guide{grid-column:3;grid-row:2}.control-strip .section-select>.micro{display:none}.control-strip{padding:12px 0}.record-section{padding:25px}.site-footer{grid-template-columns:1fr 1fr}.back-top{grid-column:1/-1}.workspace{padding-top:22px}.section-header h2{font-size:clamp(1.55rem,5vw,2.65rem)}}
@media(max-width:500px){.service-record{margin-top:15px;font-size:8px;gap:12px;padding:14px 0}.origin{gap:9px}.hero{grid-template-columns:1fr;gap:23px;padding:30px 0 25px}.hero h1{font-size:clamp(2rem,11vw,3.4rem);margin-bottom:19px}.hero-kicker{font-size:9px;margin-bottom:17px}.hero-deck{font-size:15px;margin-bottom:18px}.stamp-wrap{padding-bottom:8px}.classification{font-size:9px}.hero-caption{font-size:11px}.hero-actions{gap:8px}.button{font-size:11px;gap:14px;padding:10px 11px}.election-panel{display:grid;grid-template-columns:1fr auto;gap:0 16px;padding:21px 20px}.election-panel>.micro{font-size:8px;grid-column:1}.election-date{grid-column:2;grid-row:1/5;padding-top:0;align-items:flex-end}.election-date strong{font-size:88px;line-height:.95}.election-date span{font-size:10px;margin:4px 0}.poll-hours{grid-column:1;font-size:10px;margin:12px 0 0;align-self:start}.city-lines{grid-column:1;padding-top:8px;max-width:180px;align-self:end}.tape-label{grid-column:1/-1;margin-top:14px;gap:4px;padding-top:12px;font-size:8px}.tape-label .micro{font-size:7px}.signal-strip{grid-template-columns:1fr 1fr;margin-bottom:18px}.signal-strip>div{padding:12px 10px!important;border-bottom:1px solid var(--line)}.signal-strip>div:nth-child(2){border-right:0}.signal-strip>div:nth-child(n+3){border-bottom:0}.signal-strip>div:last-child{border:0}.signal-strip strong{font-size:23px}.signal-strip span{font-size:8px;max-width:none}.control-strip{gap:7px;grid-template-columns:minmax(110px,1fr) minmax(75px,.7fr) auto}.control-strip input{font-size:12px}.control-strip select{font-size:11px}.control-strip button{font-size:10px;padding:8px}.control-strip .micro{font-size:8px}.record-section{padding:23px 17px}.section-header{margin-bottom:21px;padding-bottom:18px}.section-header .micro{font-size:8px}.section-header h2{font-size:28px;letter-spacing:.05em}.copy{font-size:14px}.copy.small{font-size:11px}.copy.note{font-size:12px;padding-left:11px}.subhead{font-size:15px}.candidate-card summary{padding:14px 11px;gap:10px}.candidate-name{font-size:19px;line-height:1.25}.candidate-meta{font-size:8px}.file-code{font-size:9px}.candidate-content{padding:16px 13px}.candidate-content .copy{font-size:13px}.candidate-controls{grid-template-columns:1fr}.candidate-controls label:first-child{grid-column:auto}.candidate-controls select{font-size:12px}.candidate-controls label{font-size:10px}.topic-explainer{font-size:11px}.profile-actions>div{gap:4px}.profile-actions button{font-size:9px;padding:7px}.source-card{padding:16px 13px}.source-heading{gap:9px}.source-heading h3{font-size:14px}.source-card p{font-size:11px}.source-links{display:flex;flex-direction:column;align-items:stretch}.external-source{font-size:10px}.site-footer{grid-template-columns:1fr;gap:18px;margin-top:25px}.site-footer p{font-size:10px}.result-status{font-size:8px}.copy.roster{font-size:12px}.source-ref{font-size:8px;padding:3px 4px}.gap-note ul{font-size:11px}}
@media print{@page{size:A4;margin:16mm}*{box-shadow:none!important;text-shadow:none!important;animation:none!important}html{scroll-behavior:auto}body{background:white!important;color:#151a1b!important;font-size:10pt;line-height:1.5}.shell{width:100%;margin:0}.crt-overlay,.film-overlay,.no-print,.hero-actions,.skip-link,.city-lines,.signal-strip,.result-status,.noscript{display:none!important}.service-record{margin:0 0 18pt;border-color:#333;color:#333;padding:8pt 0;font-size:8pt}.service-record strong,.service-date time{color:#111}.origin-node{background:#333;box-shadow:none}.hero{grid-template-columns:1fr 110pt;gap:20pt;padding:0 0 20pt}.hero h1{font-size:30pt;color:#111}.hero-kicker,.hero-deck,.hero-caption,.micro{color:#333!important}.hero-deck{font-size:11pt}.classification{color:#333;box-shadow:none;transform:none;font-size:7pt}.stamp-wrap{padding:0}.election-panel{padding:10pt;border-color:#aaa;display:block}.election-date{padding:12pt 0 0}.election-date strong{font-size:60pt}.election-date span{font-size:10pt}.poll-hours{font-size:8pt;color:#333}.tape-label{font-size:7pt}.workspace{display:block;padding:0}.record-section,.source-card,.candidate-card{display:block!important;background:white!important;border-color:#aaa;break-inside:auto;padding:0;margin:0 0 18pt}.record-section{border:0;break-before:auto}.record-section[hidden]{display:block!important}.record-section::before,.record-section::after,.hud::before,.hud::after{display:none}.section-header{padding:12pt 0 8pt;margin:0 0 12pt;border-color:#aaa;break-after:avoid}.section-header h2{font-size:21pt;color:#111;letter-spacing:.04em}.section-node::before{background:#333}.section-body{max-width:none}.copy,.copy.note,.copy.roster,.candidate-content .copy{font-size:10pt;color:#151a1b}.copy.small,.small,.source-card p{font-size:9pt;color:#333}.subhead{font-size:12pt;break-after:avoid;margin-top:18pt}.copy.note{border-color:#888}.copy,.source-card p{orphans:3;widows:3}.source-ref{font-size:7pt;color:#333;border-color:#888}.candidate-card{border:1px solid #aaa;margin-bottom:12pt;break-inside:avoid-page}.candidate-card summary{padding:10pt;break-after:avoid;min-height:0}.candidate-name{font-size:15pt;color:#111}.candidate-meta,.file-code{color:#333}.candidate-content{display:block!important;padding:10pt!important}.candidate-card:not([open])>.candidate-content{display:block!important}.expand-icon{display:none}.topic-tag{color:#333;border-color:#aaa;font-size:7pt}.evidence-caveat{color:#333;font-size:9pt;font-style:italic}.candidate-list{display:block}.source-card{padding:10pt;break-inside:avoid-page}.source-heading h3{font-size:12pt}.source-links{display:block}.external-source{display:block;color:#333;font-size:8pt;line-height:1.45;margin:6pt 0;overflow-wrap:anywhere}.external-source::after{content:' ' attr(href);font-size:7pt}.external-source span:last-child{display:none}.source-num{color:#333}.source-heading{break-after:avoid}.issue-evidence{break-inside:avoid-page;border-color:#aaa}.supplement-link,.check-date{color:#333;font-size:8pt}.supplement-link::after{content:' (' attr(href) ')';font-size:7pt}.office-note{break-inside:auto}.office-note>div{display:block!important}.gap-note{border-color:#888;color:#333}.site-footer{margin-top:20pt;padding:12pt 0;border-color:#aaa;grid-template-columns:1fr 1fr}.site-footer p{color:#333;font-size:8pt}.source-card:target{outline:none}.empty-state{display:none!important}}

.published-scores{border-top:1px solid var(--line);padding-top:19px;margin-top:20px}.rating-record{margin-top:12px;padding:12px;border:1px solid var(--line)}.rating-record>p{font-size:12px;margin:0 0 9px}.rating-record>p>strong{font-family:var(--mono);font-size:15px;font-weight:400;color:var(--ink)}
.quick-brief>.micro{color:var(--cyan)}.brief-lead{font:400 27px/1.2 var(--serif);margin:12px 0 22px;letter-spacing:.025em}.quick-facts{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:20px}.quick-facts article{border-top:1px solid var(--line);padding-top:16px}.quick-facts h3{font:400 22px/1.2 var(--serif);margin:10px 0}.quick-facts p{font-size:13px;line-height:1.65;margin:10px 0}.quick-facts article>a:not(.source-ref){font-size:11px}.quick-date-row{display:grid;grid-template-columns:1fr 1fr 1.3fr auto;gap:14px;padding:17px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:20px 0;font-size:10px;color:var(--muted)}.quick-date-row span{display:flex;flex-direction:column;gap:4px}.quick-date-row strong{font:12px/1.4 var(--mono);font-weight:400;color:var(--ink)}.quick-date-row>.source-ref{align-self:start}.quick-actions{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:18px}.quick-actions .button{font-size:11px;gap:10px}.brief-background{border-top:1px solid var(--line);margin-top:20px;padding-top:7px}.brief-background>summary{color:var(--muted);font-size:12px;padding:12px 0}.brief-background>div{padding-top:15px}.compare-tray{border:1px solid var(--bracket);background:var(--panel2);padding:15px;margin-bottom:17px;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:12px}.compare-tray strong{font-size:13px;font-weight:500}.compare-tray p{font-size:11px;color:var(--muted);margin:5px 0 0;max-width:44ch}.compare-actions{display:flex;gap:6px}.compare-actions button{font-size:10px}.candidate-item{display:grid;grid-template-columns:minmax(0,1fr) 72px;gap:0;align-items:start}.compare-choice{min-height:80px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;border:1px solid var(--line);border-left:0;background:var(--panel);font-size:9px;color:var(--muted);cursor:pointer}.compare-choice input{width:17px;height:17px;min-height:0;padding:0;accent-color:var(--cyan);cursor:pointer}.candidate-item .candidate-card{min-width:0}.candidate-card[open]{grid-column:1}.candidate-card[open]+.compare-choice{border-color:var(--line)}dialog{width:min(1100px,calc(100% - 30px));max-width:calc(100% - 30px);max-height:90vh;overflow:auto;padding:26px;background:var(--panel);color:var(--ink);border:1px solid var(--bracket);box-shadow:0 20px 90px var(--shadow)}dialog::backdrop{background:rgba(0,0,0,.82)}.dialog-head{display:flex;gap:20px;justify-content:space-between;align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:17px}.dialog-head h2{font:400 30px/1.1 var(--serif);letter-spacing:.04em;margin:10px 0}.dialog-head p{font-size:12px;color:var(--muted);margin:0}.dialog-head button{font-size:11px;white-space:nowrap}.compare-tabs{display:flex;gap:8px;margin:18px 0}.compare-tabs button{font-size:12px}.compare-tabs button[aria-pressed=true]{border-color:var(--cyan)}#comparison-grid{display:grid;grid-template-columns:repeat(var(--compare-columns,2),minmax(0,1fr));gap:15px}.comparison-column{border:1px solid var(--line);padding:16px;min-width:0}.comparison-column h3{font:400 22px/1.2 var(--serif);margin:0 0 17px}.comparison-topic{border-top:1px solid var(--line);padding:13px 0 4px}.comparison-topic h4{font-size:12px;font-weight:600;margin:0 0 8px}.comparison-topic p{font-size:12px;line-height:1.6;margin:8px 0}.comparison-topic .micro{font-size:8px;color:var(--muted)}.comparison-topic .small{font-size:11px;color:var(--muted)}.comparison-topic .evidence-caveat{font-size:11px}.comparison-column>a{font-size:11px;display:block;margin-top:15px}@media(max-width:760px){.quick-date-row{grid-template-columns:1fr 1fr}.quick-date-row>.source-ref{justify-self:start}.compare-tray{padding:12px}.candidate-item{grid-template-columns:minmax(0,1fr) 61px}.compare-choice{font-size:8px}#comparison-grid{grid-template-columns:1fr}.comparison-column{padding:16px}dialog{padding:20px}}@media(max-width:500px){.quick-facts{grid-template-columns:1fr;gap:18px}.brief-lead{font-size:24px}.quick-facts h3{font-size:22px}.hero-deck br{display:none}.hero-deck{max-width:31ch}.election-panel .city-lines{display:none}.election-panel{padding:16px 18px}.election-date strong{font-size:64px}.election-date{grid-row:1/3;gap:2px}.tape-label{margin-top:9px;padding-top:9px}.quick-facts p{font-size:12px}.quick-actions .button{font-size:10px}.candidate-item{grid-template-columns:minmax(0,1fr) 54px}.candidate-card summary{gap:8px;padding:13px 9px}.candidate-name{font-size:18px}.candidate-card .expand-icon{width:14px;flex-basis:14px}.candidate-card .file-code{font-size:8px}.compare-choice{min-height:83px}.dialog-head h2{font-size:25px}.dialog-head{gap:10px}dialog{padding:16px}.dialog-head button{font-size:10px;padding:8px}.quick-date-row{gap:13px;font-size:9px}.quick-date-row strong{font-size:11px}.brief-background>summary{font-size:11px}}@media print{dialog,.compare-choice,.compare-tray{display:none!important}.candidate-item{display:block!important}.brief-background>div{display:block!important}.brief-background{border:0}.brief-background>summary{display:none}.quick-facts{display:grid}.quick-facts article,.quick-date-row{border-color:#888}.quick-facts p{font-size:9pt}.quick-facts a,.quick-date-row strong{color:#111}.quick-actions{display:none}.candidate-item[hidden]{display:block!important}.rating-record>p>strong{color:#111}.published-scores{border-color:#888}.rating-record{border-color:#aaa}}
.evidence-filter-box{min-width:0;border:1px solid var(--line);margin:22px 0;padding:15px}.evidence-filter-box legend{font-size:13px;line-height:1.4;padding:0 7px;font-weight:500}.evidence-filter-box>.small{margin:0 0 13px;font-size:11px}.evidence-filter-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.evidence-filter-chip{display:flex;align-items:center;gap:7px;border:1px solid var(--line);padding:9px 8px;font-size:10px;line-height:1.4;cursor:pointer;min-width:0}.evidence-filter-chip input{width:14px;height:14px;min-height:0;margin:0;flex:0 0 14px;accent-color:var(--cyan)}.evidence-filter-chip>span[aria-hidden]{font-size:15px;line-height:1}.flag-count{font:9px/1.5 var(--mono);color:var(--muted);margin-left:auto;border-left:1px solid var(--line);padding-left:7px}.evidence-filter-status{display:flex;align-items:center;gap:10px;justify-content:space-between;padding-top:12px;font-size:10px;color:var(--muted)}.evidence-filter-status>span{max-width:54ch}.evidence-filter-status button{font-size:10px;white-space:nowrap;min-height:32px;padding:7px}.icon-legend{font-size:11px;margin-top:15px;border-top:1px solid var(--line)}.icon-legend>summary{padding-top:12px;color:var(--muted)}.icon-legend article{border-bottom:1px solid var(--line);padding:12px 0}.icon-legend h4{font-size:12px;margin:0 0 7px}.icon-legend p{font-size:11px;margin:6px 0}.scope-note{border-left:1px solid var(--line);padding-left:12px;font-size:11px}.candidate-flag-bar{grid-column:1/-1;display:flex;align-items:center;gap:7px;flex-wrap:wrap;border:1px solid var(--line);border-top:0;padding:8px 11px;background:var(--panel)}.candidate-flag-bar>.micro{font-size:7px;margin-right:3px}.evidence-icon{display:inline-flex;align-items:center;gap:5px;font-size:9px;border:1px solid var(--line);padding:4px 6px;text-decoration:none;color:var(--muted);line-height:1.45}.evidence-icon>span:first-child{font-size:13px}.evidence-icon:hover{color:var(--ink);border-color:var(--cyan);text-decoration:none}.evidence-marked .candidate-name{text-decoration:line-through;text-decoration-thickness:1px;color:var(--muted)}.evidence-marked .candidate-card{border-color:var(--bracket)}.selected-mark-label{font:8px/1.5 var(--mono);color:var(--cyan)}.flag-evidence{margin:18px 0;font-size:12px;border-top:1px solid var(--line);padding-top:12px}.flag-evidence>summary{font-size:12px;color:var(--muted)}.flag-evidence h4{font-size:13px;margin:17px 0 0}.flag-evidence .issue-evidence p{font-size:12px}@media(max-width:500px){.evidence-filter-box{padding:12px}.evidence-filter-grid{grid-template-columns:1fr}.evidence-filter-chip{font-size:11px;padding:10px}.evidence-filter-status{align-items:flex-start}.evidence-filter-status>span{font-size:9px}.candidate-flag-bar{gap:5px;padding:7px 9px}.evidence-icon{font-size:8px}.candidate-flag-bar>.micro{font-size:6px}.selected-mark-label{font-size:7px}}@media print{.candidate-flag-bar{display:flex;break-before:avoid;border-color:#aaa;background:white}.evidence-icon{color:#111;border-color:#aaa;font-size:8pt}.evidence-icon::after{content:' ' attr(href);font-size:7pt;overflow-wrap:anywhere}.evidence-marked .candidate-name{text-decoration:none;color:#111}.selected-mark-label{display:none}.flag-evidence>div{display:block!important}.flag-evidence{border-color:#aaa}}
.evidence-filter-drawer{border:1px solid var(--line);margin:20px 0 13px;background:var(--panel2)}.evidence-filter-drawer>summary{display:flex;justify-content:space-between;align-items:center;gap:12px;list-style:none;padding:13px 14px;font-size:12px}.evidence-filter-drawer>summary::-webkit-details-marker{display:none}.evidence-filter-drawer>summary::before{content:'+';font:17px/1 var(--mono);color:var(--cyan)}.evidence-filter-drawer[open]>summary::before{content:'−'}.evidence-filter-drawer>summary>span:first-of-type{margin-right:auto}.evidence-filter-drawer .evidence-filter-box{border:0;border-top:1px solid var(--line);margin:0;padding:15px}.evidence-filter-drawer .evidence-filter-box legend{padding:0 5px;font-size:11px}.evidence-filter-drawer>summary .micro{font-size:8px;text-align:right}.candidate-method{margin-top:0;border-top:0;padding-top:0}.candidate-method>summary{font-size:11px;padding:2px 0 6px}.candidate-method>div{padding-top:10px}@media(max-width:500px){.evidence-filter-drawer>summary{font-size:11px;gap:9px;padding:12px}.evidence-filter-drawer>summary .micro{font-size:7px;max-width:15ch}}
.scope-note{margin:10px 0 18px}.scope-note summary{font-size:11px;color:var(--muted)}.scope-note p,.scope-note a{font-size:10px}.scope-note p{margin:9px 0}.scope-note a{display:inline-block}@media print{.scope-note>p,.scope-note>a{display:block!important}}
.candidate-quickview{grid-column:1/-1;border:1px solid var(--line);border-top:0;background:var(--panel);padding:14px 16px;display:flex;flex-direction:column;gap:11px}.quick-policy-topic{display:grid;grid-template-columns:92px minmax(0,1fr) auto;gap:10px;align-items:start}.quick-policy-label{font:9px/1.6 var(--mono);color:var(--muted);letter-spacing:.02em;padding-top:1px}.quick-policy-label>span{color:var(--muted);font-size:11px}.quick-policy-topic p{font-size:12px;line-height:1.6;margin:0;color:var(--ink)}.quick-policy-sources{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:3px;max-width:58px}.quick-policy-sources>.source-ref{color:var(--muted);font-size:8px;padding:3px 4px}.candidate-card[open]~.candidate-quickview{display:none}.candidate-item.evidence-marked .candidate-quickview{border-color:var(--bracket)}@media(max-width:600px){.candidate-quickview{padding:13px;gap:13px}.quick-policy-topic{grid-template-columns:1fr auto;gap:4px 9px}.quick-policy-label{grid-column:1;font-size:8px}.quick-policy-topic p{grid-column:1;grid-row:2;font-size:11px}.quick-policy-sources{grid-column:2;grid-row:1/3;max-width:44px;align-self:start}.quick-policy-sources>.source-ref{font-size:7px}}@media print{.candidate-quickview{display:none!important}}
.voting-panel{display:flex;flex-direction:column;align-self:start;gap:13px;padding:24px}.voting-phase{font:400 30px/1.14 var(--serif);letter-spacing:.025em;margin:4px 0}.voting-phase a{color:var(--ink);text-decoration:none}.voting-phase a:hover{color:var(--cyan)}.voting-countdown{display:flex;gap:19px;padding:3px 0 7px}.voting-countdown>span{display:flex;flex-direction:column;gap:6px}.voting-countdown strong{font:400 36px/1 var(--mono);font-variant-numeric:tabular-nums;letter-spacing:-.04em}.voting-countdown small{font:8px/1.4 var(--mono);letter-spacing:.15em;color:var(--muted)}#voting-countdown-label:empty{display:none}.voting-phase-detail{font-size:12px;line-height:1.6;color:var(--muted);margin:0}.voting-panel .button{font-size:11px;align-self:flex-start}.county-routes{display:flex;gap:10px;flex-wrap:wrap;align-items:center;font-size:10px;color:var(--muted)}.county-routes a{color:var(--muted)}.clock-details{font-size:10px;border-top:1px solid var(--line);padding-top:11px}.clock-details>summary{color:var(--muted);padding-bottom:3px}.clock-details p,.clock-details li,.clock-details a{font-size:10px;line-height:1.6}.clock-details ul{padding-left:16px;margin:10px 0}.clock-details h3{font-size:12px;margin:15px 0 8px}.clock-result-links{display:flex;flex-direction:column;gap:6px}.clock-source-note{font:9px/1.6 var(--sans);color:var(--muted);letter-spacing:0}.clock-results-note{font-size:10px;border-left:1px solid var(--amber);padding-left:10px;color:var(--muted);margin:0}.voting-panel .tape-label{margin-top:0;padding-top:12px;gap:5px}.voting-panel .tape-label .micro{font-size:7px}@media(max-width:760px){.voting-panel{padding:21px 17px;gap:12px}.voting-phase{font-size:26px}.voting-countdown{gap:14px}.voting-countdown strong{font-size:30px}.voting-phase-detail{font-size:11px}}@media(max-width:500px){.voting-panel{display:flex;padding:19px 20px;gap:11px}.voting-phase{font-size:28px}.voting-countdown{gap:24px}.voting-countdown strong{font-size:34px}.voting-panel>.micro{font-size:8px}.voting-phase-detail{font-size:11px}.voting-panel .button{min-height:40px}.voting-panel .tape-label{grid-column:auto}}@media print{.voting-panel{padding:10pt;gap:7pt}.voting-phase{font-size:18pt}.voting-phase a{color:#111}.voting-countdown{gap:10pt}.voting-countdown strong{font-size:20pt;color:#111}.voting-countdown small,.voting-phase-detail,.county-routes,.clock-source-note{color:#333}.clock-details>div{display:block!important}.voting-panel .button{display:none}.clock-results-note{color:#333;border-color:#888}.clock-details h3{font-size:10pt}.voting-panel .tape-label .micro{font-size:6pt}}
@media print{.voting-panel{display:none!important}.hero{display:block}.hero-copy{max-width:none}}

/* Focused print choices and post-QA navigation/contrast corrections. */
.dialog-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.dialog-actions button{font-size:11px}.print-only{display:none}#print-dialog{width:min(560px,calc(100% - 28px))}.print-options{border:1px solid var(--line);padding:15px;margin:16px 0}.print-options legend{font-size:12px;padding:0 6px}.print-options label{display:flex;align-items:flex-start;gap:10px;padding:11px 0;cursor:pointer}.print-options input{width:17px;min-height:0;margin:4px 0 0;flex:0 0 17px;accent-color:var(--cyan)}.print-options strong{display:block;font-size:13px;font-weight:500}.print-options small{display:block;font-size:11px;line-height:1.5;color:var(--muted);padding-top:4px}.print-options select{font-size:12px;margin:0 0 9px}.print-options input:disabled+span{opacity:.55}#print-confirm{border-color:var(--bracket)}
@media(max-width:500px){.dialog-actions{flex-direction:column}.dialog-actions button{font-size:9px}.print-options{padding:12px}}
@media print{
 #voting-panel{display:none!important}
 dialog::backdrop{display:none!important;background:transparent!important}
 body{--ink:#151a1b;--muted:#333;--line:#999;--cyan:#222;--amber:#333;--panel:white;--panel2:white;--bg:white}
 .hud,.quick-facts article,.quick-date-row,.evidence-filter-drawer{background:white!important}
 .candidate-meta,.file-code,.small,.check-date,.topic-tag,.rating-record,.rating-record p,.office-note,.gap-note,.flag-evidence,.flag-evidence summary,.brief-background,.source-card,.source-card p{color:#222!important}
 .candidate-flag-bar,.evidence-filter-drawer,.candidate-controls,.profile-actions{display:none!important}
 .candidate-card{break-inside:auto;margin-bottom:14pt}.candidate-card summary,.issue-heading{break-after:avoid}.candidate-content{padding-top:0!important}
 .hero{padding-bottom:10pt}.hero h1{font-size:22pt}.hero h1 br{display:none}.hero h1 br::after{content:' '}.hero-kicker,.hero-deck,.hero-caption,.stamp-wrap{display:none!important}
 body[data-print-scope="section"] .record-section{display:none!important}
 body[data-print-scope="section"] .record-section[data-print-include="true"]{display:block!important}
 body[data-print-scope="section"] .candidate-item[hidden]{display:none!important}
 body[data-print-scope="section"] .candidate-item:not([hidden])>.candidate-card{display:block!important}
 #print-context{display:block;position:static;font-size:8pt;color:#333;border-top:1px solid #aaa;padding-top:7pt;margin-top:10pt}
 body[data-print-scope="comparison"]>.shell,body[data-print-scope="comparison"]>#print-context{display:none!important}
 body[data-print-scope="comparison"]>#print-comparison{display:block!important}
 .print-comparison-heading{break-after:avoid;border-bottom:1px solid #888;padding-bottom:10pt;margin-bottom:12pt}.print-comparison-heading h1{font:400 23pt/1.2 var(--serif);color:#111}.print-comparison-heading h2{font-size:12pt}.print-comparison-heading p{font-size:8pt;line-height:1.5;color:#222}
 .print-comparison-grid{display:block}.print-comparison-grid .comparison-column{break-before:page;padding:0;border:0;background:white}.print-comparison-grid .comparison-column:first-child{break-before:auto}.print-comparison-grid .comparison-column>h3{font-size:17pt;break-after:avoid}.print-comparison-grid .comparison-topic{break-inside:auto;border-color:#aaa}.print-comparison-grid .comparison-topic h4{font-size:12pt;break-after:avoid;color:#111}.print-comparison-grid .comparison-topic p{font-size:10pt;color:#222}.print-comparison-grid .open-full-record{display:none}.print-comparison-grid .candidate-name{text-decoration:none!important;color:#111!important}
}

@media print{.site-footer,#print-context{display:none!important}.record-section a:not([href]){color:#222;text-decoration:none}.source-ref{break-inside:avoid}}

.war-evidence{margin:20px 0 0;border-top:1px solid var(--line);padding-top:14px}.war-evidence>summary{font-size:13px}.war-evidence h4{font-size:13px;margin:20px 0 8px}.compare-tabs{flex-wrap:wrap}.compare-tabs button{white-space:normal}

@media print{body[data-print-scope="worksheet"]>.shell{display:none!important}body[data-print-scope="worksheet"]>#print-worksheet{display:block!important}.worksheet-heading{border-bottom:1px solid #777;margin-bottom:8pt}.worksheet-heading h1{font:400 24pt/1.1 var(--serif);color:#111;margin:7pt 0}.worksheet-heading p{font-size:8pt;line-height:1.45;margin:6pt 0;color:#222}.worksheet-identifiers{font-size:8pt;margin:10pt 0}.worksheet-instructions{font-size:8pt;line-height:1.4;padding-left:15pt;margin:8pt 0 12pt}.worksheet-instructions li{margin:3pt 0}.worksheet-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:8pt}.worksheet-table th,.worksheet-table td{border:1px solid #777;padding:4pt;text-align:left}.worksheet-table th:last-child,.worksheet-table td:last-child{width:34pt;text-align:center}.worksheet-table td{height:7.5mm}.worksheet-table tr{break-inside:avoid}.worksheet-small,.worksheet-source-note{font-size:7.5pt;line-height:1.4;margin:7pt 0;color:#222}.worksheet-source-note a{color:#111}}

.war-record-link{font-size:10px;color:var(--muted);padding-top:3px}.war-evidence{scroll-margin-top:calc(var(--controls-height) + 25px)}

/* Party encoding is separate from source verification and user-selected marks. */
:root{--party-r:#ff7081;--party-d:#78a8ff;--party-l:#f3d553;--party-g:#78c9a3;--party-neutral:#b8c0c4}
.party-underline{--party-color:var(--party-neutral);color:inherit;text-decoration-line:underline;text-decoration-color:var(--party-color);text-decoration-thickness:1.5px;text-underline-offset:.17em;text-decoration-skip-ink:none;box-decoration-break:clone;-webkit-box-decoration-break:clone}
.party-r{--party-color:var(--party-r);text-decoration-style:solid}.party-d{--party-color:var(--party-d);text-decoration-style:double}.party-l{--party-color:var(--party-l);text-decoration-style:dashed}.party-g{--party-color:var(--party-g);text-decoration-style:dotted}.party-neutral{--party-color:var(--party-neutral);text-decoration-style:wavy}
.candidate-name,.comparison-column .candidate-name{line-height:1.4}.party-key{border:1px solid var(--line);padding:12px 13px;margin:15px 0 19px}.party-key-items{display:flex;align-items:flex-start;flex-wrap:wrap;gap:11px 19px}.party-key-item{display:inline-flex;align-items:baseline;flex-wrap:wrap;gap:5px;font-size:10px;line-height:1.8}.party-pattern{color:var(--muted);font-size:8px}.party-key p{font-size:10px;line-height:1.55;color:var(--muted);margin:11px 0 0}.comparison-column .comparison-party{margin:-8px 0 16px;font-size:9px}.copy.roster .party-underline{line-height:1.7}.comparison-column .party-underline{overflow-wrap:normal}
@media(max-width:500px){.party-key{padding:10px}.party-key-items{gap:10px 15px}.party-key-item{font-size:9px}.party-pattern{font-size:7px}.party-key p{font-size:9px}}
@media print{:root{--party-r:#b0263d;--party-d:#245ba8;--party-l:#866800;--party-g:#24674c;--party-neutral:#4f5b60}.party-underline{-webkit-print-color-adjust:exact;print-color-adjust:exact;text-decoration-thickness:.9pt;text-underline-offset:1.8pt;text-shadow:none!important;filter:none!important}.party-key{break-inside:avoid;border-color:#999;padding:7pt;margin:8pt 0 12pt}.party-key-items{gap:7pt 13pt}.party-key-item{font-size:8pt}.party-pattern{font-size:7pt;color:#333}.party-key p{font-size:7.5pt;color:#333}.comparison-column .comparison-party{font-size:8pt;color:#333}.candidate-name,.comparison-column .candidate-name{line-height:1.4}}

/* End-of-record display controls stay outside the primary task controls. */
.footer-controls{display:flex;flex-direction:column;align-items:flex-start;gap:13px}.footer-controls button{min-width:88px}.footer-controls .back-top{grid-column:auto}@media(max-width:900px){.footer-controls{grid-column:1/-1;flex-direction:row;align-items:center;flex-wrap:wrap;gap:14px 25px}}@media print{.footer-controls{display:none!important}}

/* Party chrome: thin edges and small corner marks, never colored body copy. */
.party-box{--party-color:var(--party-neutral)}
.party-box.party-r{--party-color:var(--party-r)}.party-box.party-d{--party-color:var(--party-d)}.party-box.party-l{--party-color:var(--party-l)}.party-box.party-g{--party-color:var(--party-g)}.party-box.party-neutral{--party-color:var(--party-neutral)}
.candidate-item.party-box .candidate-card,.candidate-item.party-box .candidate-quickview,.candidate-item.party-box .compare-choice,.comparison-column.party-box{border-color:var(--party-color)}
.candidate-item.party-box .candidate-card::before,.candidate-item.party-box .candidate-card::after{border-color:var(--party-color)}
.candidate-item.party-box .candidate-card,.comparison-column.party-box{box-shadow:0 0 9px -7px var(--party-color),inset 0 1px 0 0 var(--party-color)}
.party-key{padding:0}.party-key>summary{padding:10px 13px;color:var(--muted);font-size:11px;cursor:pointer}.party-key>.party-key-items{padding:5px 13px 0}.party-key>p{padding:0 13px 12px;margin-top:8px}
.plain-section-front h3{font:400 25px/1.25 var(--serif);letter-spacing:.035em;margin:0 0 17px}.plain-section-front ul{padding-left:20px;max-width:64ch}.plain-section-front li{margin:9px 0;font-size:15px;line-height:1.55}.plain-tax-list{border-top:1px solid var(--line);padding-top:12px}.front-sources{display:flex;gap:5px;margin:14px 0}.section-evidence>summary{font-size:14px}.basis-label{font:9px/1.5 var(--mono);color:var(--muted);border:1px solid var(--line);padding:1px 5px;display:inline-block;width:max-content;max-width:100%;margin:0 0 5px}.quick-policy-topic .basis-label{margin-left:7px}.quick-policy-topic .quick-limit,.quick-limit{font-size:11px;line-height:1.5;color:var(--muted);margin:4px 0}.reviewed-quick-summaries{padding:14px 0}.reviewed-quick-summaries .quick-policy-topic{margin:0 0 15px}.original-quick-notes{margin:0 0 20px;border-bottom:1px solid var(--line)}.original-quick-notes>summary{font-size:12px;padding:10px 0;color:var(--muted);cursor:pointer}.comparison-brief{font-size:13px;line-height:1.6;margin:12px 0 20px}.comparison-brief p{margin:5px 0}.comparison-records>summary{font-size:12px;display:flex;justify-content:space-between;gap:12px;cursor:pointer;list-style:none;padding:4px 0 8px}.comparison-records>summary::-webkit-details-marker{display:none}.comparison-records>summary::after{content:'+';color:var(--muted)}.comparison-records[open]>summary::after{content:'−'}.comparison-records>summary .micro{margin-left:auto;white-space:nowrap}.comparison-records>div{padding:5px 0 0}.compare-method{margin:8px 0 14px;padding-top:0}.compare-method>summary{padding:8px 0}.comparison-column.party-box{text-decoration-line:none}.candidate-item.party-box{text-decoration-line:none}
@media(max-width:500px){.plain-section-front h3{font-size:22px}.plain-section-front li{font-size:14px}.section-evidence>summary{font-size:12px}.quick-policy-topic .basis-label{font-size:8px}.comparison-records>summary{font-size:11px}}
@media print{.candidate-item.party-box .candidate-card,.candidate-item.party-box .candidate-quickview,.comparison-column.party-box{border-color:var(--party-color);box-shadow:none!important;filter:none!important}.comparison-column.party-box{border-top:1pt solid var(--party-color);padding-top:8pt;-webkit-print-color-adjust:exact;print-color-adjust:exact}.party-key>summary{font-size:9pt;color:#222}.party-key>.party-key-items{padding:4pt 7pt 0}.party-key>p{padding:0 7pt 7pt}.comparison-records>div,.original-quick-notes>div{display:block!important}.comparison-records>summary{break-after:avoid;color:#111}.comparison-records>summary::after{display:none}.comparison-brief,.plain-section-front li{font-size:10pt;color:#222}.basis-label,.quick-limit{color:#333!important}.plain-section-front h3{font-size:14pt}}

/* Explicit topic rows keep brief notes and caveats from sharing a grid cell. */
.quick-topic-head{grid-column:1;grid-row:1/3}.quick-topic-head .basis-label{margin:5px 0 0;display:block}.quick-policy-topic>.quick-summary{grid-column:2;grid-row:1}.quick-policy-topic>.quick-limit{grid-column:2;grid-row:2}.quick-policy-topic>.quick-policy-sources{grid-column:3;grid-row:1/3}.quick-policy-topic{row-gap:4px}
@media(max-width:600px){.quick-topic-head{grid-column:1;grid-row:1}.quick-topic-head .basis-label{display:inline-block;margin:0 0 0 7px}.quick-policy-topic>.quick-summary{grid-column:1;grid-row:2}.quick-policy-topic>.quick-limit{grid-column:1;grid-row:3}.quick-policy-topic>.quick-policy-sources{grid-column:2;grid-row:1/4}.quick-policy-topic .quick-limit{font-size:10px}}

/* Office boundaries keep adjacent candidate groups unmistakably separate. */
.candidate-race{min-width:0;display:grid;gap:16px;margin:0 0 22px}.candidate-race[hidden]{display:none!important}.race-header{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:2px solid var(--cyan);border-bottom:1px solid var(--line);background:var(--panel2);padding:13px 15px;margin:8px 0 0}.race-header .micro{font-size:8px}.race-header h3{font:400 24px/1.25 var(--serif);letter-spacing:.04em;margin:4px 0 0;color:var(--ink)}.race-count{white-space:nowrap;flex-shrink:0}.copy.roster{border-top:1px solid var(--line);padding-top:10px;margin-bottom:17px}.roster-office{display:block;font-weight:600;font-size:12px;line-height:1.45;letter-spacing:.015em;background:var(--panel2);border-left:2px solid var(--cyan);padding:6px 9px;margin-bottom:7px}.roster-names{display:block;padding:0 9px}.candidate-race .candidate-item{min-width:0}
@media(max-width:500px){.race-header{padding:11px 10px;gap:10px}.race-header h3{font-size:21px}.race-header .micro{font-size:7px}.candidate-race{gap:13px;margin-bottom:18px}.roster-office{font-size:11px;padding:6px 7px}.roster-names{padding:0 7px}}
@media print{.candidate-race{display:block;break-inside:auto;page-break-inside:auto;margin:0 0 16pt}.candidate-race[hidden]{display:none!important}.race-header{display:flex;background:white!important;color:#111;border-top:1.5pt solid #333;border-bottom:.5pt solid #999;padding:7pt 8pt;margin:8pt 0 9pt;break-inside:avoid;break-after:avoid;page-break-after:avoid}.race-header h3{font-size:15pt;color:#111}.race-header .micro{font-size:7pt;color:#333}.race-header+.candidate-item{break-before:avoid;page-break-before:avoid}.copy.roster{border-top:.5pt solid #999;padding-top:5pt;margin:0 0 9pt;break-inside:avoid;page-break-inside:avoid}.roster-office{font-size:9pt;line-height:1.3;color:#111;background:white!important;border-left:1.5pt solid #333;padding:3pt 6pt;margin:0 0 4pt;break-after:avoid;page-break-after:avoid}.roster-names{padding:0 6pt;color:#111}}
/* Preserve the dormant full-reference fallback without exposing a new print choice. */
@media print{body[data-print-scope="all"] .candidate-race[hidden]{display:block!important}body[data-print-scope="all"] .race-count{display:none!important}}

/* v12: larger screen controls, without adding bulk to the paper layout. */
@media screen{
button,.profile-actions button,.evidence-filter-status button,.voting-panel .button{min-height:44px;min-width:44px}
.compare-tabs{flex-wrap:wrap}.compare-tabs button{flex:0 1 auto}
.evidence-filter-chip{min-height:44px}
summary{min-height:44px}
.source-ref{min-width:44px;min-height:44px;vertical-align:middle}
.external-source,.supplement-link,.evidence-icon,.county-routes a,.clock-result-links a,.war-record-link,.back-top,.race-link,.quick-facts article>a:not(.source-ref){min-height:44px;display:inline-flex;align-items:center;padding-top:8px;padding-bottom:8px}
.external-source,.evidence-icon,.county-routes a,.race-link{min-width:44px}
.quick-policy-sources{gap:6px}.front-sources,.source-links{flex-wrap:wrap;gap:8px}
.race-header h3{scroll-margin-top:calc(var(--controls-height) + 25px)}
.race-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap;justify-content:flex-end}
.race-link{font-size:11px;white-space:nowrap;border:1px solid var(--line);padding:8px 10px;text-decoration:none;color:var(--ink)}
.race-link:hover{border-color:var(--cyan)}
}
@media screen and (max-width:500px){.race-header{flex-wrap:wrap}.race-actions{width:100%;justify-content:space-between}.quick-policy-sources{min-width:44px}.compare-actions{flex-wrap:wrap}.dialog-actions{max-width:100%}}
@media screen{.nav-link{min-height:44px}.open-full-record{min-height:44px;display:flex!important;align-items:center;padding:8px 0}}
