.cle-reader{--cle-navy:#14283f;--cle-gold:#b59045;display:grid;grid-template-columns:220px minmax(0,1fr);gap:36px;align-items:start;max-width:1200px;margin:2rem auto;color:#242c35}.cle-reader *{box-sizing:border-box}.cle-toc{position:sticky;top:100px;font:400 14px/1.6 system-ui,sans-serif;border-top:3px solid var(--cle-gold);padding:16px;background:#f5f7f9;max-height:calc(100vh - 130px);overflow:auto}.cle-toc summary{font-weight:650;color:var(--cle-navy);cursor:pointer}.cle-toc ul{list-style:none!important;margin:12px 0!important;padding:0!important}.cle-toc ul ul{padding-left:12px!important;border-left:1px solid #d8dee6}.cle-toc li{margin:8px 0}.cle-toc a{color:var(--cle-navy);text-decoration:none;display:block}.cle-toc a:hover,.cle-toc a:focus{text-decoration:underline}.cle-paper{min-width:0}.cle-document{font:400 18px/1.85 Georgia,'Times New Roman',serif;overflow-wrap:anywhere}.cle-document p,.cle-document li{font-weight:400}.cle-heading{text-align:center;border-bottom:1px solid #dce0e5;padding:20px 0 32px;margin-bottom:32px}.cle-heading .cle-seal{display:block;width:100px;height:auto;max-width:100%;margin:0 auto 18px}.cle-heading h2{font-size:1.35em;line-height:1.5;color:var(--cle-navy);text-transform:none}.cle-heading h3,.cle-sitting{text-transform:uppercase;letter-spacing:.08em}.cle-court{font-size:1.15em;font-weight:600}.cle-ponencia{text-align:left}.cle-document [id]{scroll-margin-top:110px}.cle-document sup{font-size:.7em;line-height:0;vertical-align:super}.cle-document sup a{color:#536fa2}.cle-document blockquote{margin:1.5em 1em;padding-left:1em;border-left:3px solid #d9c391}.cle-backlinks{font:13px system-ui,sans-serif;margin-left:6px}.cle-document :target{background:#fff4ce}.cle-document a:focus-visible,.cle-toc a:focus-visible{outline:2px solid #b59045;outline-offset:3px}@media(max-width:900px){.cle-reader{grid-template-columns:1fr;gap:20px}.cle-toc{position:static;max-height:320px}.cle-document{font-size:17px}}@media print{.cle-reader{display:block}.cle-toc,.cle-backlinks{display:none}.cle-document{font-size:12pt}.cle-document :target{background:none}}

/* Give long decisions room to read even inside a narrow, centered theme column. */
@media screen and (min-width: 1000px) {
 .cle-reader {
  --cle-width: min(1320px, calc(100vw - 72px));
  width: var(--cle-width);
  max-width: none;
  margin-inline: calc((100% - var(--cle-width)) / 2);
  grid-template-columns: minmax(220px, 260px) minmax(0, 1fr);
  gap: clamp(22px, 3vw, 44px);
 }
}
.cle-reader .cle-paper {
 background: #fff;
 border: 1px solid #e1e7ee;
 border-radius: 18px;
 padding: clamp(20px, 4vw, 64px);
 box-shadow: 0 12px 36px rgba(20, 40, 63, .06);
}
.cle-reader .cle-document .cle-heading { background: transparent; }
.cle-reader .cle-document .cle-parties {
 text-align: left;
 font: inherit;
 color: inherit;
 margin: 24px 0;
}
.cle-reader .cle-document .cle-parties p { text-align: left; margin: .55em 0; }
.cle-reader .cle-document .cle-ponencia,
.cle-reader .cle-document .cle-ponencia strong { font-weight: 700; font-style: italic; }
.cle-reader .cle-toc {
 background: #fff;
 border: 1px solid #e1e7ee;
 border-radius: 16px;
 padding: 14px;
 box-shadow: 0 8px 28px rgba(20, 40, 63, .07);
 scrollbar-width: thin;
}
.cle-reader .cle-toc summary {
 display: flex;
 align-items: center;
 justify-content: space-between;
 padding: 10px 12px;
 border-radius: 9px;
 background: var(--cle-navy);
 color: #fff;
 font-size: 12px;
 letter-spacing: .08em;
 text-transform: uppercase;
 list-style: none;
}
.cle-reader .cle-toc summary::-webkit-details-marker { display: none; }
.cle-reader .cle-toc summary::after { content: '+'; color: #eec879; font-size: 16px; }
.cle-reader .cle-toc details[open] > summary::after { content: '−'; }
.cle-reader .cle-toc .cle-toc-root { margin: 10px 0 0 !important; }
.cle-reader .cle-toc ul[data-cle-toc] {
 margin: 4px 0 8px 9px !important;
 padding-left: 8px !important;
 border-left: 1px solid #e0e7ef;
}
.cle-reader .cle-toc ul[data-cle-toc]:empty { display: none; }
.cle-reader .cle-toc li { margin: 2px 0; }
.cle-reader .cle-toc a { border-radius: 7px; padding: 6px 8px; line-height: 1.4; }
.cle-reader .cle-toc .cle-toc-major {
 padding: 8px 10px;
 font-weight: 700;
 background: #f1f5fa;
}
.cle-reader .cle-toc a:hover,
.cle-reader .cle-toc a[aria-current="location"] {
 color: #14283f;
 background: #f9edd2;
 text-decoration: none;
}
@media (max-width: 999px) {
 .cle-reader { grid-template-columns: minmax(0, 1fr); }
 .cle-reader .cle-toc { position: static; max-height: 18rem; }
}
@media print {
 .cle-reader .cle-paper { border: 0; padding: 0; box-shadow: none; }
}

.cle-juris-reader .cle-document .cle-sitting { font-weight: 700; }
.cle-juris-reader .cle-case-meta {
 margin: 1.25em 0 0;
 text-align: center;
}
.cle-juris-reader .cle-case-meta :is(#cle-number, #cle-date) {
 font-weight: 400;
 display: inline;
 margin: 0;
}
.cle-juris-reader .cle-case-meta #cle-number:not(:empty) + #cle-date:not(:empty)::before {
 content: "|";
 padding-inline: .55em;
}
.cle-juris-reader .cle-document .cle-heading {
 border-bottom: 0;
 padding-bottom: 0;
 margin-bottom: 1.5em;
}
.cle-juris-reader .cle-document .cle-ponencia { margin-bottom: 0; }
.cle-juris-reader .cle-document #cle-full { margin-top: 0; padding-top: 0; line-height: 1.5; }
.cle-juris-reader .cle-document #cle-full > :first-child { margin-top: 0; }
.cle-title-versus { text-transform: none !important; }
.cle-title-card {
 box-sizing: border-box;
 width: var(--cle-title-width) !important;
 max-width: none !important;
 margin-inline: 0 !important;
 position: relative;
 left: var(--cle-title-offset, 0px);
}

.cle-reader .cle-document sup {
 font-size: .72em !important;
 font-family: inherit !important;
 line-height: 0 !important;
 vertical-align: super !important;
}
.cle-reader .cle-document sup * {
 font-size: inherit !important;
 font-family: inherit !important;
 line-height: inherit !important;
 vertical-align: baseline !important;
}
.cle-reader .cle-document sup.cle-footnote-marker,
.cle-reader .cle-document sup.cle-footnote-marker a {
 font-weight: 600 !important;
 font-style: normal !important;
}

/* Match only list prose to the surrounding paragraphs. */
.cle-reader .cle-document :is(#cle-full, #cle-digest, #cle-footnotes) li {
 font-weight: var(--cle-list-weight, 400) !important;
}
.cle-reader .cle-document :is(#cle-full, #cle-digest, #cle-footnotes) li * {
 font-weight: inherit !important;
}
.cle-reader .cle-document :is(#cle-full, #cle-digest, #cle-footnotes)
:is(li.cle-explicit-bold, li :is(strong, b, h1, h2, h3, h4, h5, h6, th, .cle-explicit-bold)) {
 font-weight: 700 !important;
}
.cle-reader .cle-document :is(#cle-full, #cle-digest, #cle-footnotes)
li :is(sup.cle-footnote-marker, sup.cle-footnote-marker a) {
 font-weight: 600 !important;
}

.cle-reader .cle-enrollment {
 margin: clamp(32px, 5vw, 64px) 0 0;
 padding: clamp(32px, 6vw, 66px) clamp(18px, 5vw, 48px);
 background: #0c2031;
 border-radius: 18px;
 box-shadow: 0 16px 34px rgba(12, 32, 49, .15);
 color: #fff;
 text-align: center;
}
.cle-reader .cle-enrollment .cle-enrollment-label {
 margin: 0 0 12px;
 color: #e7b656;
 font: 700 .75rem/1.5 system-ui, sans-serif;
 letter-spacing: .15em;
 text-transform: uppercase;
}
.cle-reader .cle-enrollment #cle-enrollment-title {
 margin: 0;
 color: #fff;
 font-size: clamp(1.7rem, 4vw, 2.8rem);
 line-height: 1.15;
}
.cle-reader .cle-enrollment .cle-enrollment-copy {
 max-width: 48ch;
 margin: 16px auto 24px;
 color: #dae2eb;
 line-height: 1.6;
}
.cle-reader .cle-enrollment .cle-enrollment-link {
 display: inline-block;
 padding: 13px 20px;
 border-radius: 9px;
 background: #e7b656;
 color: #0c2031;
 font: 700 .95rem/1.45 system-ui, sans-serif;
 text-decoration: none;
}
.cle-reader .cle-enrollment .cle-enrollment-link:hover { background: #f4ca78; }
.cle-reader .cle-enrollment .cle-enrollment-link:focus-visible { outline: 2px solid #fff; outline-offset: 4px; }
@media print { .cle-reader .cle-enrollment { display: none; } }

/* Use the ponencia's left edge as the reading column's baseline. */
.cle-juris-reader .cle-document > :is(#cle-full, #cle-footnotes, #cle-digest) {
 width: auto;
 max-width: none;
 margin-inline: 0 !important;
 padding-inline: 0 !important;
 text-align: left;
}
.cle-juris-reader .cle-document > :is(#cle-full, #cle-footnotes, #cle-digest) > p {
 margin-inline: 0;
 padding-inline: 0;
 text-indent: 0;
}

.cle-ao-reader .cle-document > .cle-ao-heading {
 width: 100%;
 max-width: none;
 margin: 0 0 1.25em;
 padding: 0;
 border: 0;
}
/* Equal side columns keep the text centered with or without a logo. */
.cle-ao-heading .cle-department-heading {
 --cle-logo-size: clamp(36px, 7vw, 78px);
 --cle-logo-gap: clamp(6px, 1.8vw, 22px);
 display: grid;
 grid-template-columns: minmax(var(--cle-logo-size), 1fr) minmax(0, max-content) minmax(var(--cle-logo-size), 1fr);
 align-items: center;
 column-gap: var(--cle-logo-gap);
 margin-bottom: 1.2em;
 text-align: center;
}
.cle-ao-heading .cle-department-heading > div { grid-column: 2; grid-row: 1; }
.cle-ao-heading .cle-department-logo {
 grid-column: 1;
 grid-row: 1;
 justify-self: end;
 width: var(--cle-logo-size);
 height: auto;
 margin: 0;
}
.cle-ao-heading .cle-department-heading p { margin: 0; text-align: center; }
.cle-reader .cle-ao-heading .cle-department-heading :is(#cle-issuer, .cle-bureau) {
 font-weight: 400;
 text-transform: none;
}
.cle-reader .cle-ao-heading .cle-department-heading strong.cle-agency-emphasis {
 font-weight: 700 !important;
 text-transform: uppercase !important;
}
.cle-reader .cle-document .cle-ao-heading #cle-title {
 font-size: 1.12em;
 margin: 0 0 .7em;
}
.cle-reader .cle-ao-heading :is(#cle-type, #cle-number) {
 color: var(--cle-navy);
 font: 700 1.12em/1.4 Georgia, 'Times New Roman', serif;
 margin: 0;
}
.cle-reader .cle-ao-heading #cle-date { font-weight: 400; margin: .35em 0 0; }
.cle-ao-reader .cle-document > #cle-full {
 width: auto;
 max-width: none;
 margin-inline: 0 !important;
 padding: 0 !important;
 margin-top: 0;
}
.cle-ao-reader .cle-document > #cle-full > :first-child { margin-top: 0; }

.cle-ao-heading .cle-department-heading.cle-logo-top {
 grid-template-columns: minmax(0, 1fr);
 row-gap: 12px;
}
.cle-ao-heading .cle-department-heading.cle-logo-top > .cle-department-logo {
 grid-column: 1;
 grid-row: 1;
 justify-self: center;
}
.cle-ao-heading .cle-department-heading.cle-logo-top > div {
 grid-column: 1;
 grid-row: 2;
}

.cle-reader .cle-toc ul.cle-toc-nested {
 margin: 2px 0 4px 6px !important;
 padding-inline-start: 8px !important;
}

/* Keep pasted tables in normal flow so the next paragraph cannot cover rows. */
.cle-reader .cle-document :is(.cle-table-scroll, .wp-block-table) {
 max-width: 100%;
 height: auto !important;
 max-height: none !important;
 overflow-x: auto;
}
.cle-reader .cle-document table {
 display: table !important;
 table-layout: auto !important;
 width: 100% !important;
 min-width: 0 !important;
 max-width: 100%;
 overflow: visible !important;
}
.cle-reader .cle-document :is(table, thead, tbody, tfoot, tr, th, td) {
 height: auto !important;
 max-height: none !important;
}
.cle-reader .cle-document table :is(col, colgroup, th, td) {
 width: auto !important;
 min-width: 0 !important;
}
.cle-reader .cle-document table :is(th, td),
.cle-reader .cle-document table :is(th, td) :is(p, span) {
 white-space: normal !important;
 overflow-wrap: break-word !important;
 word-break: normal !important;
}

.cle-juris-reader .cle-case-meta #cle-date::before { font-weight: 400; }
.cle-juris-reader .cle-document > #cle-digest {
 margin-block-start: 0;
 padding-block-start: 0;
 border-block-start: 0;
}
.cle-juris-reader .cle-document #cle-digest > h2:first-child {
 margin: 0 0 14px;
 padding: 0 0 8px;
 border-bottom: 3px solid var(--cle-gold);
 text-align: center;
 text-transform: uppercase;
}

.cle-juris-reader .cle-document #cle-digest > h2:first-child + * {
 margin-block-start: 0;
}

/* Preserve authored emphasis against theme typography rules. */
.cle-reader .cle-document :is(#cle-full, #cle-digest, #cle-footnotes) :is(strong, b) {
 font-weight: 700 !important;
}
.cle-reader .cle-document :is(#cle-full, #cle-digest, #cle-footnotes) :is(em, i) {
 font-style: italic !important;
}
.cle-reader .cle-document :is(#cle-full, #cle-digest, #cle-footnotes) u {
 text-decoration-line: underline !important;
}

.cle-reader .cle-view-part[hidden] { display: none !important; }

.cle-reader .cle-document > #cle-full:has(+ #cle-footnotes) {
 margin-block-end: 0;
 padding-block-end: 0;
}
.cle-reader .cle-document > #cle-footnotes {
 border-block-start: 3px solid var(--cle-gold);
 font-size: .85em;
 margin-block-start: 24px;
 padding-block-start: 12px;
}
.cle-reader .cle-document > #cle-footnotes > h2:first-child {
 margin-block-start: 0;
}
