/* The Indexed Format — a single-column manuscript page.
   Text in Source Serif 4; tables, captions, and labels in Source Sans 3. */

:root {
    --cs-serif: 'Source Serif 4', 'Source Serif Pro', Charter, Georgia, 'Times New Roman', serif;
    --cs-sans: 'Source Sans 3', 'Source Sans Pro', 'Helvetica Neue', Helvetica, Arial, sans-serif;
    --cs-ink: #1a1a1a;
    --cs-ink-2: #444;
    --cs-ink-3: #6b6b6b;
    --cs-rule: #1a1a1a;
    --cs-line: #d6d6d6;
    --cs-line-soft: #e8e8e8;
    --cs-link: #1f4e9c;
    --cs-bg: #fff;
    --cs-measure: 44rem;
}

/* ---- page frame ------------------------------------------------------- */

html { -webkit-text-size-adjust: 100%; }
body.cs-page {
    margin: 0;
    background: var(--cs-bg);
    color: var(--cs-ink);
    font-family: var(--cs-serif);
    font-size: 18px;
    line-height: 1.6;
    -webkit-font-smoothing: antialiased;
    text-rendering: optimizeLegibility;
}
.cs-skip { position: absolute; left: -999px; top: 8px; padding: 6px 10px; background: #fff; color: var(--cs-ink); }
.cs-skip:focus { left: 8px; z-index: 10; }

.cs-topbar { border-bottom: 1px solid var(--cs-line); font-family: var(--cs-sans); font-size: 15px; background: #fff; }
.cs-topbar__inner { max-width: var(--cs-measure); margin: 0 auto; padding: 12px 20px; display: flex; justify-content: space-between; align-items: center; gap: 16px; }
.cs-topbar__site { color: var(--cs-ink); text-decoration: none; font-weight: 600; letter-spacing: 0.01em; }
.cs-topbar__site:hover { text-decoration: underline; }
.cs-topbar__pdf { display: inline-flex; align-items: center; gap: 6px; color: var(--cs-ink); text-decoration: none; font-weight: 600; }
.cs-topbar__pdf:hover { text-decoration: underline; }

.cs-main { max-width: var(--cs-measure); margin: 0 auto; padding: 40px 20px 60px; }
.cs-main--embedded { padding-top: 0; }

.cs-footer { border-top: 1px solid var(--cs-line); font-family: var(--cs-sans); font-size: 14px; color: var(--cs-ink-3); }
.cs-footer p { max-width: var(--cs-measure); margin: 0 auto; padding: 16px 20px 28px; }
.cs-footer a { color: inherit; }

/* ---- links ------------------------------------------------------------ */

.cs-paper a { color: var(--cs-link); text-decoration: none; }
.cs-paper a:hover, .cs-paper a:focus { text-decoration: underline; }
.cs-paper a.cs-x { color: var(--cs-link); }
.cs-paper :target { scroll-margin-top: 16px; }

/* ---- title block ------------------------------------------------------ */

.cs-title { margin: 0 0 36px; padding-bottom: 24px; border-bottom: 1px solid var(--cs-line); }
.cs-title h1 { font-family: var(--cs-serif); font-size: 32px; line-height: 1.25; font-weight: 700; letter-spacing: -0.005em; margin: 0 0 18px; }
.cs-author { font-size: 19px; margin: 0 0 4px; display: flex; align-items: center; gap: 6px; }
.cs-orcid { display: inline-flex; line-height: 0; }
.cs-affiliation { font-size: 16px; color: var(--cs-ink-2); margin: 0 0 10px; line-height: 1.45; }
.cs-meta { font-family: var(--cs-sans); font-size: 15px; color: var(--cs-ink-3); margin: 0 0 18px; display: flex; flex-wrap: wrap; gap: 4px 18px; }
.cs-meta a { color: inherit; }
.cs-pdfline { margin: 0 0 14px; display: flex; flex-wrap: wrap; align-items: center; gap: 10px 14px; font-family: var(--cs-sans); }
.cs-pdf { display: inline-flex; align-items: center; gap: 8px; padding: 9px 16px; border: 1.5px solid var(--cs-ink); border-radius: 3px; color: var(--cs-ink) !important; font-weight: 600; font-size: 15px; text-decoration: none !important; background: #fff; }
.cs-pdf:hover, .cs-pdf:focus { background: var(--cs-ink); color: #fff !important; }
.cs-pdfline__note { font-size: 15px; color: var(--cs-ink-3); }
.cs-status { font-family: var(--cs-sans); font-size: 14px; color: var(--cs-ink-3); margin: 0; line-height: 1.5; }

/* ---- headings --------------------------------------------------------- */

.cs-paper h2 { font-family: var(--cs-serif); font-size: 23px; line-height: 1.3; font-weight: 700; margin: 44px 0 14px; }
.cs-paper h2 .cs-num { display: inline-block; min-width: 1.6em; }
.cs-paper h2 .cs-num[aria-hidden="true"] { display: none; }
.cs-paper h3 { font-family: var(--cs-serif); font-size: 19px; line-height: 1.35; font-weight: 700; margin: 30px 0 10px; }
.cs-paper h2.cs-part { font-size: 27px; margin-top: 64px; padding-top: 28px; border-top: 1px solid var(--cs-line); }
.cs-abstract h2, .cs-citation h2, .cs-supplement--note h2 { margin-top: 0; }

/* ---- text ------------------------------------------------------------- */

.cs-paper p { margin: 0 0 1em; }
.cs-abstract { margin: 0 0 40px; }
.cs-abstract > p { font-size: 17px; }
.cs-keywords, .cs-pss { font-size: 16px; color: var(--cs-ink-2); }
.cs-section { margin: 0; }
.cs-identity { margin: 1.3em 1.8em 1.5em; padding: 0; font-size: 17.5px; line-height: 1.55; }
.cs-identity p { margin: 0; }
.cs-runin { }
.cs-supp__note { font-size: 16px; color: var(--cs-ink-2); }

/* ---- tables ----------------------------------------------------------- */

.cs-table { margin: 2em 0 2.2em; font-family: var(--cs-sans); }
.cs-table figcaption { font-size: 15.5px; line-height: 1.4; margin: 0 0 8px; }
.cs-table__num { font-weight: 700; }
.cs-table__num a { color: inherit; }
.cs-table__title { font-style: italic; }
.cs-table__scroll { overflow-x: auto; -webkit-overflow-scrolling: touch; }
.cs-table table { width: 100%; border-collapse: collapse; font-size: 14.5px; line-height: 1.4; border-top: 1.5px solid var(--cs-rule); border-bottom: 1.5px solid var(--cs-rule); }
.cs-table thead th { text-align: left; font-weight: 600; padding: 8px 10px 8px 0; border-bottom: 1px solid var(--cs-rule); vertical-align: bottom; }
.cs-table tbody th, .cs-table tbody td { text-align: left; font-weight: 400; padding: 8px 10px 8px 0; border-bottom: 1px solid var(--cs-line-soft); vertical-align: top; }
.cs-table tbody tr:last-child th, .cs-table tbody tr:last-child td { border-bottom: 0; }
.cs-table tbody th { font-weight: 600; }
.cs-table th:last-child, .cs-table td:last-child { padding-right: 0; }
.cs-table table p { margin: 0 0 0.45em; }
.cs-table table p:last-child { margin-bottom: 0; }
.cs-table__note { font-size: 14px; line-height: 1.45; color: var(--cs-ink-2); margin: 8px 0 0; }

/* ---- figures ---------------------------------------------------------- */

.cs-figure { margin: 2em 0 2.2em; padding: 0; font-family: var(--cs-sans); }
.cs-figure svg { display: block; width: 100%; height: auto; border: 1px solid var(--cs-line-soft); }
.cs-figure figcaption { font-size: 15px; line-height: 1.45; margin: 10px 0 0; color: var(--cs-ink-2); }
.cs-figure figcaption .cs-table__num { color: var(--cs-ink); }

/* ---- references ------------------------------------------------------- */

.cs-refs { font-size: 16px; line-height: 1.5; }
.cs-ref { margin: 0 0 0.6em; padding-left: 2em; text-indent: -2em; overflow-wrap: break-word; }
.cs-ref a { overflow-wrap: anywhere; }

/* ---- supplement, citation -------------------------------------------- */

.cs-supplement--note { margin-top: 44px; }
.cs-citation { margin-top: 44px; padding-top: 24px; border-top: 1px solid var(--cs-line); }
.cs-citation__text { padding-left: 2em; text-indent: -2em; overflow-wrap: anywhere; }

/* ---- small screens ---------------------------------------------------- */

@media (max-width: 640px) {
    body.cs-page { font-size: 17px; }
    .cs-main { padding: 28px 16px 48px; }
    .cs-topbar__inner, .cs-footer p { padding-left: 16px; padding-right: 16px; }
    .cs-title h1 { font-size: 26px; }
    .cs-paper h2 { font-size: 21px; margin-top: 36px; }
    .cs-paper h3 { font-size: 18px; }
    .cs-identity { margin-left: 1em; margin-right: 1em; }
    .cs-table table { font-size: 13.5px; min-width: 520px; }
    .cs-refs { font-size: 15px; }
}

/* ---- print ------------------------------------------------------------ */

@media print {
    .cs-topbar, .cs-footer, .cs-skip, .cs-pdfline { display: none; }
    body.cs-page { font-size: 11pt; }
    .cs-main { max-width: none; padding: 0; }
    .cs-paper a { color: inherit; }
    .cs-table, .cs-figure { break-inside: avoid; }
    .cs-paper h2, .cs-paper h3 { break-after: avoid; }
}
