:root {
  font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color:#23352f;
  background:#fff;
  font-size:14px;
  --green:#285840;
  --line:#e1e8e2;
  --muted:#687d72;
  --soft:#eef3ed;
  --selected:#dfede1;
  --red:#a44740;
  --amber:#946621
}
* {
  box-sizing:border-box
}
body {
  margin:0
}
button,input,select {
  font:inherit
}
button {
  background:#fff;
  border:1px solid #d8e2da;
  color:inherit;
  border-radius:6px;
  padding:9px 12px;
  cursor:pointer;
  white-space:nowrap
}
button:hover {
  background:#f1f5f0
}
button:disabled {
  opacity:.45;
  cursor:default
}
button:focus-visible,input:focus-visible,select:focus-visible,a:focus-visible {
  outline:2px solid #497c61;
  outline-offset:2px
}
.primary {
  background:var(--green);
  color:#fff;
  border-color:var(--green)
}
.primary:hover {
  background:#1c4933
}
.quiet {
  border-color:transparent;
  background:transparent
}
.active {
  background:var(--selected);
  border-color:#b3cdb9;
  color:#285840
}
input,select {
  border:1px solid #d9e3db;
  border-radius:5px;
  background:white;
  color:inherit;
  padding:9px 10px;
  min-width:0
}
a {
  color:var(--green)
}
[hidden] {
  display:none!important
}
.muted {
  color:var(--muted)
}
.small {
  font-size:12px;
  line-height:1.5
}
.error-text {
  color:var(--red)
}
.app-bar {
  height:65px;
  display:flex;
  align-items:center;
  gap:16px;
  padding:0 24px;
  border-bottom:1px solid var(--line)
}
.app-bar strong {
  font-size:20px;
  font-weight:600;
  white-space:nowrap
}
.brand-icon {
  font-size:29px;
  color:var(--green);
  line-height:1
}
.case-number {
  font-size:13px;
  color:var(--muted);
  white-space:nowrap
}
.app-bar nav {
  display:flex;
  gap:5px
}
.bar-end {
  margin-left:auto;
  display:flex;
  gap:8px
}
.query-panel {
  padding:17px 24px 0;
  border-bottom:1px solid var(--line)
}
.query-panel form {
  display:flex;
  gap:11px;
  padding-bottom:16px
}
.query-input {
  border:1px solid #d8e2da;
  border-radius:6px;
  display:flex;
  align-items:center;
  gap:12px;
  flex:1;
  padding:0 14px;
  min-width:0
}
.query-input>span {
  font-size:27px;
  color:var(--muted)
}
.query-input input {
  border:0;
  outline:none;
  flex:1;
  padding:12px 0;
  font-size:14px;
  background:transparent
}
.query-input kbd {
  color:var(--muted);
  font:12px inherit;
  white-space:nowrap
}
.mode-switch {
  display:flex;
  gap:8px;
  margin-bottom:10px
}
.query-panel #scope-note {
  margin:0 0 17px
}
.query-panel.search-panel .query-input input {
  padding:18px 0;
  font-size:16px
}
.workspace {
  display:grid;
  grid-template-columns:240px 414px minmax(0,1fr);
  height:calc(100dvh - 142px);
  min-height:350px
}
.workspace.search-workspace {
  grid-template-columns:240px minmax(0,1fr);
  height:calc(100dvh - 237px)
}
.workspace.search-workspace.with-reader {
  grid-template-columns:240px minmax(390px,1fr) minmax(420px,45%)
}
.sidebar {
  background:var(--soft);
  border-right:1px solid var(--line);
  overflow-y:auto;
  padding:22px 12px
}
.sidebar h2 {
  font-size:14px;
  font-weight:600;
  margin:0 4px 17px
}
.sidebar .section-title {
  margin:23px 0 8px;
  font-weight:500
}
.sidebar .caption {
  font-size:11px;
  color:var(--muted);
  text-transform:uppercase;
  letter-spacing:.04em;
  margin:0 0 12px
}
.tree-button {
  display:flex;
  align-items:center;
  gap:9px;
  width:100%;
  border:0;
  text-align:left;
  background:transparent;
  padding:11px 12px;
  white-space:normal
}
.tree-button.active {
  background:var(--selected)
}
.tree-button .count {
  margin-left:auto;
  font-size:11px;
  color:var(--muted)
}
.tree-label {
  min-width:0;
  flex:1
}
.tree-subtitle {
  display:-webkit-box;
  -webkit-box-orient:vertical;
  -webkit-line-clamp:2;
  overflow:hidden;
  margin-top:3px;
  color:var(--muted);
  font-size:11px;
  font-weight:400;
  line-height:1.4
}
.tree-branch-row {
  display:flex;
  align-items:stretch
}
.tree-branch-row>.tree-button {
  flex:1;
  width:auto;
  padding:10px 5px;
  font-size:13px
}
.tree-toggle {
  flex:none;
  width:25px;
  padding:0;
  border:0;
  background:transparent;
  color:var(--muted)
}
.tree-toggle:hover {
  background:var(--selected)
}
.tree-scroll {
  overflow-y:scroll;
  overscroll-behavior:contain;
  scrollbar-gutter:stable;
  border-left:1px solid var(--line);
  margin:3px 0 10px 10px
}
.volume-scroll {
  max-height:250px
}
.filing-scroll {
  max-height:220px
}
.archive-folder-scroll {max-height:300px;margin-left:18px}
.tree-button.archive-folder-row {font-size:12px;padding:9px 6px 9px 10px;align-items:flex-start}
.archive-folder-row .tree-subtitle {display:none}
.archive-folder-row .count {flex:none;padding-top:2px}
.archive-folder-row .tree-label {overflow-wrap:anywhere}
.tree-scroll::-webkit-scrollbar {
  width:6px
}
.tree-scroll::-webkit-scrollbar-thumb {
  border-radius:5px;
  background:#b4c1b7
}
.tree-scroll::-webkit-scrollbar-track {
  background:#e8eee8
}
.filing-children {
  margin-left:18px
}
.tree-button.filing-row {
  padding:9px 5px 9px 10px;
  align-items:flex-start;
  font-size:12px
}
.filing-row .count {
  padding-top:2px
}
.tree-hint {
  margin:4px 5px 12px;
  color:var(--muted);
  font-size:10px;
  line-height:1.4
}
.tree-button.nested {
  padding-left:28px
}
.tree-button.deeper {
  padding-left:40px;
  font-size:12px
}
.sidebar details summary {
  padding:12px 8px;
  cursor:pointer;
  list-style:none
}
.sidebar details summary::before {
  content:'›';
  display:inline-block;
  width:20px;
  color:var(--muted)
}
.sidebar details[open]>summary::before {
  content:'⌄'
}
.sidebar details .tree-button {
  margin-bottom:3px
}
.sidebar label {
  display:block;
  font-size:12px;
  color:var(--muted);
  margin:0 4px 18px
}
.sidebar label select,.sidebar label input {
  display:block;
  width:100%;
  margin-top:6px;
  font-size:13px
}
.sidebar .filter-reset {
  width:calc(100% - 8px);
  margin:0 4px 12px
}
.sidebar .filter-note {
  padding:0 5px;
  font-size:11px;
  line-height:1.5;
  color:var(--muted)
}
.documents {
  border-right:1px solid var(--line);
  overflow:hidden;
  display:flex;
  flex-direction:column;
  min-width:0
}
.list-header {
  padding:12px 19px 8px;
  flex:none
}
.list-title {
  display:flex;
  gap:10px;
  align-items:baseline;
  justify-content:space-between;
  margin-bottom:0
}
.collection-path {font-size:11px;color:var(--muted);margin:0 0 6px;overflow-wrap:anywhere}
.collection-summary {font-size:11px;color:var(--muted);margin:6px 0 0}
.catalog-range {font-size:12px;color:var(--muted);margin:6px 0 0;font-variant-numeric:tabular-nums}
.folder-back {font-size:11px;padding:5px 8px;flex:none}
.folder-row {display:flex;align-items:center;gap:12px;width:100%;text-align:left;padding:15px 17px;border:0;border-radius:0;border-bottom:1px solid var(--line);background:white;white-space:normal}
.folder-row:hover {background:var(--selected)}
.folder-icon {color:var(--green);font-size:21px;flex:none}
.folder-name {flex:1;min-width:0;font-size:13px;font-weight:500;overflow-wrap:anywhere}
.folder-name .doc-meta {display:block;font-weight:400}
.folder-count {font-size:12px;color:var(--muted);flex:none;font-variant-numeric:tabular-nums}
.catalog-pagination {display:flex;align-items:center;justify-content:space-between;gap:7px;padding:10px 12px;border-top:1px solid var(--line);flex:none;background:white}
.catalog-pagination button {font-size:12px;padding:5px 9px}
.catalog-pagination span {font-size:11px;color:var(--muted);font-variant-numeric:tabular-nums}
.list-title h1 {
  font-size:18px;
  font-weight:500;
  margin:0
}
.list-title .muted {
  font-size:11px;
  white-space:nowrap
}
.list-scroll {
  overflow-y:auto;
  flex:1;
  scrollbar-gutter:stable
}
.doc-row {
  display:block;
  border:0;
  border-radius:0;
  border-bottom:1px solid #ebefeb;
  width:100%;
  text-align:left;
  padding:12px 16px;
  min-height:65px;
  white-space:normal;
  background:white
}
.doc-row.active {
  background:var(--selected)
}
.doc-name {
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
  overflow:hidden;
  font-size:14px;
  line-height:1.4;
  font-weight:500
}
.doc-meta {
  font-size:11px;
  line-height:1.5;
  color:var(--muted);
  margin-top:4px
}
.status-dot {
  color:var(--amber);
  margin-right:4px
}
.load-more {
  margin:16px
}
.reader {
  min-width:0;
  display:flex;
  flex-direction:column;
  background:#e5e9e0;
  overflow:hidden
}
.reader-heading {
  background:white;
  height:56px;
  display:flex;
  align-items:center;
  gap:9px;
  padding:8px 18px;
  border-bottom:1px solid var(--line);
  flex:none
}
.reader-heading .heading-text {
  flex:1;
  min-width:0
}
.reader-heading h2 {
  margin:0;
  font-size:16px;
  font-weight:500;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap
}
.reader-heading p {
  margin:3px 0 0;
  font-size:11px;
  color:var(--muted);
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap
}
.icon-button {
  border:0;
  padding:6px;
  background:transparent;
  font-size:19px
}
.reader-tools {
  height:44px;
  flex:none;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:7px;
  background:#fff;
  border-bottom:1px solid var(--line);
  padding:3px 18px
}
.reader-tools button {
  font-size:11px;
  padding:6px 8px;
  min-height:31px
}
.segments {
  display:flex
}
.segments button {
  border-radius:0
}
.segments button:first-child {
  border-radius:5px 0 0 5px
}
.segments button:last-child {
  border-radius:0 5px 5px 0
}
.segments .active {
  background:var(--green);
  color:white;
  border-color:var(--green)
}
.page-controls {
  display:flex;
  align-items:center;
  gap:4px;
  font-size:12px;
  color:var(--muted)
}
.page-controls input {
  width:44px;
  text-align:center;
  padding:6px 2px;
  height:31px;
  -moz-appearance:textfield
}
.page-controls input::-webkit-inner-spin-button {
  appearance:none
}
.zoom-controls {
  display:flex;
  gap:4px
}
.reader-body {
  overflow:auto;
  flex:1;
  min-height:0;
  position:relative;
  padding:18px;
  display:flex;
  align-items:flex-start;
  justify-content:center
}
.reader-body .page-image {
  display:block;
  max-width:none;
  height:calc(100dvh - 280px);
  width:auto;
  object-fit:contain;
  transform-origin:top center
}
.search-workspace .reader-body .page-image {
  height:calc(100dvh - 375px)
}
.reader-body.fit-width .page-image {
  height:auto;
  width:100%
}
.reader-body .ocr {
  white-space:pre-wrap;
  overflow-wrap:anywhere;
  line-height:1.75;
  font-size:14px;
  max-width:820px;
  width:100%;
  background:white;
  margin:0;
  padding:28px 34px;
  color:#2b332e;
  box-shadow:0 2px 8px #243b2310
}
.ocr-note {
  padding:10px 14px;
  background:#fff9e9;
  color:#715a2d;
  font-size:12px;
  line-height:1.5;
  flex:none;
  border-bottom:1px solid #eae1c6
}
.empty-state {
  padding:50px 26px;
  color:var(--muted);
  text-align:center;
  line-height:1.7;
  max-width:680px;
  margin:auto
}
.empty-state h2 {
  font-size:19px;
  font-weight:500;
  color:#334a3d
}
.empty-state p {
  font-size:13px
}
.reader .empty-state {
  background:#f7f8f3;
  border-radius:8px
}
.search-workspace .sidebar {
  background:#fff;
  padding-top:23px
}
.search-results {
  padding:18px 28px 36px;
  overflow-y:auto;
  flex:1;
  scrollbar-gutter:stable
}
.search-workspace .documents {
  border-right:0
}
.search-workspace.with-reader .documents {
  border-right:1px solid var(--line)
}
.result-tabs {
  display:flex;
  align-items:center;
  border-bottom:1px solid var(--line);
  gap:20px;
  margin-bottom:16px
}
.result-tabs button {
  border:0;
  border-bottom:2px solid transparent;
  border-radius:0;
  padding:12px 2px;
  color:var(--muted);
  background:white
}
.result-tabs button.active {
  border-color:var(--green);
  color:var(--green);
  background:white
}
.result-summary {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  margin:4px 0 12px
}
.result-summary h1 {
  font-size:18px;
  font-weight:500;
  margin:0
}
.result-summary select {
  font-size:11px;
  border:0;
  padding:7px;
  color:var(--muted)
}
.result-card {
  padding:22px 0 15px;
  border-bottom:1px solid var(--line)
}
.result-card.selected {
  background:#f7faf6;
  box-shadow:-10px 0 0 #f7faf6,10px 0 0 #f7faf6
}
.result-card .card-heading {
  display:flex;
  gap:15px;
  align-items:flex-start;
  justify-content:space-between
}
.result-card h2 {
  font-size:16px;
  line-height:1.4;
  margin:0;
  font-weight:500
}
.result-card .title-link {
  padding:0;
  border:0;
  background:transparent;
  text-align:left;
  white-space:normal
}
.reason {
  font-size:10px;
  background:#eef3ed;
  color:var(--green);
  border-radius:3px;
  padding:5px 8px;
  white-space:nowrap
}
.result-meta {
  font-size:12px;
  color:var(--muted);
  margin:7px 0
}
.snippet {
  font-size:14px;
  line-height:1.65;
  padding:10px 12px;
  border-left:3px solid #bfd0bf;
  background:#f4f6f2;
  margin:8px 0;
  overflow-wrap:anywhere
}
.result-footer {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  font-size:11px;
  color:var(--muted)
}
.result-footer button {
  font-size:11px;
  padding:7px 10px
}
.result-footer .citation {
  line-height:1.6
}
.status-badge {
  display:inline-block;
  font-size:10px;
  color:var(--amber);
  background:#fbf3df;
  border-radius:4px;
  padding:3px 6px;
  margin-top:4px
}
.notice {
  padding:9px 24px;
  background:#fff6dc;
  border-bottom:1px solid #eee0b7;
  font-size:12px;
  line-height:1.5;
  color:#755d2e
}
.notice button {
  padding:3px 7px;
  margin-left:10px;
  font-size:11px
}
.toast {
  position:fixed;
  bottom:25px;
  left:50%;
  transform:translateX(-50%);
  padding:12px 20px;
  background:#253f31;
  color:white;
  border-radius:7px;
  box-shadow:0 4px 20px #0002;
  z-index:10;
  max-width:90vw;
  font-size:13px
}
.loading {
  padding:30px;
  text-align:center;
  color:var(--muted);
  line-height:1.7
}
.spinner {
  display:inline-block;
  width:17px;
  height:17px;
  border:2px solid #c5d5c7;
  border-top-color:var(--green);
  border-radius:50%;
  vertical-align:middle;
  margin-right:8px;
  animation:spin .8s linear infinite
}
@keyframes spin {
  to {
    transform:rotate(360deg)
  }
}
.login-screen {
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:100dvh;
  background:#f0f4ee
}
.login-card {
  width:390px;
  background:white;
  border:1px solid #dce5dc;
  border-radius:12px;
  padding:36px;
  box-shadow:0 8px 30px #25412e0a
}
.login-card h1 {
  font-size:23px;
  margin:12px 0
}
.login-card label {
  display:block;
  font-size:12px;
  color:var(--muted);
  margin-top:20px
}
.login-card input {
  display:block;
  width:100%;
  margin-top:7px
}
.login-card .primary {
  width:100%
}
.login-card .small {
  margin:20px 0 0
}
.login-card .error-text {
  font-size:12px;
  line-height:1.5
}
dialog {
  border:1px solid var(--line);
  border-radius:10px;
  box-shadow:0 20px 70px #0003;
  max-width:740px;
  width:calc(100vw - 50px);
  padding:28px;
  color:inherit
}
dialog::backdrop {
  background:#193a2750
}
dialog h2 {
  font-size:20px;
  font-weight:500;
  margin-top:0
}
dialog p {
  line-height:1.6;
  font-size:13px;
  overflow-wrap:anywhere
}
dialog table {
  border-collapse:collapse;
  width:100%;
  font-size:12px
}
dialog td,dialog th {
  text-align:left;
  padding:10px 6px;
  border-bottom:1px solid var(--line)
}
dialog dt {
  font-size:12px;
  color:var(--muted);
  margin-top:12px
}
dialog dd {
  margin:3px 0;
  overflow-wrap:anywhere;
  font-size:13px
}
dialog input {
  width:100%
}
mark {
  background:#f6e6a8;
  color:inherit;
  border-radius:2px
}
.spinner-inline {
  opacity:.7
}
.compact-results .reason {
  display:none
}
.compact-results .card-heading {
  display:block
}
.compact-results .result-footer {
  align-items:flex-start
}
.no-filter .filter-note {
  margin:15px 0
}
.comparison-window {
  width:96vw;
  max-width:1800px;
  height:94dvh;
  max-height:94dvh;
  margin:auto;
  padding:0;
  overflow:hidden
}
.comparison-window[open] {
  display:flex;
  flex-direction:column
}
#compare-content {
  display:flex;
  flex-direction:column;
  flex:1;
  min-height:0;
  min-width:0
}
.comparison-header {
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  padding:14px 20px;
  border-bottom:1px solid var(--line)
}
.comparison-header h2 {
  margin:0;
  font-size:17px;
  font-weight:500
}
.comparison-header p {
  margin:4px 0 0;
  color:var(--muted);
  font-size:12px
}
.comparison-toolbar {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:8px 20px;
  color:var(--muted);
  font-size:12px;
  border-bottom:1px solid var(--line)
}
.comparison-text {
  margin:0;
  padding:22px 26px;
  white-space:pre-wrap;
  overflow-wrap:anywhere;
  background:white;
  color:#2b332e;
  font:inherit;
  font-size:14px;
  line-height:1.75
}
.read-only-view {
  grid-template-columns:240px 0 minmax(0,1fr)
}
@media(max-width:1300px) {
  .workspace {
    grid-template-columns:210px 340px minmax(0,1fr)
  }
  .workspace.search-workspace {
    grid-template-columns:210px minmax(0,1fr)
  }
  .workspace.search-workspace.with-reader {
    grid-template-columns:200px minmax(330px,1fr) minmax(390px,44%)
  }
  .reader-tools {
    padding:3px 10px
  }
  .reader-heading {
    padding:8px 12px
  }
  .case-number {
    display:none
  }
  .zoom-controls button {
    padding:6px
  }
  .list-header {
    padding-left:14px;
    padding-right:14px
  }
  .search-results {
    padding-left:22px;
    padding-right:22px
  }
  .result-card .card-heading {
    flex-wrap:wrap;
    gap:7px
  }
}
@media(max-width:1000px) {
  .workspace {
    grid-template-columns:185px 285px minmax(0,1fr)
  }
  .workspace.search-workspace.with-reader {
    grid-template-columns:185px minmax(0,1fr)
  }
  .search-workspace.with-reader .reader {
    position:fixed;
    right:0;
    top:65px;
    bottom:0;
    width:62%;
    z-index:3;
    border-left:1px solid #c4d4c6;
    box-shadow:-20px 0 40px #152e2518
  }
  .search-workspace .reader-body .page-image {
    height:calc(100dvh - 220px)
  }
  .app-bar {
    gap:10px;
    padding:0 16px
  }
  .app-bar strong {
    font-size:18px
  }
  .bar-end {
    gap:0
  }
  .reader-tools {
    gap:3px
  }
  .zoom-controls button:first-child,.zoom-controls button:last-child {
    display:none
  }
  .query-panel {
    padding-left:16px;
    padding-right:16px
  }
  .list-title {
    flex-wrap:wrap;
    gap:4px
  }
  .result-footer {
    align-items:flex-start
  }
  .sidebar {
    padding-left:8px;
    padding-right:8px
  }
}
@media(max-width:720px) {
  .app-bar strong {
    font-size:15px
  }
  .app-bar {
    height:60px;
    gap:8px;
    padding:0 10px
  }
  .brand-icon {
    font-size:23px
  }
  .app-bar button {
    font-size:11px;
    padding:8px
  }
  .bar-end button:first-child {
    display:none
  }
  .workspace {
    grid-template-columns:132px minmax(0,1fr);
    height:calc(100dvh - 137px)
  }
  .workspace .reader {
    position:fixed;
    inset:60px 0 0;
    z-index:3
  }
  .workspace.search-workspace {
    grid-template-columns:150px minmax(0,1fr);
    height:calc(100dvh - 232px)
  }
  .workspace.search-workspace.with-reader {
    grid-template-columns:150px minmax(0,1fr)
  }
  .search-workspace.with-reader .reader {
    inset:60px 0 0;
    width:100%
  }
  .sidebar {
    padding-top:16px
  }
  .tree-button {
    padding:10px 5px;
    font-size:12px
  }
  .tree-button.nested {
    padding-left:12px
  }
  .tree-button.deeper {
    padding-left:18px
  }
  .sidebar details summary {
    font-size:12px;
    padding-left:0
  }
  .sidebar .filter-note {
    font-size:10px
  }
  .query-input kbd {
    display:none
  }
  .query-panel form {
    gap:7px
  }
  .query-panel {
    padding-top:12px
  }
  .query-panel.search-panel .query-input input {
    font-size:14px;
    padding:17px 0
  }
  .query-panel #scope-note {
    font-size:10px
  }
  .query-panel #filters-button {
    display:none
  }
  .search-results {
    padding:10px 14px
  }
  .result-tabs {
    gap:12px;
    align-items:stretch
  }
  .result-tabs button {
    white-space:normal;
    font-size:12px
  }
  .result-summary {
    display:block
  }
  .result-summary h1 {
    font-size:16px
  }
  .result-card h2 {
    font-size:14px
  }
  .snippet {
    font-size:12px;
    padding:8px
  }
  .result-footer {
    flex-wrap:wrap
  }
  .reader-body .page-image {
    height:calc(100dvh - 200px)
  }
  .mode-switch button {
    font-size:12px
  }
  .sidebar select {
    font-size:12px
  }
  .reader-heading h2 {
    font-size:14px
  }
}

