.landing{color:var(--ink)}.landing .mono-label{font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-3)}.landing .visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.landing .hero-banner{position:relative;overflow:hidden;background:#14181f;border-bottom:1px solid var(--rule)}.landing .hero-bg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center 30%;filter:grayscale(.25) contrast(1.05) brightness(.62)}.landing .hero-shade{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(180deg,#0a0c1099,#0a0c1052 45%,#0a0c10bd)}.landing .hero-banner-inner{position:relative;z-index:2;max-width:var(--maxw);margin:0 auto;padding:150px 40px 132px;text-align:center}.landing .hero-kicker{color:#ffffffb8;display:block}.landing .hero-banner h1{font-family:var(--serif);font-weight:400;font-size:clamp(56px,7.4vw,108px);line-height:.96;letter-spacing:-.01em;color:#fff;margin:28px auto 0;max-width:12em;text-wrap:balance}.landing .hero-banner h1 em{font-style:italic;color:#aecbff}.landing .hero-quote{font-family:var(--serif);font-style:italic;font-size:clamp(20px,2.1vw,27px);line-height:1.5;color:#ffffffeb;max-width:28em;margin:48px auto 0;text-wrap:pretty}.landing .hero-quote .qw{opacity:1}.landing .quote-attr{font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:#ffffff94;margin-top:22px}@media (prefers-reduced-motion: no-preference){.landing .hero-quote .qw{opacity:0;display:inline-block;animation:bw-qword .7s ease forwards}.landing .quote-attr{animation:bw-reveal .9s ease 3.3s both}}@keyframes bw-qword{0%{opacity:0;transform:translateY(6px);filter:blur(3px)}to{opacity:1;transform:none;filter:none}}.landing .lookup-band{max-width:var(--maxw);margin:0 auto;padding:88px 40px 96px;display:grid;justify-items:center;text-align:center}.landing .hero-deck{font-size:19px;line-height:1.55;color:var(--ink-2);max-width:34em}.landing .hero-deck b{font-weight:600;color:var(--ink)}.landing .lookup{margin-top:44px;max-width:560px;width:100%;text-align:left}.landing .lookup-form{display:flex;align-items:center;gap:18px;border-bottom:2px solid var(--rule-strong);padding-bottom:14px;transition:border-color .2s ease}.landing .lookup-form:focus-within{border-color:var(--accent)}.landing .lookup-form input{flex:1;min-width:0;background:none;border:none;outline:none;font-family:var(--serif);font-size:30px;color:var(--ink);caret-color:var(--accent)}.landing .lookup-form input::placeholder{color:var(--ink-3);opacity:.8}.landing .lookup-form button{display:inline-flex;align-items:center;gap:9px;background:var(--accent);color:#fff;border:none;border-radius:var(--r-sm);font-family:var(--sans);font-size:14px;font-weight:600;padding:11px 18px;cursor:pointer;white-space:nowrap;transition:background .18s ease}.landing .lookup-form button:hover{background:var(--accent-hover)}.landing .lookup-form button svg{width:16px;height:16px;transition:transform .2s ease}.landing .lookup-form button:hover svg{transform:translate(3px)}.landing .lookup-hint{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);margin-top:12px}.landing .lookup-result{margin-top:16px;display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:baseline;padding:14px 16px;background:var(--accent-soft);border-radius:var(--r-sm)}@media (prefers-reduced-motion: no-preference){.landing .lookup-result{animation:bw-result .25s ease both}}@keyframes bw-result{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:none}}.landing .lookup-result .lr-district{font-family:var(--mono);font-size:12px;font-weight:600;color:var(--accent);white-space:nowrap}.landing .lookup-result .lr-body{font-size:14.5px;line-height:1.45;color:var(--ink)}.landing .lookup-result .lr-body small{display:block;color:var(--ink-2);font-size:12.5px;margin-top:1px}.landing .lookup-result .lr-go{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;font-weight:500;color:var(--accent);white-space:nowrap;background:none;border:none;padding:0;cursor:pointer}.landing .hero-meta{margin-top:72px;padding-top:20px;border-top:1px solid var(--rule);width:100%;max-width:760px;display:flex;gap:12px 0;flex-wrap:wrap;justify-content:center}.landing .hero-meta span{font-family:var(--mono);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}.landing .hero-meta span b{color:var(--ink);font-weight:600}.landing .hero-meta span+span:before{content:"/";margin:0 14px;color:var(--rule-strong);opacity:.35}.landing .ticker{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);background:var(--bg-tint)}.landing .ticker-inner{max-width:var(--maxw);margin:0 auto;padding:13px 40px;display:flex;align-items:center;gap:22px;overflow:hidden}.landing .ticker-label{display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);white-space:nowrap;flex-shrink:0}.landing .ticker-label:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--error);flex-shrink:0}@media (prefers-reduced-motion: no-preference){.landing .ticker-label:before{animation:bw-pulse 2s infinite}}@keyframes bw-pulse{0%,to{opacity:1}50%{opacity:.25}}.landing .ticker-viewport{flex:1;min-width:0;overflow:hidden}.landing .ticker-track{display:inline-flex;width:max-content}.landing .ticker-group{display:inline-flex;gap:64px;padding-right:64px}@media (prefers-reduced-motion: no-preference){.landing .ticker-track{animation:bw-marquee 36s linear infinite;will-change:transform}.landing .ticker:hover .ticker-track{animation-play-state:paused}}@keyframes bw-marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.landing .ticker-item{font-family:var(--mono);font-size:12.5px;letter-spacing:.01em;color:var(--ink-2);white-space:nowrap}.landing .ticker-item .tid{color:var(--accent);font-weight:600;margin-right:10px}.landing .closing{padding:128px 0 136px;text-align:center}.landing .closing-kicker{display:block;margin-bottom:26px;color:var(--accent)}.landing .closing h2{font-family:var(--serif);font-weight:400;font-size:clamp(44px,6vw,76px);line-height:1;letter-spacing:0;color:var(--ink);max-width:14em;margin:0 auto;text-wrap:balance}.landing .closing h2 em{font-style:italic;color:var(--accent)}.landing .closing-cta{margin-top:44px;display:flex;gap:14px;justify-content:center;flex-wrap:wrap}.landing .colophon{border-top:1px solid var(--rule)}.landing .colophon-inner{max-width:var(--maxw);margin:0 auto;padding:26px 40px;display:flex;align-items:baseline;gap:16px 28px;flex-wrap:wrap}.landing .colophon-word{font-family:var(--serif);font-size:19px;color:var(--ink)}.landing .colophon-links{display:flex;gap:22px;flex-wrap:wrap;margin-left:auto}.landing .colophon a,.landing .colophon span:not(.colophon-word){font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3)}.landing .colophon a{transition:color .15s ease}.landing .colophon a:hover{color:var(--accent)}.landing .reveal{opacity:1;transform:none}@media (prefers-reduced-motion: no-preference){.landing .reveal{animation:bw-reveal .7s ease-out both}.landing .reveal.d1{animation-delay:.08s}.landing .reveal.d2{animation-delay:.16s}.landing .reveal.d3{animation-delay:.24s}}@keyframes bw-reveal{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@media (max-width: 940px){.landing .ticker-inner,.landing .colophon-inner{padding-left:24px;padding-right:24px}.landing .hero-banner-inner{padding:96px 24px 88px}.landing .lookup-band{padding:64px 24px 72px}.landing .closing{padding:88px 0 96px}}@media (max-width: 600px){.landing .lookup-form input{font-size:22px}.landing .lookup-form button .btn-word{display:none}.landing .hero-meta{margin-top:56px}}.auth-page{min-height:100vh;background:#111110;display:flex;align-items:center;justify-content:center;padding:2rem}.auth-card{width:100%;max-width:420px;background:#1a1a18;border:1px solid rgba(255,255,255,.06);padding:3rem 2.5rem;border-radius:var(--radius-lg)}.auth-header{text-align:center;margin-bottom:2rem}.auth-logo{font-family:var(--font-display);font-size:2rem;font-weight:400;color:#fff;margin:0 0 .25rem}.auth-tagline{font-family:var(--font-body);font-size:.8rem;color:#fff6;margin:0;text-transform:uppercase;letter-spacing:.15em}.auth-tabs{display:flex;border-bottom:1px solid rgba(255,255,255,.1);margin-bottom:2rem}.auth-tab{flex:1;padding:.75rem;background:none;border:none;color:#fff6;font-family:var(--font-body);font-size:.85rem;font-weight:500;cursor:pointer;text-transform:uppercase;letter-spacing:.1em;transition:color .15s ease;border-bottom:2px solid transparent;margin-bottom:-1px}.auth-tab--active{color:var(--accent);border-bottom-color:var(--accent)}.auth-tab:hover:not(.auth-tab--active){color:#ffffffb3}.auth-form{display:flex;flex-direction:column;gap:1.25rem}.auth-field{display:flex;flex-direction:column;gap:.4rem}.auth-field label{font-family:var(--font-body);font-size:.75rem;font-weight:500;color:#ffffff80;text-transform:uppercase;letter-spacing:.1em}.auth-field input{padding:.85rem 1rem;background:#111110;border:1px solid rgba(255,255,255,.1);border-radius:var(--radius-sm);color:#fff;font-family:var(--font-body);font-size:.95rem;transition:border-color .15s ease}.auth-field input::placeholder{color:#fff3}.auth-field input:focus{outline:none;border-color:var(--accent)}.auth-error{padding:.75rem 1rem;background:var(--error-subtle);border:1px solid rgba(220,38,38,.3);border-radius:var(--radius-sm);color:#fca5a5;font-size:.85rem;font-family:var(--font-body)}.auth-message{padding:.75rem 1rem;background:var(--accent-subtle);border:1px solid rgba(29,78,216,.3);border-radius:var(--radius-sm);color:var(--accent);font-size:.85rem;font-family:var(--font-body)}.auth-submit{padding:1rem;background:var(--accent);color:#fff;border:none;border-radius:var(--radius-sm);font-family:var(--font-body);font-size:.85rem;font-weight:600;cursor:pointer;transition:background .15s ease;text-transform:uppercase;letter-spacing:.15em;margin-top:.5rem}.auth-submit:hover:not(:disabled){background:var(--accent-hover)}.auth-submit:disabled{opacity:.6;cursor:not-allowed}.auth-footer{margin-top:2rem;text-align:center}.auth-back{background:none;border:none;color:#fff6;font-family:var(--font-body);font-size:.8rem;cursor:pointer;transition:color .15s ease}.auth-back:hover{color:#ffffffb3}@media (max-width: 480px){.auth-card{padding:2rem 1.5rem}.auth-logo{font-size:1.75rem}}.politician-card{background:var(--surface);border-radius:var(--radius-md);padding:1rem;cursor:pointer;transition:all .15s ease;border:1px solid var(--border)}.politician-card:hover{border-color:var(--text-primary);box-shadow:var(--shadow-md)}.card-content{display:flex;align-items:center;gap:1rem}.card-photo{flex-shrink:0;width:60px;height:60px;border-radius:50%;overflow:hidden;border:2px solid var(--border-light)}.card-photo img{width:100%;height:100%;object-fit:cover}.photo-placeholder{width:100%;height:100%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:1.1rem;background:var(--text-primary)}.card-info{flex:1;min-width:0}.card-name{font-size:1rem;font-weight:500;color:var(--text-primary);margin:0 0 .25rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:var(--font-body)}.card-role{font-size:.75rem;color:var(--text-secondary);margin:0 0 .15rem;text-transform:uppercase;letter-spacing:.5px}.card-location{font-size:.85rem;color:var(--text-primary);margin:0;font-weight:500}.card-actions{display:flex;align-items:center;gap:.75rem;flex-shrink:0}.card-party{flex-shrink:0;width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600;font-size:.9rem}.favorite-btn{width:32px;height:32px;padding:0;border:none;background:transparent;cursor:pointer;color:var(--text-muted);transition:all .15s ease;display:flex;align-items:center;justify-content:center}.favorite-btn svg{width:20px;height:20px}.favorite-btn:hover{color:var(--accent);transform:scale(1.15)}.favorite-btn.active{color:var(--accent)}.favorite-btn.active svg{filter:drop-shadow(0 2px 4px rgba(29,78,216,.3))}@media (max-width: 480px){.card-photo{width:50px;height:50px}.card-name{font-size:.95rem}.card-party{width:32px;height:32px;font-size:.85rem}}.my-politician{max-width:900px;margin:0 auto;padding:0 1rem}.page-header{text-align:center;margin-bottom:2rem}.page-header h1{font-size:2.5rem;font-weight:400;color:var(--text-primary);margin:0 0 .5rem;font-family:var(--font-display)}.page-header p{color:var(--text-secondary);font-size:1.1rem;margin:0}.address-card{background:var(--surface);border-radius:var(--radius-md);padding:2rem;border:1px solid var(--border);margin-bottom:2rem}.address-form{display:flex;flex-direction:column;gap:1.25rem}.form-row{display:flex;gap:1rem}.form-group{flex:1;display:flex;flex-direction:column;gap:.5rem}.form-group.full-width{flex:1 1 100%}.form-group.small{flex:0 0 140px}.form-group label{font-weight:500;color:var(--text-primary);font-size:.85rem;letter-spacing:.5px;text-transform:uppercase}.form-input{padding:.875rem 1rem;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:1rem;transition:border-color .15s ease;font-family:inherit;background:var(--surface);color:var(--text-primary)}.form-input:focus{outline:none;border-color:var(--accent)}.form-input::placeholder{color:var(--text-muted)}select.form-input{-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%231A1A18' stroke-width='1.5' fill='none'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;padding-right:2.5rem;cursor:pointer}.form-hint{font-size:.8rem;color:var(--text-secondary)}.form-hint a{color:var(--accent)}.loading-text{padding:.875rem 1rem;color:var(--text-primary);font-size:.9rem}.at-large-notice{background:var(--accent-subtle);color:var(--accent);padding:.875rem 1rem;border-radius:var(--radius-sm);font-size:.9rem;border:1px solid var(--accent)}.error-message{background:var(--error-subtle);color:var(--error);padding:.875rem 1rem;border-radius:var(--radius-sm);font-size:.95rem;border:1px solid rgba(220,38,38,.3)}.form-actions{display:flex;gap:1rem;margin-top:.5rem}.btn-primary{flex:1;padding:1rem 2rem;background:var(--accent);color:var(--surface);border:1px solid var(--accent);border-radius:var(--radius-sm);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .15s ease;text-transform:uppercase;letter-spacing:1px;text-align:center;justify-content:center}.btn-primary:hover:not(:disabled){background:var(--accent-hover);color:var(--surface);border-color:var(--accent-hover)}.btn-primary:disabled{opacity:.6;cursor:not-allowed}.btn-secondary{padding:1rem 1.5rem;background:transparent;color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.9rem;font-weight:500;cursor:pointer;transition:all .15s ease;text-transform:uppercase;letter-spacing:1px}.btn-secondary:hover{border-color:var(--text-primary);background:var(--accent-subtle)}.loading-container{display:flex;flex-direction:column;align-items:center;padding:3rem;gap:1rem}.loading-spinner{width:40px;height:40px;border:2px solid var(--border-light);border-top-color:var(--accent);border-radius:50%;animation:spin 1s linear infinite}.loading-container p{color:var(--text-secondary);font-size:1rem}.representatives-results{animation:fadeIn .4s ease-out}.representatives-results h2{font-size:1.75rem;color:var(--text-primary);margin:0 0 .5rem;font-family:var(--font-display)}.results-subtitle{color:var(--text-secondary);margin:0 0 1.5rem;font-size:.95rem}.rep-section{margin-bottom:2rem}.rep-section h3{font-size:.85rem;color:var(--text-primary);margin:0 0 1rem;padding-bottom:.5rem;border-bottom:1px solid var(--border);text-transform:uppercase;letter-spacing:1px;font-family:var(--font-body);font-weight:500}.rep-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1rem}.favorites-section{margin-bottom:2rem;animation:fadeIn .4s ease-out}.favorites-section h2{font-size:1.75rem;color:var(--text-primary);margin:0 0 .5rem;font-family:var(--font-display);font-weight:400}.favorites-subtitle{color:var(--text-secondary);margin:0 0 1.5rem;font-size:.95rem}.senators-loading,.senators-loading-standalone{display:flex;align-items:center;gap:1rem;padding:1.5rem;background:var(--bg);border:1px solid var(--border-light)}.senators-loading p,.senators-loading-standalone p{color:var(--text-secondary);font-size:.95rem;margin:0}.loading-spinner.small{width:24px;height:24px;min-width:24px;border-width:2px}.no-senators-message{color:var(--text-secondary);font-size:.95rem;padding:1rem 0}@media (max-width: 768px){.page-header h1{font-size:1.75rem}.address-card{padding:1.5rem}.form-row{flex-direction:column}.form-group.small{flex:1}.form-actions{flex-direction:column}.btn-secondary{order:2}}.members-register{color:var(--ink)}.members-register .page-masthead{border-bottom:3px solid var(--rule-strong);background:var(--bg-tint)}.members-register .pm-inner{max-width:var(--maxw);margin:0 auto;padding:44px 32px 0}.members-register .pm-kicker{display:block;margin-bottom:16px}.members-register .pm-title{font-family:var(--serif);font-weight:400;font-size:72px;line-height:.95;letter-spacing:0;color:var(--ink)}.members-register .pm-title em{color:var(--accent)}.members-register .pm-deck{font-size:18px;color:var(--ink-2);max-width:58ch;margin-top:16px;line-height:1.5}.members-register .composition{margin-top:34px;padding-bottom:36px;display:grid;grid-template-columns:1fr 1fr;gap:40px}.members-register .comp-block .comp-head{display:flex;justify-content:space-between;align-items:baseline;gap:14px;margin-bottom:12px}.members-register .comp-head .ch-name{font-family:var(--mono);font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink);font-weight:600;white-space:nowrap}.members-register .comp-head .ch-total{font-family:var(--mono);font-size:11px;color:var(--ink-3);white-space:nowrap}.members-register .comp-bar{display:flex;height:26px;border-radius:var(--r-sm);overflow:hidden;border:1px solid var(--rule-strong)}.members-register .comp-seg{display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-size:11px;font-weight:600;color:#fff;min-width:0}.members-register .comp-seg.d{background:var(--dem)}.members-register .comp-seg.r{background:var(--rep)}.members-register .comp-seg.i{background:var(--ind)}.members-register .comp-seg.v{background:var(--ink-3)}[data-theme=dark] .members-register .comp-seg{color:#111110}.members-register .comp-legend{display:flex;gap:18px;margin-top:10px;flex-wrap:wrap}.members-register .comp-legend span{font-family:var(--mono);font-size:11px;letter-spacing:.03em;color:var(--ink-2);display:flex;align-items:center;gap:6px}.members-register .comp-legend i{width:9px;height:9px;border-radius:2px;display:inline-block}.members-register .lg-d{background:var(--dem)}.members-register .lg-r{background:var(--rep)}.members-register .lg-i{background:var(--ind)}.members-register .lg-v{background:var(--ink-3)}.members-register .search-shell{border-bottom:1px solid var(--rule);background:var(--surface);position:sticky;top:62px;z-index:50}.members-register .ss-inner{max-width:var(--maxw);margin:0 auto;padding:16px 32px;display:flex;gap:12px;flex-wrap:wrap;align-items:center}.members-register .search-field{flex:1 1 280px;display:flex;align-items:center;gap:10px;border:1px solid var(--rule-strong);border-radius:var(--r-sm);padding:0 14px;height:46px;background:var(--bg);transition:border-color .15s ease,box-shadow .15s ease}.members-register .search-field:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.members-register .search-field svg{width:18px;height:18px;color:var(--ink-3);flex-shrink:0}.members-register .search-field input{flex:1;border:none;background:none;outline:none;font-family:var(--sans);font-size:15px;color:var(--ink)}.members-register .search-field input::placeholder{color:var(--ink-3)}.members-register .filter-pill{height:46px;border:1px solid var(--rule);border-radius:var(--r-sm);background:var(--bg);font-family:var(--mono);font-size:12px;letter-spacing:.04em;color:var(--ink);padding:0 34px 0 14px;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%239C9789' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;transition:border-color .15s ease}.members-register .filter-pill:hover{border-color:var(--ink-3)}.members-register .members-toolbar{max-width:var(--maxw);margin:0 auto;padding:24px 32px 0}.members-register .mt-bar{display:flex;justify-content:space-between;align-items:baseline;padding-bottom:16px;border-bottom:2px solid var(--rule-strong);flex-wrap:wrap;gap:12px}.members-register .mt-count{font-size:14px;color:var(--ink-2)}.members-register .mt-count b{color:var(--ink);font-family:var(--mono)}.members-register .mt-chips{display:flex;gap:8px;flex-wrap:wrap}.members-register .mt-chip{font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;padding:5px 12px;border-radius:9999px;border:1px solid var(--rule);color:var(--ink-2);background:none;cursor:pointer;transition:all .14s ease}.members-register .mt-chip:hover{border-color:var(--ink-3);color:var(--ink)}.members-register .mt-chip.active{background:var(--ink);color:var(--bg);border-color:var(--ink)}.members-register .members-grid{max-width:var(--maxw);margin:0 auto;padding:28px 32px 72px;display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.members-register .member-card{background:var(--surface);border:1px solid var(--rule);border-radius:var(--r-md);overflow:hidden;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease,border-color .18s ease;display:flex;flex-direction:column;position:relative;width:100%;padding:0;font:inherit;color:inherit;text-align:left}.members-register .member-card:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;z-index:2}.members-register .member-card.d:before{background:var(--dem)}.members-register .member-card.r:before{background:var(--rep)}.members-register .member-card.i:before{background:var(--ind)}.members-register .member-card:hover{transform:translateY(-3px);box-shadow:var(--shadow);border-color:var(--ink-3)}.members-register .mc-photo{aspect-ratio:1 / 1;background:var(--bg-tint);position:relative;overflow:hidden}.members-register .mc-photo img{position:relative;z-index:1;width:100%;height:100%;object-fit:cover;object-position:center top;filter:grayscale(.45) contrast(1.02);transition:filter .25s ease}.members-register .member-card:hover .mc-photo img{filter:grayscale(0) contrast(1)}.members-register .mc-monogram{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;display:grid;place-items:center;font-family:var(--serif);font-size:46px;letter-spacing:.02em;color:var(--ink-3);background:var(--bg-tint)}.members-register .mc-body{padding:16px 16px 18px;display:flex;flex-direction:column;flex:1}.members-register .mc-role{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-3);margin-bottom:6px}.members-register .mc-name{font-family:var(--serif);font-weight:400;font-size:23px;line-height:1.05;letter-spacing:0;margin-bottom:10px;color:var(--ink)}.members-register .mc-foot{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:8px;padding-top:12px;border-top:1px solid var(--rule-light)}.members-register .mc-loc{font-family:var(--mono);font-size:12px;color:var(--ink-2);letter-spacing:.02em}.members-register .mc-leader{font-family:var(--mono);font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);margin-top:-4px;margin-bottom:8px}.members-register .members-foot{text-align:center;padding:0 0 80px}.members-register .members-empty{max-width:var(--maxw);margin:0 auto;padding:60px 32px 100px;text-align:center;color:var(--ink-2);font-size:16px}@media (max-width: 940px){.members-register .pm-title{font-size:56px}.members-register .members-grid{grid-template-columns:repeat(3,1fr)}.members-register .composition{grid-template-columns:1fr;gap:24px}}@media (max-width: 640px){.members-register .pm-title{font-size:42px}.members-register .members-grid{grid-template-columns:repeat(2,1fr)}.members-register .pm-inner,.members-register .ss-inner,.members-register .members-toolbar,.members-register .members-grid{padding-left:18px;padding-right:18px}}@media (max-width: 400px){.members-register .members-grid{grid-template-columns:1fr}}.all-politicians-loading,.all-politicians-error{max-width:700px;margin:0 auto;padding:96px 32px;text-align:center;color:var(--ink-2)}.all-politicians-loading p{margin-top:16px;font-family:var(--mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}.all-politicians-error .error-help{margin-top:12px;font-size:13px;color:var(--ink-3)}.all-politicians-loading .loading-spinner{width:34px;height:34px;margin:0 auto;border:3px solid var(--rule);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}.sponsor-pill-container{position:relative;display:inline-block}.sponsor-pill{cursor:pointer;min-height:44px}.sponsor-pill-active{background:#eff6ff;border-color:#1d4ed8}.sponsor-pill-label{color:var(--text-secondary, #6B6861);font-weight:400}.sponsor-pill-name,.sponsor-pill-placeholder{color:var(--text-primary, #1A1A18);font-weight:500}.sponsor-pill-clear{display:inline-block;margin-left:8px;padding:0 6px;color:var(--text-secondary, #6B6861);font-weight:600;cursor:pointer;border-radius:4px;-webkit-user-select:none;user-select:none}.sponsor-pill-clear:hover{color:var(--text-primary, #1A1A18);background:var(--border-light, #F0EEEA)}.sponsor-pill-dropdown{position:absolute;top:100%;left:0;margin-top:4px;width:320px;max-width:calc(100vw - 32px);background:#fff;border:1px solid #E8E6E1;border-radius:8px;box-shadow:0 4px 12px #00000014;z-index:50;animation:sponsor-pill-fade-in .15s ease-out}@media (prefers-reduced-motion: reduce){.sponsor-pill-dropdown{animation:none}}@keyframes sponsor-pill-fade-in{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.sponsor-pill-input{width:100%;padding:8px 12px;border:0;border-bottom:1px solid #E8E6E1;font-family:var(--font-body, "General Sans", sans-serif);font-size:14px;color:var(--text-primary, #1A1A18);background:transparent;outline:none;box-sizing:border-box}.sponsor-pill-input::placeholder{color:var(--text-muted, #9C9789)}.sponsor-pill-listbox{list-style:none;margin:0;padding:4px 0;max-height:280px;overflow-y:auto}.sponsor-pill-row{display:flex;align-items:center;gap:8px;padding:10px 12px;min-height:40px;cursor:pointer;transition:background .1s ease-out;border-left:2px solid transparent}.sponsor-pill-row:hover{background:var(--bg, #FAFAF7)}.sponsor-pill-row-focused{background:var(--bg, #FAFAF7);border-left-color:#1d4ed8}.sponsor-pill-row-name{font-family:var(--font-body, "General Sans", sans-serif);font-size:14px;font-weight:500;color:var(--text-primary, #1A1A18);flex:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sponsor-pill-row-party{font-family:var(--font-mono, "Geist Mono", monospace);font-size:11px;padding:2px 6px;border-radius:3px}.sponsor-pill-row-state{font-family:var(--font-body, "General Sans", sans-serif);font-size:12px;color:var(--text-secondary, #6B6861)}.sponsor-pill-loading,.sponsor-pill-empty,.sponsor-pill-error{cursor:default;font-style:italic;color:var(--text-secondary, #6B6861);font-size:13px}.sponsor-pill-loading:hover,.sponsor-pill-empty:hover,.sponsor-pill-error:hover{background:transparent}.sponsor-pill-error{color:#dc2626;font-style:normal}.sponsor-pill-loading-text{font-style:italic}.bills-desk{color:var(--ink)}.bills-desk .page-masthead{border-bottom:3px solid var(--rule-strong);background:var(--bg-tint)}.bills-desk .pm-inner{max-width:var(--maxw);margin:0 auto;padding:44px 32px 36px}.bills-desk .pm-kicker{display:block;margin-bottom:16px}.bills-desk .pm-title{font-family:var(--serif);font-weight:400;font-size:72px;line-height:.95;letter-spacing:0;color:var(--ink)}.bills-desk .pm-title em{color:var(--accent)}.bills-desk .pm-deck{font-size:18px;color:var(--ink-2);max-width:60ch;margin-top:16px;line-height:1.5}.bills-desk .pm-meta{display:flex;gap:24px;flex-wrap:wrap;margin-top:26px;padding-top:18px;border-top:1px solid var(--rule);font-family:var(--mono);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}.bills-desk .pm-meta b{color:var(--ink);font-weight:600}.bills-desk .search-shell{border-bottom:1px solid var(--rule);background:var(--surface);position:sticky;top:62px;z-index:50}.bills-desk .ss-inner{max-width:var(--maxw);margin:0 auto;padding:16px 32px;display:flex;gap:12px;flex-wrap:wrap;align-items:center}.bills-desk .search-field{flex:1 1 320px;display:flex;align-items:center;gap:10px;border:1px solid var(--rule-strong);border-radius:var(--r-sm);padding:0 14px;height:46px;background:var(--bg);transition:border-color .15s ease,box-shadow .15s ease}.bills-desk .search-field:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.bills-desk .search-field svg{width:18px;height:18px;color:var(--ink-3);flex-shrink:0}.bills-desk .search-field input{flex:1;border:none;background:none;outline:none;font-family:var(--sans);font-size:15px;color:var(--ink)}.bills-desk .search-field input::placeholder{color:var(--ink-3)}.bills-desk .filter-pill{height:46px;border:1px solid var(--rule);border-radius:var(--r-sm);background:var(--bg);font-family:var(--mono);font-size:12px;letter-spacing:.04em;color:var(--ink);padding:0 34px 0 14px;cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%239C9789' stroke-width='2'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 12px center;transition:border-color .15s ease}.bills-desk .filter-pill:hover{border-color:var(--ink-3)}.bills-desk .trending{border-bottom:1px solid var(--rule);background:var(--bg)}.bills-desk .tr-inner{max-width:var(--maxw);margin:0 auto;padding:14px 32px;display:flex;align-items:center;gap:16px;flex-wrap:wrap}.bills-desk .tr-label{font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--accent);font-weight:600;white-space:nowrap;display:flex;align-items:center;gap:6px}.bills-desk .tr-pills{display:flex;gap:8px;flex-wrap:wrap}.bills-desk .tr-pill{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--rule);border-radius:9999px;padding:6px 14px 6px 10px;font-family:var(--sans);font-size:13px;color:var(--ink);background:none;cursor:pointer;transition:all .15s ease;max-width:280px}.bills-desk .tr-pill:hover{border-color:var(--accent);color:var(--accent)}.bills-desk .tr-pill .n{font-family:var(--mono);font-size:11px;color:var(--accent);font-weight:600;white-space:nowrap}.bills-desk .tr-pill .t{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bills-desk .bills-layout{max-width:var(--maxw);margin:0 auto;padding:0 32px;display:grid;grid-template-columns:232px 1fr;gap:0}.bills-desk .refine{border-right:1px solid var(--rule);padding:32px 28px 60px 0;position:sticky;top:140px;align-self:start;height:max-content}.bills-desk .refine h3{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin-bottom:16px}.bills-desk .facet{margin-bottom:28px}.bills-desk .facet-list{display:flex;flex-direction:column;gap:2px}.bills-desk .facet-item{display:flex;justify-content:space-between;align-items:center;padding:7px 10px;border-radius:var(--r-sm);font-family:var(--sans);font-size:13.5px;color:var(--ink-2);background:none;border:none;cursor:pointer;transition:background .12s ease,color .12s ease;text-align:left;width:100%}.bills-desk .facet-item:hover{background:var(--bg-tint);color:var(--ink)}.bills-desk .facet-item.active{background:var(--accent-soft);color:var(--accent);font-weight:600}.bills-desk .facet-item .c{font-family:var(--mono);font-size:11px;color:var(--ink-3)}.bills-desk .facet-item.active .c{color:var(--accent)}.bills-desk .facet-status-dot{width:8px;height:8px;border-radius:50%;margin-right:8px;flex-shrink:0;display:inline-block}.bills-desk .facet-row{display:flex;align-items:center;min-width:0}.bills-desk .results{padding:28px 0 28px 36px;min-width:0}.bills-desk .results-bar{display:flex;justify-content:space-between;align-items:baseline;padding-bottom:16px;border-bottom:2px solid var(--rule-strong);flex-wrap:wrap;gap:12px}.bills-desk .results-count{font-size:14px;color:var(--ink-2)}.bills-desk .results-count b{color:var(--ink);font-family:var(--mono)}.bills-desk .results-congress,.bills-desk .results-filter{color:var(--ink-3)}.bills-desk .results-sort{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3);display:flex;align-items:center;gap:8px}.bills-desk .results-sort select{border:none;background:none;font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);cursor:pointer}.bills-desk .bill-list{display:flex;flex-direction:column}.bills-desk .bill-row{display:grid;grid-template-columns:132px 1fr 168px;gap:26px;padding:26px 4px 26px 0;width:100%;border:none;border-bottom:1px solid var(--rule);background:none;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:background .14s ease;position:relative}.bills-desk .bill-row:before{content:"";position:absolute;left:-36px;top:0;bottom:-1px;width:3px;background:var(--accent);opacity:0;transition:opacity .14s ease}.bills-desk .bill-row:hover{background:var(--bg-tint)}.bills-desk .bill-row:hover:before{opacity:1}.bills-desk .bill-rail .rid{font-family:var(--mono);font-size:17px;font-weight:600;color:var(--accent);letter-spacing:0}.bills-desk .bill-rail .policy{font-family:var(--mono);font-size:10.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);margin-top:8px;line-height:1.4}.bills-desk .bill-main{min-width:0}.bills-desk .bill-title{font-family:var(--serif);font-weight:400;font-size:26px;line-height:1.08;letter-spacing:0;margin-bottom:10px;color:var(--ink)}.bills-desk .bill-row:hover .bill-title{color:var(--accent)}.bills-desk .bill-byline{font-size:13.5px;color:var(--ink-2);margin-bottom:10px}.bills-desk .bill-byline .sp{color:var(--ink);font-weight:600}.bills-desk .bill-byline .ptag{margin:0 2px;vertical-align:1px}.bills-desk .bill-summary{font-size:13.5px;color:var(--ink-3);line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.bills-desk .bill-side{text-align:right;display:flex;flex-direction:column;align-items:flex-end;gap:14px}.bills-desk .bill-status{display:inline-flex;align-items:center;gap:7px;font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:.04em;padding:4px 10px;border-radius:9999px;border:1px solid currentColor;white-space:nowrap}.bills-desk .bill-status .dot{width:7px;height:7px;border-radius:50%;background:currentColor}.bills-desk .st-law{color:var(--success)}.bills-desk .st-passed{color:var(--info)}.bills-desk .st-both{color:var(--accent)}.bills-desk .st-committee{color:var(--warning)}.bills-desk .st-introduced,.bills-desk .st-progress{color:var(--ink-3)}.bills-desk .bill-lastaction{font-family:var(--mono);font-size:10.5px;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-3);line-height:1.6}.bills-desk .bill-lastaction b{display:block;color:var(--ink-2);font-size:13px;font-weight:600;letter-spacing:0;text-transform:none;margin-top:2px}.bills-desk .load-more{text-align:center;padding:40px 0 10px}.bills-desk .load-more .loading-spinner-small{display:inline-block;width:13px;height:13px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;vertical-align:-2px;animation:bw-spin .7s linear infinite}@keyframes bw-spin{to{transform:rotate(360deg)}}.bills-desk .bills-empty{padding:60px 0 80px;text-align:center;color:var(--ink-2)}.bills-desk .bills-empty p{margin-bottom:18px;font-size:16px}@media (max-width: 940px){.bills-desk .pm-title{font-size:56px}.bills-desk .bills-layout{grid-template-columns:1fr}.bills-desk .refine{display:none}.bills-desk .results{padding-left:0}.bills-desk .bill-row{grid-template-columns:96px 1fr}.bills-desk .bill-side{grid-column:2;flex-direction:row;align-items:center;justify-content:flex-start;text-align:left;margin-top:4px}.bills-desk .bill-row:before{left:-18px}}@media (max-width: 560px){.bills-desk .pm-title{font-size:42px}.bills-desk .pm-inner,.bills-desk .ss-inner,.bills-desk .tr-inner,.bills-desk .bills-layout{padding-left:18px;padding-right:18px}.bills-desk .bill-row{grid-template-columns:1fr;gap:10px}.bills-desk .bill-title{font-size:23px}}.bills-page-loading,.bills-page-error{max-width:700px;margin:0 auto;padding:96px 32px;text-align:center;color:var(--ink-2)}.bills-page-loading p{margin-top:16px;font-family:var(--mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-3)}.bills-page-loading .loading-spinner{width:34px;height:34px;margin:0 auto;border:3px solid var(--rule);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}.bills-page-error .retry-button{margin-top:16px;padding:10px 18px;border-radius:var(--r-sm);background:var(--accent);color:#fff;border:none;cursor:pointer;font-family:var(--sans);font-size:14px;font-weight:600}.bills-page-error .retry-button:hover{background:var(--accent-hover)}.tooltip-wrapper{position:relative;cursor:help;display:inline-flex;align-items:center;gap:.3rem}.tooltip-icon{display:inline-flex;align-items:center;justify-content:center;width:15px;height:15px;border-radius:50%;background:var(--border);color:var(--text-secondary);font-size:.6rem;font-weight:700;flex-shrink:0;line-height:1}.tooltip-popup{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);background:#2d2a28;color:#f5f5f4;font-size:.78rem;font-weight:400;line-height:1.45;padding:.65rem .85rem;border-radius:var(--radius-md);white-space:normal;width:max-content;max-width:280px;z-index:1000;pointer-events:none;box-shadow:0 4px 16px #0003;text-transform:none;letter-spacing:0;font-style:normal;font-family:var(--font-body)}.tooltip-popup:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:5px solid transparent;border-top-color:#2d2a28}.infotip-wrapper{position:relative;cursor:help;border-bottom:1px dotted var(--border);display:inline}@media (max-width: 768px){.tooltip-popup{max-width:220px;font-size:.75rem;left:0;transform:none}.tooltip-popup:after{left:16px;transform:none}}.bill-routing-section{margin:24px 0}.bill-routing-empty{font-family:var(--font-display, "Instrument Serif", serif);font-style:italic;font-size:13px;color:var(--text-secondary, #6B6861);margin:0 0 16px}.bill-routing-error{color:#dc2626;font-size:13px}.bill-routing-list{list-style:none;margin:16px 0 0;padding:0}.bill-routing-row{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:16px 0;border-bottom:1px solid var(--border-light, #F0EEEA)}.bill-routing-row:last-child{border-bottom:none}.bill-routing-row-main{flex:1}.bill-routing-committee-name{font-family:var(--font-body, "General Sans", sans-serif);font-size:14px;font-weight:500;color:var(--text-primary, #1A1A18);text-decoration:none}.bill-routing-committee-name:hover{color:var(--accent, #1D4ED8);text-decoration:underline}.bill-routing-subcommittee{font-family:var(--font-body, "General Sans", sans-serif);font-size:13px;color:var(--text-secondary, #6B6861);margin-left:12px;margin-top:2px}.bill-routing-gloss{font-family:var(--font-display, "Instrument Serif", serif);font-style:italic;font-size:13px;color:var(--text-secondary, #6B6861);margin-top:4px;line-height:1.45}.bill-routing-row-side{display:flex;flex-direction:column;align-items:flex-end;gap:4px;flex-shrink:0}.bill-routing-activity{font-family:var(--font-mono, "Geist Mono", monospace);font-size:11px;padding:2px 6px;background:var(--border-light, #F0EEEA);color:var(--text-primary, #1A1A18);border-radius:3px}.bill-routing-date{font-family:var(--font-mono, "Geist Mono", monospace);font-size:11px;color:var(--text-secondary, #6B6861)}.bill-routing-marginalia{display:block;border-left:3px solid var(--accent, #1D4ED8);padding:0 0 0 16px;margin:24px 0 0;font-family:var(--font-body, "General Sans", sans-serif);font-style:italic;font-size:13px;line-height:1.55;color:var(--text-primary, #1A1A18)}.bill-routing-marginalia-label{display:block;font-family:var(--font-display, "Instrument Serif", serif);font-style:italic;font-size:14px;color:var(--text-secondary, #6B6861);margin-bottom:6px}.bill-routing-marginalia-version{font-family:var(--font-mono, "Geist Mono", monospace);font-style:normal;font-size:11px;color:var(--text-muted, #9C9789)}.bill-routing-marginalia .methodology-link{display:block;margin-top:8px;font-style:normal;font-size:12px;color:var(--accent, #1D4ED8);text-decoration:underline}.bill-status-pill-wrap{position:relative;display:inline-block}.bill-status-popover{position:absolute;bottom:calc(100% + 6px);left:0;width:280px;max-width:calc(100vw - 32px);background:#fff;border:1px solid #E8E6E1;border-radius:8px;box-shadow:0 4px 12px #00000014;padding:12px;z-index:60;animation:bill-status-popover-in .15s ease-out}@media (prefers-reduced-motion: reduce){.bill-status-popover{animation:none}}@keyframes bill-status-popover-in{0%{opacity:0;transform:translateY(2px)}to{opacity:1;transform:translateY(0)}}.bill-status-popover-dl,.bill-status-popover-dl dt,.bill-status-popover-dl dd{margin:0}.bill-status-popover-committee{font-family:var(--font-body, "General Sans", sans-serif);font-size:14px;font-weight:500;color:var(--text-primary, #1A1A18);margin-bottom:4px}.bill-status-popover-pct{font-family:var(--font-mono, "Geist Mono", monospace);font-size:14px;font-weight:500;color:var(--text-primary, #1A1A18);display:inline-block;margin-right:6px}.bill-status-popover-caption{font-family:var(--font-body, "General Sans", sans-serif);font-size:12px;color:var(--text-secondary, #6B6861)}.bill-status-popover-insufficient{font-family:var(--font-body, "General Sans", sans-serif);font-style:italic;font-size:13px;color:var(--text-secondary, #6B6861)}.bill-status-popover-rule{border:0;border-top:1px solid var(--border, #E8E6E1);margin:10px 0 8px}.bill-status-popover-method{font-family:var(--font-body, "General Sans", sans-serif);font-size:12px;color:var(--accent, #1D4ED8);text-decoration:underline}@media (max-width: 500px){.bill-status-popover{left:auto;right:0}}.methodology-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#1a1a1873;display:flex;align-items:center;justify-content:center;z-index:200;padding:24px;animation:methodology-fade-in .15s ease-out}@media (prefers-reduced-motion: reduce){.methodology-overlay{animation:none}}@keyframes methodology-fade-in{0%{opacity:0}to{opacity:1}}.methodology-modal{background:#fff;border:1px solid #E8E6E1;border-radius:12px;box-shadow:0 12px 36px #0000002e;padding:40px 36px 36px;max-width:640px;width:100%;max-height:88vh;overflow-y:auto;position:relative;outline:none}.methodology-close{position:absolute;top:12px;right:12px;background:transparent;border:0;width:36px;height:36px;font-size:24px;color:var(--text-secondary, #6B6861);cursor:pointer;border-radius:4px;line-height:1}.methodology-close:hover{color:var(--text-primary, #1A1A18);background:var(--bg, #FAFAF7)}.methodology-title{font-family:var(--font-display, "Instrument Serif", serif);font-weight:400;font-size:28px;color:var(--text-primary, #1A1A18);margin:0 0 16px}.methodology-intro{margin:-.5rem 0 1.5rem;color:var(--text-secondary);font-family:var(--font-body);font-size:.9rem;line-height:1.6}.methodology-intro a{color:var(--accent);text-decoration:none}.methodology-intro a:hover{color:var(--accent-hover)}.methodology-title em{font-style:italic}.methodology-section{margin:0 0 32px;padding:0;scroll-margin-top:16px}.methodology-section:last-child{margin-bottom:0}.methodology-section-active{background:#eff6ff;border-left:3px solid var(--accent, #1D4ED8);padding:12px 16px;border-radius:4px}.methodology-h3{font-family:var(--font-display, "Instrument Serif", serif);font-style:italic;font-weight:400;font-size:20px;color:var(--text-primary, #1A1A18);margin:0 0 12px}.methodology-section p{font-family:var(--font-body, "General Sans", sans-serif);font-size:14px;line-height:1.55;color:var(--text-primary, #1A1A18);margin:0 0 12px}.methodology-version{font-family:var(--font-mono, "Geist Mono", monospace);font-size:12px;color:var(--text-muted, #9C9789);margin-top:8px}.methodology-version code{background:var(--border-light, #F0EEEA);padding:1px 4px;border-radius:3px}.bill-detail{width:100%;max-width:1120px;margin:0 auto;padding:32px 24px 96px;animation:fadeIn .4s ease-out}.bill-crumb{display:flex;gap:12px;font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:40px;flex-wrap:wrap}.bill-crumb a{color:var(--accent);text-decoration:none}.bill-crumb a:hover{text-decoration:underline}.bill-crumb-sep{color:var(--border)}.bill-masthead{padding-bottom:32px;border-bottom:1px solid var(--border);margin-bottom:48px}.bill-id-row{display:flex;gap:16px;align-items:center;margin-bottom:16px;flex-wrap:wrap}.bill-masthead-id{font-family:var(--font-mono);font-size:13px;color:var(--accent);font-weight:500;letter-spacing:.02em}.bill-masthead-congress{font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted)}.bill-status-pill{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;padding:4px 10px;border-radius:3px}.bill-status-pill-dot{width:6px;height:6px;border-radius:50%}.bill-status-pill.status-enacted,.bill-status-pill.status-passed-both{background:var(--success-subtle);color:var(--success)}.bill-status-pill.status-enacted .bill-status-pill-dot,.bill-status-pill.status-passed-both .bill-status-pill-dot{background:var(--success)}.bill-status-pill.status-passed{background:var(--info-subtle);color:var(--info)}.bill-status-pill.status-passed .bill-status-pill-dot{background:var(--info)}.bill-status-pill.status-committee{background:var(--warning-subtle);color:var(--warning)}.bill-status-pill.status-committee .bill-status-pill-dot{background:var(--warning)}.bill-status-pill.status-introduced,.bill-status-pill.status-progress{background:var(--border-light);color:var(--text-secondary)}.bill-status-pill.status-introduced .bill-status-pill-dot,.bill-status-pill.status-progress .bill-status-pill-dot{background:var(--text-muted)}.bill-masthead-title{font-family:var(--font-display);font-weight:400;font-size:56px;line-height:1.05;letter-spacing:-.02em;margin:0 0 24px;color:var(--text-primary)}.bill-masthead-byline{font-size:15px;color:var(--text-secondary);line-height:1.65;margin:0}.bill-byline-sponsor{color:var(--text-primary);font-weight:500;text-decoration:none}.bill-byline-sponsor:hover{color:var(--accent)}.bill-byline-party{font-family:var(--font-mono);font-size:11px;margin-left:4px}.bill-byline-party.party-tag-dem{color:var(--party-dem)}.bill-byline-party.party-tag-rep{color:var(--party-rep)}.bill-byline-party.party-tag-ind{color:var(--party-ind)}.bill-byline-mono{font-family:var(--font-mono);font-size:13px}.bill-masthead-actions{display:flex;gap:8px;margin-top:24px;flex-wrap:wrap}.bill-action-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border:1px solid var(--border);border-radius:var(--radius-sm);font-family:var(--font-body);font-size:13px;color:var(--text-primary);text-decoration:none;background:var(--surface);cursor:pointer;transition:all .15s ease}.bill-action-btn:hover{border-color:var(--accent);color:var(--accent)}.bill-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:64px;align-items:start}.bill-main{min-width:0}.bill-ai-card{background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--info);border-radius:0 var(--radius-md) var(--radius-md) 0;padding:32px;margin-bottom:32px;position:relative}.bill-ai-label{display:flex;align-items:center;gap:8px;font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--info);margin-bottom:4px}.bill-ai-pulse{width:6px;height:6px;border-radius:50%;background:var(--info);box-shadow:0 0 #0284c766;animation:bill-ai-pulse 2s infinite}@keyframes bill-ai-pulse{0%{box-shadow:0 0 #0284c766}70%{box-shadow:0 0 0 8px #0284c700}to{box-shadow:0 0 #0284c700}}.bill-ai-byline{font-size:12px;color:var(--text-muted);margin-bottom:18px}.bill-ai-headline{font-family:var(--font-display);font-weight:400;font-size:28px;line-height:1.2;letter-spacing:-.01em;margin:0 0 24px;color:var(--text-primary)}.bill-ai-headline em{font-style:italic;color:var(--info)}.bill-ai-prose p{font-size:17px;line-height:1.75;color:var(--text-primary);margin:0 0 18px}.bill-ai-prose p:last-child{margin-bottom:0}.bill-ai-prose p:first-of-type:first-letter{font-family:var(--font-display);font-size:56px;float:left;line-height:.9;padding:8px 8px 0 0;color:var(--info)}.bill-ai-loading{display:flex;align-items:center;gap:10px;font-family:var(--font-display);font-style:italic;color:var(--text-secondary);font-size:16px;padding:12px 0}.bill-summary-block{background:var(--accent-subtle);padding:16px 20px;border-radius:var(--radius-sm);margin-bottom:32px}.bill-summary-block summary{cursor:pointer;font-family:var(--font-mono);font-size:12px;color:var(--accent);letter-spacing:.04em;text-transform:uppercase;list-style:none;-webkit-user-select:none;user-select:none}.bill-summary-block summary::-webkit-details-marker{display:none}.bill-summary-block summary:before{content:"+ ";font-weight:600;margin-right:4px}.bill-summary-block[open] summary:before{content:"− "}.bill-summary-block .bill-summary-body{margin-top:16px;font-size:14px;line-height:1.7;color:var(--text-primary)}.bill-summary-block .bill-summary-body p{margin:0 0 12px}.bill-editorial-section{padding:32px 0;border-top:1px solid var(--border)}.bill-section-label{font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);margin-bottom:12px}.bill-section-title{font-family:var(--font-display);font-weight:400;font-size:32px;line-height:1.1;letter-spacing:-.01em;margin:0 0 20px;color:var(--text-primary)}.bill-section-title em{font-style:italic;color:var(--accent)}.bill-section-loading{display:flex;align-items:center;gap:10px;color:var(--text-secondary);font-size:14px}.bill-tally-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:8px}.bill-tally-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:20px}.bill-tally-chamber{font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);margin-bottom:4px}.bill-tally-date{font-family:var(--font-mono);font-size:12px;color:var(--text-muted);margin-bottom:14px}.bill-tally-result{font-family:var(--font-display);font-size:28px;line-height:1;margin-bottom:12px}.bill-tally-result.passed{color:var(--success)}.bill-tally-result.failed{color:var(--error)}.bill-tally-bar{display:flex;height:8px;border-radius:4px;overflow:hidden;margin-bottom:8px;background:var(--border-light)}.bill-tally-bar-yea{background:var(--success)}.bill-tally-bar-nay{background:var(--error)}.bill-tally-bar-other{background:var(--text-muted)}.bill-tally-counts{font-family:var(--font-mono);font-size:12px;color:var(--text-secondary);display:flex;justify-content:space-between;gap:12px}.bill-timeline{position:relative;padding-left:24px}.bill-timeline:before{content:"";position:absolute;left:7px;top:8px;bottom:8px;width:1px;background:var(--border)}.bill-tl-item{position:relative;padding-bottom:20px;padding-right:8px}.bill-tl-item:before{content:"";position:absolute;left:-21px;top:6px;width:9px;height:9px;border-radius:50%;background:var(--surface);border:2px solid var(--text-muted)}.bill-tl-item.recent:before{background:var(--accent);border-color:var(--accent)}.bill-tl-date{font-family:var(--font-mono);font-size:11px;letter-spacing:.04em;color:var(--text-muted);margin-bottom:2px}.bill-tl-text{font-size:14px;color:var(--text-primary);line-height:1.5}.bill-tl-code{display:inline-block;font-family:var(--font-mono);font-size:10px;letter-spacing:.04em;color:var(--text-muted);margin-left:8px;padding:1px 6px;background:var(--border-light);border-radius:3px}.bill-rail{position:sticky;top:24px;align-self:start}.bill-rail-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:24px;margin-bottom:16px}.bill-rail-h3{font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);margin:0 0 16px;font-weight:500}.bill-sp-name{font-family:var(--font-display);font-size:22px;line-height:1.2;margin:0 0 4px;color:var(--text-primary);text-decoration:none;display:block}.bill-sp-name:hover{color:var(--accent)}.bill-sp-meta{font-size:13px;color:var(--text-secondary)}.bill-cosp-breakdown{font-size:13px;margin-bottom:12px}.bill-cosp-row{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px solid var(--border-light)}.bill-cosp-row:last-child{border-bottom:none}.bill-cosp-party{font-family:var(--font-mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase}.bill-cosp-party.party-tag-dem{color:var(--party-dem)}.bill-cosp-party.party-tag-rep{color:var(--party-rep)}.bill-cosp-party.party-tag-ind{color:var(--party-ind)}.bill-cosp-count{font-family:var(--font-mono);color:var(--text-primary)}.bill-cosp-toggle{display:block;width:100%;text-align:center;background:none;border:0;font-family:var(--font-body);font-size:12px;color:var(--accent);cursor:pointer;padding:8px 0 0}.bill-cosp-toggle:hover{text-decoration:underline}.bill-cosp-list{margin-top:12px;display:flex;flex-direction:column;gap:6px;max-height:320px;overflow-y:auto;padding-top:12px;border-top:1px solid var(--border-light)}.bill-cosp-item{display:flex;justify-content:space-between;align-items:center;font-size:13px;color:var(--text-primary);text-decoration:none;padding:4px 0}.bill-cosp-item:hover{color:var(--accent)}.bill-cosp-item-party{font-family:var(--font-mono);font-size:11px}.bill-cosp-item-party.party-tag-dem{color:var(--party-dem)}.bill-cosp-item-party.party-tag-rep{color:var(--party-rep)}.bill-cosp-item-party.party-tag-ind{color:var(--party-ind)}.bill-committee-item{padding:8px 0;border-bottom:1px solid var(--border-light);font-size:13px}.bill-committee-item:last-child{border-bottom:none}.bill-committee-chamber{font-family:var(--font-mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:2px}.bill-committee-name{color:var(--text-primary)}.bill-text-version{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid var(--border-light);text-decoration:none;color:var(--text-primary);font-size:13px}.bill-text-version:last-child{border-bottom:none}.bill-text-version:hover{color:var(--accent)}.bill-tv-type{font-weight:500}.bill-tv-date{font-family:var(--font-mono);font-size:11px;color:var(--text-muted)}.bill-detail-loading,.bill-detail-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 24px;text-align:center}.bill-detail-loading p{font-family:var(--font-display);font-style:italic;color:var(--text-secondary);margin-top:16px}.bill-back-button{font-family:var(--font-body);padding:10px 20px;background:var(--accent);color:#fff;border:0;border-radius:var(--radius-sm);cursor:pointer}@media (max-width: 900px){.bill-layout{grid-template-columns:1fr;gap:32px}.bill-rail{position:static}}@media (max-width: 760px){.bill-detail{padding:24px 16px 64px}.bill-masthead-title{font-size:36px}.bill-ai-card{padding:20px;margin-bottom:24px}.bill-ai-headline{font-size:22px}.bill-ai-prose p{font-size:16px}.bill-tally-grid{grid-template-columns:1fr;gap:12px}.bill-section-title{font-size:24px}}.vote-dashboard{margin-top:var(--space-8)}.dash-section-title{font-family:var(--font-display);font-size:1.5rem;font-weight:400;color:var(--text-primary);margin-bottom:var(--space-2);padding-bottom:var(--space-2);border-bottom:1px solid var(--border)}.dash-stale-banner{background:#fff8e1;color:#795500;font-family:var(--font-body);font-size:.8125rem;padding:var(--space-2) var(--space-3);border-radius:var(--radius-sm);margin-bottom:var(--space-4);border:1px solid #FFE082}.dash-stats-bar{display:flex;align-items:flex-start;gap:var(--space-6);padding:var(--space-4) 0 var(--space-5);margin-bottom:var(--space-4);border-bottom:1px solid var(--border)}.dash-stat-primary{display:flex;flex-direction:column;min-width:160px}.dash-stat-number{font-family:var(--font-mono);font-size:2.25rem;font-weight:600;color:var(--text-primary);line-height:1;transition:opacity .4s ease-out;opacity:0}.dash-stat-number.animated{opacity:1}.dash-stat-label{font-family:var(--font-body);font-size:.8125rem;color:var(--text-secondary);margin-top:var(--space-1);text-transform:uppercase;letter-spacing:.05em}.dash-loyalty-bar{width:100%;height:4px;background:var(--border);border-radius:2px;margin-top:var(--space-2);overflow:hidden}.dash-loyalty-fill{height:100%;background:var(--accent);border-radius:2px;transition:width .6s ease-out}.dash-stat-secondary{display:flex;flex-direction:column}.dash-stat-number-sm{font-family:var(--font-mono);font-size:1.25rem;font-weight:600;color:var(--text-primary);line-height:1}.dash-stat-detail{font-family:var(--font-mono);font-size:.75rem;color:var(--text-secondary);margin-top:2px}.dash-stat-breakdown{display:flex;gap:var(--space-3);align-items:flex-start;flex-wrap:wrap}.dash-count{font-family:var(--font-mono);font-size:.875rem;font-weight:500}.dash-count-yea{color:var(--success)}.dash-count-nay{color:var(--error)}.dash-count-other{color:var(--text-secondary)}.dash-vote-list{display:flex;flex-direction:column}.dash-vote-card{padding:var(--space-4) 0;border-bottom:1px solid var(--border)}.dash-vote-card:last-child{border-bottom:none}.dash-card-content{transition:background .15s ease;padding:var(--space-1);border-radius:var(--radius-sm);margin:calc(var(--space-1) * -1)}.dash-card-content:hover{background:#00000005}.dash-card-meta{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-2)}.dash-bill-number{font-family:var(--font-mono);font-size:.75rem;font-weight:500;color:var(--accent);text-transform:uppercase}.dash-vote-badge{font-family:var(--font-mono);font-size:.6875rem;font-weight:600;padding:1px 6px;border-radius:var(--radius-sm);text-transform:uppercase;letter-spacing:.03em}.dash-vote-yea{background:#dcfce7;color:#166534}.dash-vote-nay{background:#fee2e2;color:#991b1b}.dash-vote-sponsor{background:#dbeafe;color:#1e40af}.dash-vote-other{background:var(--surface-alt, #F5F5F0);color:var(--text-secondary)}.dash-card-date{font-family:var(--font-mono);font-size:.6875rem;color:var(--text-secondary);margin-left:auto}.dash-bill-title{font-family:var(--font-display);font-size:1.0625rem;font-weight:400;color:var(--text-primary);margin:0;line-height:1.35}.dash-bill-title.proc-question,.dash-bill-title.proc-question .glossary-term{font-style:italic}.dash-bill-desc{font-family:var(--font-body);font-size:.875rem;color:var(--text-secondary);line-height:1.6;margin:var(--space-2) 0 0}.dash-explain-btn{font-family:var(--font-body);font-size:.75rem;color:var(--accent);background:none;border:none;padding:var(--space-1) 0;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.dash-explain-btn:hover{color:var(--text-primary)}.dash-explanation{padding:var(--space-3);background:var(--surface-alt, #F9F8F5);border-radius:var(--radius-sm);margin-top:var(--space-2);animation:fadeIn .3s ease}.dash-explanation-content p{font-family:var(--font-body);font-size:.875rem;color:var(--text-primary);line-height:1.6;margin:0 0 var(--space-2)}.dash-explanation-content p:last-child{margin-bottom:0}.dash-explanation-loading{display:flex;align-items:center;gap:var(--space-2);font-family:var(--font-body);font-size:.8125rem;color:var(--text-secondary)}.dash-empty{padding:var(--space-6) 0;text-align:center}.dash-empty p{font-family:var(--font-body);font-size:.9375rem;color:var(--text-secondary);margin:0}.dash-empty-sub{font-size:.8125rem!important;margin-top:var(--space-1)!important;color:var(--text-muted, #999)!important}.dash-load-more{display:block;width:100%;padding:var(--space-2) var(--space-4);margin-top:var(--space-3);font-family:var(--font-body);font-size:.875rem;color:var(--accent);background:none;border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:background .15s ease,border-color .15s ease;text-align:center}.dash-load-more:hover{background:#00000005;border-color:var(--accent)}.dash-loading{animation:fadeIn .3s ease}.dash-skeleton-stats{height:80px;background:linear-gradient(90deg,var(--border) 25%,transparent 50%,var(--border) 75%);background-size:200% 100%;border-radius:var(--radius-sm);margin-bottom:var(--space-4);animation:shimmer 1.5s infinite}.dash-skeleton-card{height:64px;background:linear-gradient(90deg,var(--border) 25%,transparent 50%,var(--border) 75%);background-size:200% 100%;border-radius:var(--radius-sm);margin-bottom:var(--space-2);animation:shimmer 1.5s infinite}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}@media (max-width: 1023px){.dash-stats-bar{gap:var(--space-4)}.dash-stat-primary{min-width:140px}.dash-stat-number{font-size:1.875rem}}@media (max-width: 767px){.dash-stats-bar{flex-direction:column;gap:var(--space-4);padding:var(--space-3) 0}.dash-stat-primary{min-width:auto;width:100%}.dash-stat-number{font-size:2rem}.dash-stat-secondary{padding-top:var(--space-1);border-top:1px solid var(--border-light, #F0EEEA)}.dash-stat-breakdown{flex-direction:row;gap:var(--space-3);flex-wrap:wrap;padding-top:var(--space-1);border-top:1px solid var(--border-light, #F0EEEA)}.dash-count{font-size:.8125rem}.dash-bill-title{font-size:.9375rem}.dash-bill-desc{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.dash-card-meta{flex-wrap:wrap;gap:4px 8px}.dash-card-date{display:none}.dash-vote-card{padding:var(--space-4) 0}}.vpa-section{margin-top:var(--space-6);padding:var(--space-6) var(--space-6) var(--space-5);background:var(--bg);border-top:1px solid var(--border);max-width:1120px}.vpa-heading-row{margin-bottom:var(--space-5)}.vpa-heading{font-family:var(--font-display);font-style:italic;font-size:28px;font-weight:400;color:var(--text-primary);line-height:1.2;margin:0}.vpa-ai-tag{font-family:var(--font-body);font-style:normal;font-size:13px;font-weight:400;color:var(--text-secondary);margin-left:var(--space-2);letter-spacing:.02em}.vpa-default{padding:var(--space-3) 0 var(--space-2)}.vpa-teaser{font-family:var(--font-body);font-size:15px;color:var(--text-secondary);line-height:1.6;margin:0 0 var(--space-4);max-width:640px}.vpa-analyze-btn{font-family:var(--font-body);font-size:14px;font-weight:500;color:var(--bg);background:var(--text-primary);border:1px solid var(--text-primary);border-radius:var(--radius-sm);padding:12px 20px;min-height:48px;cursor:pointer;transition:background .15s ease,color .15s ease}.vpa-analyze-btn:hover:not(:disabled){background:var(--accent-hover);border-color:var(--accent-hover)}.vpa-analyze-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.vpa-analyze-btn:disabled{opacity:.6;cursor:not-allowed}.vpa-loading{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-4) 0;color:var(--text-secondary);font-size:14px}.vpa-error{padding:var(--space-4) 0;color:var(--text-primary)}.vpa-error p{margin:0 0 var(--space-3)}.vpa-empty p{font-family:var(--font-body);color:var(--text-secondary);font-size:15px;line-height:1.6;margin:0;max-width:640px}.vpa-content{animation:vpa-fade-in .25s ease-out both}@keyframes vpa-fade-in{0%{opacity:0}to{opacity:1}}.vpa-score-block{padding:var(--space-5) 0 var(--space-4)}.vpa-score-number-row{display:flex;align-items:baseline;gap:var(--space-3);margin-bottom:var(--space-3)}.vpa-score-number{font-family:var(--font-mono);font-size:72px;font-weight:500;color:var(--text-primary);line-height:1;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.vpa-score-label{font-family:var(--font-display);font-size:18px;font-weight:400;font-style:normal;color:var(--text-primary)}.vpa-score-caption{font-family:var(--font-body);font-size:14px;color:var(--text-secondary);line-height:1.6;max-width:640px;margin:0}.vpa-inline-link,.vpa-methodology-link,.vpa-refresh-link{background:none;border:none;color:var(--accent);font:inherit;padding:0;cursor:pointer;text-decoration:none}.vpa-inline-link:hover,.vpa-methodology-link:hover,.vpa-refresh-link:hover{color:var(--accent-hover);text-decoration:underline}.vpa-inline-link:focus-visible,.vpa-methodology-link:focus-visible,.vpa-refresh-link:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.vpa-rule{border:0;border-top:1px solid var(--border);margin:var(--space-5) 0}.vpa-flags{display:flex;flex-direction:column;gap:var(--space-4)}.vpa-flag-row{display:grid;grid-template-columns:minmax(180px,1fr) 3fr auto;align-items:center;gap:var(--space-3)}.vpa-flag-label{font-family:var(--font-body);font-size:14px;font-weight:500;color:var(--text-primary)}.vpa-flag-track{display:block;height:4px;background:var(--border);border-radius:2px;overflow:hidden;position:relative}.vpa-flag-fill{display:block;height:100%;background:var(--accent);border-radius:2px;transition:width .4s ease-out}.vpa-flag-pct{font-family:var(--font-mono);font-size:13px;color:var(--text-primary);font-variant-numeric:tabular-nums;min-width:44px;text-align:right}.vpa-flag-desc{font-family:var(--font-body);font-size:13px;color:var(--text-secondary);line-height:1.6;margin:6px 0 0;max-width:720px}.vpa-notable{padding:var(--space-3) 0 var(--space-2)}.vpa-notable-heading{font-family:var(--font-display);font-style:italic;font-size:22px;font-weight:400;color:var(--text-primary);margin:0 0 var(--space-2)}.vpa-notable-subtitle{font-family:var(--font-body);font-size:13px;color:var(--text-secondary);line-height:1.6;margin:0 0 var(--space-4)}.vpa-notable-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-6)}.vpa-notable-col{min-width:0}.vpa-notable-coltitle{font-family:var(--font-body);font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary);margin:0 0 var(--space-3)}.vpa-notable-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:var(--space-4)}.vpa-notable-item{display:flex;flex-direction:column;gap:var(--space-2)}.vpa-notable-meta{display:flex;flex-direction:column;gap:2px}.vpa-notable-bill{font-family:var(--font-body);font-size:14px;font-weight:500;color:var(--text-primary);line-height:1.4}.vpa-notable-stats{font-family:var(--font-mono);font-size:11px;color:var(--text-secondary);letter-spacing:.02em}.vpa-notable-narration{font-family:var(--font-body);font-style:italic;font-size:13px;color:var(--text-primary);line-height:1.6;padding-left:var(--space-3);border-left:3px solid var(--accent);margin:0}.vpa-notable-empty{font-family:var(--font-body);font-size:13px;color:var(--text-secondary);font-style:italic;margin:0}.vpa-footer{display:flex;justify-content:space-between;align-items:center;margin-top:var(--space-5);padding-top:var(--space-4);border-top:1px solid var(--border);gap:var(--space-4)}.vpa-degraded-notice{font-family:var(--font-body);font-style:italic;font-size:13px;color:var(--text-secondary);margin:var(--space-3) 0 0}.vpa-modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#1a1a1880;display:flex;align-items:center;justify-content:center;padding:var(--space-4);z-index:1000;animation:vpa-fade-in .15s ease-out both}.vpa-modal{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);max-width:640px;width:100%;max-height:90vh;overflow-y:auto;padding:var(--space-6);position:relative}.vpa-modal-title{font-family:var(--font-display);font-style:italic;font-size:24px;font-weight:400;color:var(--text-primary);margin:0 0 var(--space-4)}.vpa-modal-body{font-family:var(--font-body);font-size:14px;color:var(--text-primary);line-height:1.7}.vpa-modal-body p{margin:0 0 var(--space-3)}.vpa-modal-body ul{margin:0 0 var(--space-3);padding-left:var(--space-4)}.vpa-modal-body li{margin-bottom:var(--space-2)}.vpa-modal-body strong{font-weight:600}.vpa-modal-close{margin-top:var(--space-4);font-family:var(--font-body);font-size:14px;font-weight:500;color:var(--bg);background:var(--text-primary);border:1px solid var(--text-primary);border-radius:var(--radius-sm);padding:10px 20px;cursor:pointer;min-height:44px}.vpa-modal-close:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.vpa-modal-close:focus-visible{outline:2px solid var(--accent);outline-offset:2px}@media (max-width: 767px){.vpa-section{padding:var(--space-5) var(--space-4)}.vpa-heading{font-size:24px}.vpa-score-number{font-size:56px}.vpa-flag-row{grid-template-columns:1fr auto;grid-template-areas:"label pct" "track track";gap:6px}.vpa-flag-label{grid-area:label}.vpa-flag-pct{grid-area:pct}.vpa-flag-track{grid-area:track}.vpa-notable-grid{grid-template-columns:1fr;gap:var(--space-5)}.vpa-footer{flex-direction:column;align-items:flex-start;gap:var(--space-3)}.vpa-modal{padding:var(--space-5) var(--space-4)}}@media (prefers-reduced-motion: reduce){.vpa-content,.vpa-modal-backdrop{animation:none}.vpa-flag-fill{transition:none}}.sponsor-badge{margin-top:8px;display:flex;flex-direction:column;gap:4px}.sponsor-badge-dl{margin:0}.sponsor-badge-stat{margin:0;font-family:var(--font-body, "General Sans", sans-serif);font-size:14px;color:var(--text-primary, #1A1A18);line-height:1.5}.sponsor-badge-number{font-family:var(--font-mono, "Geist Mono", monospace);font-size:18px;font-weight:500;color:var(--text-primary, #1A1A18);padding:0 2px}.sponsor-badge-number-small{font-family:var(--font-mono, "Geist Mono", monospace);font-weight:500;color:var(--text-primary, #1A1A18)}.sponsor-badge-median{font-size:13px;color:var(--text-secondary, #6B6861)}.sponsor-badge-empty{font-family:var(--font-body, "General Sans", sans-serif);font-size:14px;color:var(--text-secondary, #6B6861);margin:0}.sponsor-badge-methodology{display:inline-block;font-family:var(--font-body, "General Sans", sans-serif);font-style:italic;font-size:12px;color:var(--text-muted, #9C9789)}.sponsor-badge-loading{font-family:var(--font-body, "General Sans", sans-serif);font-size:13px;color:var(--text-muted, #9C9789);font-style:italic}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.pol{width:100%;max-width:1120px;margin:0 auto;padding:32px 24px 96px;animation:fadeIn .4s ease-out}.pol-crumb{display:flex;gap:12px;font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-bottom:48px;flex-wrap:wrap}.pol-crumb a{color:var(--accent);text-decoration:none}.pol-crumb a:hover{text-decoration:underline}.pol-crumb-sep{color:var(--border)}.pol-masthead{display:grid;grid-template-columns:280px 1fr;gap:48px;align-items:start;padding-bottom:32px;border-bottom:1px solid var(--border);margin-bottom:48px}.pol-photo-wrap{width:280px}.pol-photo{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:var(--radius-sm);background:var(--border-light);filter:grayscale(.05)}.pol-photo-placeholder{width:100%;aspect-ratio:3/4;background:var(--border-light);display:flex;align-items:center;justify-content:center;border-radius:var(--radius-sm);font-family:var(--font-display);font-size:64px;color:var(--text-muted)}.pol-kicker{font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);margin-bottom:12px}.pol-name{font-family:var(--font-display);font-weight:400;font-size:52px;line-height:1.05;letter-spacing:-.015em;margin:0 0 16px;color:var(--text-primary)}.pol-name-first{font-style:italic}.pol-party-tag{display:inline-block;font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;border-left:2px solid;padding-left:8px;margin-left:12px;text-transform:uppercase;vertical-align:middle}.pol-party-tag.party-tag-dem{color:var(--party-dem);border-left-color:var(--party-dem)}.pol-party-tag.party-tag-rep{color:var(--party-rep);border-left-color:var(--party-rep)}.pol-party-tag.party-tag-ind{color:var(--party-ind);border-left-color:var(--party-ind)}.pol-standfirst{font-family:var(--font-display);font-style:italic;font-size:22px;line-height:1.45;color:var(--text-secondary);margin:0 0 28px;max-width:640px}.pol-meta-grid{display:grid;grid-template-columns:auto 1fr;column-gap:32px;row-gap:10px;font-size:14px;margin:0}.pol-meta-grid dt{font-family:var(--font-mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);align-self:center}.pol-meta-grid dd{margin:0;color:var(--text-primary)}.pol-meta-mono{font-family:var(--font-mono)}.pol-meta-link{color:var(--text-primary);text-decoration:none}.pol-meta-link:hover{color:var(--accent)}.pol-actions{display:flex;gap:8px;margin-top:28px;flex-wrap:wrap}.pol-action-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;border:1px solid var(--border);border-radius:var(--radius-sm);font-family:var(--font-body);font-size:13px;color:var(--text-primary);text-decoration:none;background:var(--surface);transition:all .15s ease}.pol-action-btn:hover{border-color:var(--accent);color:var(--accent)}.pol-action-btn.primary{background:var(--accent);color:#fff;border-color:var(--accent)}.pol-action-btn.primary:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:#fff}.pol-editorial{padding:48px 0;border-bottom:1px solid var(--border)}.pol-editorial:last-of-type{border-bottom:none}.pol-section-label{font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);margin-bottom:12px}.pol-section-title{font-family:var(--font-display);font-weight:400;font-size:36px;line-height:1.1;letter-spacing:-.01em;margin:0 0 28px;color:var(--text-primary)}.pol-section-title em{font-style:italic;color:var(--accent)}.pol-section-loading{display:flex;flex-direction:column;align-items:center;gap:12px;padding:32px;color:var(--text-secondary)}.pol-section-loading p{font-family:var(--font-display);font-style:italic;margin:0}.pol-tenure-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:24px}.pol-tenure-item{padding-top:16px;border-top:2px solid var(--accent)}.pol-tenure-item.pol-tenure-past{border-top-color:var(--border)}.pol-tenure-year{font-family:var(--font-mono);font-size:13px;letter-spacing:.04em;color:var(--text-muted);margin-bottom:6px}.pol-tenure-title{font-family:var(--font-display);font-size:20px;line-height:1.25;color:var(--text-primary)}.pol-tenure-note{font-size:13px;color:var(--text-secondary);margin-top:4px}.pol-money-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:64px;align-items:start}.pol-money-big-number{font-family:var(--font-display);font-size:64px;line-height:1;color:var(--text-primary);letter-spacing:-.02em;margin:0 0 4px}.pol-money-big-label{font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);margin-bottom:24px}.pol-money-splits{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.pol-money-split{border-top:1px solid var(--border);padding-top:12px}.pol-money-split-v{font-family:var(--font-mono);font-size:18px;color:var(--text-primary)}.pol-money-split-l{font-size:12px;color:var(--text-secondary);margin-top:2px}.pol-rail-h3{font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);margin:0 0 16px;font-weight:500}.pol-industry-list .pol-ind-row{display:grid;grid-template-columns:200px 1fr 80px;align-items:center;gap:16px;padding:10px 0;border-bottom:1px solid var(--border-light);font-size:14px}.pol-industry-list .pol-ind-row:last-child{border-bottom:none}.pol-ind-label{color:var(--text-primary)}.pol-ind-bar{height:6px;background:var(--border-light);border-radius:999px;overflow:hidden}.pol-ind-fill{height:100%;background:var(--accent);border-radius:999px}.pol-ind-amount{text-align:right;font-family:var(--font-mono);font-size:13px;color:var(--text-secondary)}.pol-correlation-block{margin-top:48px;padding-top:32px;border-top:1px solid var(--border)}.pol-correlation-h3{font-family:var(--font-mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--text-muted);margin:0 0 16px;font-weight:500}.pol-correlation-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.pol-correlation-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:16px}.pol-correlation-industry{font-family:var(--font-display);font-size:18px;color:var(--text-primary);margin-bottom:6px}.pol-correlation-stats{display:flex;flex-direction:column;gap:2px;font-size:13px;color:var(--text-secondary);margin-bottom:12px}.pol-correlation-donated{font-family:var(--font-mono);font-size:12px;color:var(--text-muted)}.pol-correlation-bar{height:4px;background:var(--border-light);border-radius:999px;overflow:hidden}.pol-correlation-fill{height:100%;background:var(--accent)}.pol-donors-block{margin-top:48px;padding-top:32px;border-top:1px solid var(--border)}.pol-donors-list{display:flex;flex-direction:column}.pol-donor-row{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid var(--border-light);font-size:14px}.pol-donor-row:last-child{border-bottom:none}.pol-donor-info{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.pol-donor-name{color:var(--text-primary)}.pol-donor-entity{font-family:var(--font-mono);font-size:10px;letter-spacing:.06em;text-transform:uppercase;padding:2px 6px;border-radius:3px;background:var(--border-light);color:var(--text-secondary)}.pol-donor-entity.entity-com{color:var(--warning);background:var(--warning-subtle)}.pol-donor-entity.entity-org{color:var(--info);background:var(--info-subtle)}.pol-donor-employer{font-size:12px;color:var(--text-muted)}.pol-donor-amount{font-family:var(--font-mono);font-size:14px;color:var(--text-primary)}.pol-fec-link{display:inline-block;margin-top:16px;font-size:13px;color:var(--accent);text-decoration:none}.pol-fec-link:hover{text-decoration:underline}.pol-no-data{font-family:var(--font-display);font-style:italic;color:var(--text-secondary);font-size:17px}.pol-photo-attribution{font-size:11px;color:var(--text-muted);text-align:center;margin-top:32px;padding-top:16px;border-top:1px solid var(--border-light)}.pol-loading,.pol-error{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 24px;text-align:center}.pol-loading p{font-family:var(--font-display);font-style:italic;color:var(--text-secondary);margin-top:16px}.pol-back-button{font-family:var(--font-body);padding:10px 20px;background:var(--accent);color:#fff;border:0;border-radius:var(--radius-sm);cursor:pointer}.loading-spinner{width:32px;height:32px;border:2px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}.error-message{font-family:var(--font-display);font-size:18px;color:var(--error);margin-bottom:16px}@media (max-width: 760px){.pol{padding:24px 16px 64px}.pol-masthead{grid-template-columns:1fr;gap:24px}.pol-photo-wrap{width:100%;max-width:280px}.pol-name{font-size:36px}.pol-standfirst{font-size:18px}.pol-meta-grid{column-gap:16px}.pol-tenure-grid{grid-template-columns:repeat(2,1fr)}.pol-money-grid{grid-template-columns:1fr;gap:32px}.pol-correlation-grid{grid-template-columns:1fr}.pol-industry-list .pol-ind-row{grid-template-columns:1fr 80px}.pol-ind-bar{grid-column:1 / -1}.pol-section-title{font-size:28px}}.shutdown-banner{width:100%;z-index:1001;font-size:.85rem;border-bottom:1px solid var(--border)}.shutdown-banner__content{max-width:1400px;margin:0 auto;padding:.5rem 2rem;display:flex;align-items:center;gap:.75rem}.shutdown-banner__icon{font-size:1rem;flex-shrink:0}.shutdown-banner__text{flex:1;color:inherit;font-family:var(--font-body)}.shutdown-banner__countdown{opacity:.85;font-family:var(--font-mono)}.shutdown-banner__link{color:inherit;font-weight:600;text-decoration:underline;white-space:nowrap;opacity:.9;transition:opacity .15s ease}.shutdown-banner__link:hover{opacity:1}.shutdown-banner__dismiss{background:none;border:none;color:inherit;font-size:1.2rem;cursor:pointer;padding:0 .25rem;opacity:.6;transition:opacity .15s ease;line-height:1}.shutdown-banner__dismiss:hover{opacity:1}.shutdown-banner--funded{background:var(--success-subtle);color:#166534}.shutdown-banner--low{background:var(--bg);color:var(--text-primary)}.shutdown-banner--moderate{background:var(--warning-subtle);color:#7c5e20}.shutdown-banner--high{background:#fdf2ec;color:#8c3a1e}.shutdown-banner--critical{background:var(--error-subtle);color:#991b1b}.shutdown-banner--shutdown{background:var(--error);color:#fff}.shutdown-banner--shutdown .shutdown-banner__link{color:#fff}@media (max-width: 768px){.shutdown-banner__content{padding:.5rem 1rem;font-size:.78rem;gap:.5rem}.shutdown-banner__countdown{display:none}}.shutdown-tracker{min-height:100vh;background:var(--bg);padding:2rem}.shutdown-tracker__container{max-width:1100px;margin:0 auto}.shutdown-tracker__header{margin-bottom:2rem}.shutdown-tracker__header h1{font-size:2.25rem;font-weight:400;color:var(--text-primary);margin:0 0 .5rem;font-family:var(--font-display)}.shutdown-tracker__header p{color:var(--text-secondary);font-size:1rem;margin:0;font-family:var(--font-body)}.last-updated{display:inline-block;margin-top:.5rem;padding:.25rem .75rem;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.78rem;color:var(--text-secondary);font-weight:500;font-family:var(--font-mono)}.shutdown-loading,.shutdown-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:50vh;gap:1rem;color:var(--text-secondary)}.loading-spinner{width:40px;height:40px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.retry-btn{padding:.5rem 1.5rem;background:var(--accent);color:#fff;border:none;border-radius:var(--radius-md);cursor:pointer;font-size:.9rem;font-family:var(--font-body);transition:background .15s ease}.retry-btn:hover{background:var(--accent-hover)}.shutdown-status-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:2rem;margin-bottom:1.5rem}.status-card__header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.status-card__header h2{font-size:1.25rem;font-weight:400;color:var(--text-primary);margin:0;font-family:var(--font-display)}.status-badge{padding:.3rem .85rem;border-radius:999px;font-size:.85rem;font-weight:700;font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.05em}.status-badge--funded{background:var(--success-subtle);color:#166534}.status-badge--low{background:var(--bg);color:var(--text-primary)}.status-badge--moderate{background:var(--warning-subtle);color:#92400e}.status-badge--high{background:#fed7aa;color:#9a3412}.status-badge--critical{background:var(--error-subtle);color:#991b1b}.status-badge--shutdown{background:var(--error);color:#fff}.status-card__summary{color:var(--text-primary);font-size:1.05rem;margin:0 0 1.25rem;line-height:1.6;font-weight:500;font-family:var(--font-body)}.risk-meter__track{height:12px;background:var(--border);border-radius:var(--radius-md);overflow:hidden}.risk-meter__fill{height:100%;border-radius:var(--radius-md);transition:width .6s ease}.risk-meter__fill--funded{background:var(--success)}.risk-meter__fill--low{background:var(--text-secondary)}.risk-meter__fill--moderate{background:var(--warning)}.risk-meter__fill--high{background:#ea580c}.risk-meter__fill--critical{background:var(--error)}.risk-meter__fill--shutdown{background:#991b1b}.risk-meter__labels{display:flex;justify-content:space-between;font-size:.75rem;color:var(--text-muted);margin-top:.25rem;font-family:var(--font-mono)}.risk-explainer{margin-top:1.25rem;padding:1rem 1.25rem;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);font-size:.88rem;color:var(--text-secondary);line-height:1.6;font-family:var(--font-body)}.risk-explainer strong{color:var(--text-primary);margin-right:.25rem}.shutdown-countdown{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:2rem;margin-bottom:1.5rem;text-align:center}.shutdown-countdown h2{font-size:1.1rem;font-weight:400;color:var(--text-primary);margin:0 0 1.25rem;font-family:var(--font-display)}.countdown__units{display:flex;justify-content:center;align-items:center;gap:1rem;margin-bottom:1.25rem}.countdown__unit{display:flex;flex-direction:column;align-items:center;min-width:80px}.countdown__number{font-size:3.5rem;font-weight:600;color:var(--text-primary);line-height:1;font-variant-numeric:tabular-nums;font-family:var(--font-mono)}.countdown__separator{font-size:2.5rem;font-weight:300;color:var(--border);padding-bottom:1.25rem}.countdown__label{font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.1em;margin-top:.35rem;font-weight:600;font-family:var(--font-mono)}.countdown__expired{font-size:1.5rem;font-weight:700;color:var(--error);padding:1rem 0;font-family:var(--font-mono)}.countdown__description{color:var(--text-secondary);font-size:.9rem;margin:0;line-height:1.6;font-family:var(--font-body)}.countdown__explainer{margin-top:1.25rem;padding:1rem 1.25rem;background:var(--bg);border:1px solid var(--border);border-radius:var(--radius-md);font-size:.85rem;color:var(--text-secondary);line-height:1.65;text-align:left;font-family:var(--font-body)}.shutdown-progress{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:2rem;margin-bottom:1.5rem}.shutdown-progress h2{font-size:1.1rem;font-weight:400;color:var(--text-primary);margin:0 0 1rem;font-family:var(--font-display)}.progress-stats{display:flex;gap:2.5rem;margin-bottom:1.25rem;flex-wrap:wrap}.progress-stat{display:flex;flex-direction:column}.progress-stat__number{font-size:2.25rem;font-weight:600;color:var(--text-primary);line-height:1;font-family:var(--font-mono)}.progress-stat__label{font-size:.78rem;color:var(--text-secondary);margin-top:.25rem;font-family:var(--font-body)}.progress-bar__track{height:10px;background:var(--border);border-radius:5px;overflow:hidden}.progress-bar__fill{height:100%;background:var(--success);border-radius:5px;transition:width .6s ease}.progress-bar__label{font-size:.8rem;color:var(--text-secondary);margin-top:.35rem;display:block;font-family:var(--font-mono)}.shutdown-bills{margin-bottom:1.5rem}.shutdown-bills h2{font-size:1.1rem;font-weight:400;color:var(--text-primary);margin:0 0 1rem;font-family:var(--font-display)}.approp-bills-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem}.approp-bill-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:1.25rem;transition:box-shadow .15s ease,border-color .15s ease;cursor:pointer;position:relative}.approp-bill-card:hover{border-color:var(--text-primary)}.approp-bill-card--expanded{border-color:var(--accent);box-shadow:var(--shadow-md)}.approp-bill-card--signed{border-color:var(--success)}.approp-bill-card--passed_both{border-color:var(--accent)}.approp-bill-card--passed_one{border-color:#7c3aed}.approp-bill-card--committee{border-color:var(--warning)}.approp-bill-card--cr{border-color:#0891b2}.approp-bill-card--introduced{border-color:var(--text-secondary)}.approp-bill-card--not_introduced{border-color:var(--border)}.approp-bill-card__header{display:flex;align-items:flex-start;justify-content:space-between;gap:.5rem;margin-bottom:.5rem}.approp-bill-card__short{font-size:.95rem;font-weight:600;color:var(--text-primary);margin:0;font-family:var(--font-mono)}.approp-bill-card__status{padding:.2rem .6rem;border-radius:999px;font-size:.68rem;font-weight:600;color:#fff;white-space:nowrap;flex-shrink:0;font-family:var(--font-mono)}.approp-bill-card__name{font-size:.8rem;color:var(--text-secondary);margin:0;line-height:1.4;font-family:var(--font-body)}.approp-bill-card__toggle{position:absolute;bottom:.6rem;right:.75rem;font-size:.7rem;color:var(--text-muted);transition:transform .15s ease}.approp-bill-card__toggle--open{transform:rotate(180deg)}.approp-bill-card__details{margin-top:1rem;padding-top:.85rem;border-top:1px solid var(--border);animation:fadeIn .2s ease-out}.approp-bill-card__funding{display:flex;align-items:baseline;gap:.5rem;margin-bottom:.6rem}.approp-bill-card__funding-label{font-size:.72rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;font-weight:600;font-family:var(--font-mono)}.approp-bill-card__funding-amount{font-size:1.15rem;font-weight:700;color:var(--text-primary);font-family:var(--font-mono)}.approp-bill-card__desc{font-size:.82rem;color:var(--text-secondary);margin:0;line-height:1.6;font-family:var(--font-body)}.shutdown-deadlines{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:2rem;margin-bottom:1.5rem}.shutdown-deadlines h2{font-size:1.1rem;font-weight:400;color:var(--text-primary);margin:0 0 1rem;font-family:var(--font-display)}.deadlines-timeline{display:flex;flex-direction:column}.deadline-item{display:flex;gap:1rem}.deadline-connector{display:flex;flex-direction:column;align-items:center;flex-shrink:0;width:20px}.deadline-dot{width:14px;height:14px;border-radius:50%;flex-shrink:0;margin-top:.2rem;border:2px solid var(--border);background:var(--surface)}.deadline-dot--passed{background:var(--success);border-color:var(--success)}.deadline-dot--active{background:var(--error);border-color:var(--error);box-shadow:0 0 0 3px #dc262633}.deadline-dot--upcoming{background:var(--surface);border-color:var(--border)}.deadline-line{width:2px;flex:1;background:var(--border);margin-top:.25rem;min-height:20px}.deadline-content{flex:1;padding-bottom:1.25rem;display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem}.deadline-date{font-size:.9rem;font-weight:600;color:var(--text-primary);font-family:var(--font-mono)}.deadline-status-tag{padding:.1rem .5rem;border-radius:var(--radius-sm);font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;font-family:var(--font-mono)}.deadline-status-tag--passed{background:var(--success-subtle);color:#166534}.deadline-status-tag--active{background:var(--error-subtle);color:#991b1b}.deadline-status-tag--upcoming{background:var(--bg);color:var(--text-secondary)}.deadline-desc{width:100%;margin:.15rem 0 0;font-size:.85rem;color:var(--text-secondary);line-height:1.4;font-family:var(--font-body)}.shutdown-api-bills{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.5rem;margin-bottom:1.5rem}.shutdown-api-bills h2{font-size:1.1rem;font-weight:400;color:var(--text-primary);margin:0 0 .25rem;font-family:var(--font-display)}.section-note{color:var(--text-muted);font-size:.85rem;margin:0 0 1rem;font-family:var(--font-body)}.api-bills-list{display:flex;flex-direction:column;gap:.5rem}.api-bill-item{display:flex;align-items:baseline;gap:.75rem;padding:.5rem 0;border-bottom:1px solid var(--border-light);font-size:.85rem}.api-bill-item:last-child{border-bottom:none}.api-bill-item__type{font-weight:600;color:var(--text-primary);white-space:nowrap;flex-shrink:0;font-family:var(--font-mono)}.api-bill-item__title{flex:1;color:var(--text-secondary);font-family:var(--font-body)}.api-bill-item__action{color:var(--text-muted);font-size:.8rem;white-space:nowrap;flex-shrink:0;font-family:var(--font-mono)}.shutdown-history{margin-bottom:2rem}.shutdown-history h2{font-size:1.1rem;font-weight:400;color:var(--text-primary);margin:0 0 .25rem;font-family:var(--font-display)}.history-timeline{margin-top:1rem}.timeline-item{display:flex;gap:1rem}.timeline-connector{display:flex;flex-direction:column;align-items:center;flex-shrink:0;width:20px}.timeline-dot{width:12px;height:12px;background:var(--text-muted);border-radius:50%;flex-shrink:0;margin-top:.3rem}.timeline-dot--major{width:16px;height:16px;background:var(--error);margin-left:-2px;margin-right:-2px}.timeline-line{width:2px;flex:1;background:var(--border);margin-top:.25rem}.timeline-content{flex:1;padding-bottom:1.5rem}.timeline-dates{font-size:.85rem;font-weight:600;color:var(--text-primary);margin-bottom:.25rem;font-family:var(--font-mono)}.timeline-duration{display:inline-block;margin-left:.5rem;padding:.1rem .5rem;background:var(--bg);border-radius:999px;font-size:.75rem;font-weight:500;color:var(--text-secondary);font-family:var(--font-mono)}.timeline-duration--major{background:var(--error-subtle);color:#991b1b;font-weight:600}.timeline-details strong{display:block;font-size:.9rem;color:var(--text-primary);margin-bottom:.25rem;font-family:var(--font-body)}.timeline-details p{font-size:.85rem;color:var(--text-secondary);margin:0 0 .5rem;line-height:1.5;font-family:var(--font-body)}.timeline-meta{display:flex;flex-wrap:wrap;gap:1rem;font-size:.78rem;color:var(--text-muted);font-family:var(--font-mono)}.fadeInUp{animation:fadeInUp .5s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 768px){.shutdown-tracker{padding:1rem}.shutdown-tracker__header h1{font-size:1.5rem}.shutdown-status-card,.shutdown-countdown,.shutdown-progress,.shutdown-deadlines{padding:1.25rem}.approp-bills-grid{grid-template-columns:1fr}.countdown__units{gap:.75rem}.countdown__number{font-size:2.5rem}.countdown__separator{font-size:1.75rem}.progress-stats{gap:1.5rem}.progress-stat__number{font-size:1.75rem}.timeline-meta,.api-bill-item{flex-direction:column;gap:.25rem}.api-bill-item__action{white-space:normal}.deadline-content{flex-direction:column;gap:.25rem}}.cr-label{position:relative;cursor:pointer;display:inline-flex;align-items:center;gap:.3rem}.cr-info-icon{display:inline-flex;align-items:center;justify-content:center;width:15px;height:15px;border-radius:50%;background:var(--border);color:var(--text-primary);font-size:.6rem;font-weight:700;flex-shrink:0;line-height:1}.cr-label:hover .cr-info-icon{background:var(--text-muted);color:#fff}.cr-tooltip{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);background:#1f2937;color:#f9fafb;font-size:.78rem;font-weight:400;line-height:1.5;padding:.75rem 1rem;border-radius:var(--radius-md);width:280px;box-shadow:0 4px 12px #00000026;z-index:100;pointer-events:none;font-family:var(--font-body)}.cr-tooltip:after{content:"";position:absolute;top:100%;left:50%;transform:translate(-50%);border:6px solid transparent;border-top-color:#1f2937}@media (max-width: 768px){.cr-tooltip{left:0;transform:none;width:250px}.cr-tooltip:after{left:20px;transform:none}}.district-map-page{width:100%;max-width:1120px;margin:0 auto;padding:0 1rem;animation:fadeIn .4s ease-out}.map-header{margin-bottom:1.5rem}.map-title{font-family:var(--font-display);font-size:2.25rem;font-weight:400;color:var(--text-primary);margin:0 0 .5rem}.map-subtitle{font-family:var(--font-body);font-size:1rem;color:var(--text-secondary);margin:0}.map-legend{display:flex;gap:1.5rem;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--border)}.legend-item{display:flex;align-items:center;gap:.5rem;font-family:var(--font-body);font-size:.8125rem;color:var(--text-secondary)}.legend-dot{width:12px;height:12px;border-radius:2px}.legend-dem{background:#2563eb}.legend-rep{background:#dc2626}.legend-ind{background:#7c3aed}.map-and-panel{display:flex;gap:1.5rem}.map-container{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden;aspect-ratio:16 / 10;flex:1;min-width:0}.map-svg{width:100%;height:100%}.map-loading{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;background:var(--surface);z-index:10}.map-loading p{font-family:var(--font-body);font-size:.9rem;color:var(--text-secondary)}.map-controls{position:absolute;top:1rem;right:1rem;display:flex;flex-direction:column;gap:4px;z-index:5}.map-control-btn{width:36px;height:36px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-sm);font-family:var(--font-mono);font-size:1.125rem;font-weight:500;color:var(--text-primary);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s ease,border-color .15s ease}.map-control-btn:hover{background:var(--bg);border-color:var(--text-primary)}.map-control-reset{font-size:.6rem;font-family:var(--font-body);text-transform:uppercase;letter-spacing:.05em;width:auto;padding:0 8px}.map-tooltip{position:fixed;z-index:100;background:#1a1a18;color:#fff;padding:.625rem .875rem;border-radius:var(--radius-sm);pointer-events:none;display:flex;flex-direction:column;gap:2px;box-shadow:0 4px 12px #00000026;max-width:250px}.tooltip-district{font-family:var(--font-mono);font-size:.6875rem;color:#ffffff80;text-transform:uppercase;letter-spacing:.05em}.tooltip-name{font-family:var(--font-display);font-size:.9375rem;font-weight:400;color:#fff}.tooltip-counts{font-family:var(--font-mono);font-size:.75rem;display:flex;gap:4px}.tooltip-dem{color:#60a5fa}.tooltip-rep{color:#f87171}.tooltip-ind{color:#a78bfa}.map-panel{width:320px;flex-shrink:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md);padding:1.25rem;max-height:600px;overflow-y:auto;animation:fadeIn .2s ease}.panel-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:.75rem;padding-bottom:.75rem;border-bottom:1px solid var(--border)}.panel-title{font-family:var(--font-display);font-size:1.25rem;font-weight:400;color:var(--text-primary);margin:0}.panel-close{font-family:var(--font-body);font-size:.75rem;color:var(--text-secondary);background:none;border:none;cursor:pointer;text-decoration:underline;text-underline-offset:2px}.panel-counts{display:flex;gap:.75rem;margin-bottom:1rem;flex-wrap:wrap}.panel-count{font-family:var(--font-mono);font-size:.75rem;font-weight:500}.panel-count-dem{color:#2563eb}.panel-count-rep{color:#dc2626}.panel-count-ind{color:#7c3aed}.panel-members{display:flex;flex-direction:column;gap:4px}.panel-member{display:flex;justify-content:space-between;align-items:center;padding:.625rem .75rem;background:transparent;border:1px solid var(--border);border-radius:var(--radius-sm);cursor:pointer;transition:background .15s ease,border-color .15s ease;text-align:left;width:100%}.panel-member:hover{background:#00000005;border-color:var(--text-primary)}.member-dem{border-left:3px solid #2563EB}.member-rep{border-left:3px solid #DC2626}.member-ind{border-left:3px solid #7C3AED}.member-info{display:flex;flex-direction:column;gap:1px}.member-name{font-family:var(--font-body);font-size:.8125rem;font-weight:500;color:var(--text-primary)}.member-role{font-family:var(--font-mono);font-size:.6875rem;color:var(--text-secondary)}.member-arrow{font-family:var(--font-body);font-size:.7rem;font-weight:600;color:var(--accent);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.panel-section{margin-bottom:1rem}.panel-section-label{font-family:var(--font-mono);font-size:.65rem;color:var(--text-muted, #9C9789);text-transform:uppercase;letter-spacing:.1em;display:block;margin-bottom:.5rem}.panel-empty{font-family:var(--font-body);font-size:.875rem;color:var(--text-secondary);text-align:center;padding:2rem 0}@media (max-width: 900px){.map-and-panel{flex-direction:column}.map-panel{width:100%;max-height:400px}}@media (max-width: 768px){.map-title{font-size:1.75rem}.map-container{aspect-ratio:4 / 3}.map-legend{gap:1rem}.legend-item{font-size:.75rem}.map-controls{top:.5rem;right:.5rem}.map-control-btn{width:32px;height:32px;font-size:1rem}}.blog-page{width:100%;animation:fadeIn .6s ease-out}.blog-header{margin-bottom:2rem}.blog-header h1{font-size:2.25rem;color:var(--text-primary);margin-bottom:.5rem;font-family:var(--font-display);font-weight:400}.blog-subtitle{color:var(--text-secondary);font-size:1.1rem}.blog-filters{margin-bottom:2rem}.blog-search-input{width:100%;padding:1rem 1.25rem 1rem 3rem;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:1rem;transition:all .15s ease;background:var(--surface);font-family:var(--font-body);color:var(--text-primary);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%231A1A18' stroke-width='2'%3E%3Ccircle cx='11' cy='11' r='8'/%3E%3Cpath d='m21 21-4.35-4.35'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:1rem center;box-sizing:border-box}.blog-search-input::placeholder{color:var(--text-muted)}.blog-search-input:focus{outline:none;border-color:var(--accent)}.blog-search-input:hover{border-color:var(--text-primary)}.blog-results-info{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.blog-results-info .results-count{color:var(--text-secondary);font-size:.85rem;font-weight:500;display:flex;align-items:center;gap:.5rem;text-transform:uppercase;letter-spacing:.5px}.blog-results-info .results-count:before{content:"";width:3px;height:16px;background:var(--accent)}.blog-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:1.5rem;margin-bottom:2rem}.blog-card{background:var(--surface);border:1px solid var(--border);padding:1.75rem;text-decoration:none;transition:all .15s ease;display:flex;flex-direction:column;gap:.75rem;border-radius:var(--radius-md)}.blog-card:hover{border-color:var(--accent);transform:translateY(-2px);box-shadow:var(--shadow-md)}.blog-card-tags{display:flex;gap:.5rem;flex-wrap:wrap}.blog-card-tag{font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--text-secondary);background:var(--bg);padding:.25rem .6rem;border:1px solid var(--border-light);border-radius:var(--radius-sm)}.blog-card-title{font-size:1.25rem;font-weight:500;color:var(--text-primary);line-height:1.35;font-family:var(--font-display);margin:0}.blog-card-excerpt{font-size:.95rem;color:var(--text-secondary);line-height:1.6;margin:0;flex:1}.blog-card-meta{display:flex;justify-content:space-between;align-items:center;padding-top:.75rem;border-top:1px solid var(--border-light);margin-top:auto}.blog-card-date{font-size:.8rem;color:var(--text-muted)}.blog-card-author{font-size:.8rem;color:var(--text-muted);font-weight:500}.no-articles{text-align:center;padding:4rem 2rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-md)}.no-articles p{color:var(--text-secondary);font-size:1.1rem;margin-bottom:1.5rem}.reset-search-button{padding:.75rem 1.5rem;background:transparent;color:var(--text-primary);border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.95rem;font-weight:500;cursor:pointer;transition:all .15s ease;text-transform:uppercase;letter-spacing:1px;font-family:var(--font-body)}.reset-search-button:hover{border-color:var(--accent);background:var(--accent-subtle)}@media (max-width: 1024px){.blog-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}}@media (max-width: 768px){.blog-header h1{font-size:1.75rem}.blog-subtitle{font-size:1rem}.blog-grid{grid-template-columns:1fr;gap:1rem}.no-articles{padding:3rem 1.5rem}}.article-page{width:100%;max-width:900px;margin:0 auto;animation:fadeIn .6s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.article-page .back-link{display:inline-flex;align-items:center;gap:.5rem;color:var(--text-primary);font-weight:500;margin-bottom:2rem;cursor:pointer;background:none;border:none;font-size:.9rem;padding:0;transition:color .15s ease;font-family:var(--font-body);text-transform:uppercase;letter-spacing:.5px}.article-page .back-link:hover{color:var(--accent)}.article-header{margin-bottom:2.5rem}.article-tags{display:flex;gap:.5rem;flex-wrap:wrap;margin-bottom:1rem}.article-tag{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;color:var(--surface);background:var(--accent);padding:.4rem .8rem;border-radius:var(--radius-sm)}.article-title{font-size:2.25rem;font-weight:400;color:var(--text-primary);line-height:1.25;margin-bottom:1.25rem;font-family:var(--font-display)}.article-meta{display:flex;align-items:center;gap:.75rem;color:var(--text-secondary);font-size:.95rem}.article-meta-divider{color:var(--text-muted)}.article-author{font-weight:500}.article-body{border-top:1px solid var(--border);padding-top:2rem}.article-body p{color:var(--text-primary);font-size:1.05rem;line-height:1.85;margin-bottom:1.5rem}.article-body p:last-child{margin-bottom:0}.article-not-found{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:1rem;text-align:center}.article-not-found h1{font-size:1.75rem;color:var(--text-primary);font-weight:400;font-family:var(--font-display)}.article-not-found p{color:var(--text-secondary);font-size:1.05rem}.article-not-found .back-button{padding:.75rem 1.5rem;background:var(--accent);color:var(--surface);border:1px solid var(--accent);border-radius:var(--radius-sm);font-size:.9rem;font-weight:500;cursor:pointer;text-transform:uppercase;letter-spacing:1px;margin-top:.5rem;transition:all .15s ease;font-family:var(--font-body)}.article-not-found .back-button:hover{background:var(--accent-hover);border-color:var(--accent-hover)}@media (max-width: 768px){.article-page{padding:0}.article-title{font-size:1.65rem}.article-meta{flex-direction:column;align-items:flex-start;gap:.25rem}.article-meta-divider{display:none}.article-body p{font-size:1rem;line-height:1.75}}.ai-congress{width:100%;animation:fadeIn .6s ease-out}.ai-disclaimer{background:var(--info-subtle);border:1px solid rgba(2,132,199,.15);border-radius:var(--radius-md);padding:var(--space-4) var(--space-5);margin-bottom:var(--space-6);font-size:.875rem;color:var(--text-secondary);line-height:1.5}.ai-disclaimer a{color:var(--accent);text-decoration:none;font-weight:500}.ai-disclaimer a:hover{text-decoration:underline}.ai-congress-header{margin-bottom:var(--space-6)}.ai-congress-header h1{font-size:2.25rem;font-family:var(--font-display);font-weight:400;color:var(--text-primary);margin-bottom:var(--space-2)}.ai-congress-subtitle{color:var(--text-secondary);font-size:1.1rem}.ai-sessions-list{display:flex;flex-direction:column;gap:0}.ai-session-row{display:flex;align-items:baseline;gap:var(--space-4);padding:var(--space-5) 0;border-bottom:1px solid var(--border-light);cursor:pointer;transition:background .15s ease;text-decoration:none;color:inherit}.ai-session-row:hover{background:var(--accent-subtle);margin:0 calc(-1 * var(--space-4));padding-left:var(--space-4);padding-right:var(--space-4);border-radius:var(--radius-sm)}.ai-session-number{font-family:var(--font-mono);font-size:.8125rem;color:var(--text-muted);min-width:60px}.ai-session-info{flex:1;min-width:0}.ai-session-title{font-family:var(--font-display);font-size:1.125rem;color:var(--text-primary);margin-bottom:var(--space-1)}.ai-session-summary{color:var(--text-secondary);font-size:.875rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ai-session-meta{display:flex;gap:var(--space-4);align-items:center;flex-shrink:0}.ai-session-score{font-family:var(--font-mono);font-size:.8125rem;color:var(--text-primary);font-weight:500}.ai-session-date{font-family:var(--font-mono);font-size:.75rem;color:var(--text-muted)}.ai-session-failed-tag{font-size:.75rem;color:var(--error);font-weight:500}.ai-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;text-align:center;gap:var(--space-4)}.ai-empty-state h2{font-family:var(--font-display);font-style:italic;font-size:1.5rem;color:var(--text-secondary)}.ai-empty-state p{color:var(--text-muted);font-size:.9375rem}.ai-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;gap:var(--space-4);color:var(--text-secondary)}.ai-session-detail{width:100%;animation:fadeIn .6s ease-out}.ai-session-back{display:inline-flex;align-items:center;gap:var(--space-2);color:var(--accent);text-decoration:none;font-size:.875rem;margin-bottom:var(--space-5)}.ai-session-back:hover{text-decoration:underline}.ai-status-banner{padding:var(--space-4) var(--space-5);border-radius:var(--radius-md);margin-bottom:var(--space-5);font-size:.875rem}.ai-status-banner.running{background:var(--warning-subtle);border:1px solid rgba(217,119,6,.15);color:var(--warning)}.ai-status-banner.failed{background:var(--error-subtle);border:1px solid rgba(220,38,38,.15);color:var(--error)}.ai-session-summary-text{font-family:var(--font-display);font-style:italic;font-size:1.125rem;line-height:1.6;color:var(--text-primary);margin-bottom:var(--space-6);max-width:720px}.ai-scoreboard{display:flex;align-items:baseline;gap:var(--space-4);padding:var(--space-5) 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin-bottom:var(--space-6)}.ai-scoreboard-number{font-family:var(--font-mono);font-size:2rem;font-weight:600;color:var(--text-primary)}.ai-scoreboard-label{font-size:1rem;color:var(--text-secondary)}.ai-scoreboard-detail{font-family:var(--font-mono);font-size:.875rem;color:var(--text-muted);margin-left:auto}.ai-bills-list{display:flex;flex-direction:column;gap:var(--space-6)}.ai-bill-card{background:var(--surface);border:1px solid var(--border-light);border-radius:var(--radius-md);padding:var(--space-5) var(--space-6);box-shadow:var(--shadow-sm)}.ai-bill-header{display:flex;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3)}.ai-bill-tag{display:inline-block;padding:2px 8px;border-radius:var(--radius-sm);font-size:.6875rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.ai-bill-tag.passed{background:var(--success-subtle);color:var(--success)}.ai-bill-tag.failed{background:var(--error-subtle);color:var(--error)}.ai-bill-title{font-family:var(--font-display);font-size:1.375rem;font-weight:400;color:var(--text-primary);margin-bottom:var(--space-4)}.ai-vote-tallies{display:flex;gap:var(--space-6);margin-bottom:var(--space-4);padding-bottom:var(--space-4);border-bottom:1px solid var(--border-light)}.ai-vote-chamber{font-family:var(--font-mono);font-size:.8125rem}.ai-vote-chamber-label{color:var(--text-muted);margin-right:var(--space-2)}.ai-vote-chamber-tally{color:var(--text-primary);font-weight:500}.ai-bill-provisions{margin-bottom:var(--space-4)}.ai-bill-provisions h4{font-family:var(--font-body);font-size:.8125rem;font-weight:600;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-2)}.ai-bill-provisions ul{list-style:none;padding:0}.ai-bill-provisions li{padding:var(--space-1) 0;color:var(--text-secondary);font-size:.9375rem;line-height:1.5}.ai-bill-provisions li:before{content:"–";color:var(--text-muted);margin-right:var(--space-2)}.ai-bill-arguments{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-5);margin-bottom:var(--space-4)}.ai-argument-section h4{font-family:var(--font-body);font-size:.8125rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-2)}.ai-argument-section.for h4{color:var(--success)}.ai-argument-section.against h4{color:var(--error)}.ai-argument-section p{color:var(--text-secondary);font-size:.875rem;line-height:1.5;margin-bottom:var(--space-2)}.ai-bill-surprise{background:var(--accent-subtle);border-left:3px solid var(--accent);padding:var(--space-3) var(--space-4);border-radius:0 var(--radius-sm) var(--radius-sm) 0}.ai-bill-surprise h4{font-family:var(--font-body);font-size:.8125rem;font-weight:600;color:var(--accent);text-transform:uppercase;letter-spacing:.05em;margin-bottom:var(--space-1)}.ai-bill-surprise p{color:var(--text-primary);font-size:.875rem;line-height:1.5;font-style:italic}.ai-cloture-info{font-family:var(--font-mono);font-size:.75rem;color:var(--text-muted);margin-top:var(--space-1)}@media (max-width: 768px){.ai-session-row{flex-direction:column;gap:var(--space-2)}.ai-session-meta{width:100%;justify-content:space-between}.ai-bill-arguments{grid-template-columns:1fr}.ai-vote-tallies{flex-direction:column;gap:var(--space-2)}.ai-bill-card{padding:var(--space-4)}.ai-scoreboard{flex-direction:column;gap:var(--space-2)}.ai-scoreboard-detail{margin-left:0}}.donation-comparison{width:100%;animation:fadeIn .6s ease-out}.donation-comparison h1{font-family:var(--font-display);font-size:2.25rem;font-weight:400;margin-bottom:var(--space-2)}.comparison-subtitle{color:var(--text-secondary);font-size:1rem;margin-bottom:var(--space-6)}.comparison-inputs{display:flex;align-items:flex-end;gap:var(--space-4);margin-bottom:var(--space-6);flex-wrap:wrap}.comparison-input-group{flex:1;min-width:180px}.comparison-input-group label{display:block;font-size:.8125rem;font-weight:500;color:var(--text-secondary);margin-bottom:var(--space-2)}.comparison-input-group input{width:100%;padding:.625rem .875rem;border:1px solid var(--border);border-radius:var(--radius-sm);font-size:.9375rem;font-family:var(--font-body);background:var(--surface);color:var(--text-primary)}.comparison-input-group input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-subtle)}.comparison-vs{font-family:var(--font-display);font-style:italic;font-size:1.125rem;color:var(--text-muted);padding-bottom:.5rem}.comparison-error{color:var(--error);margin-bottom:var(--space-4)}.comparison-results{border:1px solid var(--border);border-radius:var(--radius-md);overflow:hidden}.comparison-header-row{display:grid;grid-template-columns:120px 1fr 1fr;gap:var(--space-4);padding:var(--space-4) var(--space-5);background:var(--bg);border-bottom:1px solid var(--border);align-items:center}.comparison-header-row h3{font-family:var(--font-display);font-size:1rem;font-weight:400;margin:0}.comparison-total{font-family:var(--font-mono);font-size:.75rem;color:var(--text-muted)}.comparison-no-data{font-size:.8125rem;color:var(--text-muted);font-style:italic}.comparison-row{display:grid;grid-template-columns:120px 1fr 1fr;gap:var(--space-4);padding:var(--space-3) var(--space-5);border-bottom:1px solid var(--border-light);align-items:center}.comparison-row:last-child{border-bottom:none}.comparison-col-label{font-size:.8125rem;color:var(--text-secondary);text-align:right}.comparison-col{display:flex;flex-direction:column;gap:var(--space-1)}.comparison-bar-track{height:8px;background:var(--border-light);border-radius:4px;overflow:hidden}.comparison-bar-fill{height:100%;border-radius:4px;transition:width .6s ease}.comparison-bar-fill.a{background:var(--accent)}.comparison-bar-fill.b{background:var(--success)}.comparison-amount{font-family:var(--font-mono);font-size:.6875rem;color:var(--text-muted)}@media (max-width: 768px){.comparison-inputs{flex-direction:column}.comparison-vs{text-align:center;padding:0}.comparison-header-row,.comparison-row{grid-template-columns:80px 1fr 1fr;gap:var(--space-2);padding:var(--space-3)}.comparison-col-label{font-size:.6875rem}}.dev-portal{max-width:1120px;margin:0 auto;padding:0 24px}.dev-hero{text-align:center;padding:80px 0 60px}.dev-label{font-family:General Sans,sans-serif;font-weight:600;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:#1d4ed8}.dev-hero h1{font-family:"Instrument Serif",serif;font-size:42px;font-weight:400;color:#1a1a18;margin:16px 0;line-height:1.2}.dev-hero-subtitle{font-family:General Sans,sans-serif;font-size:18px;color:#6b6861;max-width:600px;margin:0 auto 32px;line-height:1.6}.dev-hero-actions{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.dev-open-button{color:#1a1a18;border-color:#e8e6e1}.dev-open-button:hover{color:#1d4ed8;border-color:#1d4ed8;background:#1d4ed814}.dev-endpoints{padding:60px 0}.dev-endpoints h2{font-family:"Instrument Serif",serif;font-size:28px;color:#1a1a18;text-align:center;margin-bottom:32px}.dev-endpoint-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}.dev-endpoint-card{background:#fff;border:1px solid #E8E6E1;border-radius:8px;padding:24px}.dev-endpoint-card code{font-family:Geist Mono,monospace;font-size:14px;color:#1d4ed8;background:#1d4ed814;padding:4px 8px;border-radius:4px;display:inline-block;margin-bottom:12px}.dev-endpoint-card p{font-family:General Sans,sans-serif;font-size:14px;color:#6b6861;line-height:1.5;margin:0}.dev-open-data{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:48px;padding:56px 0;border-top:1px solid #E8E6E1;border-bottom:1px solid #E8E6E1}.dev-open-data-copy h2{font-family:"Instrument Serif",serif;font-size:34px;font-weight:400;color:#1a1a18;margin:12px 0 16px}.dev-open-data-copy p{font-family:General Sans,sans-serif;font-size:16px;line-height:1.7;color:#6b6861;margin:0;max-width:620px}.dev-open-data-links{display:grid;border-top:2px solid #1A1A18;align-self:start}.dev-open-data-links a{font-family:Geist Mono,monospace;font-size:13px;color:#1d4ed8;text-decoration:none;padding:12px 0;border-bottom:1px solid #F0EEEA}.dev-open-data-links a:hover{color:#1e40af}.dev-pricing{padding:60px 0;text-align:center}.dev-pricing h2{font-family:"Instrument Serif",serif;font-size:28px;color:#1a1a18;margin-bottom:8px}.dev-pricing-subtitle{font-family:General Sans,sans-serif;color:#6b6861;margin-bottom:40px}.dev-tier-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:24px;max-width:960px;margin:0 auto}.dev-tier-card{background:#fff;border:1px solid #E8E6E1;border-radius:12px;padding:32px 24px;text-align:left;position:relative}.dev-tier-popular{border-color:#1d4ed8;box-shadow:0 0 0 1px #1d4ed8}.dev-tier-badge{position:absolute;top:-12px;left:50%;transform:translate(-50%);background:#1d4ed8;color:#fff;font-family:General Sans,sans-serif;font-size:12px;font-weight:600;padding:4px 12px;border-radius:9999px}.dev-tier-card h3{font-family:General Sans,sans-serif;font-size:18px;font-weight:600;color:#1a1a18;margin:0 0 16px}.dev-tier-price{display:flex;align-items:baseline;gap:2px;margin-bottom:4px}.dev-tier-dollar{font-family:General Sans,sans-serif;font-size:18px;color:#6b6861}.dev-tier-amount{font-family:Geist Mono,monospace;font-size:36px;font-weight:700;color:#1a1a18}.dev-tier-period{font-family:General Sans,sans-serif;font-size:14px;color:#6b6861}.dev-tier-limit{font-family:Geist Mono,monospace;font-size:13px;color:#9c9789;margin:0 0 24px}.dev-tier-features{list-style:none;padding:0;margin:0 0 24px}.dev-tier-features li{font-family:General Sans,sans-serif;font-size:14px;color:#6b6861;padding:6px 0;border-bottom:1px solid #F0EEEA}.dev-tier-features li:last-child{border-bottom:none}.dev-cta{text-align:center;padding:60px 0 80px}.dev-cta h2{font-family:"Instrument Serif",serif;font-size:28px;color:#1a1a18;margin-bottom:8px}.dev-cta p{font-family:General Sans,sans-serif;color:#6b6861;margin-bottom:24px}@media (max-width: 768px){.dev-hero h1{font-size:28px}.dev-hero{padding:40px 0}.dev-hero-actions{flex-direction:column;align-items:center}.dev-endpoint-grid,.dev-tier-grid{grid-template-columns:1fr}.dev-open-data{grid-template-columns:1fr;gap:24px;padding:40px 0}.dev-open-data-copy h2{font-size:28px}}.api-keys-page{max-width:800px;margin:0 auto;padding:40px 24px}.api-keys-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:32px}.api-keys-header h1{font-family:"Instrument Serif",serif;font-size:28px;color:#1a1a18;margin:0}.api-keys-subtitle{font-family:General Sans,sans-serif;font-size:14px;color:#6b6861;margin-top:4px}.api-keys-plan-badge{background:#1d4ed814;color:#1d4ed8;font-weight:600;font-size:12px;padding:2px 8px;border-radius:4px;text-transform:capitalize}.api-keys-plan-inactive{color:#d97706;font-weight:500}.api-keys-create{display:flex;gap:12px;margin-bottom:24px}.api-keys-create input{flex:1;font-family:General Sans,sans-serif;font-size:14px;padding:10px 14px;border:1px solid #E8E6E1;border-radius:8px;background:#fff;color:#1a1a18}.api-keys-create input:focus{outline:none;border-color:#1d4ed8}.api-keys-list{display:flex;flex-direction:column;gap:1px;background:#e8e6e1;border-radius:8px;overflow:hidden}.api-key-row{display:flex;justify-content:space-between;align-items:center;padding:16px 20px;background:#fff}.api-key-revoked{opacity:.5}.api-key-info{display:flex;flex-direction:column;gap:4px}.api-key-name{font-family:General Sans,sans-serif;font-weight:600;font-size:14px;color:#1a1a18;display:flex;align-items:center;gap:8px}.api-key-revoked-badge{font-size:11px;font-weight:500;color:#dc2626;background:#dc262614;padding:2px 6px;border-radius:4px}.api-key-prefix{font-family:Geist Mono,monospace;font-size:13px;color:#6b6861}.api-key-meta{font-family:General Sans,sans-serif;font-size:12px;color:#9c9789}.btn-danger-sm{font-family:General Sans,sans-serif;font-size:13px;font-weight:500;padding:6px 14px;border:1px solid #DC2626;border-radius:6px;background:transparent;color:#dc2626;cursor:pointer}.btn-danger-sm:hover{background:#dc262614}.api-keys-empty{font-family:General Sans,sans-serif;color:#9c9789;text-align:center;padding:40px;background:#fff}.api-keys-error{font-family:General Sans,sans-serif;font-size:14px;color:#dc2626;background:#dc262614;padding:12px 16px;border-radius:8px;margin-bottom:16px}.api-keys-modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000}.api-keys-modal{background:#fff;border-radius:12px;padding:32px;max-width:560px;width:90%}.api-keys-modal h3{font-family:"Instrument Serif",serif;font-size:22px;color:#1a1a18;margin:0 0 8px}.api-keys-modal-warning{font-family:General Sans,sans-serif;font-size:14px;color:#d97706;font-weight:500;margin-bottom:16px}.api-keys-modal-key{display:flex;align-items:center;gap:8px;background:#fafaf7;border:1px solid #E8E6E1;border-radius:8px;padding:12px 16px;margin-bottom:16px}.api-keys-modal-key code{font-family:Geist Mono,monospace;font-size:13px;color:#1a1a18;flex:1;word-break:break-all}.btn-copy{font-family:General Sans,sans-serif;font-size:13px;font-weight:600;padding:6px 12px;border:1px solid #E8E6E1;border-radius:6px;background:#fff;color:#1d4ed8;cursor:pointer;white-space:nowrap}.api-keys-modal-usage{font-family:General Sans,sans-serif;font-size:13px;color:#6b6861;margin-bottom:24px}.api-keys-modal-usage code{font-family:Geist Mono,monospace;font-size:12px;color:#1a1a18;display:block;margin-top:8px;background:#fafaf7;padding:8px 12px;border-radius:4px}.api-keys-subscribe-prompt{margin-top:32px;padding:24px;background:#1d4ed80a;border:1px solid rgba(29,78,216,.15);border-radius:12px;text-align:center}.api-keys-subscribe-prompt h3{font-family:"Instrument Serif",serif;font-size:18px;color:#1a1a18;margin:0 0 8px}.api-keys-subscribe-prompt p{font-family:General Sans,sans-serif;font-size:14px;color:#6b6861;margin-bottom:16px}.api-keys-loading{text-align:center;padding:60px;color:#9c9789;font-family:General Sans,sans-serif}@media (max-width: 768px){.api-keys-header{flex-direction:column;gap:12px}.api-keys-create{flex-direction:column}}.usage-page{max-width:900px;margin:0 auto;padding:40px 24px}.usage-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:32px}.usage-header h1{font-family:"Instrument Serif",serif;font-size:28px;color:#1a1a18;margin:0}.usage-subtitle{font-family:General Sans,sans-serif;font-size:14px;color:#6b6861;margin-top:4px}.usage-actions{display:flex;gap:12px;align-items:center}.usage-period-select{font-family:General Sans,sans-serif;font-size:14px;padding:8px 12px;border:1px solid #E8E6E1;border-radius:6px;background:#fff;color:#1a1a18}.usage-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:16px;margin-bottom:40px}.usage-stat{background:#fff;border:1px solid #E8E6E1;border-radius:8px;padding:20px;text-align:center}.usage-stat-value{display:block;font-family:Geist Mono,monospace;font-size:28px;font-weight:700;color:#1a1a18;line-height:1}.usage-stat-label{display:block;font-family:General Sans,sans-serif;font-size:12px;color:#9c9789;margin-top:8px;text-transform:uppercase;letter-spacing:.05em}.usage-chart-section{margin-bottom:40px}.usage-chart-section h3{font-family:General Sans,sans-serif;font-size:16px;font-weight:600;color:#1a1a18;margin:0 0 16px}.usage-bar-chart{display:flex;align-items:flex-end;gap:8px;height:160px;padding:0 0 24px;border-bottom:1px solid #E8E6E1}.usage-bar-item{flex:1;display:flex;flex-direction:column;align-items:center;height:100%;justify-content:flex-end;position:relative}.usage-bar-fill{width:100%;max-width:40px;background:#1d4ed8;border-radius:4px 4px 0 0;min-height:2px;transition:height .3s ease}.usage-bar-label{font-family:Geist Mono,monospace;font-size:10px;color:#9c9789;margin-top:8px;position:absolute;bottom:-20px}.usage-bar-count{font-family:Geist Mono,monospace;font-size:11px;color:#6b6861;margin-bottom:4px}.usage-endpoint-list{display:flex;flex-direction:column;gap:1px;background:#e8e6e1;border-radius:8px;overflow:hidden}.usage-endpoint-row{display:flex;justify-content:space-between;align-items:center;padding:12px 16px;background:#fff}.usage-endpoint-row code{font-family:Geist Mono,monospace;font-size:13px;color:#1a1a18}.usage-endpoint-count{font-family:Geist Mono,monospace;font-size:13px;color:#6b6861}.usage-empty{text-align:center;padding:60px 20px}.usage-empty h3{font-family:"Instrument Serif",serif;font-size:22px;color:#1a1a18;margin:0 0 8px}.usage-empty p{font-family:General Sans,sans-serif;color:#6b6861;margin-bottom:24px}.usage-loading{text-align:center;padding:60px;color:#9c9789;font-family:General Sans,sans-serif}@media (max-width: 768px){.usage-header{flex-direction:column;gap:12px}.usage-actions{flex-direction:column;align-items:flex-start}.usage-stats{grid-template-columns:repeat(2,1fr)}}.api-docs{max-width:1120px;margin:0 auto;padding:40px 24px}.api-docs-header{margin-bottom:32px}.api-docs-header h1{font-family:"Instrument Serif",serif;font-size:28px;color:#1a1a18;margin:0 0 8px}.api-docs-header p{font-family:General Sans,sans-serif;font-size:14px;color:#6b6861;margin:4px 0}.api-docs-header a{color:#1d4ed8;text-decoration:none}.api-docs-header code{font-family:Geist Mono,monospace;font-size:13px;background:#fafaf7;padding:2px 6px;border-radius:4px}.api-docs-layout{display:grid;grid-template-columns:260px 1fr;gap:32px}.api-docs-nav{position:sticky;top:80px;align-self:start}.api-docs-nav h3{font-family:General Sans,sans-serif;font-size:12px;font-weight:600;color:#9c9789;text-transform:uppercase;letter-spacing:.08em;margin:0 0 12px}.api-docs-nav-item{display:flex;align-items:center;gap:8px;width:100%;text-align:left;padding:8px 12px;border:none;background:transparent;border-radius:6px;cursor:pointer;font-family:General Sans,sans-serif;font-size:13px;color:#6b6861;transition:background .15s}.api-docs-nav-item:hover{background:#fafaf7}.api-docs-nav-item.active{background:#1d4ed814;color:#1d4ed8}.api-docs-method{font-family:Geist Mono,monospace;font-size:10px;font-weight:700;color:#16a34a;background:#16a34a14;padding:2px 4px;border-radius:3px;flex-shrink:0}.api-docs-path{font-family:Geist Mono,monospace;font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.api-docs-nav-divider{height:1px;background:#e8e6e1;margin:12px 0}.api-docs-nav-cta{display:block;width:100%;text-align:center;padding:10px;font-family:General Sans,sans-serif;font-size:14px;font-weight:600;color:#1d4ed8;background:#1d4ed814;border:none;border-radius:8px;cursor:pointer}.api-docs-nav-secondary{display:block;width:100%;text-align:center;margin-top:8px;padding:10px;font-family:General Sans,sans-serif;font-size:14px;font-weight:600;color:#1a1a18;background:transparent;border:1px solid #E8E6E1;border-radius:8px;cursor:pointer}.api-docs-nav-secondary:hover{border-color:#1d4ed8;color:#1d4ed8;background:#1d4ed814}.api-docs-content{min-width:0}.api-docs-endpoint{margin-bottom:48px}.api-docs-endpoint-header{display:flex;align-items:center;gap:12px;margin-bottom:12px}.api-docs-method-badge{font-family:Geist Mono,monospace;font-size:12px;font-weight:700;color:#16a34a;background:#16a34a14;padding:4px 8px;border-radius:4px}.api-docs-endpoint-path{font-family:Geist Mono,monospace;font-size:16px;color:#1a1a18}.api-docs-endpoint-desc{font-family:General Sans,sans-serif;font-size:15px;color:#6b6861;line-height:1.5;margin-bottom:24px}.api-docs-section{margin-bottom:24px}.api-docs-section h3{font-family:General Sans,sans-serif;font-size:14px;font-weight:600;color:#1a1a18;margin:0 0 12px}.api-docs-params-table{width:100%;border-collapse:collapse;font-family:General Sans,sans-serif;font-size:13px}.api-docs-params-table th{text-align:left;font-weight:600;color:#9c9789;font-size:11px;text-transform:uppercase;letter-spacing:.05em;padding:8px 12px;border-bottom:1px solid #E8E6E1}.api-docs-params-table td{padding:10px 12px;color:#6b6861;border-bottom:1px solid #F0EEEA}.api-docs-params-table code{font-family:Geist Mono,monospace;font-size:12px;color:#1a1a18}.api-docs-required{font-size:10px;color:#dc2626;font-weight:600;margin-left:4px}.api-docs-code{font-family:Geist Mono,monospace;font-size:13px;background:#1a1a18;color:#e8e6e1;padding:16px 20px;border-radius:8px;overflow-x:auto;line-height:1.5;white-space:pre}.api-docs-auth-section{padding-top:32px;border-top:1px solid #E8E6E1}.api-docs-auth-section h3{font-family:General Sans,sans-serif;font-size:16px;font-weight:600;color:#1a1a18;margin:24px 0 12px}.api-docs-auth-section h3:first-child{margin-top:0}.api-docs-auth-section p{font-family:General Sans,sans-serif;font-size:14px;color:#6b6861;line-height:1.5}.api-docs-auth-section a{color:#1d4ed8;text-decoration:none}@media (max-width: 768px){.api-docs-layout{grid-template-columns:1fr}.api-docs-nav{position:static;display:flex;flex-wrap:wrap;gap:4px}.api-docs-nav h3{width:100%}.api-docs-nav-item{flex:0 0 auto}}.committee-page{max-width:960px;margin:0 auto;padding:24px}.committee-crumb{font-family:var(--font-body, "General Sans", sans-serif);font-size:13px;color:var(--text-secondary, #6B6861);margin-bottom:24px}.committee-crumb a{color:var(--accent, #1D4ED8);text-decoration:none}.committee-crumb a:hover{text-decoration:underline}.committee-crumb-sep{margin:0 8px;color:var(--text-muted, #9C9789)}.committee-masthead{margin-bottom:40px}.committee-kicker{font-family:var(--font-body, "General Sans", sans-serif);font-weight:600;font-size:12px;color:var(--text-secondary, #6B6861);text-transform:uppercase;letter-spacing:.06em;margin-bottom:8px}.committee-title{font-family:var(--font-display, "Instrument Serif", serif);font-weight:400;font-size:36px;line-height:1.15;color:var(--text-primary, #1A1A18);margin:0 0 16px}.committee-title em{font-style:italic}.committee-deck{font-family:var(--font-display, "Instrument Serif", serif);font-weight:400;font-style:normal;font-size:18px;line-height:1.5;color:var(--text-secondary, #6B6861);margin:0 0 16px;max-width:720px}.committee-stats{font-family:var(--font-mono, "Geist Mono", monospace);font-size:13px;color:var(--text-primary, #1A1A18)}.committee-stats-sep{margin:0 6px;color:var(--text-muted, #9C9789)}.committee-stats-insufficient{font-style:italic;color:var(--text-secondary, #6B6861)}.committee-rule{border:0;border-top:1px solid var(--border, #E8E6E1);margin:40px 0}.committee-section{margin:0 0 16px}.committee-section-title{font-family:var(--font-display, "Instrument Serif", serif);font-weight:400;font-size:22px;color:var(--text-primary, #1A1A18);margin:0 0 8px}.committee-section-title em{font-style:italic}.committee-section-subtitle{font-family:var(--font-body, "General Sans", sans-serif);font-size:13px;color:var(--text-secondary, #6B6861);margin:0 0 24px}.committee-loading,.committee-empty{font-family:var(--font-body, "General Sans", sans-serif);font-size:14px;color:var(--text-secondary, #6B6861);padding:16px 0}.committee-error{color:#dc2626}.committee-link-button{background:transparent;border:0;color:var(--accent, #1D4ED8);text-decoration:underline;cursor:pointer;font:inherit;padding:0}.committee-bills-list{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr;gap:16px}@media (min-width: 768px){.committee-bills-list{grid-template-columns:1fr 1fr;column-gap:32px}}.committee-bill-row{border-bottom:1px solid var(--border-light, #F0EEEA);padding-bottom:12px}.committee-bill-link{display:flex;flex-direction:column;gap:4px;text-decoration:none;color:inherit}.committee-bill-link:hover .committee-bill-title{color:var(--accent, #1D4ED8)}.committee-bill-id{font-family:var(--font-mono, "Geist Mono", monospace);font-size:11px;color:var(--text-secondary, #6B6861)}.committee-bill-title{font-family:var(--font-body, "General Sans", sans-serif);font-size:14px;font-weight:500;color:var(--text-primary, #1A1A18);line-height:1.35}.committee-bill-sponsor{font-family:var(--font-body, "General Sans", sans-serif);font-size:12px;color:var(--text-secondary, #6B6861)}.committee-bill-party{font-family:var(--font-mono, "Geist Mono", monospace);font-size:11px;padding:1px 5px;border-radius:3px;margin-left:2px}.committee-historical{margin:0}.committee-historical-row{display:flex;gap:12px;padding:8px 0;border-bottom:1px solid var(--border-light, #F0EEEA);font-family:var(--font-mono, "Geist Mono", monospace);font-size:13px}.committee-historical-row dt{flex:0 0 80px;color:var(--text-secondary, #6B6861)}.committee-historical-row dd{margin:0;color:var(--text-primary, #1A1A18)}.committee-methodology-link{display:inline-block;margin-top:16px;font-family:var(--font-body, "General Sans", sans-serif);font-size:13px;color:var(--accent, #1D4ED8);text-decoration:underline}.chamber-page{background:#fafaf7;color:#1a1a18;font-family:General Sans,system-ui,sans-serif;max-width:1120px;margin:0 auto;padding:32px 24px;min-height:100vh}@media (max-width: 768px){.chamber-page{padding:20px 16px}}.chamber-header{position:relative;margin-bottom:16px}.chamber-eyebrow{font-family:General Sans,system-ui,sans-serif;font-size:11px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:#6b6861;margin-bottom:8px}.chamber-title{font-family:"Instrument Serif",Georgia,serif;font-size:48px;font-weight:400;line-height:1.05;margin:0 0 8px;color:#1a1a18}.chamber-title em{font-style:italic}@media (max-width: 768px){.chamber-title{font-size:36px}}.chamber-subtitle{font-family:"Instrument Serif",Georgia,serif;font-size:22px;font-weight:400;line-height:1.3;color:#6b6861;margin-bottom:8px}.chamber-caption{font-family:Geist Mono,Menlo,monospace;font-size:13px;color:#6b6861}.chamber-header-aside{position:absolute;top:0;right:0;font-family:General Sans,system-ui,sans-serif;font-size:12px;font-weight:500;color:#1a1a18;display:flex;align-items:center;gap:6px}@media (max-width: 768px){.chamber-header-aside{position:static;margin-top:12px}}.chamber-fidelity-dot-inline{display:inline-block;width:6px;height:6px;border-radius:50%}.chamber-fidelity-label{font-weight:500}.chamber-rule{border:0;height:1px;background:#e8e6e1;margin:24px 0}.chamber-toggle{display:flex;gap:0;margin:24px 0 16px;border-bottom:1px solid #E8E6E1}.chamber-toggle-btn{background:transparent;border:0;border-bottom:2px solid transparent;font-family:General Sans,system-ui,sans-serif;font-size:14px;font-weight:500;color:#6b6861;padding:8px 24px;cursor:pointer;margin-bottom:-1px;transition:color .15s ease-out,border-color .15s ease-out}.chamber-toggle-btn:hover{color:#1a1a18}.chamber-toggle-btn.is-active{color:#1a1a18;border-bottom-color:#1d4ed8}.chamber-toggle-btn:focus-visible{outline:2px solid #1D4ED8;outline-offset:2px}.chamber-visual{position:relative;margin:24px 0}.senate-chamber-map{width:100%}.senate-chamber-svg{width:100%;height:auto;max-height:680px}.rostrum-label{font-family:"Instrument Serif",Georgia,serif;font-style:italic;font-size:13px;letter-spacing:.05em;fill:#9c9789}.chamber-desk{cursor:pointer;transition:filter .15s ease-out}.chamber-desk:hover,.chamber-desk.is-focused{filter:brightness(.96)}.chamber-desk:focus-visible rect:not([fill=transparent]),.chamber-desk:focus-visible rect[stroke-dasharray]{outline:2px solid #1D4ED8;outline-offset:2px}.desk-number{font-family:Geist Mono,Menlo,monospace;font-size:9px;font-weight:400}.desk-name{font-family:General Sans,system-ui,sans-serif;font-size:9.5px;font-weight:500;fill:#1a1a18}.desk-number-mobile{font-family:Geist Mono,Menlo,monospace;font-size:8px}.desk-vacant{font-family:Geist Mono,Menlo,monospace;font-size:11px}.chamber-fidelity-banner{display:flex;align-items:center;gap:8px;background:#fff;border:1px solid #E8E6E1;border-radius:4px;padding:12px 16px;margin-top:16px;font-family:General Sans,system-ui,sans-serif;font-size:13px;color:#6b6861;font-style:italic}.chamber-fidelity-dot{display:inline-block;width:6px;height:6px;border-radius:50%;flex-shrink:0}.senate-composition-only{padding:24px 0}.composition-banner{font-family:General Sans,system-ui,sans-serif;font-style:italic;font-size:14px;color:#6b6861;padding:16px;border:1px solid #E8E6E1;border-radius:4px;background:#fff;margin-bottom:24px}.composition-hemicycle{display:flex;align-items:center;justify-content:center;gap:24px;flex-wrap:wrap}.composition-half{flex:1 1 280px;max-width:480px}.composition-dots{display:flex;flex-wrap:wrap;gap:4px;margin-bottom:12px;justify-content:center}.composition-dot{display:inline-block;width:14px;height:14px;border-radius:50%;border:1px solid}.composition-dot-d{background:#2563eb1a;border-color:#2563eb}.composition-dot-r{background:#dc26261a;border-color:#dc2626}.composition-aisle{width:1px;background:#e8e6e1;align-self:stretch}.composition-label{text-align:center;font-family:General Sans,system-ui,sans-serif;font-size:14px;font-weight:500;color:#1a1a18}.composition-count{font-family:Geist Mono,Menlo,monospace;color:#6b6861;margin-left:8px}.house-composition-map{padding:16px 0}.house-composition-disclosure{font-family:General Sans,system-ui,sans-serif;font-style:italic;font-size:14px;color:#6b6861;padding:16px;border:1px solid #E8E6E1;border-radius:4px;background:#fff;margin-bottom:24px}.house-composition-totals{font-family:Geist Mono,Menlo,monospace;font-size:14px;color:#6b6861;margin-bottom:24px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}.house-composition-total-d{color:#2563eb}.house-composition-total-r{color:#dc2626}.house-composition-total-i{color:#7c3aed}.house-composition-total-v,.house-composition-total-all{color:#6b6861}.house-composition-separator{color:#9c9789}.house-composition-grid{gap:3px;max-width:100%}.house-composition-dot{display:inline-block;aspect-ratio:1;width:100%;border-radius:50%;border:1px solid}.house-composition-dot-d{background:#2563eb1a;border-color:#2563eb}.house-composition-dot-r{background:#dc26261a;border-color:#dc2626}.house-composition-dot-i{background:#7c3aed1a;border-color:#7c3aed}.house-composition-dot-v{background:transparent;border-color:#9c9789;border-style:dashed}.chamber-scrubber{padding:8px 0;position:relative}.chamber-scrubber-caption{font-family:General Sans,system-ui,sans-serif;font-size:12px;font-style:italic;color:#6b6861;margin-bottom:8px}.chamber-scrubber-track{position:relative;height:48px;cursor:pointer;outline:none;-webkit-user-select:none;user-select:none}.chamber-scrubber-track:focus-visible .chamber-scrubber-rail{background:#1d4ed8}.chamber-scrubber-rail{position:absolute;top:16px;left:0;right:0;height:2px;background:#e8e6e1;pointer-events:none;transition:background-color .15s ease-out}.chamber-scrubber-fidelity-row{position:absolute;top:22px;left:0;right:0;height:4px;pointer-events:none}.chamber-scrubber-fidelity-dot{position:absolute;width:4px;height:4px;border-radius:50%;transform:translate(-2px)}.chamber-scrubber-tick-row{position:absolute;top:30px;left:0;right:0;height:18px;pointer-events:none}.chamber-scrubber-tick{position:absolute;font-family:Geist Mono,Menlo,monospace;font-size:10px;color:#6b6861;transform:translate(-50%)}.chamber-scrubber-marker{position:absolute;top:12px;width:2px;height:12px;background:#1d4ed8;transform:translate(-1px);pointer-events:none}.chamber-scrubber-marker-label{position:absolute;top:-18px;left:50%;transform:translate(-50%);font-family:Geist Mono,Menlo,monospace;font-size:10px;font-weight:500;color:#1d4ed8;background:#fafaf7;padding:0 4px;white-space:nowrap}.chamber-scrubber-hint{font-family:General Sans,system-ui,sans-serif;font-size:12px;font-style:italic;color:#6b6861;margin-top:8px;opacity:1;transition:opacity .4s ease-out}.chamber-scrubber-hint.is-fading-out{opacity:0}.chamber-drawer-backdrop{position:fixed;top:0;right:0;bottom:0;width:40%;background:#1a1a1833;z-index:100;animation:chamber-fade-in .2s ease-out}@media (max-width: 1023px){.chamber-drawer-backdrop{left:0;width:100%;background:#1a1a1866}}.chamber-drawer{position:fixed;z-index:101;background:#fff;box-shadow:-2px 0 8px #0000000d;overflow-y:auto}.chamber-drawer.is-slide-in{top:0;right:0;bottom:0;width:448px;animation:chamber-slide-in .2s ease-out}.chamber-drawer.is-modal{top:50%;left:50%;transform:translate(-50%,-50%);width:90vw;max-width:448px;max-height:80vh;border-radius:8px;animation:chamber-fade-in .2s ease-out}.chamber-drawer:focus{outline:none}.chamber-drawer-close{position:absolute;top:16px;right:16px;background:transparent;border:0;font-size:28px;line-height:1;color:#1a1a18;cursor:pointer;width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:4px}.chamber-drawer-close:hover{color:#1d4ed8}.chamber-drawer-close:focus-visible{outline:2px solid #1D4ED8;outline-offset:2px}.chamber-drawer-header{padding:24px;border-bottom:1px solid #F0EEEA}.chamber-drawer-title{font-family:"Instrument Serif",Georgia,serif;font-style:italic;font-size:22px;font-weight:400;margin:0;color:#1a1a18}.chamber-drawer-subtitle{font-family:"Instrument Serif",Georgia,serif;font-style:italic;font-size:16px;color:#6b6861;margin-top:4px}.chamber-drawer-description{font-family:General Sans,system-ui,sans-serif;font-size:13px;color:#6b6861;margin-top:12px;margin-bottom:0}.chamber-drawer-body{padding:24px}.chamber-drawer-section-heading{font-family:General Sans,system-ui,sans-serif;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#6b6861;margin:0 0 16px}.chamber-drawer-current{margin-bottom:32px}.chamber-drawer-row{padding:16px 0;border-top:1px solid #F0EEEA}.chamber-drawer-row-name{font-family:General Sans,system-ui,sans-serif;font-size:14px;font-weight:500;color:#1a1a18}.chamber-drawer-row-meta,.chamber-drawer-row-years,.chamber-drawer-row-party{font-family:Geist Mono,Menlo,monospace;font-size:12px;color:#6b6861;margin-top:2px}.chamber-drawer-row-notes{font-family:General Sans,system-ui,sans-serif;font-size:13px;color:#6b6861;margin-top:8px;font-style:italic}.chamber-drawer-lineage-list{margin:0;padding:0;list-style:none}.chamber-drawer-lineage-row{padding:16px 0;border-top:1px solid #F0EEEA}.chamber-drawer-lineage-row.is-vacancy .chamber-drawer-row-name{color:#9c9789;font-style:italic;font-weight:400}.chamber-drawer-loading{font-family:General Sans,system-ui,sans-serif;font-size:13px;color:#6b6861;font-style:italic}.chamber-drawer-empty{font-family:General Sans,system-ui,sans-serif;font-size:13px;color:#6b6861}.chamber-drawer-error{font-family:General Sans,system-ui,sans-serif;font-size:13px;color:#dc2626}.chamber-mobile-reveal{position:sticky;bottom:16px;left:50%;transform:translate(-50%);max-width:90%;background:#fff;border:1px solid #E8E6E1;border-radius:4px;padding:8px 12px;font-family:General Sans,system-ui,sans-serif;font-size:14px;color:#1a1a18;z-index:50}.chamber-mobile-reveal-meta{font-family:Geist Mono,Menlo,monospace;font-size:12px;color:#6b6861}.historic-moment-overlay{padding:16px 0}.historic-moment-header{margin-bottom:24px}.historic-moment-section-heading{font-family:"Instrument Serif",Georgia,serif;font-style:italic;font-size:22px;font-weight:400;margin:0 0 8px;color:#1a1a18}.historic-moment-blurb{font-family:General Sans,system-ui,sans-serif;font-size:13px;color:#6b6861;margin:0}.historic-moment-method-link{color:#1d4ed8;text-decoration:none}.historic-moment-method-link:hover{color:#1e40af;text-decoration:underline}.historic-moment-list{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:16px}.historic-moment-item{background:#fff;border:1px solid #E8E6E1;border-radius:4px;padding:12px 16px;font-family:General Sans,system-ui,sans-serif;font-size:13px;color:#1a1a18;cursor:pointer;text-align:left;transition:border-color .15s ease-out;min-width:200px}.historic-moment-item:hover{border-color:#1d4ed8}.historic-moment-item.is-selected{border-color:#1d4ed8;background:#1d4ed80a}.historic-moment-item:focus-visible{outline:2px solid #1D4ED8;outline-offset:2px}.historic-moment-item-title{display:block;font-weight:500}.historic-moment-item-meta{display:block;font-family:Geist Mono,Menlo,monospace;font-size:11px;color:#6b6861;margin-top:4px}.historic-moment-detail{margin-top:24px;padding-top:16px;border-top:1px solid #E8E6E1}.historic-moment-detail-title{font-family:"Instrument Serif",Georgia,serif;font-style:italic;font-size:22px;font-weight:400;margin:0 0 4px}.historic-moment-detail-tally{font-family:Geist Mono,Menlo,monospace;font-size:14px;color:#6b6861;margin-bottom:12px}.historic-moment-detail-blurb{font-family:General Sans,system-ui,sans-serif;font-size:14px;color:#1a1a18;max-width:60ch;margin:0 0 16px}.historic-moment-legend{display:flex;gap:16px;flex-wrap:wrap}.historic-moment-legend-item{font-family:General Sans,system-ui,sans-serif;font-size:12px;color:#6b6861;display:flex;align-items:center;gap:6px}.historic-moment-legend-swatch{display:inline-block;width:8px;height:8px;border:1px solid}.historic-moment-legend-yea{background:#16a34a1a;border-color:#16a34a}.historic-moment-legend-nay{background:#dc26261a;border-color:#dc2626}.historic-moment-legend-notvoting{background:transparent;border-color:#9c9789;border-style:dashed}.chamber-footer{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding:16px 0}.chamber-footer-caption{font-family:General Sans,system-ui,sans-serif;font-style:italic;font-size:13px;color:#6b6861}.chamber-footer-link a{font-family:General Sans,system-ui,sans-serif;font-size:13px;color:#1d4ed8;text-decoration:none}.chamber-footer-link a:hover{color:#1e40af;text-decoration:underline}.chamber-loading{font-family:General Sans,system-ui,sans-serif;font-style:italic;font-size:14px;color:#6b6861;text-align:center;padding:48px 0}@keyframes chamber-slide-in{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes chamber-fade-in{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion: reduce){.chamber-drawer.is-slide-in,.chamber-drawer.is-modal,.chamber-drawer-backdrop,.chamber-scrubber-hint{animation:none;transition:none}}.open-page{color:var(--text-primary)}.open-hero{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:var(--space-8);align-items:end;padding:var(--space-8) 0 var(--space-7);border-bottom:1px solid var(--border)}.open-hero-copy{max-width:720px}.open-kicker{display:inline-block;margin-bottom:var(--space-3);font-family:var(--font-body);font-size:.75rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}.open-hero h1,.open-section-heading h2,.open-split h2,.open-callout h2,.methodology-article h1{margin:0;font-family:var(--font-display);font-weight:400;letter-spacing:0}.open-hero h1{max-width:760px;font-size:4.25rem;line-height:1}.open-hero p{max-width:680px;margin:var(--space-5) 0 0;color:var(--text-secondary);font-size:1.1rem;line-height:1.7}.open-actions{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-6)}.open-primary,.open-secondary,.open-callout a{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:.75rem 1.1rem;border-radius:var(--radius-sm);font-family:var(--font-body);font-size:.78rem;font-weight:600;letter-spacing:.11em;text-transform:uppercase;text-decoration:none}.open-primary,.open-callout a{border:1px solid var(--accent);background:var(--accent);color:#fff;cursor:pointer}.open-secondary{border:1px solid var(--border);background:var(--surface);color:var(--text-primary)}.open-primary:hover,.open-callout a:hover{background:var(--accent-hover);border-color:var(--accent-hover)}.open-secondary:hover{border-color:var(--accent);color:var(--accent)}.open-ledger{border-top:2px solid var(--text-primary);border-bottom:1px solid var(--border)}.open-ledger div{display:flex;justify-content:space-between;gap:var(--space-4);padding:var(--space-3) 0;border-bottom:1px solid var(--border-light)}.open-ledger div:last-child{border-bottom:0}.open-ledger span{color:var(--text-muted);font-size:.78rem;letter-spacing:.08em;text-transform:uppercase}.open-ledger strong{color:var(--text-primary);font-family:var(--font-mono);font-size:.78rem;font-weight:500;text-align:right}.open-band{padding:var(--space-8) 0}.open-band-ruled{border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.open-section-heading{max-width:720px;margin-bottom:var(--space-6)}.open-section-heading h2,.open-split h2,.open-callout h2{font-size:2.75rem;line-height:1.05}.open-track-grid,.open-method-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-4)}.open-track,.open-method-link{border-top:2px solid var(--text-primary);padding-top:var(--space-4)}.open-track h3,.open-method-link span{display:block;margin:0 0 var(--space-3);font-family:var(--font-body);font-size:.95rem;font-weight:600;color:var(--text-primary)}.open-track p,.open-method-link p,.open-split p,.open-callout p{margin:0;color:var(--text-secondary);font-size:.95rem;line-height:1.65}.open-link-row{display:flex;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-4)}.open-link-row a,.open-method-link,.open-resource-list a,.methodology-back{color:var(--accent);text-decoration:none}.open-link-row a:hover,.open-method-link:hover span,.open-resource-list a:hover,.methodology-back:hover{color:var(--accent-hover)}.open-feature-table-wrap{overflow-x:auto;border-top:2px solid var(--text-primary)}.open-feature-table{width:100%;min-width:760px;border-collapse:collapse}.open-feature-table th{padding:var(--space-3) var(--space-3) var(--space-3) 0;border-bottom:1px solid var(--border);color:var(--text-muted);font-size:.72rem;font-weight:600;letter-spacing:.1em;text-align:left;text-transform:uppercase}.open-feature-table td{width:25%;padding:var(--space-4) var(--space-3) var(--space-4) 0;border-bottom:1px solid var(--border-light);color:var(--text-secondary);font-size:.9rem;line-height:1.55;vertical-align:top}.open-feature-table td:first-child{color:var(--text-primary);font-weight:600}.open-method-grid-large{grid-template-columns:repeat(3,minmax(0,1fr))}.open-method-link{display:block}.open-split{display:grid;grid-template-columns:minmax(0,.95fr) minmax(280px,.7fr);gap:var(--space-8);align-items:start;border-top:1px solid var(--border)}.open-resource-list{display:grid;gap:var(--space-2);border-top:2px solid var(--text-primary)}.open-resource-list a{padding:var(--space-3) 0;border-bottom:1px solid var(--border-light);font-family:var(--font-mono);font-size:.78rem}.open-callout{margin:var(--space-4) 0 var(--space-8);padding:var(--space-6);border:1px solid var(--border);border-radius:var(--radius-md);background:var(--surface)}.open-callout p{max-width:680px;margin:var(--space-3) 0 var(--space-5)}.methodology-hero{grid-template-columns:1fr}.methodology-back{display:inline-block;margin:var(--space-3) 0 var(--space-5);font-size:.85rem;font-weight:600}.methodology-article{max-width:820px;margin:0 auto var(--space-8)}.methodology-article header{padding:var(--space-8) 0 var(--space-6);border-bottom:1px solid var(--border)}.methodology-article h1{font-size:4rem;line-height:1}.methodology-article header p{max-width:680px;margin:var(--space-4) 0 0;color:var(--text-secondary);font-size:1.1rem;line-height:1.7}.methodology-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-4);margin:var(--space-6) 0}.methodology-facts div{border-top:2px solid var(--text-primary);padding-top:var(--space-3)}.methodology-facts dt{margin-bottom:var(--space-2);color:var(--text-muted);font-size:.72rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.methodology-facts dd{margin:0;color:var(--text-secondary);font-size:.9rem;line-height:1.55}.methodology-section-block,.methodology-code{padding:var(--space-5) 0;border-top:1px solid var(--border)}.methodology-section-block h2,.methodology-code h2{margin:0 0 var(--space-3);font-family:var(--font-body);font-size:1rem;font-weight:600}.methodology-section-block p{margin:0;color:var(--text-secondary);line-height:1.7}.methodology-code ul{display:grid;gap:var(--space-2);margin:0;padding:0;list-style:none}.methodology-code code{font-family:var(--font-mono);font-size:.82rem;color:var(--text-primary)}@media (max-width: 980px){.open-hero h1,.methodology-article h1{font-size:3.25rem}.open-section-heading h2,.open-split h2,.open-callout h2{font-size:2.25rem}.open-hero,.open-split{grid-template-columns:1fr}.open-track-grid,.open-method-grid,.open-method-grid-large,.methodology-facts{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 640px){.open-hero h1,.methodology-article h1{font-size:2.5rem}.open-section-heading h2,.open-split h2,.open-callout h2{font-size:2rem}.open-hero{padding-top:var(--space-6)}.open-actions{flex-direction:column;align-items:stretch}.open-primary,.open-secondary,.open-callout a{width:100%}.open-track-grid,.open-method-grid,.open-method-grid-large,.methodology-facts{grid-template-columns:1fr}.open-callout{padding:var(--space-5)}}*{margin:0;padding:0;box-sizing:border-box}:root{--bg: #FAFAF7;--bg-tint: #F4F2EC;--surface: #FFFFFF;--surface-raised: #FFFFFF;--ink: #1A1A18;--ink-2: #6B6861;--ink-3: #9C9789;--text-primary: #1A1A18;--text-secondary: #6B6861;--text-muted: #9C9789;--accent: #1D4ED8;--accent-hover: #1E40AF;--accent-soft: rgba(29, 78, 216, .08);--accent-subtle: rgba(29, 78, 216, .08);--rule: #E8E6E1;--rule-strong: #1A1A18;--rule-light: #F0EEEA;--border: #E8E6E1;--border-light: #F0EEEA;--error: #DC2626;--error-subtle: rgba(220, 38, 38, .08);--success: #16A34A;--success-subtle: rgba(22, 163, 74, .08);--warning: #B45309;--warning-subtle: rgba(180, 83, 9, .08);--info: #0284C7;--info-subtle: rgba(2, 132, 199, .08);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .04);--shadow-md: 0 2px 8px rgba(0, 0, 0, .06);--shadow-lg: 0 4px 16px rgba(0, 0, 0, .08);--shadow: 0 1px 2px rgba(26,26,24,.04), 0 8px 24px -12px rgba(26,26,24,.12);--shadow-broad-lg: 0 2px 4px rgba(26,26,24,.05), 0 24px 48px -20px rgba(26,26,24,.22);--r-sm: 3px;--r-md: 7px;--r-lg: 12px;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 24px;--space-6: 32px;--space-7: 40px;--space-8: 48px;--dem: #2563EB;--rep: #DC2626;--ind: #7C3AED;--party-dem: #2563EB;--party-rep: #DC2626;--party-ind: #7C3AED;--maxw: 1180px;--serif: "Instrument Serif", Georgia, "Times New Roman", serif;--sans: "General Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mono: "Geist Mono", "SF Mono", ui-monospace, monospace;--font-display: "Instrument Serif", Georgia, serif;--font-body: "General Sans", -apple-system, BlinkMacSystemFont, sans-serif;--font-mono: "Geist Mono", ui-monospace, monospace}[data-theme=dark]{color-scheme:dark;--bg: #111110;--bg-tint: #1A1A18;--surface: #1C1C1A;--surface-raised: #242422;--ink: #E8E6E1;--ink-2: #9C9789;--ink-3: #6B6861;--text-primary: #E8E6E1;--text-secondary: #9C9789;--text-muted: #6B6861;--accent: #5B8DEF;--accent-hover: #7BA3F3;--accent-soft: rgba(91, 141, 239, .12);--accent-subtle: rgba(91, 141, 239, .12);--rule: #2A2A27;--rule-strong: #5C5A54;--rule-light: #232320;--border: #2A2A27;--border-light: #232320;--success: #34C77B;--success-subtle: rgba(52, 199, 123, .12);--warning: #D9962B;--warning-subtle: rgba(217, 150, 43, .12);--error: #EF5B5B;--error-subtle: rgba(239, 91, 91, .12);--info: #3DA8E0;--info-subtle: rgba(61, 168, 224, .12);--shadow: 0 1px 2px rgba(0,0,0,.3), 0 12px 28px -14px rgba(0,0,0,.6);--shadow-broad-lg: 0 2px 6px rgba(0,0,0,.4), 0 28px 56px -22px rgba(0,0,0,.7);--shadow-sm: 0 1px 2px rgba(0, 0, 0, .3);--shadow-md: 0 2px 8px rgba(0, 0, 0, .4);--shadow-lg: 0 4px 16px rgba(0, 0, 0, .5);--dem: #60A5FA;--rep: #F87171;--ind: #A78BFA;--party-dem: #60A5FA;--party-rep: #F87171;--party-ind: #A78BFA}:root{background:var(--bg)}html body{background:var(--bg)}html{scroll-behavior:smooth}body{font-family:var(--font-body);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background:var(--bg);color:var(--text-primary);line-height:1.6;font-weight:400;font-feature-settings:"ss01";transition:background .35s ease,color .35s ease}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);line-height:1.2;color:var(--text-primary)}h1,h2,h3,h4,h5,h6,p{font-weight:400}label{font-weight:500}small{font-weight:300}.app{min-height:100vh;display:flex;flex-direction:column;background:var(--bg);position:relative}.main-content{flex:1;max-width:1120px;width:100%;margin:0 auto;padding:3rem 2rem;animation:fadeInUp .4s ease-out}.main-content:has(.landing),.main-content:has(.members-register),.main-content:has(.bills-desk){max-width:100%;padding:0}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}button,a,input,select{transition:all .15s ease}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg)}::-webkit-scrollbar-thumb{background:var(--text-muted);border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.skeleton{background:linear-gradient(90deg,var(--border-light) 25%,var(--border) 50%,var(--border-light) 75%);background-size:1000px 100%;animation:shimmer 2s infinite}.gradient-text{color:var(--text-primary)}.card{background:var(--surface);border-radius:var(--radius-md);box-shadow:var(--shadow-sm);border:1px solid var(--border);transition:all .15s ease}.card:hover{box-shadow:var(--shadow-md);border-color:var(--accent)}.error-message{max-width:600px;margin:2rem auto;padding:1.25rem;background:var(--error-subtle);color:var(--error);border:1px solid var(--error);border-radius:var(--radius-sm);text-align:center;font-weight:500;animation:slideIn .3s ease-out}.success-message{max-width:600px;margin:2rem auto;padding:1.25rem;background:var(--success-subtle);color:var(--success);border:1px solid var(--success);border-radius:var(--radius-sm);text-align:center;font-weight:500;animation:slideIn .3s ease-out}@keyframes slideIn{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@media (max-width: 1024px){.main-content{padding:2rem 1.5rem}}@media (max-width: 768px){.main-content{padding:1.5rem 1rem}h1{font-size:2rem}h2{font-size:1.5rem}}*:focus{outline:2px solid var(--accent);outline-offset:2px}button:focus,a:focus,input:focus,select:focus{outline:2px solid var(--accent);outline-offset:2px}.bw ::selection{background:var(--accent);color:#fff}.bw .kicker{font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--accent)}.bw .dateline{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3)}.bw .serif-display{font-family:var(--serif);font-weight:400;line-height:.98;letter-spacing:0}.bw .wrap{max-width:var(--maxw);margin:0 auto;padding:0 32px}.bw a{color:inherit;text-decoration:none}.bw em{font-style:italic}.bw .announce{background:var(--ink);color:var(--bg);text-align:center;font-family:var(--mono);font-size:10.5px;letter-spacing:.16em;text-transform:uppercase;padding:7px 16px}[data-theme=dark] .bw .announce{background:var(--bg-tint);color:var(--ink-2);border-bottom:1px solid var(--rule)}.bw .announce span{opacity:.92}.bw .topbar-wrap{position:sticky;top:0;z-index:100;background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px);border-bottom:1px solid var(--rule)}.bw .topbar{max-width:var(--maxw);margin:0 auto;padding:0 32px;height:62px;display:flex;align-items:center;gap:28px}.bw .brand{display:flex;align-items:center;gap:10px;flex-shrink:0;cursor:pointer;background:none;border:none;padding:0}.bw .brand-mark{width:30px;height:30px;display:grid;place-items:center;background:var(--ink);border-radius:var(--r-sm)}.bw .brand-mark img{width:22px;height:22px}[data-theme=dark] .bw .brand-mark img{filter:invert(1)}.bw .brand-name{font-family:var(--serif);font-size:25px;line-height:1;letter-spacing:0;margin-top:2px;color:var(--ink)}.bw .topnav{display:flex;align-items:center;gap:22px;margin-left:22px;padding-left:22px;border-left:1px solid var(--rule)}.bw .topnav a{font-family:var(--sans);font-size:14px;font-weight:500;color:var(--ink-2);letter-spacing:0;position:relative;padding:4px 0;transition:color .15s ease;white-space:nowrap;background:none;border:none;cursor:pointer}.bw .topnav a:hover,.bw .topnav a.active{color:var(--ink)}.bw .topnav a.active:after{content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;background:var(--accent)}.bw .topbar-right{margin-left:auto;display:flex;align-items:center;gap:14px}.bw .theme-toggle{width:36px;height:36px;border:1px solid var(--rule);border-radius:var(--r-sm);display:grid;place-items:center;color:var(--ink-2);background:none;cursor:pointer;transition:all .2s ease;flex-shrink:0}.bw .theme-toggle:hover{color:var(--ink);border-color:var(--ink-3)}.bw .theme-toggle svg{width:17px;height:17px}.bw .theme-toggle .sun{display:none}[data-theme=dark] .bw .theme-toggle .sun{display:block}[data-theme=dark] .bw .theme-toggle .moon{display:none}.bw .btn{display:inline-flex;align-items:center;gap:9px;font-family:var(--sans);font-size:15px;font-weight:600;letter-spacing:0;padding:12px 20px;border-radius:var(--r-sm);transition:all .18s ease;white-space:nowrap;cursor:pointer;border:none;background:none}.bw .btn svg{width:18px;height:18px}.bw .btn-primary{background:var(--accent);color:#fff}.bw .btn-primary:hover{background:var(--accent-hover);transform:translateY(-1px)}.bw .btn-primary:hover svg{transform:translate(3px)}.bw .btn-primary svg{transition:transform .2s ease}.bw .btn-ghost{color:var(--ink);border:1px solid var(--rule-strong)}.bw .btn-ghost:hover{background:var(--ink);color:var(--bg)}.bw .btn-sm{padding:8px 14px;font-size:13px}.bw .btn-text{font-family:var(--mono);font-size:12px;letter-spacing:.08em;text-transform:uppercase;font-weight:500;color:var(--accent);display:inline-flex;align-items:center;gap:6px;background:none;border:none;cursor:pointer}.bw .btn-text:hover{gap:9px}.bw .ptag{font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.04em;padding:1px 5px;border-radius:var(--r-sm);border:1px solid currentColor;line-height:1.5}.bw .ptag.d{color:var(--dem)}.bw .ptag.r{color:var(--rep)}.bw .ptag.i{color:var(--ind)}.bw .rule{height:1px;background:var(--rule);border:none}.bw .rule-strong{height:2px;background:var(--rule-strong);border:none}.bw .footer{border-top:3px solid var(--rule-strong);margin-top:0;background:var(--bg)}.bw .footer-inner{max-width:var(--maxw);margin:0 auto;padding:48px 32px 36px}.bw .footer-masthead{display:flex;align-items:baseline;justify-content:space-between;gap:24px;flex-wrap:wrap;padding-bottom:24px;border-bottom:1px solid var(--rule)}.bw .footer-wordmark{font-family:var(--serif);font-size:40px;line-height:1;letter-spacing:0;color:var(--ink)}.bw .footer-tag{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);max-width:320px;text-align:right}.bw .footer-cols{display:grid;grid-template-columns:repeat(5,1fr);gap:28px;padding:32px 0}.bw .footer-col h4{font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-3);margin-bottom:14px}.bw .footer-col a,.bw .footer-col span{display:block;font-family:var(--sans);font-size:14px;color:var(--ink-2);padding:4px 0;text-align:left;background:none;border:none;cursor:pointer;transition:color .15s ease}.bw .footer-col span{cursor:default}.bw .footer-col a:hover{color:var(--accent)}.bw .footer-bottom{border-top:1px solid var(--rule);padding-top:20px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}.bw .footer-bottom p{font-size:12.5px;color:var(--ink-3)}.bw .nav-burger{display:none}@media (max-width: 940px){.bw .topnav{display:none;position:absolute;top:62px;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;margin:0;padding:8px 0;border-left:none;border-bottom:1px solid var(--rule);background:var(--bg)}.bw .topnav.open-mobile{display:flex}.bw .topnav a{padding:12px 32px}.bw .topnav a.active:after{display:none}.bw .nav-burger{display:grid;place-items:center;width:36px;height:36px;border:1px solid var(--rule);border-radius:var(--r-sm);color:var(--ink-2);background:none;cursor:pointer}.bw .footer-cols{grid-template-columns:repeat(2,1fr)}}@media (max-width: 560px){.bw .topbar,.bw .footer-inner{padding-left:18px;padding-right:18px}.bw .footer-cols{grid-template-columns:1fr}}
