/* Reader-facing UI: preserve MCT midnight blue, gold and Newsreader headings. */
:root{font-size:18px;--reading-width:72ch}
body{background:#091735;background-image:radial-gradient(ellipse at 85% 0,rgba(43,74,140,.28),transparent 60%);background-attachment:scroll}
.shell{max-width:1280px;padding-inline:32px}
.skip-link{position:fixed;top:8px;left:16px;z-index:100;background:var(--gold);color:#091735;padding:12px 18px;transform:translateY(-150%)}
.skip-link:focus{transform:none}
.masthead{min-height:88px;gap:20px}.brand-logo{width:76px;height:66px}.mct-home-nav{margin:0;padding:0}.mct-home-return{font-size:.8rem;min-height:44px;background:transparent;border-color:var(--line)}
.mct-home-return .home-mobile{display:none}
.primary-nav{top:0;background:#0c1c3e;padding:10px 0;border-block:1px solid var(--line);box-shadow:none}
.nav-toolbar{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:9px}
.view-label{font-size:.8rem;color:var(--muted)}.view-label strong{color:var(--ink);font-weight:700}
.reader-controls{display:flex;align-items:center;gap:4px}.reader-controls span{font-size:.76rem;color:var(--muted);margin-right:6px}
.reader-controls button,.mobile-menu-toggle{border:1px solid var(--line);border-radius:6px;background:#102448;color:var(--ink);min-width:44px;min-height:44px;padding:8px 10px;font-size:.8rem;font-weight:700}
.reader-controls button:disabled{opacity:.4;cursor:default}.mobile-menu-toggle{display:none}.nav-group-toggle{min-height:46px;font-size:.85rem}.nav-button{min-height:46px;font-size:.9rem;line-height:1.4}.nav-dropdown{max-height:65vh;overflow-y:auto;width:320px}
.desk-header{padding:32px 0 26px;gap:32px;align-items:start}.desk-header h1{font-size:clamp(2.4rem,4.3vw,3.5rem);line-height:1.06;letter-spacing:-.025em;margin-top:0}.dek{font-size:1rem;line-height:1.65;max-width:65ch}
.latest-record{padding:20px;border-top-width:2px;background:#102448}.latest-record p{font-size:.94rem;line-height:1.65}.latest-record a{font-size:.9rem;min-height:44px;display:inline-flex;align-items:center}
body[data-panel]:not([data-panel=briefing]) .desk-header{display:none}body[data-panel]:not([data-panel=briefing]) .next-hearing{display:none}
.next-hearing{font-size:.88rem;line-height:1.6;margin:0 0 24px}
.panel{padding-top:26px;scroll-margin-top:160px}.panel-heading h2{font-size:2.2rem;line-height:1.1}.panel-heading p{font-size:1rem;line-height:1.65;max-width:var(--reading-width)}
.front-page{gap:26px}.front-lead{gap:24px}.card{box-shadow:none;background:#102143;border-color:rgba(147,169,218,.25)}
.case-now,.start-here,.front-section,.senator-box{padding:28px}.case-now h2,.start-here h2,.front-section h2,.senator-box-header h2{font-size:1.8rem;line-height:1.16}
.front-section-header{margin-bottom:22px;align-items:start}.front-section-header p{font-size:.96rem;line-height:1.65}.front-section-header .section-link{white-space:normal}
.panel p,.panel li{line-height:1.65}.panel :is(.charge,.record-view,.hearing-card,.room-moment,.news-card,.legal-card,.method-card,.house-event,.complaint-card,.people-card,.dispute-block,.analysis-section) p{font-size:.96rem}
.panel :is(.analysis-section,.dispute-block,.doc-details,.people-card) li{font-size:.96rem}
.record.has-analysis .analysis-summary{font-size:1rem;line-height:1.65}.record.has-analysis{grid-template-columns:140px minmax(0,1fr);padding:26px;gap:20px}.record-actions{grid-column:2;flex-direction:row;justify-content:flex-start;flex-wrap:wrap;align-items:center}.analysis-details{grid-column:2}.record p{line-height:1.65}.analysis-why p,.moment-preview p{font-size:.94rem}.analysis-grid{gap:16px}.analysis-section{padding:20px}.analysis-details summary,.doc-details summary,.case-progress summary{font-size:.94rem;padding-block:9px;min-height:44px}
.record h3,.record.has-analysis h3{font-size:1.65rem;line-height:1.16}.day-label,.day-date{font-size:.8rem}.tag{font-size:.75rem;line-height:1.4}.analysis-why{background:#0a1937;padding:16px}.analysis-why b{font-size:1.1rem}
.news-grid,.hearing-cards,.court-actions-grid,.room-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.court-action:first-child{grid-column:auto}.news-card,.court-action,.hearing-card,.room-moment{padding:22px}.news-card h3,.court-action h3,.court-action:first-child h3{font-size:1.4rem;line-height:1.2}
.news-card .news-meta,.court-action-meta{flex-wrap:wrap;font-size:.75rem;line-height:1.4}.news-links a,.court-action-links a{font-size:.85rem;line-height:1.5}.news-card details summary{min-height:44px;padding:10px 0;font-size:.94rem}.room-note,.court-actions-note{font-size:.88rem;line-height:1.65}
.front-action,.section-link,.context-link,.record-actions a,.hearing-card a{font-size:.9rem;line-height:1.5;min-height:44px;display:inline-flex;align-items:center}.front-action{padding:10px 16px}.front-action:first-child{background:var(--gold);color:#091735;border-color:var(--gold)}
.reader-paths{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.reader-path{display:flex;flex-direction:column;gap:8px;padding:20px;border:1px solid var(--line);border-radius:9px;color:var(--ink);text-decoration:none;background:#0c1c3e}.reader-path:hover{background:#16305b;border-color:var(--gold)}.reader-path strong{font-family:var(--display);font-size:1.25rem;line-height:1.2}.reader-path span{font-size:.88rem;line-height:1.5;color:var(--muted)}.reader-path small{color:var(--gold);font-size:.82rem;margin-top:auto;padding-top:8px}
.overview-index{display:flex;flex-wrap:wrap;gap:8px 18px;border-bottom:1px solid var(--line);padding-bottom:16px}.overview-index a{font-size:.85rem;line-height:1.5;min-height:44px;display:inline-flex;align-items:center;color:var(--muted)}
.schedule-note>summary{font-size:.88rem;min-height:44px;padding-block:10px;color:var(--muted)}.schedule-note .next-hearing{margin-top:12px}
.search-field{color:var(--ink);font-size:1rem;min-height:48px;width:100%}.search-field::placeholder{color:#a8b6d3}.chip,.doc-filter{font-size:.85rem;min-height:44px}.filter-rail{position:sticky;top:152px}.doc-card{padding:24px;gap:18px}.doc-card h3{font-size:1.3rem;line-height:1.25}.doc-summary{font-size:1rem!important;line-height:1.65!important}.doc-open{min-height:44px;font-size:.9rem}.doc-meta span,.doc-state{font-size:.8rem}.document-results{gap:18px}.ingest-message{font-size:.94rem;background:#0c1c3e;color:var(--muted);border:1px solid var(--line)}.ingest-message strong{color:var(--ink)}
.results-status{font-size:.85rem;color:var(--muted);margin:0 0 14px}.hearing-jump{display:flex;align-items:center;gap:12px;margin-bottom:16px}.hearing-jump label{font-size:.9rem;white-space:nowrap}.hearing-jump select{font:inherit;font-size:.94rem;border:1px solid var(--line);border-radius:7px;padding:12px;background:#102448;color:var(--ink);max-width:100%;min-width:0}
.legal-card,.dispute-card{padding:26px}.legal-status,.dispute-status{border-radius:6px;font-size:.8rem;line-height:1.45}.legal-docket{font-size:.86rem}.dispute-columns{gap:16px}.dispute-block{padding:20px}.dispute-links a,.legal-actions a{font-size:.88rem;min-height:44px;display:inline-flex;align-items:center}.issue-index a{padding:16px}.issue-index b{font-size:1.15rem;line-height:1.25}.issue-index small{font-size:.75rem}
.senator-roster li{font-size:.94rem;padding:12px 0}.senator-box-summary p,.senator-box-roster p,.senator-participation p{font-size:.94rem}.senator-oath p{line-height:1.6}.senator-box-header{align-items:start}.senator-box-header p{font-size:.94rem}.footer{font-size:.85rem;line-height:1.65}
[id^=day-],[id^=document-],[id^=dispute-],#around-the-trial,#impeachment-court-actions,#senator-judges-overview{scroll-margin-top:160px}
:is(a,button,input,select,summary):focus-visible{outline:3px solid #ffd47d;outline-offset:4px}summary{cursor:pointer}a,button,input,select{touch-action:manipulation}.context-target{outline-offset:5px}
.update-badge:not([hidden]){animation:update-pulse 1.25s ease-in-out infinite;font-size:.73rem}@keyframes update-pulse{0%,100%{opacity:1;box-shadow:0 0 0 0 rgba(224,163,58,.5)}50%{opacity:.42;box-shadow:0 0 0 6px rgba(224,163,58,0)}}
@media(min-width:1000px){.nav-group:last-child .nav-dropdown{left:auto;right:0}.start-here p{font-size:.94rem;line-height:1.65}.record .analysis-summary,.legal-copy,.dispute-question p{max-width:var(--reading-width)}}
@media(max-width:999px){.filter-rail{position:static}.desk-header,.front-lead{grid-template-columns:1fr}.senator-box-header{display:block}.senator-box-header p{margin-top:12px}}
@media(max-width:720px){
 .shell{padding-inline:18px}.masthead{min-height:76px;gap:10px;grid-template-columns:auto 1fr auto}.brand-logo{width:55px;height:52px}.case-id{text-align:left}.case-id b{font-size:.85rem}.case-id span{font-size:.6rem;letter-spacing:.04em}.mct-home-return{font-size:.75rem;padding:9px;min-height:44px}.mct-home-return span{display:none}
 .mct-home-return .home-desktop{display:none}.mct-home-return .home-mobile{display:inline}.primary-nav{margin-inline:-18px;padding-inline:18px}.nav-toolbar{margin:0;gap:8px;flex-wrap:wrap}.view-label{font-size:.78rem;flex:1;min-width:0;overflow-wrap:anywhere}.reader-controls span{display:none}.reader-controls button{padding:6px;min-width:44px;font-size:.75rem}.mobile-menu-toggle{display:inline-flex;align-items:center;justify-content:center;font-size:.85rem;gap:8px}.nav-groups{display:none;grid-template-columns:1fr;margin-top:12px}.primary-nav.menu-open .nav-groups{display:grid}.nav-dropdown{position:static;width:100%;max-height:55vh;margin-top:6px;box-shadow:none;border-color:var(--line)}.nav-group-toggle{font-size:.94rem;min-height:48px}.primary-nav.menu-open{max-height:80vh;overflow-y:auto}.nav-group:nth-child(even) .nav-dropdown{right:auto}
 .desk-header{padding:24px 0 20px;gap:22px}.desk-header h1{font-size:2.15rem;line-height:1.08}.dek{font-size:.94rem;line-height:1.65}.latest-record{padding:18px}.latest-record .label{font-size:.72rem;line-height:1.5}.latest-record h2{font-size:1.4rem}.next-hearing{margin-bottom:18px}.panel{padding-top:22px}.panel-heading h2{font-size:1.9rem}
 .reader-paths{grid-template-columns:1fr}.reader-path{padding:16px;gap:5px}.reader-path small{padding-top:2px}.reader-path strong{font-size:1.2rem}.reader-paths{gap:10px}.overview-index{gap:4px 14px}.overview-index a{font-size:.85rem}.front-page{gap:20px}
 .case-now,.start-here,.front-section,.senator-box{padding:20px}.case-now h2,.start-here h2,.front-section h2,.senator-box-header h2{font-size:1.6rem;line-height:1.2}.news-grid,.hearing-cards,.court-actions-grid,.room-grid{grid-template-columns:1fr}.front-section-header{display:block}.front-section-header p{font-size:.94rem}.front-section-header .section-link{margin-top:8px}.front-actions{gap:8px}.front-actions a{width:100%;justify-content:center}
 .record.has-analysis{grid-template-columns:1fr;gap:16px;padding:20px}.record-actions,.analysis-details{grid-column:1}.record-actions{gap:12px}.analysis-grid{grid-template-columns:1fr}.analysis-section{padding:16px}.record.has-analysis h3{font-size:1.45rem}.record.has-analysis>div:first-child{display:flex;flex-wrap:wrap;gap:8px 12px;align-items:center}.record.has-analysis>div:first-child .tag{margin-top:0!important}.record.has-analysis>div:first-child .day-date{margin-top:0}.record .analysis-summary{font-size:1rem}
 .hearing-jump{display:block}.hearing-jump label{display:block;margin-bottom:8px}.hearing-jump select{width:100%}.tools .search-field{min-width:0;flex-basis:100%}.tools{gap:8px}.doc-card{padding:18px;grid-template-columns:1fr}.file-icon{display:none}.doc-actions{grid-column:1;display:flex;flex-wrap:wrap;align-items:center}.doc-card h3{font-size:1.25rem}.legal-card,.dispute-card{padding:20px}.legal-status,.dispute-status{max-width:100%;text-align:left;border-radius:6px}.legal-topline{display:block}.senator-oath{padding:16px}.senator-oath p{font-size:1.1rem}.senator-roster{grid-template-columns:1fr}.senator-box-grid{grid-template-columns:1fr}.senator-box-summary,.senator-box-roster,.senator-participation{padding:16px}
 .footer{display:block}.footer div+div{margin-top:14px}[id^=day-],[id^=document-],[id^=dispute-],#around-the-trial,#impeachment-court-actions,#senator-judges-overview,.panel{scroll-margin-top:90px}
}
@media(prefers-reduced-motion:reduce){.update-badge:not([hidden]){animation:none}html{scroll-behavior:auto}}

