/* Source-preserving public case opinion reader. */
.public-page.case-reading-page { max-width: 900px; }
.case-reading-page h1 {
  font-family: var(--pp-sans); font-size: clamp(1.8rem, 3.4vw, 2.4rem);
  font-weight: 650; line-height: 1.2; letter-spacing: -.025em;
  margin: 0 0 24px;
}
.case-reading-details { display: grid; grid-template-columns: 2fr 1fr 1fr; gap: 20px 28px; margin: 0 0 22px; }
.case-reading-details dt { font-size: .86rem; font-weight: 600; }
.case-reading-details dd { margin: 3px 0 0; font-size: 1rem; }
.case-reading-actions { display: flex; flex-wrap: wrap; gap: 24px; margin: 0 0 30px; }
.case-reading-actions a { display: inline-flex; align-items: center; min-height: 44px; font-weight: 600; }
.case-reading-page .case-reading-title {
  font: 600 1.35rem/1.3 var(--pp-sans); margin: 0 0 24px;
  padding-top: 26px; border-top: 1px solid var(--pp-line);
}
.case-reading-page .case-reading-text {
  font: 400 18px/1.65 var(--pp-sans); white-space: normal;
  overflow-wrap: break-word; color: var(--pp-ink);
}
.case-reading-text p { margin: 0 0 1.25em; line-height: 1.65; }
.case-reading-page .case-reading-text h3 {
  font: 650 1.16rem/1.4 var(--pp-sans); margin: 2em 0 1em;
  letter-spacing: 0;
}
.case-reading-text .case-reading-preamble {
  font-size: .9rem; line-height: 1.6; color: var(--pp-ink-2); margin-bottom: 30px;
}
.case-reading-preamble p { margin-bottom: .5em; }
.case-reading-preamble .case-reading-parties { margin: 16px 0; }
.case-reading-preamble .case-reading-author { margin-top: 18px; font-weight: 600; }
.case-reading-text .case-reading-endmatter {
  border-top: 1px solid var(--pp-line); padding-top: 24px; margin-top: 30px;
  font-size: .94rem; color: var(--pp-ink-2);
}
.case-reading-text .case-reading-footnotes { margin-top: 32px; border-top: 1px solid var(--pp-line); }
.case-reading-text .case-reading-footnotes h3 { margin-top: 20px; }
.case-reading-footnotes p { font-size: .94rem; }
.case-reading-footnotes a { margin-left: 12px; font-size: .85rem; }
.case-reading-text sup { line-height: 0; }
.case-reading-source { margin-top: 32px; font-size: .85rem; color: var(--pp-mute); }
.case-reading-text strong { font-weight: 650; }
.case-reading-original-page { margin: 1.5em 0; }
.case-reading-original-page img { display: block; width: 100%; height: auto; }
.case-reading-original-page figcaption { margin-top: 8px; font-size: .8rem; color: var(--pp-mute); }
.case-reading-accessible-text {
  position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px;
  overflow: hidden; clip-path: inset(50%); white-space: normal;
}
@media (max-width: 600px) {
  .case-reading-page h1 { margin-bottom: 22px; }
  .case-reading-details { gap: 16px 28px; }
  .case-reading-details { grid-template-columns: 1fr 1fr; }
  .case-reading-details div:first-child { grid-column: 1 / -1; }
  .case-reading-page .case-reading-text { font-size: 17px; }
}
.case-reading-underline { text-decoration: underline; }

.case-reading-page { --case-title-h: 66px; }
.case-reading-page .case-reading-text [id] {
  scroll-margin-top: calc(var(--site-header-h) + var(--case-title-h) + 16px);
}
.case-title-strip {
  position: fixed; top: var(--site-header-h); left: 0; right: 0; z-index: 150;
  background: var(--pp-paper); border-bottom: 1px solid var(--pp-line);
  visibility: hidden; pointer-events: none;
}
.case-title-strip.is-visible { visibility: visible; pointer-events: auto; }
.case-title-strip-inner { max-width: 900px; margin: 0 auto; padding: 12px 24px; }
.case-title-strip-text {
  display: -webkit-box; -webkit-box-orient: vertical; -webkit-line-clamp: 2;
  overflow: hidden; overflow-wrap: anywhere;
  font: 600 16px/1.35 var(--pp-sans); color: var(--pp-ink);
}
@media (max-width: 600px) {
  .case-title-strip-text { font-size: 15px; }
}
@media print { .case-title-strip { display: none; } }
