:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f6f6f3;--surface:#fff;--surface-2:#efeeea;--ink:#111214;--ink-2:#4b4d52;--ink-3:#6c6e73;--border:#1112141f;--border-strong:#1112143d;--accent:#243b63;--accent-ink:#1f4f99;--accent-wash:#e5ecf7;--dem:#1f5fc4;--dem-wash:#e3ecfb;--rep:#c8302c;--rep-wash:#fbe6e5;--ind:#7a4bb7;--ind-wash:#efe7f9;--yea:#13804f;--yea-wash:#e0f3e9;--nay:#b45309;--nay-wash:#fbeedd;--neutral-wash:#ecebe7;--good:#13804f;--bad:#b42626;--warn:#9a6700;--warn-wash:#fff4d6;--star:#c08100;--star-wash:#fff3d1;--focus:#1f4f99;--radius:10px;--shadow:0 1px 2px #0000000d, 0 2px 8px #0000000a;color:var(--ink);background:var(--bg);font-family:system-ui,-apple-system,Segoe UI,sans-serif;font-size:15px;line-height:1.5}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0f1012;--surface:#18191c;--surface-2:#232428;--ink:#eeeef0;--ink-2:#c0c1c6;--ink-3:#9a9ca3;--border:#ffffff1f;--border-strong:#ffffff42;--accent:#3a5a92;--accent-ink:#8fb4f0;--accent-wash:#1b2840;--dem:#6ea0f2;--dem-wash:#172741;--rep:#f07a75;--rep-wash:#3a1b1a;--ind:#b897e6;--ind-wash:#2a2038;--yea:#4cc38a;--yea-wash:#143024;--nay:#f0a35a;--nay-wash:#35260f;--neutral-wash:#2a2b2f;--good:#4cc38a;--bad:#f07a75;--warn:#e8b84a;--warn-wash:#33290f;--star:#f0bf45;--star-wash:#3a2f10;--shadow:none}}*{box-sizing:border-box}body{background:var(--bg);margin:0}a{color:var(--accent-ink);text-underline-offset:2px}a:hover{text-decoration-thickness:2px}h1,h2,h3,h4{margin:0;line-height:1.2}h1{font-size:1.6rem}h2{font-size:1.15rem}h3{font-size:1rem}p{margin:0 0 10px}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.muted{color:var(--ink-3)}.small{font-size:.85rem}.num{text-align:right;font-variant-numeric:tabular-nums}.nowrap{white-space:nowrap}.row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.spacer{flex:1}.stack>*+*{margin-top:16px}.app-header{background:var(--accent);color:#fff;z-index:100;position:sticky;top:0}.app-header-inner{flex-wrap:wrap;align-items:center;gap:8px 20px;max-width:1320px;margin:0 auto;padding:8px 16px;display:flex}.brand{color:#fff;align-items:center;gap:8px;font-size:1.02rem;font-weight:700;text-decoration:none;display:flex}.brand svg{flex:none}.nav{scrollbar-width:none;flex:auto;gap:2px;min-width:0;display:flex;overflow-x:auto}.nav a{white-space:nowrap;flex:none}@media (width<=1240px){.nav{flex-basis:100%;order:3;margin:0 -4px}}@media (width<=560px){.app-header .global-search{flex-basis:100%}}.nav a{color:#ffffffd1;border-radius:7px;padding:7px 11px;font-weight:500;text-decoration:none}.nav a:hover{color:#fff;background:#ffffff1a}.nav a.active{color:#fff;background:#ffffff2e}.global-search{flex:0 300px;min-width:180px;margin-left:auto;position:relative}.global-search input{color:#fff;background:#ffffff24;border:1px solid #fff3;width:100%}.global-search input::placeholder{color:#ffffffa6}.search-pop{background:var(--surface);width:min(460px,92vw);color:var(--ink);border:1px solid var(--border);border-radius:var(--radius);max-height:70vh;padding:8px;position:absolute;top:calc(100% + 6px);right:0;overflow:auto;box-shadow:0 8px 30px #0000002e}.search-pop h4{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3);margin:8px 8px 4px;font-size:.72rem}.search-pop a{color:var(--ink);border-radius:7px;align-items:center;gap:10px;padding:6px 8px;text-decoration:none;display:flex}.search-pop a:hover,.search-pop a:focus{background:var(--surface-2)}.nav-sync{font-variant-numeric:tabular-nums;opacity:.9;align-items:center;gap:5px;margin-left:7px;font-size:.75rem;display:inline-flex}.nav-sync .dot{background:#7ee2a8;border-radius:50%;width:7px;height:7px;animation:1.4s infinite pulse}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}@keyframes pulse{50%{opacity:.35}}.page{max-width:1320px;margin:0 auto;padding:22px 16px 64px}.page-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:12px;margin-bottom:18px;display:flex}.page-head p{color:var(--ink-2);max-width:760px;margin:4px 0 0}.crumbs{color:var(--ink-3);margin-bottom:6px;font-size:.85rem}.crumbs a{color:var(--ink-3)}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:16px}.card+.card{margin-top:16px}.card-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px;margin-bottom:10px;display:flex}.card-head h2,.card-head h3{margin:0}.grid{gap:16px;display:grid}.grid-2{grid-template-columns:repeat(auto-fit,minmax(min(100%,440px),1fr))}.grid-3{grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))}.split{grid-template-columns:minmax(0,1fr) 340px;align-items:start;gap:16px;display:grid}@media (width<=960px){.split{grid-template-columns:1fr}}.empty{text-align:center;color:var(--ink-3);padding:28px 16px}.error-box{background:var(--rep-wash);color:var(--bad);border:1px solid color-mix(in srgb, var(--bad) 35%, transparent);border-radius:8px;margin:8px 0;padding:10px 12px}.notice{background:var(--warn-wash);color:var(--ink);border:1px solid color-mix(in srgb, var(--warn) 40%, transparent);border-radius:8px;margin-bottom:16px;padding:10px 14px}.notice.info{background:var(--accent-wash);border-color:color-mix(in srgb, var(--accent-ink) 30%, transparent)}.stats{grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;display:grid}.stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:12px 14px}.stat-value{font-variant-numeric:tabular-nums;font-size:1.45rem;font-weight:700;line-height:1.2}.stat-label{color:var(--ink-2);font-size:.85rem}.stat-sub{color:var(--ink-3);margin-top:2px;font-size:.78rem}input,select,textarea,button{font:inherit;color:inherit}input[type=text],input[type=search],input[type=url],input[type=number],input[type=password],select,textarea{background:var(--surface);border:1px solid var(--border-strong);border-radius:8px;max-width:100%;min-height:36px;padding:7px 10px}textarea{width:100%;min-height:120px;font-family:ui-monospace,Consolas,monospace;font-size:.85rem}.btn{background:var(--surface);border:1px solid var(--border-strong);cursor:pointer;white-space:nowrap;border-radius:8px;min-height:36px;padding:7px 14px;font-weight:500}.btn:hover:not(:disabled){background:var(--surface-2)}.btn:disabled{opacity:.5;cursor:default}.btn-primary{background:var(--accent);border-color:var(--accent);color:#fff}.btn-primary:hover:not(:disabled){background:color-mix(in srgb, var(--accent) 85%, #000)}.btn-small{min-height:28px;padding:3px 10px;font-size:.85rem}.btn-link{color:var(--accent-ink);cursor:pointer;text-underline-offset:2px;background:0 0;border:none;padding:0;text-decoration:underline}.btn-danger{color:var(--bad)}.filters{flex-wrap:wrap;align-items:flex-end;gap:8px;margin-bottom:14px;display:flex}.filters .grow{flex:220px}.filters input[type=search]{width:100%}.check{white-space:nowrap;align-items:center;gap:6px;min-height:36px;display:inline-flex}.field{flex-direction:column;gap:4px;display:flex}.field-label{color:var(--ink-2);font-size:.82rem;font-weight:600}.hint{color:var(--ink-3);font-size:.8rem}.form-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px;display:grid}.tabs{border-bottom:1px solid var(--border);gap:2px;margin:18px 0 16px;display:flex;overflow-x:auto}.tabs button{cursor:pointer;color:var(--ink-2);white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1px;padding:9px 14px;font-weight:500}.tabs button:hover{color:var(--ink)}.tabs button.active{color:var(--accent-ink);border-bottom-color:var(--accent-ink)}.pager{color:var(--ink-2);flex-wrap:wrap;justify-content:center;align-items:center;gap:12px;margin-top:16px;font-size:.9rem;display:flex}.table{border-collapse:collapse;width:100%}.table th{text-align:left;text-transform:uppercase;letter-spacing:.04em;color:var(--ink-3);border-bottom:1px solid var(--border);padding:6px 10px;font-size:.78rem;font-weight:600}.table td{border-bottom:1px solid var(--border);vertical-align:top;padding:9px 10px}.table tr:last-child td{border-bottom:none}.table.compact td,.table.compact th{padding:5px 8px}.table-wrap{overflow-x:auto}.list>*{border-bottom:1px solid var(--border);padding:11px 0}.list>:last-child{border-bottom:none}.list>:first-child{padding-top:0}.rc-line,.bill-line{justify-content:space-between;gap:12px;display:flex}.rc-main{flex-direction:column;gap:2px;min-width:0;display:flex}.rc-question{color:var(--ink);font-weight:600;text-decoration:none}.rc-question:hover{text-decoration:underline}.rc-bill,.rc-title{font-size:.9rem}.rc-meta,.bill-status{text-align:right;flex-direction:column;flex:none;align-items:flex-end;gap:3px;font-size:.85rem;display:flex}.bill-label{font-weight:700;text-decoration:none}.bill-title{font-weight:500}@media (width<=640px){.rc-line,.bill-line{flex-direction:column}.rc-meta,.bill-status{text-align:left;flex-direction:row;align-items:flex-start;gap:8px}}.vote-row{grid-template-columns:92px minmax(0,1fr);align-items:start;gap:12px;display:grid}.vote-row .against{color:var(--warn);text-transform:uppercase;letter-spacing:.04em;margin-top:4px;font-size:.72rem;font-weight:700;display:block}.party,.cast,.status,.result,.tag{white-space:nowrap;border-radius:99px;padding:2px 8px;font-size:.75rem;font-weight:600;line-height:1.5;display:inline-block}.party-D{background:var(--dem-wash);color:var(--dem)}.party-R{background:var(--rep-wash);color:var(--rep)}.party-I{background:var(--ind-wash);color:var(--ind)}.party-text-D{color:var(--dem)}.party-text-R{color:var(--rep)}.party-text-I{color:var(--ind)}.seat-tag{margin-left:5px;font-size:.78rem;font-weight:600}.cast{text-align:center;min-width:72px}.cast-Yea{background:var(--yea-wash);color:var(--yea)}.cast-Nay{background:var(--nay-wash);color:var(--nay)}.cast-Present,.cast-Other{background:var(--neutral-wash);color:var(--ink-2)}.cast-NotVoting{color:var(--ink-3);border:1px dashed var(--border-strong);background:0 0}.status-law{background:var(--yea-wash);color:var(--yea)}.status-veto{background:var(--rep-wash);color:var(--bad)}.status-moving{background:var(--accent-wash);color:var(--accent-ink)}.status-intro{background:var(--neutral-wash);color:var(--ink-2)}.result{border-radius:0;padding:0;font-size:.85rem;font-weight:600}.result-pass{color:var(--yea)}.result-fail{color:var(--nay)}.result-other{color:var(--ink-2)}.tag{background:var(--surface-2);color:var(--ink-2);font-weight:500}.tag-warn{background:var(--warn-wash);color:var(--warn)}.tag-gone{background:var(--rep-wash);color:var(--bad)}.tally{background:var(--surface-2);border-radius:4px;min-width:80px;height:8px;display:flex;overflow:hidden}.tally-yea{background:var(--yea)}.tally-nay{background:var(--nay)}.tally-other{background:var(--border-strong)}.photo{object-fit:cover;background:var(--surface-2);border-radius:8px;flex:none;display:block}.photo-fallback{color:var(--ink-3);place-items:center;font-weight:700;display:grid}.member-grid{grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:10px;display:grid}.member-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--ink);align-items:center;gap:12px;padding:10px;text-decoration:none;display:flex}.member-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow)}.member-card .name{font-weight:600}.member-card .meta{color:var(--ink-3);font-size:.82rem}.member-card .mini{color:var(--ink-2);margin-top:2px;font-size:.78rem}.member-card-wrap{display:flex;position:relative}.member-card-wrap>.member-card{flex:1;min-width:0;padding-right:40px}.member-card-wrap>.fav-star{position:absolute;top:4px;right:4px}.member-card-wrap.dim{opacity:.55}.fav-star{width:32px;height:32px;color:var(--ink-3);cursor:pointer;background:0 0;border:none;border-radius:7px;flex:none;place-items:center;padding:0;display:inline-grid}.fav-star:hover:not(:disabled){background:var(--surface-2);color:var(--star)}.fav-star svg,.fav-btn svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linejoin:round}.fav-star.on,.fav-btn.on{color:var(--star)}.fav-star.on svg,.fav-btn.on svg{fill:currentColor}.fav-star:disabled{opacity:.4;cursor:default}.fav-btn{align-items:center;gap:6px;display:inline-flex}.fav-btn.on{background:var(--star-wash);border-color:color-mix(in srgb, var(--star) 45%, transparent);color:var(--ink)}.fav-btn.on svg{color:var(--star)}.fav-btn.on:hover:not(:disabled){background:color-mix(in srgb, var(--star-wash) 70%, var(--surface-2))}.table td.fav-col,.table th.fav-col{width:1%;padding-right:0}.table td.fav-col{vertical-align:middle;padding-top:3px;padding-bottom:3px}.title-row{flex-wrap:wrap;align-items:center;gap:8px 14px;margin-bottom:4px;display:flex}.title-row h1{margin-bottom:0}.row-tight{align-items:center;gap:4px;display:inline-flex}.bill-status .fav-star{width:28px;height:28px;margin-right:-4px}.latest-action{color:var(--ink-2);margin-top:3px}.fav-section+.fav-section{margin-top:26px}.fav-section>h2{align-items:baseline;gap:8px;margin-bottom:10px;display:flex}.fav-dim{opacity:.55}.member-link a{font-weight:500}.profile{flex-wrap:wrap;align-items:flex-start;gap:20px;display:flex}.profile-body{flex:1;min-width:260px}.profile h1{margin-bottom:4px}.profile .seat{color:var(--ink-2);font-size:1.02rem}.links{flex-wrap:wrap;gap:6px 14px;margin-top:10px;font-size:.9rem;display:flex}.issue{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0;padding:0;display:grid;overflow:hidden}.issue+.issue{margin-top:16px}.issue-head{border-bottom:1px solid var(--border);background:var(--surface-2);flex-wrap:wrap;grid-column:1/-1;justify-content:space-between;align-items:baseline;gap:10px;padding:12px 16px;display:flex}.issue-said,.issue-did{min-width:0;padding:14px 16px}.issue-said{border-right:1px solid var(--border)}.issue h4{text-transform:uppercase;letter-spacing:.06em;color:var(--ink-3);margin-bottom:8px;font-size:.72rem}@media (width<=860px){.issue{grid-template-columns:1fr}.issue-said{border-right:none;border-bottom:1px solid var(--border)}}.statement{border-left:3px solid var(--border-strong);padding-left:12px}.statement+.statement{margin-top:14px}.statement.campaign{border-left-color:var(--accent-ink)}.statement-topic{font-weight:600}.statement-text{white-space:pre-line;color:var(--ink-2);font-size:.92rem}.statement-text.clamp{-webkit-line-clamp:4;line-clamp:4;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.statement-meta{color:var(--ink-3);flex-wrap:wrap;align-items:center;gap:8px;margin-top:4px;font-size:.78rem;display:flex}.bars{flex-direction:column;gap:6px;display:flex}.bar-row{grid-template-columns:minmax(0,1fr) 90px;align-items:center;gap:10px;font-size:.88rem;display:grid}.bar-label{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.bar-track{background:var(--surface-2);border-radius:3px;height:6px;margin-top:3px}.bar-fill{background:var(--accent-ink);border-radius:3px;height:100%}.progress{background:var(--surface-2);border-radius:4px;height:8px;margin:8px 0;overflow:hidden}.progress>span{background:var(--accent-ink);height:100%;transition:width .4s;display:block}.status-dot{background:var(--ink-3);border-radius:50%;width:8px;height:8px;margin-right:6px;display:inline-block}.status-dot.Succeeded{background:var(--good)}.status-dot.Failed{background:var(--bad)}.status-dot.Running{background:var(--accent-ink);animation:1.4s infinite pulse}.status-dot.Cancelled,.status-dot.Partial{background:var(--warn)}dialog.modal{border:1px solid var(--border);background:var(--surface);width:min(640px,100vw - 32px);color:var(--ink);border-radius:12px;padding:0}dialog.modal::backdrop{background:#00000073}.modal-body{padding:18px}.modal-actions{border-top:1px solid var(--border);justify-content:flex-end;gap:8px;padding:12px 18px;display:flex}.whoami{white-space:nowrap;align-items:center;gap:10px;font-size:.88rem;display:flex}.whoami a{color:#fff;font-weight:500;text-decoration:none}.whoami a:hover{text-decoration:underline}.whoami .btn-link{color:#ffffffd1}@media (width<=560px){.whoami{order:1;margin-left:auto}.app-header .global-search{order:2}}.auth-wrap{background:var(--bg);place-items:center;min-height:100vh;padding:24px 16px;display:grid}.auth-card{width:100%;max-width:420px;padding:24px}.auth-card h1{margin:18px 0 4px;font-size:1.4rem}.auth-card>p.muted{margin:4px 0 16px}.auth-brand{background:var(--accent);color:#fff;border-radius:10px;align-items:center;gap:8px;padding:6px 12px 6px 6px;font-weight:700;display:inline-flex}.auth-foot{margin:14px 0 0}.btn-block{width:100%}.ok-msg{color:var(--good)}.notice h3{margin:0}.th-sort{font:inherit;color:inherit;text-transform:inherit;letter-spacing:inherit;cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;padding:0;display:inline-flex}.th-sort:hover,.th-sort.active{color:var(--ink)}.th-sort .arrow{opacity:.35;font-size:.85em}.th-sort.active .arrow{opacity:.9}.th-sort:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:3px}
