/* Meridian Intelligence: approved September 15, 2026. Applied last on every
   generated route. Previous source arrangement is retained; see the design log. */
:root{color-scheme:dark;--paper:#112934;--paper-bright:#193642;--paper-deep:#0d242e;--surface:#193642;--ink:#eee8db;--ink-soft:#c4d0d1;--muted:#b1c0c4;--muted-ink:#b1c0c4;--rule:#49616a;--hairline:#49616a;--rule-strong:#789096;--accent:#d6b66c;--oxblood:#d6b66c;--oxblood-dark:#e7cd8e;--blue:#9fcce7;--green:#a1d7b8;--gold:#d6b66c;--purple:#d1bcdf;--display:Georgia,"Times New Roman",serif;--serif:Georgia,"Times New Roman",serif;--sans:"Avenir Next","Segoe UI",Arial,sans-serif;--mono:"Courier New",monospace}
html{background:var(--paper);font-size:16px;scroll-behavior:auto;scroll-padding-top:24px}
body{background:var(--paper);color:var(--ink);font:1rem/1.65 var(--sans)}
body::before,body::after{display:none}
h1,h2,h3,h4,.page-title,.product-title,.profile h1,.profile h2{color:var(--ink);font-family:var(--serif);font-weight:400;text-transform:none;letter-spacing:-.035em}
h1,.page-head h1{font-size:clamp(2.4rem,4.5vw,4.4rem);line-height:1.08}
h2{font-size:clamp(1.8rem,2.7vw,2.5rem);line-height:1.2}h3{font-size:1.5rem;line-height:1.3}
a{color:var(--accent)}a:hover{color:#f1dab0;text-decoration:underline;text-underline-offset:4px}
p{line-height:1.65}small{font-size:.875rem}
button,input,select,textarea,.btn{font-family:var(--sans);font-size:1rem;line-height:1.4;letter-spacing:0;text-transform:none}
button,.btn,input,select,summary{min-height:44px}button,.btn{padding:10px 16px;background:var(--surface);color:var(--ink);border:1px solid var(--rule-strong);border-radius:0;box-shadow:none}
button:hover,.btn:hover{background:#264752;color:var(--ink)}button:disabled{cursor:not-allowed}
input,select,textarea,.filterbar input,.filterbar select,.research-controls input,.research-controls select,.policy-controls input,.policy-controls select{background:#0d242e;color:var(--ink);border:1px solid var(--rule-strong);padding:10px 12px;max-width:100%;font-size:1rem}
input::placeholder,textarea::placeholder{color:#aebdc1;opacity:1}input[type=checkbox],input[type=radio]{accent-color:var(--accent);min-height:22px;width:22px;height:22px}
.btn.primary,button.primary,.primary-button{background:var(--accent);border-color:var(--accent);color:#112934}
.btn.primary:hover,button.primary:hover{background:#edce88;color:#112934}
:focus-visible,.nr-navigation a:focus-visible,.nr-navigation summary:focus-visible{outline:3px solid #f1d18b;outline-offset:4px}
.skip-link{position:fixed;left:16px;top:0;transform:translateY(-150%);padding:10px 16px;background:var(--accent);color:#112934;min-height:44px;z-index:1000}.skip-link:focus{transform:translateY(0)}
.nr-navigation{display:grid;position:relative;padding:26px max(24px,calc((100vw - 1320px)/2)) 0;background:#112934;border:0;border-bottom:1px solid #d6b66c88;grid-template-columns:1fr auto;min-height:0;column-gap:24px;row-gap:0}
.nr-navigation .nr-name{display:flex;align-items:center;gap:14px;color:var(--ink);font:400 clamp(1.3rem,2.5vw,2rem)/1.08 var(--serif);letter-spacing:.075em;text-transform:uppercase;white-space:normal;max-width:unset;margin:0 0 20px;text-decoration:none}
.nr-crest{width:48px;height:48px;flex:none;color:var(--accent)}.nr-brand-lines{max-width:24ch}.nr-brand-note{display:block;font:.6875rem/1.7 var(--mono);letter-spacing:.12em;margin-top:6px;color:var(--muted);text-transform:uppercase}
.nr-navigation>nav{display:flex;grid-row:2;grid-column:1/-1;gap:20px;flex-wrap:wrap;border:0;overflow:visible}
.nr-navigation>nav>a,.nr-navigation>nav>a:first-child{padding:12px 0;min-height:48px;font-size:1rem;color:var(--ink);border-bottom:3px solid transparent}
.nr-navigation>nav>a:hover,.nr-navigation>nav>a[aria-current=page]{color:var(--accent);border-color:var(--accent)}
.nr-sections{margin:0;grid-row:1;grid-column:2;align-self:center}.nr-sections>summary{font-size:.9375rem;background:transparent;color:var(--ink);border-color:var(--rule-strong)}
.nr-sections[open]>summary{background:var(--accent);color:#112934}.nr-directory{inset:90px 24px auto;background:#e8dfca;color:#263633;border:1px solid #958c77;box-shadow:0 12px 24px #0003;max-height:78vh}
.nr-directory h2,.nr-directory a,.nr-directory p,.nr-directory label,.nr-directory button{color:#263633}.nr-directory input{background:#f8f3e7;color:#20323b;border-color:#777968}.nr-directory input::placeholder{color:#53605d}.nr-directory a{font-size:1rem;min-height:44px}.nr-directory a:hover{color:#694f16}.nr-directory h2{font-size:1.45rem}
.nr-directory button{background:#f3ecdb;border-color:#777968}.nr-directory :focus-visible{outline-color:#263f4d}.nr-directory nav{gap:24px}.nr-directory .nr-bookmarks{border-color:#9f9c8b}
.nr-tools{display:flex;gap:8px;align-items:center;grid-column:2;grid-row:1}.nr-text-size{font-size:.875rem;padding:8px 12px;white-space:nowrap}
.nr-context{max-width:1384px;margin:auto;padding:14px 32px 0;display:flex;flex-wrap:wrap;align-items:center;gap:10px 18px;font-size:.9375rem;color:var(--muted)}.nr-context a{color:var(--ink-soft)}.nr-context .nr-context-home{color:var(--accent)}.nr-context [aria-current=page]{color:var(--accent);font-weight:600}.nr-context .nr-guide-link{margin-left:auto}
.nr-unified .page,.nr-unified .product-main,.main-content{max-width:1384px;padding:36px 32px 64px}.nr-unified .record-subnav{background:#0d242e;border-color:var(--rule);font-size:1rem!important;padding:12px 32px!important}.nr-unified .record-subnav a{color:var(--accent)}
.page-head{border-color:var(--rule);align-items:baseline;padding-bottom:24px}.page-head::after{display:none}.page-head h1{text-transform:none}.subhead,.product-lede,.page-description{color:var(--ink-soft);font:1.0625rem/1.7 var(--sans);font-style:normal}
.kicker,.product-kicker,.eyebrow{font:.75rem/1.6 var(--mono);letter-spacing:.12em;color:var(--accent)}.kicker::before{background:var(--accent)}
.hint,.coverage-note,.footer-note,.research-meta,.policy-meta,.count,.page-head .count,.source-note{color:var(--muted);font-size:.875rem;text-transform:none;letter-spacing:0;line-height:1.55}
.filterbar,.research-controls,.policy-controls{gap:14px;padding:20px 0;border-color:var(--rule)}.filterbar .hint{min-width:140px}.filterbar select{min-width:140px}
.viewtabs,.dashtabs,.research-tabs{border-color:var(--rule)}.viewtabs a,.dashtabs a,.research-tabs button{font:1rem var(--sans);min-height:44px;padding:12px 16px;color:var(--muted)}.viewtabs .on,.dashtabs .on,.research-tabs [aria-selected=true]{color:var(--accent);border-color:var(--accent)}
table{color:var(--ink);font-size:.9375rem}thead th{background:#193642;color:var(--ink);font:600 .875rem/1.5 var(--sans);letter-spacing:0;text-transform:none;border-color:var(--rule)}td,th{padding:15px 12px;border-color:var(--rule)}tbody tr:hover{background:#193642}tbody th,tbody td:first-child a,.namecell a{color:var(--ink);font:400 1.125rem/1.4 var(--serif)}
.tablewrap,.table-scroll,.table-wrap{max-width:100%;overflow-x:auto}.tablewrap{border:1px solid var(--rule)}
.badge,.pill{color:var(--ink-soft);background:transparent;font-size:.8125rem;letter-spacing:0;text-transform:none}.badge.dem,.party-dem{color:#a6ccef}.badge.rep,.party-rep{color:#f1b8b8}.badge.ind,.party-ind{color:#d8c8ed}
.card,.chartcard,.public-data-card,.research-card,.policy-update,.policy-official,.intel-panel{background:transparent;color:var(--ink);border-color:var(--rule);box-shadow:none}.card>h3,.chartcard>h3{color:var(--ink);border-color:var(--rule)}
.statrow{border-color:var(--rule)}.stat{border-color:var(--rule)}.stat .v{color:var(--accent);font-size:2.4rem}.stat .l{font-size:.9375rem}.stat .d{font-size:.875rem;color:var(--muted)}
.profile,.props,.timeline,.assoc,.policy-bill-text,.policy-source-diff{background:transparent;color:var(--ink)}.props dt{font-size:.875rem}.props dd{font-size:1rem}.props dd small{font-size:.875rem;color:var(--muted)}
.empty-state,.empty-ledger{background:var(--paper-deep);color:var(--ink);padding:24px;border-color:var(--rule)}.empty-state p,.empty-ledger p{color:var(--muted)}
.modal,.modal-card,dialog{background:#193642;color:var(--ink);border-color:var(--rule-strong);max-width:calc(100vw - 32px)}dialog::backdrop{background:#051016cc}
.product-hero,.page-heading,.record-heading,.record-section-head,.record-desks,.record-footer,.research-section,.vote-record,.product-footer,footer{border-color:var(--rule)}
.record-heading{padding:12px 0 28px;border:0}.record-heading h1{font:400 clamp(2.8rem,4.8vw,4.5rem)/1.08 var(--serif)}.record-heading>p{color:var(--ink-soft);font:1rem/1.7 var(--sans);max-width:325px}.record-search input{color:var(--ink)}
.record-desks h2{font:400 1.9rem/1.2 var(--serif)}.record-desks p{color:var(--ink-soft);min-height:0}.record-desks>a{color:var(--ink);padding:25px 28px 25px 0}.record-desks>a:hover{background:#193642;text-decoration:none}.record-desks>a+a{border-color:var(--rule);padding-left:28px}.desk-number{font:.8rem var(--mono);color:var(--accent)}.desk-link{color:var(--accent);font-size:1rem}
.front-records h3{font:400 1.45rem/1.3 var(--serif)}.front-records p,.record-meta{font: .9375rem/1.6 var(--sans);color:var(--muted)}.record-predictions p{font-size:1.0625rem}.record-footer a,.product-footer a{color:var(--accent);font-size:.9375rem}.record-section-head a{font-size:1rem}
.meridian-map-intro{display:grid;grid-template-columns:minmax(0,1fr) 290px;border:1px solid var(--rule-strong);background:#0d242e;margin-bottom:32px}.meridian-map-preview{min-width:0;position:relative}.meridian-map-preview svg{display:block;width:100%;height:auto;min-height:230px;max-height:370px}.meridian-map-preview>a{display:block;padding:12px 20px;border-top:1px solid var(--rule)}
.meridian-paper{--ink:#263633;--ink-soft:#3e504a;--muted:#52645c;--accent:#674b15;--surface:#f7f1e3;--rule:#aba995;background:#e8dfca;color:#263633;padding:28px}.meridian-paper h2,.meridian-paper h3,.meridian-paper a{color:#263633}.meridian-paper .kicker{color:#536359}.meridian-paper>a{display:flex;justify-content:space-between;gap:16px;border-top:1px solid #b5b3a0;padding:14px 0;min-height:44px}.meridian-paper h2{font-size:2rem;margin:0 0 20px}.meridian-paper p{color:#52645c;font-size:.9375rem}.meridian-paper :focus-visible{outline-color:#263f4d}
.meridian-search{display:flex;align-items:end;gap:10px;padding:16px 20px;background:#193642;border-top:1px solid var(--rule)}.meridian-search label{display:grid;gap:5px;flex:1;min-width:0;font-size:.9375rem}.meridian-search input{width:100%}
.nr-intro-guide{padding:20px 0;border-block:1px solid var(--rule);display:flex;gap:20px;align-items:center;justify-content:space-between}.nr-intro-guide p{max-width:60ch;margin:0}.nr-intro-guide a{white-space:nowrap}
.news-rail,.news-rail-shell,.news-rail-panel{background:var(--paper-deep);color:var(--ink);border-color:var(--rule)}.news-rail a,.news-rail h2,.news-rail h3{color:var(--ink)}.news-rail p,.news-rail small,.news-rail-meta{color:var(--muted)}
.guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.guide-grid section{padding:24px;border-top:1px solid var(--rule)}.guide-grid h2{font-size:1.8rem}.guide-grid p{margin:12px 0}.guide-grid a{display:inline-block;min-height:44px;padding:10px 0}.guide-terms dt{font:1.4rem var(--serif);margin:24px 0 6px}.guide-terms dd{color:var(--ink-soft);max-width:75ch}
html.nr-large-text{font-size:19px}.nr-large-text body,.nr-large-text p,.nr-large-text li,.nr-large-text td,.nr-large-text input,.nr-large-text select,.nr-large-text button,.nr-large-text .hint{font-size:max(1rem,16px)}
.nr-unified .filterbar label{display:grid;gap:6px;font-size:.875rem;color:var(--ink-soft);min-width:140px;flex:1}.nr-unified .filterbar label input,.nr-unified .filterbar label select{width:100%}.nr-unified .filterbar label.people-search{flex:3;min-width:240px}.people-advanced{padding:14px 0;border-bottom:1px solid var(--rule);margin-bottom:24px}.people-advanced>summary{cursor:pointer;display:flex;align-items:center;gap:8px}.people-advanced>summary::before{content:'+';color:var(--accent)}.people-advanced[open]>summary::before{content:'−'}.viewtabs button{border:0;border-bottom:2px solid transparent;background:transparent;color:var(--muted);padding:12px 16px}.viewtabs button.on{border-color:var(--accent);color:var(--accent)}
.nr-unified main label,.nr-unified .money-table,.nr-unified .record-link,.nr-unified .policy-tools,.nr-unified .money-tabs button{font-size:1rem;line-height:1.6}.nr-unified .money-filters input,.nr-unified .money-filters select{font-size:1rem;min-height:44px}.nr-unified main small,.nr-unified .money-table small,.nr-unified .money-table th,.nr-unified .data-status,.nr-unified .product-breadcrumbs,.nr-unified .receipt-meta,.nr-unified .occurrence-byline,.nr-unified .quote-timing{font-size:.875rem;line-height:1.65}.nr-unified .page-head h1,.nr-unified .prediction-receipt h1{font-family:var(--serif);font-weight:400}.nr-unified .policy-error,.nr-unified #form-error{color:#f4b1a9}.nr-unified .nr-account-view{background:#193642;color:var(--ink);border-color:var(--rule)}
@media(max-width:640px){.nr-tools{grid-column:1;grid-row:2;margin-bottom:12px;justify-content:space-between}.nr-tools .nr-sections{margin:0}.nr-directory{top:145px}.nr-unified .filterbar label.people-search{min-width:100%}}
[hidden]{display:none!important}
@media(max-width:900px){.nr-navigation{padding:20px 22px 0}.nr-navigation>nav{gap:16px}.meridian-map-intro{grid-template-columns:minmax(0,1fr) 240px}.nr-context{padding-inline:22px}.nr-unified .page,.nr-unified .product-main,.main-content{padding-inline:22px}.page-head .actions{flex-wrap:wrap}}
@media(max-width:640px){.nr-navigation{grid-template-columns:1fr;padding:18px 18px 0}.nr-navigation .nr-name{font-size:1.3rem;margin-bottom:16px;max-width:none;gap:10px}.nr-crest{width:40px;height:40px}.nr-brand-note{font-size:.625rem}.nr-sections{grid-row:2;grid-column:1;justify-self:stretch;margin:0 0 12px}.nr-tools{justify-content:space-between}.nr-sections>summary{width:100%}.nr-navigation>nav{grid-row:3;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0 12px;width:100%}.nr-navigation>nav>a,.nr-navigation>nav>a:first-child{justify-content:center;font-size:.9375rem;padding:12px 0;white-space:normal;text-align:center}.nr-directory{inset:142px 10px auto;padding:18px}.nr-directory nav{grid-template-columns:1fr}.nr-context{padding:14px 18px 0;gap:8px 14px}.nr-context .nr-guide-link{margin-left:0}.nr-unified .page,.nr-unified .product-main,.main-content{padding:26px 18px 48px}.record-heading{display:block}.record-heading>p{margin:18px 0 0;max-width:none}.meridian-map-intro{grid-template-columns:1fr}.meridian-paper{padding:24px}.meridian-search{padding:14px;flex-wrap:wrap}.meridian-search label{flex-basis:100%}.meridian-search button{width:100%}.record-desks{grid-template-columns:1fr}.record-desks>a,.record-desks>a+a{padding:24px 0;border-left:0;border-top:1px solid var(--rule)}.nr-intro-guide{display:block}.nr-intro-guide a{display:inline-block;margin-top:8px;min-height:44px;padding-top:8px}.guide-grid{grid-template-columns:1fr}.guide-grid section{padding:20px 0}.filterbar select,.filterbar input{min-width:0;flex:1 1 145px}.filterbar input[type=search]{flex-basis:100%}.record-predictions{grid-template-columns:1fr;gap:20px}.front-records{grid-template-columns:1fr}.page-head{flex-wrap:wrap}.page-head .actions{margin-left:0}.nr-text-size{min-width:130px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
/* Public research has no CRM composers or local record-edit controls. Retained
   data and historical implementations are unchanged; this is not an auth gate. */
.actrow,.composer,.pedit,.pdel,.cdel,.addprop,.kebab,[data-private-feature]{display:none!important}
.speaker-arrow,.link-arrow{display:none}
.poll-average-list strong,#opinion-grid .poll-average-list li strong{color:var(--ink)}
#opinion-provenance,.poll-review-state{color:var(--muted)}
/* Quiet controls: text links for navigation, rounded understated actions. */
button,.btn{border-radius:8px;border-color:transparent;background:#ffffff08}
button:hover,.btn:hover{background:#ffffff12}
a.btn,.research-actions a.btn,.editorial-secondary,.section-route-link{background:transparent;border:0;border-radius:0;padding-inline:0;margin-right:18px;text-decoration:underline;text-decoration-color:#d6b66c66;text-underline-offset:5px}
.editorial-actions .editorial-primary,.editorial-primary{border-radius:8px;background:var(--accent);color:#112934;border:0}
.editorial-actions .editorial-primary:hover,.editorial-primary:hover{background:#edce88;color:#112934}
input,select,textarea{border-radius:6px}.nr-sections>summary{border-radius:8px}
.record-subnav a,.atlas-jumps a{border:0;background:transparent}
/* Override inherited light-paper styles on the navy publication surface. */
.pundit-box-score,.box-score-mast,.box-score-stats,.box-score-footer{background:var(--paper);color:var(--ink);border-color:var(--rule)}
.box-score-kicker{background:#193642;color:var(--ink)}
.box-score-identity h3,.box-score-identity h3 a,.box-score-sample strong,.box-score-stat strong,.speaker-name,.pundit-name strong,.stat-num{color:var(--ink)}
.box-score-identity p,.box-score-sample span,.box-score-stat dt,.box-score-stat dd span,.box-score-footer span,.stat-label,.pundit-name span,.speaker-show,.speaker-meta{color:var(--muted)}
.poll-answers strong,.poll-answer strong,.poll-choice,.candidate-name{color:var(--ink)}
.poll-timeline .series-0{color:#aad7fa;stroke:#aad7fa;fill:#aad7fa}.poll-timeline .series-1{color:#f2c680;stroke:#f2c680;fill:#f2c680}.poll-timeline .series-2{color:#b1deba;stroke:#b1deba;fill:#b1deba}.poll-timeline .series-3{color:#e3bcea;stroke:#e3bcea;fill:#e3bcea}.poll-timeline .series-4{color:#d5e0e2;stroke:#d5e0e2;fill:#d5e0e2}.poll-timeline .series-5{color:#ffa99d;stroke:#ffa99d;fill:#ffa99d}
.poll-timeline .poll-series{fill:none;opacity:.7}.poll-timeline .poll-dot{stroke:var(--paper);stroke-width:1.5}.poll-timeline a:focus .poll-dot{stroke:var(--ink);stroke-width:4}.poll-timeline{max-width:100%}
@media print{:root{color-scheme:light;--paper:white;--surface:white;--paper-bright:white;--paper-deep:#eee;--ink:black;--ink-soft:#222;--muted:#333;--muted-ink:#333;--accent:#222;--rule:#888}body{background:white;color:black;font-size:11pt}.nr-navigation{background:white;border-bottom:2px solid black;padding:0}.nr-navigation .nr-name{color:black;font-size:20pt}.nr-crest{color:black}.nr-navigation>nav,.nr-sections,.nr-tools,.nr-context,.meridian-search,.nr-intro-guide,.atlas-controls,.atlas-tools{display:none!important}.page,.nr-unified .page,.nr-unified .product-main{padding:15px 0}.meridian-map-intro{display:block}.meridian-map-preview,.meridian-paper{background:white;color:black}.meridian-paper h2,.meridian-paper a,a,h1,h2,h3,h4,td,th{color:black!important}thead th{background:#eee}button{display:none!important}svg{max-width:100%}}
