/* Shared reading-room chrome. Screen refinements leave the PDF layout intact. */
.colo-logo.logo-dk { display:none; }
.dd-mobile { display:none; }

@media screen {
  :root:not([data-theme-mode="dark"]) {
    --ink:#1d1d26;
    --ink-2:#54545f;
    --ink-3:#6b6b78;
    --ink-body:#30303a;
    --line:#e0e0e7;
    --line-2:#c8c8d2;
    --paper-2:#f6f6f8;
    --bench-human:#b8b8c2;
  }
  :root[data-theme-mode="dark"] { --bench-human:#9890b0; }

  .mast-row { gap:24px; }
  .mast-row > a { display:block; flex:none; width:136px; }
  .mast-logo { width:100%; height:auto; }
  .mast-mid { flex:1; text-align:center; text-wrap:balance; }
  .mast-right { display:flex; align-items:center; flex:none; gap:12px; }
  .mast .cta { margin:0; padding:9px 18px; font-size:13px; letter-spacing:.06em; white-space:nowrap; }
  .theme-btn { width:40px; height:40px; margin:0; }
  :root[data-theme-mode="dark"] .mast-logo.logo-dk { display:block; }
  :root[data-theme-mode="dark"] .colo-logo.logo-lt { display:none; }
  :root[data-theme-mode="dark"] .colo-logo.logo-dk { display:block; }
  .colophon > a { display:inline-block; vertical-align:top; }

  .paper { grid-template-columns:120px minmax(0,1fr) auto; }
  .paper:hover { opacity:1; }
  .paper .go {
    align-self:start; padding:5px 0; color:var(--ink);
    background:var(--gtext) left bottom / 0 2px no-repeat;
    transition:background-size .18s ease;
  }
  .paper:hover .go, .paper:focus-visible .go { background-size:100% 2px; }
  a.lnk, .ce-link, .refs a {
    background:var(--gtext) left bottom / 0 2px no-repeat;
    text-decoration:none;
    transition:background-size .18s ease, border-color .18s ease;
  }
  a.lnk:hover, .ce-link:hover, .refs a:hover {
    color:var(--ink); border-color:transparent; background-size:100% 2px;
  }
  sup.cite a { color:var(--ink-2); }
  sup.cite a:hover { color:var(--ink); text-decoration-color:currentColor; }
  a:focus-visible, .theme-btn:focus-visible { outline:2px solid var(--ink); outline-offset:5px; }

  .stat { display:grid; grid-template-columns:auto minmax(0,1fr); align-items:center; gap:32px; }
  .stat .cap { max-width:42ch; }
  .paper-breadcrumb { display:flex; flex-wrap:wrap; gap:8px 12px; margin-top:28px; font-size:13px; color:var(--ink-3); }
  .paper-breadcrumb + .byline { margin-top:18px; }
  .bmk-sw.is-l, .bmk-fill.is-l { background:var(--bench-human); }

  @media (max-width:960px) {
    .mast-mid { display:none; }
    .mast-right { margin-left:auto; }
  }
  @media (max-width:720px) {
    .paper { grid-template-columns:52px minmax(0,1fr); gap:16px 20px; padding:32px 0; }
    .paper .no { grid-row:1 / span 2; }
    .paper .go { grid-column:2; justify-self:start; padding-top:0; }
  }
  @media (max-width:680px) {
    .fig.dd > svg { display:none; }
    .dd-mobile { display:grid; gap:18px; text-align:center; }
    .dd-mobile ol { display:grid; gap:24px; list-style:none; }
    .dd-mobile li { padding:22px 16px; border:1px solid var(--line-2); border-radius:12px; background:var(--paper-2); }
    .dd-mobile h3 { font:500 20px/1.3 var(--ft); color:var(--ink); }
    .dd-mobile li p { margin-top:8px; font-size:16px; color:var(--ink-2); }
    .dd-mobile .dd-between { display:block; margin-bottom:12px; font-size:13px; color:var(--ink-3); }
    .dd-mobile .dd-end { font-size:16px; color:var(--ink-2); }
    .dd-mobile .dd-end strong { color:var(--ink); font-weight:500; }
  }
  @media (max-width:640px) {
    .mast-row { gap:12px; }
    .mast-row > a { width:120px; }
    .mast-right { gap:8px; }
    .mast-no { display:none; }
    .mast .cta { padding:10px 12px; font-size:12px; letter-spacing:.02em; }
    .stat { grid-template-columns:1fr; gap:12px; }
  }
  @media (max-width:380px) {
    .mast-row > a { width:104px; }
    .mast .cta { padding:10px; font-size:11px; }
    .paper { grid-template-columns:42px minmax(0,1fr); gap:14px; }
  }
  @media (prefers-reduced-motion:reduce) {
    .cta { animation:none; }
    .paper .go, a.lnk, .ce-link, .refs a { transition:none; }
  }
}

@media screen {
  .resource-links { display: flex; flex-wrap: wrap; gap: 12px 28px; margin: 0 0 32px; font-size: 14px; color: var(--ink); }
  .resource-links a { color: inherit; text-decoration: underline; text-decoration-color: var(--line); text-underline-offset: 5px; }
  .resource-links a:hover, .resource-links a:focus-visible { text-decoration-color: transparent; background: linear-gradient(90deg, #fbb335, #ff274f, #9f22d4) left bottom / 100% 2px no-repeat; }
}
