*{box-sizing:border-box;margin:0;padding:0}:root{--serif:"Libre Baskerville", Georgia, serif;--sans:"IBM Plex Sans", system-ui, sans-serif;--ink:#1a1a18;--ink-secondary:#4a4a45;--ink-muted:#7a7a72;--paper:#faf9f5;--paper-warm:#f3f1ea;--paper-mid:#e8e5dc;--rule:#d0ccbf;--accent-blue:#1a4d7a;--accent-red:#c0392b;--accent-green:#1a6b3a;--accent-amber:#c07018;--for-color:#1a6b3a;--against-color:#c0392b;--border-r:4px;--max-w:1100px}body{font-family:var(--sans);background:var(--paper);color:var(--ink);min-height:100vh;font-size:15px;line-height:1.5}a{color:var(--accent-blue);text-decoration:none}a:hover{text-decoration:underline}.nav{border-bottom:2px solid var(--ink);background:var(--paper);z-index:100;padding:0 24px;position:sticky;top:0}.nav-inner{max-width:var(--max-w);align-items:center;gap:24px;height:56px;margin:0 auto;display:flex}.nav-logo{font-family:var(--serif);color:var(--ink);cursor:pointer;letter-spacing:-.5px;flex-shrink:0;font-size:20px;font-weight:700}.nav-logo span{color:var(--accent-red)}.nav-search{flex:1;max-width:340px;position:relative}.nav-search input{border:1px solid var(--rule);background:var(--paper-warm);border-radius:var(--border-r);width:100%;height:34px;font-family:var(--sans);color:var(--ink);outline:none;padding:0 12px 0 32px;font-size:13px}.nav-search input:focus{border-color:var(--accent-blue)}.nav-search-icon{color:var(--ink-muted);pointer-events:none;font-size:14px;position:absolute;top:50%;left:10px;transform:translateY(-50%)}.nav-tabs{margin-left:auto;display:flex}.nav-tab{height:56px;color:var(--ink-secondary);cursor:pointer;border-bottom:2px solid #0000;align-items:center;margin-bottom:-2px;padding:0 16px;font-size:13px;font-weight:500;transition:all .15s;display:flex}.nav-tab:hover,.nav-tab.active{color:var(--ink);border-bottom-color:var(--accent-red)}.hero-rule{border-bottom:1px solid var(--rule);background:var(--paper-warm);padding:10px 24px}.hero-rule-inner{max-width:var(--max-w);flex-wrap:wrap;align-items:center;gap:20px;margin:0 auto;display:flex}.filter-group{align-items:center;gap:8px;display:flex}.filter-label{color:var(--ink-muted);letter-spacing:.05em;text-transform:uppercase;font-size:11px;font-weight:600}.filter-select{border:1px solid var(--rule);border-radius:var(--border-r);height:30px;font-family:var(--sans);color:var(--ink);cursor:pointer;background:#fff;outline:none;padding:0 8px;font-size:12px}.filter-select:focus{border-color:var(--accent-blue)}.last-updated{color:var(--ink-muted);margin-left:auto;font-size:11px}.search-results{border:1px solid var(--rule);border-radius:var(--border-r);z-index:200;background:#fff;max-height:320px;position:absolute;top:38px;left:0;right:0;overflow-y:auto;box-shadow:0 4px 16px #0000001f}.search-result-item{cursor:pointer;border-bottom:.5px solid var(--rule);padding:10px 14px}.search-result-item:last-child{border-bottom:none}.search-result-item:hover{background:var(--paper-warm)}.search-result-type{letter-spacing:.07em;text-transform:uppercase;margin-bottom:2px;font-size:10px;font-weight:600}.search-result-name{color:var(--ink);font-size:14px;font-weight:500}.search-result-sub{color:var(--ink-muted);font-size:12px}.page{max-width:var(--max-w);margin:0 auto;padding:32px 24px 64px}.section-gap{margin-top:48px}.section-header{border-bottom:1.5px solid var(--ink);align-items:center;gap:12px;margin-bottom:16px;padding-bottom:8px;display:flex}.section-title{font-family:var(--serif);font-size:20px;font-weight:700}.section-count{color:var(--ink-muted);font-size:13px}.detail-header{border-bottom:2px solid var(--ink);margin-bottom:28px;padding-bottom:20px}.detail-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted);margin-bottom:8px;font-size:11px;font-weight:600}.detail-title{font-family:var(--serif);margin-bottom:10px;font-size:30px;font-weight:700;line-height:1.2}.detail-meta{color:var(--ink-secondary);flex-wrap:wrap;align-items:center;gap:12px;font-size:13px;display:flex}.stat-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-bottom:36px;display:grid}.stat-card{background:var(--paper-warm);border:1px solid var(--rule);border-radius:var(--border-r);padding:16px}.stat-label{letter-spacing:.05em;text-transform:uppercase;color:var(--ink-muted);margin-bottom:6px;font-size:11px;font-weight:600}.stat-value{font-family:var(--serif);color:var(--ink);font-size:24px;font-weight:700;line-height:1}.stat-value.for{color:var(--for-color)}.stat-value.against{color:var(--against-color)}.stat-sub{color:var(--ink-muted);margin-top:4px;font-size:12px}.data-table{border-collapse:collapse;width:100%;font-size:13px}.data-table thead th{text-align:left;letter-spacing:.05em;text-transform:uppercase;color:var(--ink-muted);border-bottom:1px solid var(--rule);background:var(--paper-warm);white-space:nowrap;padding:7px 12px;font-size:11px;font-weight:600}.data-table tbody tr{border-bottom:.5px solid var(--rule);cursor:pointer;transition:background .1s}.data-table tbody tr:hover{background:var(--paper-warm)}.data-table tbody td{vertical-align:middle;padding:10px 12px}.rank{color:var(--ink-muted);width:32px;font-size:12px}.entity-name{color:var(--ink);font-weight:500;line-height:1.3}.entity-sub{color:var(--ink-muted);margin-top:2px;font-size:12px}.amount{font-variant-numeric:tabular-nums;font-size:13px;font-weight:600}.amount.for{color:var(--for-color)}.amount.against{color:var(--against-color)}.amount.total{color:var(--ink)}.bar-cell{width:140px}.bar-wrap{background:var(--paper-mid);border-radius:3px;gap:1px;height:6px;display:flex;overflow:hidden}.bar-for{background:var(--for-color);border-radius:3px 0 0 3px;min-width:2px;height:100%}.bar-against{background:var(--against-color);border-radius:0 3px 3px 0;min-width:2px;height:100%}.bar-total{background:var(--accent-blue);border-radius:3px;min-width:2px;height:100%}.bar-total.against{background:var(--against-color)}.tag{white-space:nowrap;border-radius:10px;margin-right:2px;padding:2px 7px;font-size:11px;font-weight:500;display:inline-block}.tag-blue{color:var(--accent-blue);background:#e3edf7}.tag-red{color:var(--accent-red);background:#fce8e6}.tag-green{color:var(--accent-green);background:#e4f2ea}.tag-amber{color:var(--accent-amber);background:#fdf0dd}.tag-gray{background:var(--paper-mid);color:var(--ink-secondary)}.tag-teal{color:#0a6b55;background:#e0f5f0}.tag-purple{color:#4a3db0;background:#eeebfe}.tag-pink{color:#a03060;background:#fce8f0}.toggle-group{border:1px solid var(--rule);border-radius:var(--border-r);display:flex;overflow:hidden}.toggle-btn{cursor:pointer;color:var(--ink-secondary);border:none;border-right:1px solid var(--rule);font-size:12px;font-weight:500;font-family:var(--sans);background:#fff;padding:5px 12px;transition:all .1s}.toggle-btn:last-child{border-right:none}.toggle-btn.active{background:var(--ink);color:#fff}.back-btn{color:var(--ink-secondary);cursor:pointer;border-bottom:1px solid #0000;align-items:center;gap:6px;margin-bottom:24px;padding:4px 0;font-size:13px;transition:all .15s;display:inline-flex}.back-btn:hover{color:var(--ink);border-bottom-color:var(--rule)}.fec-link{color:var(--ink-muted);align-items:center;gap:3px;font-size:11px;display:inline-flex}.fec-link a{color:var(--accent-blue)}.fec-attribution{color:var(--ink-muted);border-top:.5px solid var(--rule);margin-top:8px;padding-top:8px;font-size:11px}.fec-attribution a{color:var(--accent-blue)}.loading-state{text-align:center;color:var(--ink-muted);padding:48px 0}.loading-pulse{background:var(--rule);border-radius:50%;width:8px;height:8px;margin:0 3px;animation:1.2s ease-in-out infinite pulse;display:inline-block}.loading-pulse:nth-child(2){animation-delay:.2s}.loading-pulse:nth-child(3){animation-delay:.4s}@keyframes pulse{0%,to{opacity:.3;transform:scale(.8)}50%{opacity:1;transform:scale(1)}}.error-state{border-radius:var(--border-r);text-align:center;color:var(--accent-red);background:#fff5f5;border:1px solid #fcc;padding:24px;font-size:14px}.empty-state{text-align:center;color:var(--ink-muted);padding:32px;font-size:14px}.tabs{border-bottom:1.5px solid var(--ink);gap:0;margin-bottom:24px;display:flex}.tab-btn{font-family:var(--sans);color:var(--ink-muted);cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;margin-bottom:-1.5px;padding:10px 20px;font-size:14px;font-weight:400}.tab-btn.active{color:var(--ink);border-bottom-color:var(--accent-red);font-weight:600}.tab-btn:hover{color:var(--ink)}.section-header .filter-select{height:30px}
