.money-main{padding-top:0}.money-intro{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:end;padding-top:48px;padding-bottom:46px;border-bottom:1px solid var(--ink)}.money-intro h1{font-size:clamp(4rem,9vw,8.2rem);line-height:.9;margin:15px 0 0}.money-intro-copy{max-width:570px;padding-bottom:7px}.money-intro-copy>p:first-child{font:1.3rem/1.55 Georgia,'Times New Roman',serif}.data-stamp{font-size:.78rem;color:var(--muted);margin-top:23px}.tracker-workspace{padding-top:28px;padding-bottom:70px}.tracker-toolbar{display:grid;grid-template-columns:minmax(260px,1fr) 190px 210px;gap:15px;align-items:end;padding:18px;background:#e4e9ed;border:1px solid #cfd7de}.tracker-toolbar label{display:block;font-size:.76rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin:0 0 7px}.tracker-toolbar input,.tracker-toolbar select{width:100%;height:48px;border:1px solid #aebbc5;background:var(--paper2);color:var(--ink);padding:0 14px;border-radius:2px}.tracker-toolbar input{font-size:1rem}.tracker-key{border-bottom:1px solid var(--line)}.tracker-key summary{cursor:pointer;padding:18px 0;font-size:.85rem;font-weight:700}.key-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding:0 0 22px}.key-grid p{font-size:.82rem;color:var(--muted);margin:0}.key-grid strong{display:block;color:var(--ink);margin-bottom:5px}.tracker-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(310px,.7fr);gap:38px;align-items:start;margin-top:38px}.candidate-list-panel{min-width:0}.list-heading{display:flex;justify-content:space-between;align-items:end;gap:20px;margin-bottom:20px}.list-heading h2{font-size:2.25rem;margin:4px 0 0}.list-heading #result-count{font-size:.8rem;color:var(--muted)}.candidate-list-head{display:grid;grid-template-columns:minmax(180px,1fr) 150px 150px;gap:16px;padding:11px 15px;border-top:1px solid var(--ink);border-bottom:1px solid var(--line);font-size:.7rem;letter-spacing:.06em;text-transform:uppercase;color:var(--muted)}.candidate-row{display:grid;grid-template-columns:minmax(180px,1fr) 150px 150px;gap:16px;width:100%;text-align:left;padding:18px 15px;border:0;border-bottom:1px solid var(--line);background:transparent;color:var(--ink);align-items:center}.candidate-row:hover,.candidate-row[aria-current=true]{background:var(--paper2)}.candidate-row[aria-current=true]{box-shadow:inset 3px 0 var(--accent)}.candidate-name strong{display:block;font:1.25rem/1.2 Georgia,'Times New Roman',serif}.candidate-name small{font-size:.75rem;color:var(--muted)}.candidate-money{font-size:.92rem;font-variant-numeric:tabular-nums}.candidate-money small{display:block;color:var(--muted);font-size:.68rem;margin-top:2px}.candidate-detail{position:sticky;top:24px;background:var(--paper2);border-top:3px solid var(--accent);min-height:420px;padding:28px}.detail-placeholder h2,.detail-name{font-size:2.15rem;margin:9px 0 14px}.detail-placeholder p{color:var(--muted)}.detail-meta{display:flex;gap:9px;flex-wrap:wrap;margin-bottom:26px}.detail-chip{font-size:.72rem;border:1px solid var(--line);padding:5px 8px}.detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line);border:1px solid var(--line);margin:24px 0}.detail-stat{background:var(--paper2);padding:17px}.detail-stat small{display:block;font-size:.7rem;color:var(--muted);margin-bottom:5px}.detail-stat strong{font-size:1.18rem;font-variant-numeric:tabular-nums}.outside-box{border-top:1px solid var(--line);padding-top:21px}.outside-box h3{font:1.35rem Georgia,'Times New Roman',serif;margin:0 0 15px}.outside-row{display:grid;grid-template-columns:74px 1fr auto;align-items:center;gap:10px;margin:12px 0;font-size:.8rem}.outside-track{height:8px;background:#dfe4e7}.outside-fill{height:100%;background:var(--accent)}.outside-row.oppose .outside-fill{background:var(--ink)}.outside-row strong{font-variant-numeric:tabular-nums}.separation-note{font-size:.76rem;line-height:1.55;color:var(--muted);padding:16px 0;margin-top:17px;border-top:1px solid var(--line)}.detail-links{display:flex;flex-wrap:wrap;gap:14px;margin-top:18px}.detail-links a{font-size:.77rem;font-weight:700;text-decoration:none;border-bottom:1px solid currentColor}.tracker-empty{padding:40px 15px}.methodology{background:#e3e9ee;border-top:1px solid #ccd6dd;padding:58px 0 70px}.method-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:80px}.method-grid h2{font-size:2.8rem;margin:13px 0}.method-grid p{font-size:1rem;line-height:1.75}.method-links{display:flex;flex-wrap:wrap;gap:18px;margin-top:25px}.method-links a{font-size:.82rem;font-weight:700}.primary-nav .money-link{color:var(--accent);font-weight:700}
.tracker-home{display:flex;align-items:center;justify-content:space-between;gap:35px;padding:34px 0;border-bottom:1px solid var(--line)!important}.tracker-home h2{font-size:2.2rem;margin:8px 0}.tracker-home p{margin:0;color:var(--muted)}
@media(max-width:950px){.money-intro{grid-template-columns:1fr;gap:28px}.tracker-grid{grid-template-columns:1fr}.candidate-detail{position:static}.method-grid{gap:40px}.tracker-toolbar{grid-template-columns:1fr 1fr}.tracker-search{grid-column:1/-1}}
@media(max-width:700px){.money-intro{padding-top:35px}.money-intro h1{font-size:4.8rem}.tracker-toolbar{grid-template-columns:1fr}.tracker-search{grid-column:auto}.key-grid{grid-template-columns:1fr;gap:15px}.candidate-list-head{display:none}.candidate-row{grid-template-columns:1fr 1fr;gap:13px}.candidate-name{grid-column:1/-1}.method-grid{grid-template-columns:1fr;gap:18px}.tracker-home{align-items:flex-start;flex-direction:column}.tracker-home .text-link{flex-shrink:0}}

@media(max-width:520px){.money-intro{padding-top:29px;padding-bottom:32px}.money-intro h1{font-size:clamp(3.5rem,18vw,4.25rem);line-height:.92}.money-intro-copy>p:first-child{font-size:1.12rem}.tracker-workspace{padding-top:20px;padding-bottom:48px}.tracker-toolbar{padding:14px;gap:13px}.tracker-toolbar input,.tracker-toolbar select{height:48px;font-size:16px}.candidate-row{padding:17px 8px;grid-template-columns:1fr 1fr;gap:12px 8px}.candidate-money{font-size:.86rem}.candidate-detail{padding:23px 18px;min-height:0}.detail-grid{grid-template-columns:1fr}.outside-row{grid-template-columns:62px minmax(0,1fr) auto}.methodology{padding:42px 0 50px}.method-grid h2{font-size:2.35rem}}

/* Layer two: named groups, selected committee records, and filing timeline */
.tracker-grid{grid-template-columns:minmax(0,.92fr) minmax(430px,1.08fr)}
.candidate-list-head,.candidate-row{grid-template-columns:minmax(150px,1fr) 118px 118px;gap:12px}
.candidate-detail{top:18px;max-height:calc(100vh - 36px);overflow:auto;scrollbar-color:#aebbc5 transparent}
.money-disclosure{border-top:1px solid var(--ink);margin-top:24px;padding-top:2px}
.money-disclosure>summary{display:flex;align-items:end;gap:18px;cursor:pointer;list-style:none;padding:16px 0}
.money-disclosure>summary::-webkit-details-marker{display:none}
.money-disclosure>summary span{font:1.16rem Georgia,'Times New Roman',serif}
.money-disclosure>summary small{color:var(--muted);font-size:.68rem;text-align:right;margin-left:auto}
.money-disclosure>summary:after{content:'+';font-size:1.25rem}
.money-disclosure[open]>summary:after{content:'−'}
.money-record{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;padding:13px 0;border-top:1px solid var(--line)}
.money-record h4{font-size:.82rem;line-height:1.3;margin:5px 0 3px}
.money-record small{font-size:.66rem;color:var(--muted)}
.stance{display:inline-block;font-size:.59rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase;padding:3px 5px;color:#fff;background:var(--accent)}
.stance.oppose{background:var(--ink)}
.record-value{text-align:right}
.record-value strong{display:block;font-size:.85rem;font-variant-numeric:tabular-nums}
.record-value a{font-size:.65rem;font-weight:700}
.source-caveat,.record-empty{font-size:.7rem;line-height:1.55;color:var(--muted);margin:12px 0 4px}
.money-timeline{list-style:none;margin:2px 0 8px;padding:0}
.money-timeline li{display:grid;grid-template-columns:90px 1fr;gap:14px;border-top:1px solid var(--line);padding:12px 0}
.money-timeline time{font-size:.68rem;color:var(--muted)}
.money-timeline span{display:block;font-size:.58rem;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--accent)}
.money-timeline strong{display:block;font-size:.78rem;margin:2px 0}
.money-timeline small{font-size:.66rem;color:var(--muted)}
.decision-status{background:#e4e9ed;border-left:3px solid var(--accent);padding:14px;margin-top:15px}
.decision-status strong{font-size:.75rem}
.decision-status p{font-size:.7rem;line-height:1.5;color:var(--muted);margin:5px 0 0}
.detail-links{margin-top:22px}
@media(max-width:1050px){.tracker-grid{grid-template-columns:1fr}.candidate-detail{position:static;max-height:none;overflow:visible}}
@media(max-width:520px){.money-record{grid-template-columns:1fr}.record-value{text-align:left}.money-timeline li{grid-template-columns:1fr}.money-disclosure>summary small{display:none}}

.money-record{display:block}
.record-main{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:start}
.status-chip{font-weight:800}
.status-chip.active{border-color:#7c9d8a;color:#28583c}
.status-chip.ended{border-color:#a87d72;color:#7a2d20;background:#f3e7e3}
.funder-details{grid-column:1/-1;margin-top:12px;padding-top:10px;border-top:1px dashed var(--line)}
.funder-details>summary{cursor:pointer;font-size:.875rem;font-weight:800;color:var(--accent);list-style:none}
.funder-details>summary::-webkit-details-marker{display:none}
.funder-details>summary:after{content:' +'}
.funder-details[open]>summary:after{content:' −'}
.funder-list{margin-top:10px}
.funder-list p{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;margin:0;padding:8px 0;border-top:1px solid var(--line);font-size:.75rem}
.funder-list span{color:var(--muted);text-align:right}
.funder-note,.funder-pending{font-size:.75rem;line-height:1.5;color:var(--muted);margin:9px 0 0}
.money-timeline li.public-action{border-left:3px solid var(--accent);padding-left:12px}
.money-timeline li.money-action{border-left:3px solid #aebbc5;padding-left:12px}
.money-timeline a{display:inline-block;font-size:.75rem;font-weight:800;margin-top:5px}
@media(max-width:520px){.record-main,.funder-list p{grid-template-columns:1fr}.record-value,.funder-list span{text-align:left}}
