.appr{border:1px solid var(--line,#d8d3e3);background:#fff;border-radius:14px;margin:12px 0;padding:12px 14px}.appr-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:6px 10px;display:flex}.appr-tag{color:#4a3200;background:#f5c04a;border-radius:99px;padding:2px 10px;font-size:11px;font-weight:700}.appr-row{grid-template-columns:1fr 1fr;gap:10px;margin-top:10px;display:grid}.appr-btn{min-height:56px;font:inherit;cursor:pointer;background:#fff;border:2px solid;border-radius:12px;align-items:center;gap:8px;padding:8px 12px;font-weight:700;display:flex}.appr-btn b{margin-left:auto;font-size:22px;font-weight:900}.appr-up{color:#14803c}.appr-down{color:#b42318}.appr-up.on{color:#fff;background:#14803c}.appr-down.on{color:#fff;background:#b42318}.appr-btn:disabled{opacity:.6}.appr-result{margin:8px 0 0;font-size:14px}.appr-pct{font-size:22px;font-weight:900}.appr-trend{margin:10px 0 0}.appr-trend svg{width:100%;height:auto;display:block}.appr-line{fill:none;stroke:#14803c;stroke-width:3px;stroke-linejoin:round}.appr-mid{stroke:#9a95a8;stroke-dasharray:4 4}.appr-news{fill:#b45309}.appr-trend figcaption{color:#5b5566;font-size:12px}@media (max-width:400px){.appr-btn span{font-size:13px}.appr-btn{gap:6px;padding:8px}}
.cand-hero{--hero-main:#4b5563;--hero-deep:#2f3743}.cand-hero.party-d{--hero-main:#1f4fd8;--hero-deep:#0f2f9a}.cand-hero.party-r{--hero-main:#c8202f;--hero-deep:#8f1420}.cand-hero .portrait{background:var(--hero-main);box-shadow:none;border:0;border-radius:14px;padding:6px 6px 0;max-width:220px!important}.cand-hero .portrait>div{border-radius:10px 10px 0 0;background:var(--hero-deep)!important}.cand-hero .portrait figcaption{background:var(--hero-main);color:#fff;border-top:0;padding:.4rem .2rem .5rem}.cand-hero .portrait figcaption a{color:#fff}.cand-hero h1{text-transform:uppercase;letter-spacing:-.01em;border-left:8px solid var(--hero-main);overflow-wrap:anywhere;padding-left:12px;font-size:clamp(1.9rem,6.5vw,3rem);font-weight:900;line-height:1.02}
.wp{--wp-main:#4b5563;--wp-deep:#2f3743;--wp-soft:color-mix(in srgb, var(--wp-main) 8%, var(--surface));min-width:0}.wp.party-d{--wp-main:var(--dem);--wp-deep:#123f78}.wp.party-r{--wp-main:var(--gop);--wp-deep:#7d1a1f}.wp *{min-width:0}.wp-hero{border:1px solid var(--line);border-top:6px solid var(--wp-main);border-radius:var(--radius-card);background:var(--surface);gap:.9rem;padding:1rem;display:grid}.wp-hero-top{grid-template-columns:7rem 1fr;align-items:start;gap:.9rem;display:grid}.wp-portrait{margin:0}.wp-portrait-box{aspect-ratio:176/215;background:var(--wp-deep);border-radius:12px;width:100%;overflow:hidden}.wp-portrait figcaption{color:var(--slate);overflow-wrap:anywhere;margin-top:.3rem;font-size:.68rem;line-height:1.3}.wp-id{align-content:start;gap:.45rem;display:grid}.wp-eyebrow{letter-spacing:.07em;text-transform:uppercase;color:var(--wp-main);margin:0;font-size:.72rem;font-weight:800}.wp-name-row{flex-wrap:wrap;align-items:flex-start;gap:.4rem .6rem;display:flex}.wp h1{letter-spacing:-.015em;overflow-wrap:break-word;flex:auto;margin:0;font-size:clamp(1.55rem,7vw,2.6rem);font-weight:900;line-height:1.05}.wp-desc{color:var(--slate);margin:0;font-size:.95rem}.wp-result{background:var(--wp-soft);border-radius:12px;gap:.6rem;padding:.8rem .9rem;display:grid}.wp-result-big{flex-wrap:wrap;align-items:baseline;gap:.2rem .7rem;display:flex}.wp-num{letter-spacing:-.02em;color:var(--wp-main);font-variant-numeric:tabular-nums;font-size:clamp(2.1rem,11vw,3.2rem);font-weight:900;line-height:1}.wp-lbl{font-size:1rem;font-weight:700}.wp-result-facts{grid-template-columns:1fr;gap:.35rem 1.2rem;margin:0;display:grid}.wp-fact{grid-template-columns:6.5rem 1fr;align-items:baseline;gap:.5rem;font-size:.92rem;display:grid}.wp-fact dt{letter-spacing:.06em;text-transform:uppercase;color:var(--slate);font-size:.7rem;font-weight:800}.wp-fact dd{overflow-wrap:anywhere;margin:0}.wp-src{color:var(--slate);overflow-wrap:anywhere;margin:.4rem 0 0;font-size:.78rem;line-height:1.4}.wp-hero .wp-src{margin:0}.wp-called{border:1px solid var(--line);border-left-width:6px;border-radius:12px;padding:.65rem .9rem;font-size:.92rem}.wp-called p{margin:0}.wp-called-right{background:var(--good-soft);border-left-color:var(--good)}.wp-called-wrong{background:var(--warn-soft);border-left-color:var(--warn)}.wp-called-none{background:var(--paper);color:var(--slate)}.wp-approval-slot:empty{display:none}.wp-nav{margin-top:.75rem}.wp-nav ul{scrollbar-width:none;scroll-snap-type:x proximity;gap:.4rem;margin:0;padding:0;list-style:none;display:flex;overflow-x:auto}.wp-nav ul::-webkit-scrollbar{display:none}.wp-nav li{scroll-snap-align:start;flex:none}.wp-nav a{border:1px solid var(--line);background:var(--surface);color:var(--ink);border-radius:980px;min-height:2.25rem;padding:.4rem .8rem;font-size:.85rem;font-weight:700;line-height:1.4;text-decoration:none;display:inline-block}.wp-nav a:hover,.wp-nav a:focus-visible{border-color:var(--wp-main);color:var(--wp-main)}.wp-card{border:1px solid var(--line);border-radius:var(--radius-card);background:var(--surface);scroll-margin-top:calc(var(--header-h,64px) + 3.5rem);margin:.75rem 0;padding:1rem}.wp-card h2{border-left:5px solid var(--wp-main);margin:0 0 .6rem;padding-left:.6rem;font-size:1.15rem;font-weight:800;line-height:1.2}.wp-card h3{margin:1rem 0 .4rem;font-size:.95rem;font-weight:800}.wp-lede{margin:0 0 .6rem;font-size:1.02rem}.wp-bio{max-width:68ch;margin:.25rem 0;line-height:1.55}.wp-facts{gap:.55rem;margin:.8rem 0 0;display:grid}.wp-none{color:var(--slate)}.wp-empty{border:1px dashed var(--line);color:var(--slate);background:var(--paper);border-radius:10px;margin:.4rem 0;padding:.5rem .7rem;font-size:.88rem}.wp-tag{letter-spacing:.05em;text-transform:uppercase;color:var(--slate);border:1px solid var(--line);vertical-align:middle;border-radius:6px;padding:0 .35rem;font-size:.66rem;font-weight:800;display:inline-block}.wp-list,.wp-committees,.wp-chips,.wp-timeline{margin:0;padding:0;list-style:none}.wp-list li{padding:.1rem 0}.wp-chips{flex-wrap:wrap;gap:.4rem;display:flex}.wp-chips li{align-items:center;gap:.25rem;display:inline-flex}.wp-chips a.chip{white-space:normal;text-decoration:none}.wp-committees>li{border-bottom:1px solid var(--line);padding:.45rem 0}.wp-committees>li:last-child{border-bottom:0}.wp-committees .chip{margin-left:.4rem}.wp-committees details{color:var(--slate);margin-top:.3rem;font-size:.88rem}.wp-committees details summary{cursor:pointer;min-height:1.5rem}.wp-committees details ul{margin:.3rem 0 0 1rem;padding:0}.wp-links{margin:.8rem 0 0}.wp-field{gap:.5rem;margin:.4rem 0;padding:0;list-style:none;display:grid}.wp-field li{grid-template-columns:1fr 3.6rem;grid-template-areas:"name pct""bar bar";align-items:baseline;gap:.15rem .5rem;display:grid}.wp-field-name{overflow-wrap:anywhere;grid-area:name;font-size:.92rem}.wp-field-name small{color:var(--slate);font-size:.78rem}.wp-field-pct{text-align:right;font-variant-numeric:tabular-nums;grid-area:pct;font-weight:700}.wp-bar{background:var(--line);border-radius:4px;grid-area:bar;height:8px;display:block;overflow:hidden}.wp-bar i{background:var(--slate);border-radius:4px;height:100%;display:block}.wp-win .wp-bar i{background:var(--wp-main)}.wp-win .wp-field-name{font-weight:800}.wp-timeline{border-left:2px solid var(--line);gap:.7rem;margin-left:.3rem;display:grid}.wp-timeline li{grid-template-columns:5.2rem 1fr;gap:.6rem;padding-left:.7rem;font-size:.92rem;display:grid;position:relative}.wp-timeline li:before{content:"";background:var(--wp-main);border-radius:50%;width:8px;height:8px;position:absolute;top:.4rem;left:-.45rem}.wp-year{font-variant-numeric:tabular-nums;color:var(--slate);font-size:.82rem;font-weight:800}.wp-sources{margin-top:.75rem}.wp-claim h2{border-left-color:var(--accent)}@media (min-width:560px){.wp-hero{padding:1.25rem}.wp-hero-top{grid-template-columns:11rem 1fr;gap:1.25rem}.wp-result-facts{grid-template-columns:1fr 1fr}}@media (min-width:900px){.wp-card{padding:1.25rem 1.5rem}.wp-facts{grid-template-columns:1fr 1fr;gap:.8rem 2rem}}@media (max-width:359px){.wp h1{font-size:1.3rem}.wp-hero-top{grid-template-columns:5.6rem 1fr;gap:.7rem}.wp-fact,.wp-timeline li{grid-template-columns:1fr;gap:0}}@media (prefers-reduced-motion:no-preference){.wp-nav a{transition:border-color .15s,color .15s}}.wp .cand-gallery{grid-template-columns:repeat(auto-fill,minmax(8.5rem,11rem));margin-top:1rem}