/* One scroll surface keeps each source page paired with its own OCR. */
.reader-body.reader-stream, .comparison-stream {
  display:block;
  flex:1;
  min-height:0;
  position:relative;
  overflow:auto;
  overflow-anchor:none;
  overscroll-behavior:contain;
  scrollbar-gutter:stable;
  padding:12px;
  background:var(--soft);
}
.stream-document {min-width:100%;}
.stream-page {box-sizing:border-box;margin:0 0 18px;}
.stream-page-label {font-size:11px;color:var(--muted);padding:7px 0;}
.stream-page-content {min-width:100%;width:max-content;}
.stream-original {min-width:0;}
.reader-stream .stream-page-image {
  display:block;
  height:calc((100dvh - 280px) * var(--page-zoom,1));
  width:auto;
  max-width:none;
  margin:0 auto;
  background:white;
  box-shadow:0 1px 6px #00000015;
}
.search-workspace .reader-stream .stream-page-image {height:calc((100dvh - 375px) * var(--page-zoom,1));}
.reader-stream.fit-width .stream-document {width:calc(100% * var(--page-zoom,1));}
.reader-stream.fit-width .stream-page-content {width:100%;}
.reader-stream.fit-width .stream-page-image {width:100%;height:auto;}
.comparison-columns, .paired-content {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);}
.comparison-columns {background:white;border-bottom:1px solid var(--line);padding-right:16px;}
.comparison-columns span {font-size:12px;padding:9px 20px;}
.comparison-columns span:first-child {border-right:1px solid var(--line);}
.paired-original,.paired-ocr {min-width:0;background:white;}
.paired-original {padding:12px;border-right:1px solid var(--line);background:#e9ece9;}
.paired-original img {display:block;width:100%;height:auto;max-width:none;}
.paired-ocr .comparison-text {padding:18px 22px;}
.stream-warning {grid-column:1 / -1;font-size:12px;color:var(--muted);padding:8px;background:#fff7de;margin:0;}
.stream-placeholder {grid-column:1 / -1;color:var(--muted);padding:32px 16px;font-size:12px;}
.stream-notice {grid-column:1 / -1;padding:28px 20px;background:white;max-width:100%;overflow-wrap:anywhere;}
.stream-notice h3 {font-size:16px;font-weight:500;margin:0 0 12px;}
.stream-notice p {font-size:13px;color:var(--muted);line-height:1.6;}
#reader-page-location {white-space:nowrap;font-size:11px;}
