.sv{--sv-paper:#f4f0e7;--sv-bright:#fffdf8;--sv-ink:#11100e;--sv-muted:#5f584f;--sv-rule:#c9c0b3;--sv-accent:#8e1623;--sv-serif:"Iowan Old Style",Baskerville,Georgia,serif;--sv-display:"Bodoni 72",Didot,Georgia,serif;--sv-sans:Verdana,"Helvetica Neue",Arial,sans-serif;background:var(--sv-paper);color:var(--sv-ink);font:16px/1.5 var(--sv-serif);min-height:100vh;color-scheme:light}
.sv *{box-sizing:border-box}.sv h1,.sv h2,.sv h3,.sv p,.sv dl,.sv dd,.sv ol{margin:0}.sv ol{padding:0;list-style:none}.sv [hidden]{display:none!important}.sv a{color:var(--sv-accent);text-decoration:underline;text-underline-offset:3px}.sv a:hover{color:var(--sv-ink)}.sv :focus-visible{outline:3px solid #244f9b;outline-offset:3px}
.sv-masthead{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px max(24px,calc((100vw - 1180px)/2));background:var(--sv-ink);color:var(--sv-bright)}.sv-brand{font:22px/1.2 var(--sv-display);white-space:nowrap}.sv-badge-verified{border:1px solid #7a7165;padding:5px 10px;font:11px/1.4 var(--sv-sans);white-space:nowrap}
.sv-page{max-width:1180px;margin:auto;padding:40px 24px}.sv-kicker{color:var(--sv-accent);font:700 11px/1.5 var(--sv-sans);letter-spacing:.12em;text-transform:uppercase}
.sv-heading{display:flex;justify-content:space-between;gap:36px;align-items:end;padding:10px 0 24px;border-bottom:3px double var(--sv-ink)}.sv-heading h1{font:700 clamp(36px,5vw,60px)/1.05 var(--sv-display);color:var(--sv-ink)}.sv-intro{margin-top:12px!important;font-size:18px;color:#494137;max-width:640px}
.sv-stats{display:flex;gap:28px;padding-left:28px;border-left:1px solid var(--sv-rule)}.sv-stats dd{font:34px/1 var(--sv-display);white-space:nowrap}.sv-stats dt{margin-top:8px;font:11px var(--sv-sans);color:var(--sv-muted)}
.sv-notice{display:flex;gap:18px;align-items:center;margin:22px 0;padding:14px 16px;border-left:3px solid #a87519;background:#ebe4d6;font:12px/1.65 var(--sv-sans)}.sv-notice-title{white-space:nowrap}.sv-notice-copy{flex:1;min-width:0;color:#544b3f}
.sv-controls{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr) auto;gap:8px 18px;align-items:end;margin-bottom:18px}.sv-controls label{font:700 11px/1.5 var(--sv-sans);color:#494137}.sv-field{display:grid;gap:8px;min-width:0}.sv-controls :is(input,select){width:100%;height:46px;border:1px solid #a39888;border-radius:0;background:var(--sv-bright);color:var(--sv-ink);padding:10px 13px;font:15px var(--sv-sans)}.sv-count{font:11px var(--sv-sans);color:var(--sv-muted);white-space:nowrap;padding-bottom:14px}
.sv-rolls{border-top:1px solid var(--sv-ink)}.sv-roll{padding:20px 0;border-bottom:1px solid var(--sv-rule)}.sv-roll-head{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 14px}.sv-roll-title{font:700 20px/1.3 var(--sv-serif)}.sv-when{font:12px/1.5 var(--sv-sans);color:var(--sv-muted);font-variant-numeric:tabular-nums}
.sv-badge{font:10px/1.6 var(--sv-sans);padding:1px 7px;border:1px solid var(--sv-rule);letter-spacing:.04em;text-transform:uppercase}.sv-pass{background:#dfe8d8;border-color:#7d9a6c;color:#29401d}.sv-fail{background:#f3dcd8;border-color:#b57a70;color:#5c1c12}.sv-other{background:#e7e0d3;color:#3f382f}
.sv-question{margin-top:6px!important;font-size:17px}.sv-result,.sv-tie,.sv-change{margin-top:4px!important;color:#494137;font-size:15px}.sv-totals{display:flex;flex-wrap:wrap;gap:4px 14px;margin-top:8px!important;font:13px/1.6 var(--sv-sans);font-variant-numeric:tabular-nums}.sv-type{color:var(--sv-muted)}
.sv-member-vote{margin-top:8px!important;padding:6px 10px;background:var(--sv-bright);border-left:3px solid var(--sv-accent);font:700 13px/1.5 var(--sv-sans)}.sv-source{margin-top:6px!important;font:11px/1.6 var(--sv-sans)}
.sv-details{margin-top:8px}.sv-details summary{cursor:pointer;font:12px/1.6 var(--sv-sans);color:var(--sv-accent)}.sv-positions{display:grid;gap:10px;margin-top:10px}.sv-group h3{font:700 12px/1.5 var(--sv-sans)}.sv-group p{font:12px/1.7 var(--sv-sans);color:#3f382f;overflow-wrap:anywhere}
.sv-more{display:block;margin:22px auto 0;padding:10px 18px;border:1px solid var(--sv-ink);background:var(--sv-bright);color:var(--sv-ink);font:13px var(--sv-sans);cursor:pointer}.sv-more:hover{background:var(--sv-ink);color:var(--sv-bright)}
.sv-empty{padding:48px 0;text-align:center;color:var(--sv-muted)}.sv-footer{display:flex;gap:36px;justify-content:space-between;padding-top:22px;color:var(--sv-muted);font:11px/1.65 var(--sv-sans)}.sv-footer p{max-width:620px}
/* Keep the light directory readable inside the site's dark shared chrome. */
#senate-vote-directory{color-scheme:light;--ink:var(--sv-ink);--muted:var(--sv-muted);--accent:var(--sv-accent);--rule:var(--sv-rule);--workspace-panel:var(--sv-paper);--workspace-control:var(--sv-bright)}
#senate-vote-directory :is(h1,h2,h3,p,li,dt,dd,label){color:var(--sv-ink)}
#senate-vote-directory .sv-controls :is(input,select){background:var(--sv-bright);color:var(--sv-ink);border-color:#a39888}
#senate-vote-directory .sv-controls input::placeholder{color:#797064}
#senate-vote-directory :is(.sv-when,.sv-type,.sv-count,.sv-footer p,.sv-stats dt,.sv-empty){color:var(--sv-muted)}
#senate-vote-directory .sv-notice-copy{color:#544b3f}#senate-vote-directory .sv-kicker{color:var(--sv-accent)}
#senate-vote-directory .sv-masthead :is(span){color:var(--sv-bright)}
/* The site's side columns can make this column narrower than a phone, so the page
   follows its own width, not the window's. Without them it is the window less 40px. */
.sv{container:sv/inline-size}
@container sv (max-width:780px){.sv-heading{display:block}.sv-stats{margin-top:20px!important;padding-left:0;border-left:0}.sv-notice{display:block}.sv-notice-title,.sv-notice-copy{display:block}.sv-notice-copy{margin-top:4px}.sv-controls{grid-template-columns:1fr}.sv-count{padding-bottom:0}.sv-footer{display:block}.sv-footer p+p{margin-top:10px}}
@container sv (max-width:440px){.sv-masthead{padding:16px 18px;flex-wrap:wrap;gap:8px}.sv-brand{font-size:18px}.sv-page{padding:26px 18px}.sv-heading h1{font-size:38px}.sv-intro{font-size:16px}.sv-stats{gap:18px;flex-wrap:wrap}.sv-stats dd{font-size:26px}.sv-notice-title{white-space:normal}.sv-roll-title{font-size:18px}.sv-question{font-size:16px}}
