/* US-only additions to the shared court.css (copied from dist/court.css): four numbers, seat lanes,
 * the per-term ribbon, the opinion map, statistics bars and the agreement grid. Ink and neutral tones;
 * violet marks only the selected justice. */
.court-numbers{grid-template-columns:repeat(4,minmax(0,1fr))}
.court-head .court-fine{margin:0}
.court-bench-seats.is-seated .court-bench-seat,.court-case-seats.is-seated .court-case-seat{opacity:1;transform:none}
.court-case-seat.is-picked .court-monogram{border-color:var(--color-accent);border-width:2px}.court-case-seat.is-picked b{color:var(--color-accent)}
.court-pen{display:inline-block;width:14px;height:14px;margin-top:-8px;background:linear-gradient(135deg,transparent 42%,var(--color-ink) 42% 58%,transparent 58%)}
.court-mark.p-pen{border:0;border-radius:0;background:linear-gradient(135deg,transparent 42%,var(--color-ink) 42% 58%,transparent 58%)}
.ct-marks{display:inline-flex;gap:3px;flex-wrap:wrap}.ct-marks .court-mark{width:11px;height:11px;border-width:1.5px}.ct-marks .p-notPanel{width:9px;height:2px}
.ct-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-md);list-style:none;padding:0;margin:0}
.ct-steps li{border-top:var(--rule-hair) solid var(--color-rule);padding-top:var(--space-sm);display:grid;gap:var(--space-xs)}
.ct-steps b{font-family:var(--font-display);font-weight:var(--weight-display);font-size:var(--text-xl)}.ct-steps p{font-size:var(--text-sm);color:var(--color-ink-2)}
.ct-hook{display:grid;gap:var(--space-sm)}.ct-hook .court-split{margin-block:var(--space-xs)}
.ct-lanes-wrap{overflow:auto;border:var(--rule-hair) solid var(--color-rule);border-radius:.6rem;padding:var(--space-sm);background:var(--color-paper-2)}
.ct-lanes{width:100%;min-width:34rem;height:auto;display:block;direction:ltr}.ct-lanes:focus-visible{outline:2px solid var(--color-focus);outline-offset:3px}
.ct-grid{stroke:var(--color-rule)}.ct-grid-major{stroke:var(--color-rule-strong)}.ct-year,.ct-col,.ct-era-label{font-size:10px;fill:var(--color-ink-3)}.ct-col{font-weight:600}.ct-era{stroke:var(--color-ink-3);stroke-dasharray:3 4}
.ct-bar rect{fill:var(--color-ink-3);opacity:.85}.ct-bar:hover rect,.ct-bar.is-cursor rect{fill:var(--color-ink);opacity:1}.ct-bar.is-year rect{fill:var(--color-ink);opacity:1}
.ct-bar-chief rect{fill:var(--color-paper);stroke:var(--color-ink);stroke-width:1.5;opacity:1}.ct-bar-chief.is-year rect{fill:var(--color-paper-3)}
.ct-bar.is-picked rect{fill:var(--color-accent)!important;stroke:var(--color-accent)}.ct-bar.is-cursor rect{stroke:var(--color-focus);stroke-width:2}
.ct-stats{list-style:none;padding:0;margin-block:var(--space-sm);display:grid;gap:var(--space-xs)}
.ct-stats li{display:grid;grid-template-columns:11rem minmax(0,1fr) 10rem;gap:var(--space-sm);align-items:center;font-size:var(--text-sm)}
.ct-stat-bar{display:block;height:.7rem;background:var(--color-paper-3);border-radius:.35rem;overflow:hidden}.ct-stat-bar i{display:block;height:100%;background:var(--color-ink)}.ct-stat-n{text-align:end;font-variant-numeric:tabular-nums}
.ct-overtime{margin-block:var(--space-md)}.ct-overtime figcaption{font-size:var(--text-xs);color:var(--color-ink-3)}.ct-overtime svg{width:100%;height:auto;max-height:6rem;direction:ltr}.ct-overtime rect{fill:var(--color-ink-3)}.ct-overtime text{font-size:10px;fill:var(--color-ink-3)}
.ct-agree ul{list-style:none;padding:0;font-size:var(--text-sm)}.ct-agree li{display:flex;gap:var(--space-xs);flex-wrap:wrap;padding-block:2px}.ct-agree small{color:var(--color-ink-3)}
.ct-legend{display:flex;flex-wrap:wrap;gap:var(--space-xs) var(--space-md);font-size:var(--text-xs);margin-block:var(--space-xs)}.ct-legend i,.ct-swatch{display:inline-block;width:.9rem;height:.9rem;vertical-align:-2px;margin-inline-end:.3rem}
.ct-bar3{display:flex;height:.9rem;width:var(--w,100%);min-width:2px}.ct-bar3 i{display:block;min-width:0}.ct-bar3-big{height:2rem;width:100%;margin-block:var(--space-sm)}.ct-bar3-big i{position:relative}.ct-bar3-big i span{position:absolute;inset:0;display:grid;place-items:center;font-size:var(--text-xs);color:var(--color-paper);mix-blend-mode:difference}
.u{background:var(--color-ink)}.d{background:var(--color-ink-3)}.o{background:var(--color-paper-3);box-shadow:inset 0 0 0 1px var(--color-ink-3)}
.ct-ribbon{list-style:none;padding:0;margin:0;border-top:var(--rule-hair) solid var(--color-rule);max-height:40rem;overflow:auto}
.ct-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:var(--space-xs);align-items:center;border-bottom:var(--rule-hair) solid var(--color-rule);padding-block:3px}.ct-row.fade{opacity:.35}
.ct-term-link{display:grid;grid-template-columns:3.2rem 6rem minmax(0,1fr) auto;gap:var(--space-sm);align-items:center;text-decoration:none;color:inherit;direction:ltr}.ct-term-link:hover .ct-term{color:var(--color-accent)}
.ct-term{font-family:var(--font-display);font-weight:700;font-variant-numeric:tabular-nums}.ct-chief{font-size:var(--text-xs);color:var(--color-ink-3)}.ct-n,.ct-none{font-size:var(--text-xs);color:var(--color-ink-3);white-space:nowrap}.ct-nodata{grid-template-columns:3.2rem minmax(0,1fr) auto}
.ct-pins{display:flex;flex-wrap:wrap;gap:2px 6px;justify-content:flex-end;max-width:18rem}.ct-pins a{font-size:var(--text-xs);border:var(--rule-hair) solid var(--color-rule-strong);border-radius:1rem;padding:0 .5rem;text-decoration:none;white-space:nowrap;max-width:14rem;overflow:hidden;text-overflow:ellipsis}.ct-pins a:hover{border-color:var(--color-accent);color:var(--color-accent)}
.ct-cases{list-style:none;padding:0}.ct-cases a{display:grid;grid-template-columns:7rem minmax(0,1fr) 7rem;gap:var(--space-xs);padding-block:var(--space-xs);border-top:var(--rule-hair) solid var(--color-rule);text-decoration:none;color:inherit}.ct-cases .k{display:block;font-size:var(--text-xs);color:var(--color-ink-3)}.ct-cases .d{font-size:var(--text-xs);color:var(--color-ink-3);background:none}.ct-cases .mini{display:grid;justify-items:center;font-size:var(--text-xs)}.ct-cases li.is-landmark .t{font-weight:700}.ct-cases a:hover .t{color:var(--color-accent)}
.ct-quote{margin:var(--space-md) 0;padding-inline-start:var(--space-md);border-inline-start:3px solid var(--color-ink)}.ct-quote p{font-family:var(--font-display);font-size:var(--text-lg)}.ct-quote footer{font-size:var(--text-sm);color:var(--color-ink-3)}
.ct-opmap{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-md);margin-block:var(--space-sm)}.ct-opmap h4{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--color-ink-3);border-bottom:var(--rule-hair) solid var(--color-rule);padding-bottom:4px}.ct-opmap ul{list-style:none;padding:0}.ct-op{padding-block:var(--space-xs);border-bottom:var(--rule-hair) solid var(--color-rule)}.ct-op b{display:block}.ct-op .court-fine{display:block}
.ct-split figcaption{font-weight:700}
.ct-grid-wrap{overflow:auto;margin-block:var(--space-md)}.ct-grid-table{border-collapse:collapse;font-size:var(--text-xs);width:100%;direction:ltr}.ct-grid-table caption{text-align:start;font-weight:700;padding-block:var(--space-xs)}.ct-grid-table th,.ct-grid-table td{border:var(--rule-hair) solid var(--color-rule);padding:4px 6px;text-align:start;vertical-align:top}.ct-grid-table td{text-align:center;background:color-mix(in oklab,var(--color-ink) calc(var(--p,0)*55%),var(--color-paper))}.ct-grid-table td b{display:block;color:var(--color-ink);mix-blend-mode:difference}.ct-grid-table td small{display:block;color:var(--color-ink-3);mix-blend-mode:difference}.ct-grid-table .ct-self{background:var(--color-paper-3)}
.ct-check{display:flex;align-items:center;gap:var(--space-xs);flex-direction:row!important;align-self:center}.ct-check input{width:auto;min-height:0}
.ct-term-pick select{font:inherit;color:var(--color-ink);background:var(--color-paper);border:var(--rule-hair) solid var(--color-ink-3);border-radius:var(--radius-sm);padding:var(--space-xs);min-height:44px}
.ct-landmark-static{list-style:none;padding:0}.ct-landmark-static>li{border-top:var(--rule-hair) solid var(--color-rule);padding-block:var(--space-sm)}
@media(max-width:699px){.court-numbers{grid-template-columns:repeat(2,minmax(0,1fr))}.ct-steps,.ct-opmap{grid-template-columns:minmax(0,1fr)}.ct-stats li{grid-template-columns:minmax(0,1fr);gap:2px}.ct-stat-n{text-align:start}.ct-term-link{grid-template-columns:3.2rem minmax(0,1fr) auto}.ct-chief{display:none}.ct-row{grid-template-columns:minmax(0,1fr)}.ct-pins{justify-content:flex-start;max-width:none}.ct-cases a{grid-template-columns:minmax(0,1fr) 6rem}.ct-cases .d{grid-column:1/-1}.ct-ribbon{max-height:30rem}}

/* Grid children must not force the section wider than the viewport (tables and the lanes scroll inside their wrappers). */
.court-section>*{min-width:0}.court-section .ct-grid-wrap,.court-section .ct-lanes-wrap{max-width:100%}
