/* Shared archive design. Finalized v3 icons; quiet controls and continuous reading surfaces. */
@font-face {
  font-family: Archive Song;
  src: url('fonts/SourceHanSerifSC-VF.woff2') format('woff2');
  font-weight: 250 900;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: Archive Sans;
  src: url('fonts/SourceHanSansSC-VF.woff2') format('woff2');
  font-weight: 250 900;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: Archive Latin;
  src: url('fonts/SourceSerif4-Regular.woff2') format('woff2');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: Archive Latin;
  src: url('fonts/SourceSerif4-Semibold.woff2') format('woff2');
  font-weight: 600;
  font-style: normal;
  font-display: swap;
}
:root {
  color-scheme: dark;
  --night: #10191c;
  --deep: #142226;
  --panel: #1e302b;
  --panel-raised: #2a3d33;
  --silver: #c9d0ce;
  --silver-bright: #edf0e9;
  --silver-edge: #778b80;
  --line: #4d6458;
  --text: #e2e6e0;
  --muted: #b8c5bd;
  --warm: #d3b58e;
  --ui: 'Archive Sans',sans-serif;
  --song: 'Archive Song',serif;
  --read: 'Archive Latin','Archive Song',serif;
  --display: 'Archive Latin','Archive Song',serif;
  --font-body: 1.0625rem;
  --font-meta: .9375rem;
  --font-small: .875rem;
  --sidebar: 236px;
  --gutter: clamp(24px,3.4vw,64px);
  --s1: 4px;
  --s2: 8px;
  --s3: 12px;
  --s4: 16px;
  --s5: 24px;
  --s6: 32px;
  --s7: 48px;
  --s8: 64px;
  --focus: #f3d6a8;
  --reading: #28372f;
  --reading-head: #27372f;
  --reading-side: #26372e;
  --reading-ink: #dce3d5;
  --reading-muted: #b5c5b4;
  --reading-line: #54695a;
  --baita-ink: #e2e6e0;
  --baita-silver: #a9bbbb;
  --baita-field: #2f474c;
  --baita-warm: #d8b878;
  --baita-niche: #0d171a;
}
* {
  box-sizing: border-box;
  scrollbar-width: thin;
  scrollbar-color: #63787b #172327;
}
html {
  scroll-behavior: auto;
  scroll-padding-top: 0;
}
body {
  margin: 0;
  background: var(--night);
  color: var(--text);
  font: 400 var(--font-body)/1.8 var(--ui);
  font-synthesis: none;
  -webkit-font-smoothing: antialiased;
}
button,input,select,textarea {
  font: inherit;
}
button,input,select {
  border-radius: 0;
}
button,summary {
  cursor: pointer;
}
button,a,input,select,summary {
  -webkit-tap-highlight-color: transparent;
}
a {
  color: inherit;
  text-decoration: none;
}
a:hover {
  color: var(--silver-bright);
  text-decoration: underline;
  text-underline-offset: .3em;
}
a:active {
  filter: brightness(.85);
}
a,button,input,select,summary {
  touch-action: manipulation;
}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,[tabindex="0"]:focus-visible {
  outline: 2px solid var(--focus);
  outline-offset: 4px;
}
button:disabled {
  opacity: 1;
  cursor: not-allowed;
  background: #25312e;
  color: #87938d;
  border-color: #465650;
}
h1,h2,h3,h4 {
  font-family: var(--display);
  font-weight: 900;
  line-height: 1.45;
  text-wrap: balance;
  overflow-wrap: anywhere;
}
h1,h2,h3,h4,p,figure {
  margin: 0;
}
h1 {
  font-size: clamp(30px,3.2vw,46px);
}
h2 {
  font-size: clamp(24px,2.1vw,32px);
}
h3 {
  font-size: 23px;
}
p+p {
  margin-top: 12px;
}
h1:lang(en),h2:lang(en),h3:lang(en),.english-display {
  font-family: 'Archive Latin',serif;
  font-weight: 600;
}
small {
  font-size: var(--font-small);
}
strong {
  font-weight: 500;
}
img {
  max-width: 100%;
}
.muted,.catalogue-note,.context-note {
  color: var(--muted);
}
.catalogue-note {
  font-size: var(--font-meta);
  line-height: 1.9;
}
.icon {
  width: 22px;
  height: 22px;
  flex: 0 0 auto;
  vertical-align: middle;
}
.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  overflow: hidden;
  clip-path: inset(50%);
}
.skip-link {
  position: fixed;
  top: -100px;
  left: 12px;
  z-index: 100;
  padding: 12px 20px;
  color: var(--night);
  background: var(--silver-bright);
}
.skip-link:focus {
  top: 12px;
}
.skip-link:hover {
  color: var(--night);
}
::selection {
  background: #aebfbe;
  color: #102023;
}
input {
  caret-color: var(--silver-bright);
}
mark {
  background: #c9b27e;
  color: #182125;
  padding: 0 .1em;
}
kbd,code {
  font-family: var(--ui);
  font-variant-numeric: tabular-nums;
}
kbd {
  font-size: 14px;
  border: 1px solid var(--line);
  padding: 0 5px;
}
section[id],h2[id],h3[id],h4[id] {
  scroll-margin-top: 90px;
}
.silver-weave {
  display: block;
  width: 132px;
  height: 24px;
  color: var(--silver);
  margin-block: 8px 16px;
  pointer-events: none;
}
.engraved-divider {
  display: flex;
  align-items: center;
  gap: 18px;
  color: var(--silver-edge);
  margin: 28px 0;
}
.engraved-divider::before,.engraved-divider::after {
  content: '';
  height: 1px;
  flex: 1;
  background: linear-gradient(90deg,transparent,var(--silver-edge));
}
.engraved-divider::after {
  transform: rotate(180deg);
}
.engraved-divider svg {
  width: 72px;
  height: 20px;
}
.silver-corner {
  position: absolute;
  width: 48px;
  height: 48px;
  color: var(--silver-edge);
  pointer-events: none;
}
.silver-corner.tl {
  top: 0;
  left: 0;
}
.silver-corner.tr {
  top: 0;
  right: 0;
  transform: rotate(90deg);
}
.silver-corner.br {
  bottom: 0;
  right: 0;
  transform: rotate(180deg);
}
.silver-corner.bl {
  bottom: 0;
  left: 0;
  transform: rotate(270deg);
}
.sidebar {
  position: fixed;
  inset: 0 auto 0 0;
  width: var(--sidebar);
  z-index: 40;
  display: flex;
  flex-direction: column;
  background: linear-gradient(90deg,#131f20,#1a2a29);
  box-shadow: none;
  border-right: 1px solid #516459;
}
.brand {
  display: flex;
  gap: 12px;
  align-items: center;
  padding: 20px 20px 16px;
  flex-shrink: 0;
}
.brand .icon {
  width: 30px;
  height: 40px;
  color: var(--silver);
}
.brand>span {
  font: 900 21px/1.5 var(--song);
  white-space: nowrap;
}
.brand small {
  display: block;
  font: 400 14px/1.7 var(--ui);
  color: var(--muted);
  margin-top: 3px;
}
.brand:hover {
  text-decoration: none;
}
.sidebar-scroll {
  overflow-y: auto;
  min-height: 0;
  flex: 1;
  padding: 0 17px 16px 14px;
  overscroll-behavior: contain;
}
.sidebar-label {
  font: 500 14px/1.8 var(--ui);
  color: var(--muted);
  padding: 14px 14px 8px;
  display: flex;
  gap: 10px;
  align-items: center;
}
.sidebar-label::after {
  content: '';
  height: 1px;
  flex: 1;
  background: #3f5549;
}
.sidebar nav {
  display: grid;
  gap: 3px;
}
.sidebar nav a {
  position: relative;
  display: flex;
  align-items: center;
  gap: 11px;
  min-height: 44px;
  padding: 8px 12px;
  font-size: 15px;
  line-height: 1.6;
  color: #c0cdcc;
}
.sidebar nav .icon {
  width: 20px;
  height: 20px;
  color: #afc0b8;
}
.sidebar nav a:hover {
  background: #2a3c34;
  color: #f0f3ed;
  text-decoration: none;
}
.sidebar nav a.active {
  color: #e7eee0;
  background: #30443a;
  box-shadow: none;
}
.sidebar nav a.active::after {
  content: '';
  position: absolute;
  width: 3px;
  height: 18px;
  right: 0;
  top: calc(50% - 9px);
  background: #b4c6b4;
  transform: none;
}
.maintenance-label {
  margin-top: 12px;
}
.sidebar-bottom {
  padding: 12px 24px 18px;
  background: #15231f;
  border-top: 1px solid #455b4e;
  font-size: 14px;
}
.sidebar-bottom strong {
  font-weight: 500;
}
.sidebar-bottom p {
  margin: 3px 0;
  color: var(--muted);
  font-size: 14px;
}
.sidebar-bottom small {
  display: block;
  line-height: 1.7;
  color: #a3b7b8;
}
.workspace {
  margin-left: var(--sidebar);
  min-width: 0;
  overflow: clip;
}
.topbar {
  position: sticky;
  top: 0;
  z-index: 30;
  min-height: 64px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding: 9px var(--gutter);
  background: #1c2c29f5;
  border-bottom: 1px solid #566c5e;
  box-shadow: none;
}
.topbar-title {
  font: 900 19px/1.5 var(--song);
  color: #c4cfce;
  white-space: nowrap;
}
.mobile-toggle {
  display: none;
}
#global-search {
  display: flex;
  align-items: center;
  gap: 9px;
  width: min(100%,400px);
  margin: 0;
  padding-left: 14px;
  background: #14251f;
  border: 1px solid #6d8374;
  box-shadow: none;
}
#global-search>span {
  display: flex;
  color: var(--muted);
}
#global-search input {
  width: 100%;
  min-width: 0;
  padding: 9px 0;
  background: transparent;
  border: 0;
  outline: 0;
  font-size: 15px;
  color: var(--text);
}
#global-search:focus-within {
  outline: 2px solid var(--focus);
  outline-offset: 3px;
}
#global-search input::placeholder {
  color: #acbcbd;
}
#global-search button {
  border: 0;
  border-left: 1px solid #a2b4a5;
  min-height: 44px;
  padding: 8px 16px;
  white-space: nowrap;
  border-radius: 0 1px 1px 0;
}
#global-search kbd {
  margin-right: 4px;
  color: #b8c8c9;
}
.workspace>footer {
  padding: 28px var(--gutter);
  border-top: 1px solid var(--line);
  background: #14221e;
  display: flex;
  flex-wrap: wrap;
  gap: 12px 32px;
  align-items: center;
  color: var(--muted);
  font-size: 14px;
}
.workspace>footer .footer-name {
  font: 900 22px/1.5 var(--song);
  color: var(--silver);
}
.workspace>footer nav {
  display: flex;
  flex-wrap: wrap;
  gap: 8px 20px;
}
.workspace>footer p {
  width: 100%;
  font-size: 14px;
  color: #a9b8b9;
}
button,.button-link,.button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  min-height: 44px;
  padding: 9px 20px;
  border: 1px solid var(--silver-edge);
  background: #263735;
  color: var(--text);
  font: 500 16px/1.5 var(--ui);
  text-decoration: none;
  transition: background-color .15s,border-color .15s,color .15s;
  border-radius: 2px;
}
button:hover,.button-link:hover,.button:hover {
  background: #334743;
  border-color: #a2b4ad;
  color: #f2f3eb;
  text-decoration: none;
}
button:active,.button:active,.button-link:active {
  background: #1a2a27;
  border-color: #b4c1b9;
  filter: none;
}
.primary,.button.primary,#global-search button {
  background: #bbc9c2;
  color: #192a24;
  border-color: #d0d8d0;
  box-shadow: inset 0 1px #e4e9df66;
}
.primary:hover,.button.primary:hover,#global-search button:hover {
  background: #d1dbd1;
  color: #17251f;
  border-color: #e5ebe2;
}
.primary:active,.button.primary:active,#global-search button:active {
  background: #a7b9af;
  color: #102019;
}
.text-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  min-height: 44px;
  font-weight: 400;
  font-size: 16px;
  color: #cadbd2;
}
.text-link .icon {
  width: 16px;
  height: 16px;
}
input,select {
  background: #182824;
  border: 1px solid #6b8177;
  color: #e2e8df;
  padding: 9px 12px;
  min-height: 44px;
  font-size: 16px;
  max-width: 100%;
  border-radius: 2px;
}
input:hover,select:hover {
  border-color: #91a79a;
}
input::placeholder {
  color: #b5c1b8;
}
select {
  color-scheme: dark;
  padding-right: 8px;
}
summary {
  min-height: 40px;
  padding: 8px 0;
  font-size: 15px;
  font-weight: 400;
  line-height: 1.6;
}
summary:hover {
  color: var(--silver-bright);
}
details {
  min-width: 0;
}
details>summary::marker {
  color: #a7bcb0;
}
.disclosure,.collection-summary {
  padding: 12px 18px;
  border: 1px solid var(--line);
  background: #1c2b29;
}
main {
  position: relative;
  isolation: isolate;
  min-height: calc(100vh - 190px);
  padding: 24px var(--gutter) 56px;
}
main::before {
  content: '';
  position: absolute;
  inset: 0 0 auto;
  height: 560px;
  z-index: -1;
  pointer-events: none;
  background: linear-gradient(180deg,#10191c44,#10191c 98%),linear-gradient(90deg,#10191cef,#10191caa),url('assets/archive-depth.png') center 45%/cover no-repeat;
}
main[data-view=home] {
  padding: 0;
}
main[data-view=home]::before {
  display: none;
}
.catalogue-heading {
  position: relative;
  padding: 0 0 12px;
  margin-bottom: 16px;
  max-width: 100%;
  border-bottom: 1px solid #617468;
}
.catalogue-heading::after {
  content: '';
  position: absolute;
  bottom: -4px;
  left: 0;
  width: 7px;
  height: 7px;
  transform: rotate(45deg);
  background: var(--silver);
}
.catalogue-heading .silver-weave {
  float: right;
  margin: 10px 0 0 24px;
  width: 90px;
  opacity: .7;
}
.catalogue-heading h1 {
  margin-bottom: 6px;
  font-size: clamp(28px,2.5vw,36px);
}
.catalogue-heading>p {
  max-width: 58em;
  font-size: 16px;
  line-height: 1.8;
  color: var(--muted);
}
.catalogue-heading .page-context {
  font: 500 14px/1.8 var(--ui);
  color: var(--warm);
  margin-bottom: 3px;
}
.catalogue-return {
  margin: -4px 0 8px;
  font-size: 14px;
}
.catalogue-return a,.record-links a {
  text-decoration: none;
  text-underline-offset: 5px;
}
.section,.panel {
  margin-top: 32px;
}
.panel {
  position: relative;
  background: #23352f;
  padding: 24px;
  border: 1px solid var(--line);
  box-shadow: none;
}
.section>h2,.panel>h2 {
  margin-bottom: 16px;
}
.register-heading,.section-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 24px;
  margin-bottom: 22px;
}
.register-heading>a,.section-head>a {
  font-size: 15px;
  flex-shrink: 0;
  text-decoration: underline;
  text-underline-offset: 5px;
}
.context-label {
  display: inline-block;
  color: var(--warm);
  font-size: 14px;
}
.empty,.loading {
  position: relative;
  min-height: 170px;
  padding: 40px 32px;
  color: var(--muted);
  border: 1px solid var(--line);
  background: linear-gradient(135deg,#22353a,#152329);
  line-height: 1.9;
}
.empty {
  max-width: 800px;
  margin: 32px auto;
}
.empty h1,.empty h2 {
  color: var(--silver-bright);
  margin-bottom: 16px;
}
.empty a {
  display: inline-flex;
  margin-top: 20px;
  min-height: 44px;
  align-items: center;
  text-decoration: underline;
  text-underline-offset: 5px;
}
.loading::before {
  content: '';
  display: inline-block;
  width: 12px;
  height: 12px;
  transform: rotate(45deg);
  border: 1px solid var(--silver);
  margin-right: 14px;
}
.archive-hero {
  position: relative;
  isolation: isolate;
  min-height: clamp(580px,48vw,730px);
  display: flex;
  align-items: center;
  padding: 64px var(--gutter) 112px;
  overflow: hidden;
}
.hero-art {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 58% center;
  z-index: -3;
}
.archive-hero::before {
  content: '';
  position: absolute;
  inset: 0;
  z-index: -2;
  background: linear-gradient(90deg,#081519bd,transparent 75%),linear-gradient(0deg,var(--night),#10191c40 18%,transparent 42%);
}
.archive-hero::after {
  content: '';
  position: absolute;
  inset: auto 0 0;
  height: 100px;
  z-index: -1;
  background: linear-gradient(0deg,var(--night),transparent);
}
.hero-copy {
  max-width: 51%;
  text-shadow: 0 2px 10px #071114;
}
.hero-copy h1 {
  font-size: clamp(40px,4.6vw,72px);
  line-height: 1.35;
  white-space: nowrap;
  color: #ecede2;
}
.hero-copy .silver-weave {
  width: 176px;
  height: 28px;
  margin: 22px 0;
  color: #b9c7c8;
}
.hero-copy>p {
  font-size: 18px;
  line-height: 1.95;
  color: #d0d9d4;
  max-width: 25em;
}
.hero-copy blockquote {
  font: 400 21px/1.9 var(--read);
  margin: 30px 0 0;
}
.hero-copy cite {
  display: block;
  font: 400 14px/1.7 var(--ui);
  color: #c5d2d2;
  margin: 8px 0 26px;
}
.hero-copy cite a {
  text-decoration: underline;
  text-underline-offset: 4px;
}
.hero-actions {
  display: flex;
  gap: 16px 22px;
  align-items: center;
  flex-wrap: wrap;
}
.hero-actions .text-link {
  color: #d9e2dd;
}
.hero-caption {
  position: absolute;
  bottom: 36px;
  right: var(--gutter);
  font-size: 14px;
  color: #b2c3c4;
}
.home-content {
  padding: 0 var(--gutter) 64px;
}
.home-section {
  position: relative;
  padding-block: 36px 42px;
}
.home-section>.section-intro {
  max-width: 46em;
  margin-top: -8px;
  margin-bottom: 28px;
  color: var(--muted);
  font-size: 17px;
}
.featured-register {
  display: grid;
  grid-template-columns: 1.05fr 1fr;
  gap: 30px;
}
.featured-volume {
  position: relative;
  padding: 34px 36px;
  background: linear-gradient(125deg,#31464b,#1c2d32 48%,#243a40);
  border: 1px solid #73888b;
  box-shadow: none;
}
.featured-volume::before {
  content: '';
  position: absolute;
  inset: 10px;
  border: 1px solid #5b7276;
  pointer-events: none;
}
.featured-volume h3 {
  font-size: 30px;
  margin: 18px 0;
}
.featured-volume>p {
  font-size: 17px;
  color: #c5d0ce;
  line-height: 1.9;
}
.featured-volume blockquote {
  font: 400 20px/1.95 var(--read);
  margin: 24px 0 12px;
  padding-top: 18px;
  border-top: 1px solid #61797c;
}
.featured-volume .text-link {
  margin-top: 16px;
}
.featured-secondary {
  display: grid;
  align-content: start;
}
.featured-secondary article {
  padding: 8px 0 24px;
  border-bottom: 1px solid #4b6268;
}
.featured-secondary article+article {
  padding-top: 24px;
}
.featured-secondary h3 {
  font-size: 26px;
  margin: 13px 0;
}
.featured-secondary p {
  font-size: 17px;
  color: var(--muted);
  line-height: 1.9;
}
.featured-secondary .text-link {
  margin-top: 8px;
}
.home-authority {
  margin-top: 22px;
  font-size: 14px;
  color: #b7c8c8;
}
.home-authority a {
  text-decoration: underline;
  margin-left: 10px;
}
.home-explore {
  position: relative;
  isolation: isolate;
  padding: 40px 0;
}
.home-explore::before {
  content: '';
  position: absolute;
  inset: -40px calc(-1 * var(--gutter));
  z-index: -1;
  pointer-events: none;
  background: linear-gradient(180deg,var(--night),#10191c8c 22%,#10191cca 74%,var(--night)),url('assets/archive-depth.png') center/cover;
}
.home-explore .register-heading {
  margin-bottom: 28px;
}
.topic-portals {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 0 36px;
}
.topic-portal {
  position: relative;
  padding: 22px 0 22px 60px;
  border-bottom: 1px solid #607478;
}
.topic-portal>.icon {
  position: absolute;
  top: 25px;
  left: 4px;
  width: 40px;
  height: 40px;
  color: #bdccca;
}
.topic-portal h3 {
  font-size: 24px;
  margin-bottom: 8px;
}
.topic-portal p {
  font-size: 16px;
  color: #c0cecd;
  line-height: 1.85;
  max-width: 31em;
}
.topic-portal small {
  display: block;
  color: #adc1c1;
  margin-top: 10px;
  font-size: 14px;
}
.institution-callout {
  display: grid;
  grid-template-columns: 1fr auto;
  align-items: center;
  gap: 28px;
  margin-top: 32px;
  padding: 28px 32px;
  background: linear-gradient(90deg,#263f45d9,#14292fcf);
  border-block: 1px solid #647e81;
}
.institution-callout h3 {
  font-size: 26px;
  margin-bottom: 8px;
}
.institution-callout p {
  font-size: 16px;
  color: var(--muted);
}
.home-sources {
  display: grid;
  grid-template-columns: .85fr 1.15fr;
  gap: 40px;
}
.home-sources>div>p {
  margin: 18px 0;
  font-size: 17px;
  color: var(--muted);
}
.home-sources .relationship-register {
  margin: 0;
}
.home-maintenance {
  padding: 24px 0;
  border-top: 1px solid #556c72;
}
.home-maintenance h2 {
  font-size: 24px;
  margin-bottom: 12px;
}
.maintenance-links {
  display: flex;
  gap: 8px 22px;
  flex-wrap: wrap;
  margin-top: 12px;
  font-size: 15px;
}
.maintenance-links a {
  min-height: 40px;
  display: flex;
  align-items: center;
  text-decoration: underline;
  text-underline-offset: 5px;
}
.home-maintenance details {
  margin-top: 20px;
}
.collection-summary ul {
  list-style: none;
  display: flex;
  gap: 12px 24px;
  flex-wrap: wrap;
  padding: 0;
}
.collection-summary li span {
  margin-left: 8px;
  color: var(--silver);
}
.document-register {
  min-width: 0;
}
.doc-list {
  display: grid;
}
.document-row {
  position: relative;
  padding: 16px 22px;
  border-bottom: 1px solid #445951;
  background: #1e302b88;
  min-width: 0;
}
.document-row:first-child {
  border-top: 1px solid #71867a;
}
.document-row::before {
  content: '';
  position: absolute;
  inset: 18px auto auto 0;
  width: 3px;
  height: 19px;
  background: #8d9e9366;
}
.document-row:hover {
  background: #283c348c;
}
.document-row--archive {
  background: #32383080;
}
.document-row--archive::before {
  background: #b5a48a88;
}
.document-row-heading {
  display: flex;
  align-items: flex-start;
  gap: 18px;
  justify-content: space-between;
}
.document-row-title {
  font: 900 22px/1.6 var(--display);
  overflow-wrap: anywhere;
  min-width: 0;
  color: #e3e7dd;
}
.document-row-title:hover {
  color: #f5f4e9;
  text-decoration-color: #a4b3a5;
  text-decoration-thickness: 1px;
}
.document-row-meta {
  display: flex;
  gap: 3px 18px;
  align-items: center;
  flex-wrap: wrap;
  font-size: 14px;
  color: var(--muted);
  font-variant-numeric: tabular-nums;
  margin-top: 5px;
  line-height: 1.8;
}
.document-row-meta>span:empty {
  display: none;
}
.row-provenance {
  color: #c1d1c6;
  min-height: 32px;
  display: inline-flex;
  align-items: center;
}
.row-source {
  font-size: 14px;
  position: relative;
}
.row-source summary {
  font-size: 14px;
  min-height: 32px;
  color: #b7c8bc;
  padding: 3px 0;
}
.row-source[open] {
  flex-basis: 100%;
  padding-top: 2px;
}
.row-source p {
  overflow-wrap: anywhere;
  font-size: 14px;
  color: var(--muted);
  margin: 5px 0 0;
  padding-left: 14px;
  border-left: 1px solid var(--line);
}
.document-row-excerpt {
  font-size: 16px;
  line-height: 1.8;
  color: #c3cfc4;
  margin: 8px 0 0;
  overflow-wrap: anywhere;
  max-width: 65em;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}
.archive-status {
  display: inline-flex;
  gap: 7px;
  align-items: center;
  flex-shrink: 0;
  font: 400 14px/1.7 var(--ui);
  color: #c9ddd0;
  padding: 2px 7px;
  border: 1px solid #70857b66;
  background: #59786724;
  font-variant-numeric: tabular-nums;
  white-space: nowrap;
  align-self: flex-start;
  margin-top: 3px;
}
.status-mark {
  display: block;
  width: 5px;
  height: 5px;
  border: 1px solid currentColor;
  transform: rotate(45deg);
}
.archive-status--CURRENT_CANON .status-mark,.archive-status--AUTHOR_CANON .status-mark {
  background: currentColor;
}
.archive-status--CANDIDATE,.archive-status--PROPOSAL {
  color: #d8c4a0;
  background: #88744420;
  border-color: #a18b6055;
}
.archive-status--SUPERSEDED {
  color: #cfc6b7;
  background: #8e846c22;
  border-color: #a69b8055;
}
.archive-status--UNRESOLVED {
  color: #e0bdb1;
  background: #93695124;
  border-color: #b8887555;
}
.archive-status--REFERENCE {
  color: #bfd0d3;
  background: #6f899324;
  border-color: #8ba4aa55;
}
.archive-status--AUTHOR_CANON {
  color: #e2d7ad;
  background: #8b855c24;
  border-color: #aaa07755;
}
.archive-status--DELEGATED_DESIGN {
  color: #c1d4c3;
  background: #739d7f22;
  border-color: #819b8655;
}
.document-edition,.item-meta {
  display: flex;
  gap: 8px 16px;
  align-items: center;
  flex-wrap: wrap;
  color: var(--muted);
  font-size: 15px;
  font-variant-numeric: tabular-nums;
}
.catalogue-filters {
  display: grid;
  grid-template-columns: minmax(220px,1fr) minmax(0,1.15fr);
  gap: 6px 20px;
  margin: 0;
  padding: 0 0 8px;
  border-bottom: 1px solid #52665b;
}
.filter-query-label {
  grid-column: 1;
  grid-row: 1;
  font-size: 14px;
  color: #c5d0c6;
}
.filter-query {
  display: flex;
  gap: 8px;
  grid-column: 1;
  grid-row: 2;
}
.filter-query input {
  flex: 1;
  min-width: 0;
  width: 100%;
}
.filter-query button {
  flex-shrink: 0;
  white-space: nowrap;
  padding-inline: 18px;
}
.filter-common {
  grid-column: 2;
  grid-row: 1/3;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
}
.filter-common label,.catalogue-filter-grid label {
  display: grid;
  gap: 6px;
  min-width: 0;
  color: #c5d0c6;
  font-size: 14px;
}
.filter-common select,.catalogue-filter-grid select {
  width: 100%;
  font-size: 15px;
}
.catalogue-refinements {
  grid-column: 1/-1;
  margin: 0;
}
.catalogue-refinements>summary {
  font-size: 14px;
  min-height: 36px;
  padding: 6px 0;
}
.catalogue-refinements>summary>span {
  margin-left: 12px;
  color: var(--muted);
}
.catalogue-filter-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 12px;
  margin: 8px 0 12px;
}
.active-filters {
  display: flex;
  gap: 4px 8px;
  flex-wrap: wrap;
  margin: 0;
  font-size: 14px;
  flex: 1;
}
.filter-token {
  padding: 3px 8px;
  border: 1px solid #65796b88;
  background: #293d323f;
  display: flex;
  gap: 8px;
  align-items: center;
  min-height: 34px;
  color: #c6d5c9;
}
.filter-token:hover {
  background: #364d3c;
  border-color: #879b89;
  text-decoration: none;
  color: #f0f2e8;
}
.filter-token span {
  font-size: 18px;
  line-height: 1;
}
.clear-filters {
  align-self: center;
  padding: 5px 3px;
  color: var(--muted);
}
.results-toolbar {
  display: flex;
  align-items: center;
  justify-content: flex-start;
  gap: 8px 16px;
  margin: 12px 0;
  color: var(--muted);
  font-size: 15px;
  min-height: 40px;
  flex-wrap: wrap;
  line-height: 1.7;
}
.results-toolbar label {
  display: flex;
  align-items: center;
  gap: 10px;
  font-size: 14px;
  margin-left: auto;
  white-space: nowrap;
}
.results-toolbar select {
  font-size: 14px;
  max-width: 180px;
  min-height: 40px;
  padding: 6px 10px;
}
.pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
  margin: 24px 0;
  font-size: 15px;
}
.source-directory {
  border: 1px solid var(--line);
  padding: 10px 18px;
  margin-bottom: 20px;
  background: #1e302b;
}
.source-directory>summary span {
  margin-left: 16px;
  color: var(--muted);
  font-size: 14px;
}
.directory-tree {
  max-height: 420px;
  overflow: auto;
  padding: 12px 0;
}
.directory-tree h3 {
  display: none;
}
.directory-tree details {
  margin-left: 18px;
  border-left: 1px solid #4f6559;
  padding-left: 14px;
}
.directory-tree>a,.tree-file {
  display: block;
  padding: 5px 0;
  min-height: 34px;
  font-size: 14px;
  overflow-wrap: anywhere;
}
.directory-tree summary {
  font-size: 15px;
}
.subject-register {
  display: grid;
  grid-template-columns: repeat(2,minmax(0,1fr));
  gap: 24px;
}
.subject-entry {
  position: relative;
  padding: 24px;
  background: linear-gradient(125deg,#293e37,#1e302c);
  border: 1px solid #576f61;
}
.subject-entry h2 {
  font-size: 25px;
  margin: 10px 0;
}
.subject-entry>.icon {
  color: #b8cbca;
  width: 32px;
  height: 32px;
}
.subject-entry .subject-guide {
  font-size: 16px;
  line-height: 1.9;
  color: #c0d0cf;
  margin-bottom: 12px;
}
.subject-count {
  display: flex;
  flex-wrap: wrap;
  gap: 6px 16px;
  font-size: 14px;
  color: #aebfc0;
}
.subject-entry nav {
  display: flex;
  flex-wrap: wrap;
  gap: 12px 24px;
  margin-top: 14px;
  padding-top: 10px;
  border-top: 1px solid #506858;
  font-size: 15px;
}
.subject-entry nav a {
  display: flex;
  align-items: center;
  min-height: 40px;
  text-decoration: none;
  text-underline-offset: 5px;
}
.subject-sample {
  font: 400 15px/1.9 var(--ui);
  margin-top: 12px;
  color: #bfcec0;
}
.record-links {
  display: flex;
  gap: 12px 24px;
  flex-wrap: wrap;
  margin: 20px 0;
  font-size: 15px;
}
.version-register {
  display: grid;
  gap: 28px;
  margin-top: 28px;
}
.version-entry {
  padding: 24px;
  background: #233630;
  border: 1px solid var(--line);
  position: relative;
}
.version-entry .register-heading {
  align-items: flex-start;
}
.version-entry h2 {
  font-size: 26px;
}
.relationship-register {
  margin: 20px 0;
}
.relationship-register>div {
  display: grid;
  grid-template-columns: 10em minmax(0,1fr);
  gap: 22px;
  padding: 12px 0;
  border-bottom: 1px solid #4d6455;
  font-size: 16px;
}
.relationship-register dt {
  color: #b8caca;
  font-size: 14px;
}
.relationship-register dd {
  margin: 0;
  min-width: 0;
  overflow-wrap: anywhere;
}
.relationship-register dd>a {
  font: 400 17px/1.8 var(--ui);
  text-decoration: none;
  text-decoration-color: #819b9f;
  text-underline-offset: 5px;
}
.relation-details {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-top: 6px;
  font-size: 14px;
  color: var(--muted);
}
.version-provenance {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  font-size: 15px;
  text-decoration: underline;
  text-underline-offset: 5px;
}
.audit-summary-register {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  margin: 28px 0;
  gap: 18px;
}
.audit-summary-register>div {
  padding: 22px;
  background: #263c31;
  border: 1px solid #607566;
}
.audit-summary-register dt {
  font-size: 15px;
  color: var(--muted);
}
.audit-summary-register dd {
  margin: 12px 0 0;
  display: grid;
  gap: 8px;
}
.audit-summary-register strong {
  font: 600 34px/1.3 'Archive Latin',serif;
}
.audit-summary-register span,.audit-summary-register a {
  font-size: 14px;
}
.audit-summary-register a {
  text-decoration: underline;
}
.audit-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 24px;
}
.audit-grid .panel {
  margin-top: 0;
}
.audit-grid .section-head {
  align-items: flex-start;
}
.audit-grid h2 {
  font-size: 24px;
}
.audit-grid p {
  font-size: 16px;
  overflow-wrap: anywhere;
}
.badge {
  display: inline-flex;
  border: 1px solid var(--line);
  padding: 4px 9px;
  font-size: 14px;
  margin-bottom: 12px;
}
.legend {
  display: flex;
  gap: 20px;
  font-size: 14px;
}
.scenario-progress {
  width: 100%;
  height: 8px;
  accent-color: #abbcbd;
  margin: 22px 0 12px;
}
.scenario-progress::-webkit-progress-bar {
  background: #122529;
}
.scenario-progress::-webkit-progress-value {
  background: #a9bbbc;
}
.row-meta {
  font-size: 14px!important;
  color: var(--muted);
}
.table-wrap {
  overflow: auto;
  max-width: 100%;
  margin: 20px 0;
  border: 1px solid #627980;
}
.data-table,table {
  width: 100%;
  border-collapse: collapse;
  font-size: 15px;
  line-height: 1.8;
}
.data-table th,.data-table td {
  padding: 13px 16px;
  text-align: left;
  border-bottom: 1px solid #496169;
  vertical-align: top;
  min-width: 6em;
}
.data-table th {
  background: #344c3e;
  font-weight: 500;
  color: #e1e9e4;
}
.data-table td {
  background: #22362b;
}
.data-table tr:nth-child(even) td {
  background: #2a3f32;
}
.data-table td:first-child {
  font-variant-numeric: tabular-nums;
}
.table-wrap:focus-visible {
  outline-offset: 3px;
}
.document-breadcrumb {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  align-items: center;
  margin: 0 0 12px;
  font-size: 14px;
  color: var(--muted);
}
.document-breadcrumb a {
  min-height: 32px;
  display: inline-flex;
  align-items: center;
}
.return-results {
  color: #c4d5c8;
  margin-right: 4px;
}
.document-header {
  position: relative;
  background: var(--reading-head);
  padding: 20px 30px 10px;
  border: 1px solid var(--reading-line);
  border-bottom: 0;
}
.document-header>.silver-weave {
  position: absolute;
  right: 28px;
  top: 20px;
  width: 80px;
  margin: 0;
  opacity: .65;
}
.document-header h1 {
  font-size: clamp(28px,2.6vw,36px);
  padding-right: 86px;
  margin-bottom: 10px;
  line-height: 1.5;
}
.document-context {
  color: var(--warm);
  font-size: 14px;
  margin-bottom: 6px;
}
.document-info-row {
  display: flex;
  gap: 4px 20px;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
}
.document-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 4px 18px;
  margin: 0;
  padding: 0;
  align-items: center;
}
.document-actions a {
  font-size: 14px;
  min-height: 36px;
  display: inline-flex;
  align-items: center;
  color: #c8d8cc;
}
.document-notice {
  background: var(--reading-head);
  border: 1px solid var(--reading-line);
  border-top: 0;
  padding: 0 30px 14px;
  font-size: 14px;
  color: #c1cfc3;
  line-height: 1.8;
}
.document-notice a {
  color: #e3d2aa;
  text-decoration: underline;
  text-underline-offset: 4px;
}
.source-limitation {
  margin-top: 6px;
}
.source-limitation strong {
  color: #e1dcc9;
  font-weight: 500;
}
.reader-layout {
  padding: 0;
  margin: 0;
}
.reader-main {
  display: grid;
  grid-template-columns: minmax(0,1fr) 228px;
  align-items: start;
  background: var(--reading);
  color: var(--reading-ink);
  border: 1px solid var(--reading-line);
  border-top: 0;
  position: relative;
}
.article {
  grid-column: 1;
  grid-row: 1;
  min-width: 0;
  padding: 24px clamp(24px,2.7vw,48px) 44px;
  overflow-wrap: break-word;
  font: 400 20px/1.95 var(--read);
  color: var(--reading-ink);
  max-width: 100%;
}
.article>:not(.table-wrap):not(pre) {
  max-inline-size: calc(37 * 1.25rem);
  margin-inline: auto;
}
.article .document-body-title {
  display: none;
}
.article h1,.article h2,.article h3,.article h4 {
  font-family: var(--display);
  letter-spacing: 0;
  color: #e5e7dc;
  text-align: left;
  text-wrap: pretty;
}
.article h1 {
  font-size: 30px;
  font-weight: 900;
}
.article h2 {
  font-size: 27px;
  font-weight: 700;
  margin-top: 2em;
  margin-bottom: .65em;
}
.article h3 {
  font-size: 23px;
  font-weight: 600;
  margin-top: 1.5em;
  margin-bottom: .55em;
}
.article h4 {
  font-size: 21px;
  font-weight: 600;
  margin-top: 1.4em;
  margin-bottom: .5em;
}
.article>h2:first-of-type {
  margin-top: 0;
}
.article p {
  margin-block: 0 .9em;
  line-break: strict;
  text-align: justify;
  text-justify: inter-ideograph;
}
.article strong {
  font-weight: 600;
  color: #e5e8de;
}
.article ul,.article ol {
  padding-left: 1.6em;
  margin-block: .75em 1.3em;
}
.article li {
  margin-bottom: .5em;
  padding-left: .1em;
}
.article li p {
  margin-block: .35em;
}
.article a {
  color: #c8dccc;
  text-decoration: underline;
  text-decoration-color: #90ac9c;
  text-decoration-thickness: 1px;
  text-underline-offset: 4px;
}
.article a:hover {
  color: #f0f4e6;
  text-decoration-color: currentColor;
}
.article hr {
  border: 0;
  height: 14px;
  margin: 26px auto;
  max-width: 150px;
  background: url('assets/divider.svg') center/contain no-repeat;
  opacity: .45;
}
.article blockquote {
  border: 0;
  border-left: 2px solid #99ab91;
  padding: 16px 22px;
  margin-block: 24px;
  background: #30423a;
  color: #d1d9cb;
}
.article blockquote p:last-child {
  margin-bottom: 0;
}
.article pre {
  overflow: auto;
  white-space: pre;
  max-width: 100%;
  background: #1c2c26;
  color: #d4ded2;
  padding: 18px;
  font: 400 15px/1.85 var(--ui);
  border: 1px solid #526459;
}
.article code {
  font-family: var(--ui);
  font-size: .85em;
}
.article pre code {
  font-size: inherit;
  line-height: inherit;
}
.article .table-wrap {
  border-color: #657769;
}
.article table {
  font: 400 15px/1.85 var(--ui);
  color: #d5dfd3;
}
.article td,.article th {
  padding: 10px 14px;
  border: 1px solid #526858;
  vertical-align: top;
  min-width: 5em;
}
.article th {
  background: #34483b;
  font-weight: 500;
  color: #e5eade;
}
.article tr:nth-child(even) td {
  background: #2b3c33;
}
.article .muted {
  color: var(--reading-muted);
}
.article .document-notice {
  background: #304039;
  color: #d7dfd0;
  padding: 16px;
  border: 1px solid #6a7c68;
  font-family: var(--ui);
}
.reader-contents {
  grid-column: 2;
  grid-row: 1;
  position: sticky;
  top: 80px;
  max-height: calc(100dvh - 96px);
  overflow: auto;
  color: var(--text);
  background: var(--reading-side);
  padding: 12px 12px 16px;
  border-left: 1px solid var(--reading-line);
  z-index: 10;
  align-self: start;
}
.reader-contents>summary {
  font-size: 15px;
  font-weight: 500;
  padding: 7px 6px 11px;
  border-bottom: 1px solid #52695b;
}
.reader-contents #toc {
  padding-top: 6px;
}
.reader-contents #toc a {
  display: block;
  font: 400 14px/1.7 var(--ui);
  padding: 8px 10px;
  min-height: 38px;
  border-left: 2px solid transparent;
  color: #bdcdbf;
}
.reader-contents #toc a.toc-deep {
  padding-left: 22px;
}
.reader-contents #toc a:hover {
  background: #33483a;
  color: #eef1e4;
  text-decoration: none;
}
.reader-contents #toc a[aria-current] {
  background: #3a5040;
  border-left-color: #bfd0b4;
  color: #f0f3e4;
}
.toc-group>summary {
  padding: 9px 5px;
  font-size: 14px;
  border-bottom: 1px solid #405748;
  min-height: 40px;
  color: #d1dccb;
}
.toc-group.toc-current>summary {
  color: #e4ebda;
}
.toc-group>div {
  padding-left: 5px;
}
.toc-record {
  display: block;
  padding: 12px 6px 0;
  font-size: 14px;
  min-height: 40px;
  color: #c7d5c4;
}
.document-records {
  display: grid;
  grid-template-columns: .9fr 1.1fr;
  gap: 24px;
  margin-top: 28px;
}
.provenance-record,.source-relations {
  position: relative;
  padding: 24px;
  background: #22322f;
  border: 1px solid #53695f;
  min-width: 0;
}
.provenance-record h2,.source-relations h2 {
  font-size: 25px;
  margin-bottom: 14px;
}
.provenance-record dl {
  margin: 0;
}
.provenance-record dl>div {
  display: grid;
  grid-template-columns: 7em minmax(0,1fr);
  gap: 16px;
  padding: 10px 0;
  border-bottom: 1px solid #465d51;
  font-size: 15px;
  line-height: 1.8;
}
.provenance-record dt {
  color: #b7c9ba;
}
.provenance-record dd {
  margin: 0;
  overflow-wrap: anywhere;
  color: #dae3d8;
  font-variant-numeric: tabular-nums;
}
.record-integrity {
  margin-top: 14px;
}
.record-integrity p,.record-integrity code {
  font-size: 14px;
  overflow-wrap: anywhere;
}
.source-relations .relationship-register>div {
  grid-template-columns: 1fr;
  gap: 4px;
  padding: 12px 0;
}
.related-files {
  border-top: 1px solid #52695b;
  padding-top: 6px;
  margin-top: 14px;
}
.related-files summary {
  font-size: 15px;
}
.related-files summary span {
  color: #b7c8b6;
  margin-left: 8px;
}
.related-files h3 {
  font-size: 20px;
  margin: 16px 0 8px;
  font-weight: 600;
}
.related-files ul {
  padding-left: 20px;
  font-size: 15px;
  line-height: 1.9;
}
.related-files li {
  margin: 8px 0;
  overflow-wrap: anywhere;
}
.related-files>a {
  display: block;
  font-size: 15px;
  overflow-wrap: anywhere;
  padding: 6px 0;
  color: #d2e0d1;
}
.document-associations {
  margin-top: 28px;
  padding: 22px 0;
  border-block: 1px solid #516a5e;
  font-size: 15px;
  color: var(--muted);
}
.document-associations h2 {
  font-size: 24px;
  margin-bottom: 12px;
  color: var(--text);
}
.document-associations a {
  color: #d1dfd1;
  text-decoration: underline;
  text-decoration-color: #788f7b;
  text-underline-offset: 4px;
}
.provenance-layout {
  display: grid;
  grid-template-columns: minmax(0,1fr) minmax(310px,.8fr);
  gap: 24px;
  margin-top: 24px;
}
.provenance-layout .source-transcript {
  grid-column: 1/-1;
  min-width: 0;
}
.source-transcript>h2 {
  margin: 20px 0;
}
.source-transcript>.reader-contents {
  position: sticky;
  max-height: 60dvh;
  top: 64px;
  border: 1px solid #53695f;
  border-bottom: 0;
}
.source-transcript .reader-contents #toc {
  max-height: none;
}
.source-transcript .article {
  background: var(--reading);
  border: 1px solid var(--reading-line);
}
.document-header--archive {
  border-color: #7f8170;
  background: #2c3731;
}
.document-header--archive::before {
  content: '';
  position: absolute;
  left: 9px;
  top: 15px;
  bottom: 15px;
  width: 4px;
  border-inline: 1px solid #aaa99166;
  pointer-events: none;
}
main[data-view=maintenance]>.document-header {
  background: var(--reading-head);
}
@media(min-width:1700px) {
  main:not([data-view=home]) {
    padding-inline: max(var(--gutter),calc((100vw - var(--sidebar) - 1360px)/2));
  }
  .archive-hero {
    min-height: 760px;
  }
  .hero-copy h1 {
    font-size: 76px;
  }
  .home-content {
    max-width: 1520px;
    margin: auto;
  }
}
@media(max-width:1240px) {
  :root {
    --sidebar: 218px;
    --gutter: 28px;
  }
  .brand {
    padding-inline: 18px;
    gap: 10px;
  }
  .brand>span {
    font-size: 20px;
  }
  .sidebar nav a {
    font-size: 15px;
  }
  .sidebar-bottom {
    padding-inline: 22px;
  }
  .featured-register {
    grid-template-columns: 1fr 1fr;
    gap: 24px;
  }
  .featured-volume {
    padding: 28px;
  }
  .featured-volume h3 {
    font-size: 26px;
  }
  .document-records {
    grid-template-columns: 1fr;
  }
  .article {
    font-size: 19px;
    padding-inline: 28px;
    width: 100%;
  }
  .hero-copy {
    max-width: 56%;
  }
  .hero-copy h1 {
    font-size: 48px;
  }
  .hero-copy>p {
    font-size: 17px;
  }
  .hero-art {
    object-position: 62% center;
  }
  .home-sources {
    gap: 28px;
    grid-template-columns: 1fr 1.1fr;
  }
  .audit-summary-register {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
  .provenance-layout {
    grid-template-columns: 1fr 1fr;
  }
  .subject-entry {
    padding: 24px;
  }
  .subject-entry h2 {
    font-size: 24px;
  }
  .reader-main {
    display: flex;
    flex-direction: column;
  }
  .reader-contents {
    position: sticky;
    top: 64px;
    max-height: min(65dvh,560px);
    width: 100%;
    border-left: 0;
    border-bottom: 1px solid #617565;
    padding: 4px 20px;
  }
  .reader-contents>summary {
    padding: 8px 0;
    min-height: 40px;
    border: 0;
  }
  .reader-contents[open] {
    box-shadow: 0 8px 20px #07140d55;
  }
  .reader-contents #toc {
    padding: 4px 0 8px;
  }
  .toc-record {
    padding: 10px 6px 14px;
  }
  .article :is(h1,h2,h3,h4)[id] {
    scroll-margin-top: 126px;
  }
  .catalogue-filter-grid {
    grid-template-columns: repeat(2,minmax(0,1fr));
  }
  .catalogue-refinements>summary>span {
    font-size: 14px;
  }
}
@media(max-width:1040px) {
  :root {
    --sidebar: 218px;
    --gutter: 24px;
  }
  .topbar-title {
    display: none;
  }
  .topbar {
    justify-content: flex-end;
  }
  #global-search {
    width: min(100%,520px);
  }
  .sidebar nav a {
    padding-inline: 10px;
    gap: 8px;
    font-size: 15px;
  }
  .sidebar-scroll {
    padding-right: 12px;
  }
  .brand>span {
    font-size: 19px;
  }
  .hero-copy {
    max-width: 64%;
  }
  .hero-copy h1 {
    font-size: 43px;
  }
  .hero-copy>p {
    font-size: 16px;
  }
  .archive-hero {
    min-height: 590px;
    align-items: flex-start;
    padding-top: 56px;
  }
  .hero-art {
    object-position: 64% center;
  }
  .hero-caption {
    font-size: 14px;
  }
  .featured-register,.home-sources {
    grid-template-columns: 1fr;
  }
  .featured-secondary {
    grid-template-columns: 1fr 1fr;
    gap: 24px;
  }
  .featured-secondary article+article {
    padding-top: 8px;
  }
  .article {
    width: 100%;
    padding-top: 22px;
    font-size: 19px;
  }
  .provenance-layout {
    grid-template-columns: 1fr;
  }
  .source-transcript {
    grid-column: 1!important;
  }
  .audit-grid {
    grid-template-columns: 1fr;
  }
  .subject-register {
    gap: 18px;
  }
  .subject-entry h2 {
    font-size: 22px;
  }
  .topic-portal {
    padding-left: 48px;
  }
  .topic-portal>.icon {
    width: 28px;
  }
  .topic-portal h3 {
    font-size: 22px;
  }
  .institution-callout {
    padding: 24px;
    grid-template-columns: 1fr;
  }
  .institution-callout .button {
    justify-self: start;
  }
  .catalogue-filters {
    grid-template-columns: 1fr;
  }
  .filter-query-label {
    grid-column: 1;
    grid-row: 1;
  }
  .filter-query {
    grid-column: 1;
    grid-row: 2;
  }
  .filter-common {
    grid-column: 1;
    grid-row: 3;
    margin-top: 4px;
  }
}
@media(max-width:780px) {
  :root {
    --gutter: 20px;
    --sidebar: 260px;
  }
  .workspace {
    margin-left: 0;
  }
  .sidebar {
    transform: translateX(-102%);
    transition: transform .18s;
    box-shadow: 12px 0 30px #0009;
    top: 64px;
  }
  .sidebar.open {
    transform: none;
  }
  .sidebar .brand {
    padding: 18px 22px 14px;
  }
  .sidebar .brand>span {
    font-size: 22px;
  }
  .sidebar nav a {
    font-size: 15px;
  }
  .sidebar-scroll {
    padding: 0 16px 16px;
  }
  .sidebar-bottom {
    padding: 12px 24px;
  }
  .topbar {
    padding: 9px 14px;
    gap: 10px;
    min-height: 64px;
    justify-content: space-between;
    z-index: 50;
  }
  .mobile-toggle {
    display: inline-flex;
    min-width: 64px;
    flex-shrink: 0;
    padding: 8px 12px;
    font-size: 15px;
    gap: 6px;
  }
  .mobile-toggle .icon {
    width: 18px;
  }
  .topbar-title {
    display: none;
  }
  #global-search {
    width: auto;
    flex: 1;
    min-width: 0;
    padding-left: 10px;
    gap: 6px;
  }
  #global-search input {
    font-size: 16px;
  }
  #global-search input::placeholder {
    font-size: 14px;
  }
  #global-search kbd {
    display: none;
  }
  #global-search button {
    padding-inline: 12px;
    font-size: 15px;
  }
  main {
    padding-top: 24px;
  }
  .catalogue-heading h1 {
    font-size: 32px;
  }
  .catalogue-heading .silver-weave {
    width: 85px;
  }
  .catalogue-heading>p {
    font-size: 16px;
  }
  .archive-hero {
    min-height: 670px;
    padding: 40px 24px 150px;
    align-items: flex-start;
  }
  .hero-copy {
    max-width: 76%;
  }
  .hero-copy h1 {
    font-size: clamp(38px,7vw,56px);
  }
  .hero-copy>p {
    font-size: 17px;
  }
  .hero-copy blockquote {
    font-size: 20px;
    margin-top: 24px;
  }
  .hero-art {
    object-position: 66% center;
  }
  .archive-hero::before {
    background: linear-gradient(180deg,#0c171b9c,#0c171b77 45%,#0c171b05 65%,var(--night)),linear-gradient(90deg,#09181a8c,transparent);
  }
  .hero-caption {
    bottom: 22px;
    right: 24px;
    font-size: 14px;
  }
  .home-content {
    padding-bottom: 32px;
  }
  .home-section {
    padding-block: 28px;
  }
  .register-heading,.section-head {
    gap: 16px;
  }
  .register-heading h2 {
    font-size: 28px;
  }
  .register-heading>a {
    font-size: 14px;
  }
  .topic-portals {
    gap: 0 24px;
  }
  .home-explore {
    padding-block: 30px;
  }
  .topic-portal p {
    font-size: 16px;
  }
  .document-row-title {
    font-size: 22px;
  }
  .document-row-meta {
    font-size: 14px;
    gap: 5px 14px;
  }
  .document-edition {
    font-size: 14px;
    gap: 8px 12px;
  }
  .article {
    font-size: 19px;
    padding-inline: 24px;
  }
  .article h2 {
    font-size: 25px;
  }
  .article h3 {
    font-size: 21px;
  }
  .provenance-record,.source-relations {
    padding: 22px;
  }
  .document-records {
    gap: 22px;
  }
  .relationship-register>div {
    grid-template-columns: 1fr;
    gap: 6px;
  }
  .document-associations {
    font-size: 15px;
  }
  .source-directory>summary span {
    display: block;
    margin-left: 0;
  }
  .subject-entry {
    padding: 22px;
  }
  .workspace>footer {
    padding: 28px 20px;
  }
  .workspace>footer p {
    font-size: 14px;
  }
  .version-entry {
    padding: 22px;
  }
  .version-entry .register-heading {
    display: block;
  }
  .version-entry .catalogue-note {
    display: block;
    margin-top: 8px;
  }
  .document-row {
    padding: 14px 16px;
  }
  .document-row-heading {
    gap: 8px 12px;
    flex-wrap: wrap;
  }
  .document-info-row {
    gap: 6px;
  }
  .document-header {
    padding: 18px 22px 8px;
  }
  .document-header h1 {
    font-size: 30px;
    padding-right: 50px;
  }
  .document-header>.silver-weave {
    width: 54px;
    right: 18px;
    top: 15px;
  }
  .document-notice {
    padding: 2px 22px 14px;
  }
  .topic-portal>.icon {
    width: 40px;
    height: 40px;
  }
}
@media(max-width:540px) {
  .archive-hero {
    min-height: 760px;
    padding-top: 32px;
    background: linear-gradient(180deg,#10202566,#10191c),url('assets/archive-depth.png') top center/auto 65% no-repeat;
  }
  .hero-copy {
    max-width: 100%;
  }
  .hero-copy h1 {
    font-size: 40px;
  }
  .hero-copy .silver-weave {
    margin: 18px 0;
  }
  .hero-copy>p {
    max-width: 20em;
    font-size: 17px;
  }
  .hero-copy blockquote {
    font-size: 19px;
    margin-top: 20px;
  }
  .hero-copy cite {
    margin-bottom: 20px;
  }
  .hero-actions {
    gap: 12px;
  }
  .hero-actions .button {
    padding: 11px 20px;
    font-size: 16px;
  }
  .hero-actions .text-link {
    font-size: 15px;
  }
  .hero-art {
    object-position: 73% center;
    height: 68%;
    top: auto;
    bottom: 0;
  }
  .archive-hero::before {
    background: linear-gradient(180deg,#0c171bb8,#0c171ba6 38%,#0c171b19 62%,var(--night));
  }
  .hero-caption {
    bottom: 24px;
    left: 24px;
    text-align: center;
  }
  .featured-volume {
    padding: 28px 24px;
  }
  .featured-volume h3 {
    font-size: 27px;
  }
  .featured-secondary {
    grid-template-columns: 1fr;
    gap: 22px;
  }
  .featured-secondary article+article {
    padding-top: 0;
  }
  .featured-secondary h3 {
    font-size: 25px;
  }
  .register-heading {
    align-items: flex-start;
    flex-wrap: wrap;
    gap: 6px;
  }
  .register-heading h2 {
    font-size: 28px;
  }
  .topic-portals {
    grid-template-columns: 1fr;
  }
  .topic-portal {
    padding: 24px 0 24px 50px;
  }
  .topic-portal h3 {
    font-size: 24px;
  }
  .home-sources {
    gap: 16px;
  }
  .home-sources .relationship-register>div {
    padding-block: 16px;
  }
  .catalogue-heading .silver-weave {
    float: right;
    margin: 9px 0 0 12px;
    width: 66px;
    display: none;
    height: 18px;
  }
  .catalogue-heading h1 {
    font-size: 28px;
  }
  .catalogue-heading>p {
    font-size: 16px;
    line-height: 1.8;
  }
  .subject-register {
    grid-template-columns: 1fr;
  }
  .subject-entry h2 {
    font-size: 26px;
  }
  .subject-entry nav {
    gap: 8px 24px;
  }
  .document-row-title {
    font-size: 20px;
  }
  .document-row-excerpt {
    font-size: 16px;
  }
  .document-breadcrumb {
    gap: 6px;
    margin-bottom: 10px;
  }
  .article {
    font-size: 18px;
    line-height: 1.95;
    padding: 20px 18px 32px;
  }
  .article h2 {
    font-size: 24px;
  }
  .article h3 {
    font-size: 20px;
  }
  .article blockquote {
    padding: 18px;
  }
  .article td,.article th {
    font-size: 14px;
  }
  .article pre {
    font-size: 14px;
    padding: 16px;
  }
  .provenance-record dl>div {
    grid-template-columns: 1fr;
    gap: 3px;
  }
  .provenance-record dt {
    font-size: 14px;
  }
  .provenance-record dd {
    font-size: 15px;
  }
  .audit-summary-register {
    gap: 12px;
  }
  .audit-summary-register>div {
    padding: 16px;
  }
  .audit-summary-register dt {
    font-size: 14px;
    overflow-wrap: anywhere;
  }
  .panel {
    padding: 22px;
  }
  .section-head {
    flex-wrap: wrap;
  }
  .section-head>a {
    font-size: 14px;
  }
  .pagination {
    gap: 14px;
    flex-wrap: wrap;
  }
  .pagination button {
    padding-inline: 15px;
  }
  .record-links {
    gap: 8px 18px;
  }
  .catalogue-filters input {
    font-size: 16px;
  }
  .home-authority {
    font-size: 14px;
  }
  .home-authority a {
    margin: 6px 0 0;
    display: block;
  }
  .topbar #global-search>span {
    display: none;
  }
  .silver-corner {
    width: 40px;
    height: 40px;
  }
  .directory-tree details {
    margin-left: 8px;
    padding-left: 10px;
  }
  .catalogue-heading {
    margin-bottom: 14px;
    padding-bottom: 14px;
  }
  .document-header {
    padding: 16px 18px 8px;
  }
  .document-header h1 {
    font-size: 26px;
    padding-right: 0;
    margin-bottom: 8px;
  }
  .document-header>.silver-weave {
    display: none;
  }
  .document-notice {
    padding: 2px 18px 12px;
  }
  .document-actions {
    gap: 4px 18px;
  }
  .document-row-heading .archive-status {
    margin: 1px 0 0;
  }
  .filter-common {
    gap: 10px;
  }
  .filter-common select {
    font-size: 14px;
  }
  .catalogue-filter-grid {
    grid-template-columns: 1fr 1fr;
  }
  .catalogue-refinements>summary>span {
    display: none;
  }
  .results-toolbar {
    display: grid;
    grid-template-columns: 1fr auto;
    gap: 8px;
    font-size: 14px;
  }
  .results-toolbar>label {
    grid-column: 2;
    grid-row: 1;
  }
  .results-toolbar select {
    max-width: 132px;
  }
  .active-filters {
    grid-column: 1 / -1;
    grid-row: 2;
    gap: 5px 8px;
  }
  .filter-token {
    min-height: 40px;
  }
  .document-breadcrumb .return-results {
    flex-basis: 100%;
  }
  .breadcrumb-separator {
    display: none;
  }
  .reader-contents {
    padding: 4px 18px;
  }
  .reader-contents #toc a {
    min-height: 44px;
  }
  .subject-entry>.icon {
    width: 32px;
    height: 32px;
  }
}
@media(max-height:700px) and (min-width:781px) {
  .brand {
    padding-block: 18px;
  }
  .sidebar-bottom {
    padding-block: 8px;
  }
  .sidebar-bottom p {
    display: none;
  }
  .sidebar-scroll {
    padding-bottom: 10px;
  }
  .sidebar-label {
    padding-top: 10px;
  }
}
@media(prefers-reduced-motion:reduce) {
  *,*::before,*::after {
    transition: none!important;
    scroll-behavior: auto!important;
  }
}
.document-header[id] {
  scroll-margin-top: 90px;
}
.more-actions {
  position: relative;
  font-size: 14px;
}
.more-actions>summary {
  font-size: 14px;
  min-height: 36px;
  padding: 5px 0;
  text-decoration: none;
  text-underline-offset: 5px;
  font-weight: 400;
}
.more-actions>div {
  position: absolute;
  right: 0;
  top: 100%;
  z-index: 12;
  min-width: 190px;
  background: #2b4033;
  border: 1px solid #829581;
  padding: 12px 18px;
  box-shadow: 0 10px 24px #0006;
}
.more-actions>div a {
  display: flex;
  min-height: 44px;
  white-space: nowrap;
}
.provenance-date-note {
  font-size: 14px;
  color: var(--muted);
  margin-top: 18px;
  line-height: 1.9;
}
.subject-entry::after {
  content: '';
  position: absolute;
  top: 6px;
  right: 6px;
  width: 19px;
  height: 19px;
  border-top: 1px solid #829783;
  border-right: 1px solid #829783;
  pointer-events: none;
}
.source-relations::before,.provenance-record::before {
  content: '';
  position: absolute;
  top: 7px;
  left: 7px;
  width: 24px;
  height: 24px;
  border-top: 1px solid #8caaa9;
  border-left: 1px solid #8caaa9;
  pointer-events: none;
}
.utility-icon {
  stroke: currentColor;
  fill: none;
  stroke-width: 1.5;
  stroke-linecap: round;
  stroke-linejoin: round;
}
.bt-fill-ink {
  fill: var(--baita-ink);
}
.bt-fill-silver {
  fill: var(--baita-silver);
}
.bt-fill-field {
  fill: var(--baita-field);
}
.bt-fill-warm {
  fill: var(--baita-warm);
}
.bt-fill-niche {
  fill: var(--baita-niche);
}
.bt-stroke-ink {
  stroke: var(--baita-ink);
}
.bt-stroke-silver {
  stroke: var(--baita-silver);
}
