/* A shared reading system for approved cases, AAO decisions and precedents. */
html body.case-library-page { --case-ink:#17365c; --case-text:#354456; --case-muted:#5b6879; }
html body.case-library-page :is(main .mj-wrap,main.news-shell) { width:calc(100% - 48px); max-width:1240px; margin-inline:auto; }
html body.case-library-page #mj-cl .mj-cl-head { background:#fff; padding:36px 0 28px; }
html body.case-library-page :is(#mj-cl .mj-cl-head h1,.precedent-hero h1) { font-size:clamp(30px,3vw,42px); line-height:1.3; color:var(--case-ink); margin:0 0 18px; }
html body.case-library-page :is(#mj-cl .mj-cl-head .mj-lead,.precedent-hero p:not(.precedent-kicker)) { font-size:17px; line-height:1.8; color:var(--case-text); max-width:54em; }
html body.case-library-page .precedent-hero { padding-bottom:28px; }
.case-library-nav { display:flex; flex-wrap:wrap; gap:8px 30px; border-bottom:1px solid #dce3eb; margin:0 0 28px; }
html body.case-library-page .case-library-nav a { padding:14px 0; font-size:17px; line-height:1.6; color:var(--case-muted); text-decoration:none; border-bottom:3px solid transparent; }
html body.case-library-page .case-library-nav a[aria-current="page"] { color:var(--case-ink); font-weight:600; border-bottom-color:var(--case-ink); }
html body.case-library-page .case-library-nav a:hover { color:var(--case-ink); }
html body.case-library-page .case-library-scope { color:#475569; font-size:15px; line-height:1.8; margin:16px 0; }
html body.case-library-page :is(#mj-cl .mj-cl-grid,.precedent-list) { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; align-items:stretch; }
html body.case-library-page :is(#mj-cl .mj-cl-card,.precedent-card) { min-width:0; padding:20px 24px; margin:0; border:1px solid #dce3eb; border-radius:10px; background:#fff; box-shadow:none; flex-direction:column; gap:10px; }
html body.case-library-page #mj-cl .mj-cl-card[hidden] { display:none; }
html body.case-library-page :is(#mj-cl .mj-cl-card h3,.precedent-card h2) { font-size:21px; line-height:1.45; margin:0; color:var(--case-ink); overflow-wrap:anywhere; }
html body.case-library-page #mj-cl .mj-cl-card h3 small { font-size:16px; line-height:1.7; font-weight:400; margin-top:8px; color:var(--case-muted); }
html body.case-library-page :is(#mj-cl .mj-cl-card__story,.precedent-card>p:not(.precedent-citation)) { font-size:16px; line-height:1.7; color:var(--case-text); }
html body.case-library-page #mj-cl .mj-cl-card:not(.is-open) .mj-cl-card__story { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
html body.case-library-page #mj-cl .mj-cl-card__more { align-self:flex-start; margin:0; min-height:44px; font-size:16px; }
html body.case-library-page #mj-cl .mj-cl-card__share { border-top:1px solid #edf0f4; padding-top:14px; }
html body.case-library-page #mj-cl .mj-cl-card.is-open { grid-column:1/-1; }
html body.case-library-page #mj-cl .mj-cl-bar__inner { align-items:center; gap:12px 24px; }
html body.case-library-page #mj-cl .mj-cl-search { min-height:50px; }
html body.case-library-page #mj-cl .mj-cl-year-sel select { min-height:50px; font-size:16px; }
html body.case-library-page :is(.mj-cl-body,.precedent-list) { scroll-margin-top:110px; }
@media(max-width:640px) {
 html body.case-library-page :is(main .mj-wrap,main.news-shell) { width:calc(100% - 32px); }
 html body.case-library-page :is(#mj-cl .mj-cl-grid,.precedent-list) { grid-template-columns:1fr; gap:18px; }
 html body.case-library-page :is(#mj-cl .mj-cl-card,.precedent-card) { padding:22px; }
 html body.case-library-page :is(#mj-cl .mj-cl-card h3,.precedent-card h2) { font-size:21px; }
 .case-library-nav { gap:4px 18px; }
 html body.case-library-page .case-library-nav a { font-size:15px; }
}
html body.case-library-page :is(#mj-cl .mj-cl-head h1,.precedent-hero h1) { font-family:var(--mj-font-sans),sans-serif; font-weight:700; }
html body.case-library-page .case-library-statistics { padding-bottom:20px; color:var(--case-muted); font-size:16px; }
.case-library-statistics>summary { cursor:pointer; color:var(--case-ink); }
html body.case-library-page .case-library-statistics .mj-wrap { width:100%; }
html body.case-library-page .case-library-statistics .mj-aao-overview { padding:24px 0 0; }
html body.case-library-page .case-decision-kind { color:#6f553f; font-size:14px; font-weight:500; background:#f6f2ed; padding:2px 7px; border-radius:4px; }

html body.case-library-page :is(.mj-cl-card,.precedent-card) { display:flex; }

/* One compact preview pattern for all three case collections. */
html body.case-library-page main.news-shell { padding-inline:0; }
html body.case-library-page :is(#mj-cl .mj-cl-card,.precedent-card) { min-height:0; scroll-margin-top:100px; transition:border-color .15s; }
html body.case-library-page :is(#mj-cl .mj-cl-card,.precedent-card):hover { border-color:#aebed0; }
html body.case-library-page :is(#mj-cl .mj-cl-card__top,.precedent-card-top) { font-size:14px; line-height:1.6; gap:6px 12px; color:var(--case-muted); }
html body.case-library-page #mj-cl .mj-cl-card__top :is(.mj-tag,.mj-cl-card__field) { font-size:14px; font-weight:500; }
html body.case-library-page #mj-cl .mj-cl-card__story { margin:0; }
html body.case-library-page #mj-cl .mj-cl-card:not(.is-open) :is(.mj-cl-card__overview,.mj-cl-card__share) { display:none; }
html body.case-library-page #mj-cl .mj-cl-card:not(.is-open) .mj-cl-card__proc { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:1; overflow:hidden; font-size:14px; line-height:1.7; margin:0; color:var(--case-muted); }
html body.case-library-page #mj-cl .mj-cl-card:not(.is-open) h3 small { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:1; overflow:hidden; }
html body.case-library-page #mj-cl .mj-cl-card h3 small { font-size:15px; line-height:1.6; margin-top:6px; }
html body.case-library-page #mj-cl .mj-cl-card .mj-cl-card__story[hidden] { display:none; }
html body.case-library-page #mj-cl .mj-cl-card:not(.is-open) .mj-aao-title { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; }
html body.case-library-page #mj-cl .mj-cl-card.is-open { grid-row:auto; padding:28px; }
html body.case-library-page #mj-cl .mj-cl-card__full { max-width:76ch; }
html body.case-library-page #mj-cl .mj-cl-card__full h4 { margin-top:28px; }
html body.case-library-page .precedent-card h3 { font-size:17px; line-height:1.55; min-height:0; margin:0; }
html body.case-library-page .precedent-citation { font-size:14px; line-height:1.6; margin:0; }
html body.case-library-page .precedent-card>p.precedent-preview { font-size:16px; line-height:1.7; margin:0; -webkit-line-clamp:2; }
html body.case-library-page .precedent-card-bottom { font-size:14px; margin:0; padding-top:12px; }
html body.case-library-page .precedent-disclosure { margin:0; font-size:16px; }
html body.case-library-page .precedent-disclosure>summary { display:flex; align-items:center; gap:8px; min-height:44px; width:fit-content; list-style:none; color:var(--case-ink); text-decoration:underline; text-underline-offset:4px; text-decoration-color:#aebed0; }
html body.case-library-page .precedent-disclosure>summary::-webkit-details-marker { display:none; }
html body.case-library-page .precedent-disclosure .when-open { display:none; }
html body.case-library-page .precedent-disclosure[open] .when-open { display:inline; }
html body.case-library-page .precedent-disclosure[open] .when-closed { display:none; }
html body.case-library-page .precedent-disclosure p { max-width:76ch; font-size:17px; line-height:1.85; margin:12px 0 20px; }
html body.case-library-page .precedent-read { display:inline-flex; min-height:44px; align-items:center; padding:8px 16px; border:1px solid #aebed0; border-radius:6px; }
html body.case-library-page .precedent-card:has(.precedent-disclosure[open]) { grid-column:1/-1; padding:28px; }
html body.case-library-page .precedent-card:has(.precedent-disclosure[open]) .precedent-preview { display:none; }
html body.case-library-page .precedent-card:has(.precedent-disclosure[open]) h3 { display:block; overflow:visible; }
html body.case-library-page #mj-cl .mj-cl-year__h { padding-bottom:16px; margin-bottom:20px; }
/* Pair cards by their actual content, aligning each reading/action row.
   No fixed card height: a long title only sizes its own pair. */
@media(min-width:641px) {
 html body.case-library-page #mj-cl .mj-cl-card:not(.is-open) .mj-cl-card__more,
 html body.case-library-page .precedent-card:not(:has(.precedent-disclosure[open])) .precedent-disclosure { margin-top:auto; }
 @supports(grid-template-rows:subgrid) {
  html body.case-library-page #mj-cl .mj-cl-card:not(.is-open):not([hidden]) { display:grid; grid-template-rows:subgrid; grid-row:span 5; align-items:start; }
  html body.case-library-page #mj-cl .mj-cl-card:not(.is-open)>.mj-cl-card__top { grid-row:1; }
  html body.case-library-page #mj-cl .mj-cl-card:not(.is-open)>h3 { grid-row:2; }
  html body.case-library-page #mj-cl .mj-cl-card:not(.is-open)>.mj-cl-card__proc { grid-row:3; }
  html body.case-library-page #mj-cl .mj-cl-card:not(.is-open)>.mj-cl-card__story { grid-row:4; }
  html body.case-library-page #mj-cl .mj-cl-card:not(.is-open)>.mj-cl-card__more { grid-row:5; justify-self:start; margin:0; }
  html body.case-library-page .precedent-card:not(:has(.precedent-disclosure[open])) { display:grid; grid-template-rows:subgrid; grid-row:span 7; align-items:start; }
  html:lang(en) body.case-library-page .precedent-card:not(:has(.precedent-disclosure[open])) { grid-row:span 6; }
  html body.case-library-page .precedent-card:not(:has(.precedent-disclosure[open])) .precedent-disclosure { margin:0; }
 }
}
@media(max-width:640px) {
 html body.case-library-page :is(#mj-cl .mj-cl-card,.precedent-card) { padding:18px; }
 html body.case-library-page :is(#mj-cl .mj-cl-card h3,.precedent-card h2) { font-size:20px; }
 html body.case-library-page #mj-cl .mj-cl-card.is-open,
 html body.case-library-page .precedent-card:has(.precedent-disclosure[open]) { padding:20px; }
}

/* Reading hierarchy: introduction, archive facts, controls, then individual records. */
html body.case-library-page #mj-cl .mj-cl-head { background:#f6f4ef; padding:44px 0 36px; border-bottom:1px solid #e7e3da; margin-bottom:0; }
html body.case-library-page #mj-cl .mj-cl-head>.mj-wrap { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(300px,1fr); column-gap:56px; align-items:start; }
html body.case-library-page #mj-cl .mj-cl-head>.mj-wrap>:not(.mj-cl-stats) { grid-column:1; }
html body.case-library-page #mj-cl .mj-cl-head .mj-eyebrow { display:block; margin:0 0 18px; font-size:12px; font-weight:700; letter-spacing:.12em; color:#a7374e; }
html body.case-library-page #mj-cl .mj-cl-head h1 { font-size:clamp(30px,3.4vw,44px); letter-spacing:-.02em; margin-bottom:18px; max-width:18em; }
html body.case-library-page #mj-cl .mj-cl-head .mj-lead { max-width:38em; margin:0 0 16px; font-size:17px; line-height:1.85; }
html body.case-library-page #mj-cl .mj-cl-head .mj-cl-stats { grid-column:2; grid-row:1 / span 5; align-self:stretch; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); align-content:center; gap:20px 12px; padding:28px; margin:0; color:#fff; background:#102e53; border-radius:4px; border-top:3px solid #ba1243; box-shadow:0 10px 24px #17365c10; }
html body.case-library-page #mj-cl .mj-cl-head .mj-cl-stats>div { display:flex; flex-direction:column; align-items:flex-start; gap:4px; padding:0; border:0; }
html body.case-library-page #mj-cl .mj-cl-head .mj-cl-stats>div:first-child { grid-column:1 / -1; flex-direction:row; align-items:baseline; gap:12px; padding-bottom:18px; border-bottom:1px solid #ffffff30; }
html body.case-library-page #mj-cl .mj-cl-head .mj-cl-stats b { font-size:22px; line-height:1.2; color:#fff; font-variant-numeric:tabular-nums; }
html body.case-library-page #mj-cl .mj-cl-head .mj-cl-stats>div:first-child b { font-size:48px; letter-spacing:-.04em; }
html body.case-library-page #mj-cl .mj-cl-head .mj-cl-stats span { font-size:12px; color:#d6e0ed; white-space:normal; }
html body.case-library-page .case-hero-scope { margin:0 0 12px; font-size:14px; color:#34485f; }
html body.case-library-page .case-hero-scope summary { width:fit-content; cursor:pointer; padding:5px 0; color:#17365c; text-decoration:underline; text-underline-offset:4px; }
html body.case-library-page .case-hero-scope p { font-size:14px; line-height:1.8; padding:12px 16px; background:#fff; border-left:2px solid #b4c4d6; }
html body.case-library-page #mj-cl .mj-cl-head .mj-aao-data-note { margin:0; font-size:12px; line-height:1.7; color:#657183; }
html body.case-library-page .case-library-nav { margin-top:10px; margin-bottom:24px; }
html body.case-library-page #mj-cl .mj-cl-bar__inner { background:#f2f5f8; border:1px solid #e0e6ee; border-radius:8px; padding:22px 24px; }
html body.case-library-page #mj-cl .mj-cl-bar { padding-block:18px; background:#fff; }
html body.case-library-page #mj-cl .mj-cl-search { background:#fff; border:1px solid #b5c4d5; border-radius:5px; }
html body.case-library-page #mj-cl .mj-cl-search:focus-within { outline:2px solid #17365c; outline-offset:3px; }
html body.case-library-page #mj-cl .mj-cl-card__top { padding-bottom:10px; border-bottom:1px solid #edf0f4; }
html body.case-library-page :is(#mj-cl .mj-cl-card,.precedent-card) { border-top:3px solid #c6d2df; box-shadow:0 3px 12px #17365c05; transition:border-color .15s ease; }
html body.case-library-page :is(#mj-cl .mj-cl-card,.precedent-card):focus-within { border-color:#607f9f; }
html body.case-library-page .precedent-hero { display:grid; grid-template-columns:minmax(0,1.45fr) minmax(300px,1fr); align-items:center; gap:48px; padding:32px; margin-bottom:20px; background:#f6f4ef; border-bottom:1px solid #e7e3da; }
html body.case-library-page .precedent-hero-note { background:#102e53; color:#fff; border-top:3px solid #ba1243; padding:30px; min-height:155px; display:flex; flex-direction:column; justify-content:center; gap:12px; border-radius:4px; }
html body.case-library-page .precedent-hero-note strong { color:#fff; font-size:21px; }
html body.case-library-page .precedent-hero-note span { color:#d6e0ed; font-size:14px; line-height:1.8; }
@media(max-width:760px) {
 html body.case-library-page #mj-cl .mj-cl-head { padding:28px 0; }
 html body.case-library-page #mj-cl .mj-cl-head>.mj-wrap,html body.case-library-page .precedent-hero { display:block; }
 html body.case-library-page #mj-cl .mj-cl-head .mj-cl-stats { margin-top:22px; padding:22px; gap:16px 10px; }
 html body.case-library-page #mj-cl .mj-cl-head h1 { font-size:30px; }
 html body.case-library-page #mj-cl .mj-cl-head .mj-lead { font-size:16px; }
 html body.case-library-page .precedent-hero { padding:24px 20px; }
 html body.case-library-page .precedent-hero-note { margin-top:20px; min-height:0; padding:22px; }
 html body.case-library-page #mj-cl .mj-cl-bar__inner { padding:18px 16px; }
}

/* Keep pagination distinct from both the last cards and the source notes. */
html body.mj-aao-page #mj-cl .mj-aao-more { margin:32px 0 24px; display:flex; flex-wrap:wrap; align-items:center; gap:12px 20px; }
html body.mj-aao-page #mj-cl .mj-aao-more[hidden] { display:none; }
@media(max-width:760px) { html body.mj-aao-page #mj-cl .mj-aao-more { margin:24px 0 20px; } }
html body.case-library-page .case-search-heading { font-size:18px; line-height:1.4; font-weight:600; color:#17365c; flex:0 0 auto; }
html body.case-library-page #mj-cl .mj-cl-bar__inner>.mj-cl-search { flex:1 1 65%; min-width:0; }
@media(max-width:760px) { html body.case-library-page .case-search-heading { flex-basis:100%; } html body.case-library-page #mj-cl .mj-cl-bar__inner>.mj-cl-search { flex-basis:100%; } }
@media(max-width:760px) {
 html body.case-library-page #mj-cl .mj-cl-head .mj-cl-stats>div:not(:first-child) { display:none; }
 html body.case-library-page #mj-cl .mj-cl-head .mj-cl-stats>div:first-child { padding-bottom:0; border-bottom:0; }
 html body.case-library-page #mj-cl .mj-cl-head .mj-cl-stats>div:first-child b { font-size:40px; }
}
