/* Firm operational type without replacing the blog's editorial serif voice.
   Page styles contain font shorthands; reset the actual role after those rules. */
#main-content :is(.journal-public, .studio-workspace, .writer-workspace, .document-workspace) {
  font-family: var(--nylon-type-ui);
  font-size: 15.5px;
  font-weight: 500;
  color: var(--ny-text);
}

/* Listing: clear metadata and a substantial serif title, rather than faded
   captions around an otherwise empty row. */
#main-content .studio-workspace .studio-heading h1,
#main-content .document-workspace .document-page-heading h1 {
  font-family: var(--nylon-type-ui);
  font-weight: 700;
  letter-spacing: -.02em;
}
#main-content .journal-public .journal-heading h1 {
  font-family: var(--nylon-type-paper, serif);
  font-weight: 700;
  letter-spacing: -.012em;
}
#main-content .journal-public .journal-heading p:not(.journal-eyebrow),
#main-content .studio-workspace .studio-heading p,
#main-content .document-workspace .document-page-heading p {
  font-size: 15px;
  font-weight: 500;
  color: var(--ny-muted);
}
#main-content .journal-public .journal-article-link h2,
#main-content .studio-workspace .studio-article h3,
#main-content .journal-public-article .journal-post-heading h1,
#main-content .document-workspace .document-article-heading h2 {
  font-family: var(--nylon-type-reading, serif);
  font-weight: 700;
  color: var(--ny-text);
}
#main-content .journal-public .journal-article-link p,
#main-content .studio-workspace :is(.studio-summary, .studio-review) {
  font-size: 15px;
  font-weight: 500;
  line-height: 1.75;
}
#main-content .journal-public .journal-article-meta,
#main-content .journal-public .journal-article-meta time,
#main-content .studio-workspace .studio-article-meta,
#main-content .studio-workspace .studio-article-meta time {
  font-family: var(--nylon-type-ui);
  font-size: 13px;
  font-weight: 500;
}
#main-content .journal-public .journal-article-meta :is(strong, .journal-section-label),
#main-content .studio-workspace .studio-state {
  font-weight: 650;
}
#main-content .journal-public .journal-heading .journal-eyebrow,
#main-content .journal-public :is(.journal-count, .journal-guide-link),
#main-content .studio-workspace :is(.studio-result-count, .studio-page-scope, .studio-native-note) {
  font-family: var(--nylon-type-ui);
  font-size: 13px;
  font-weight: 500;
}

/* Navigation and actions retain their native underline and arrow motion. */
#main-content .journal-public :is(.journal-public-links a, .journal-public-menu > summary),
#main-content .studio-workspace :is(.studio-workspace-links > a, .studio-row-actions > a, .studio-more > summary, .studio-more > div > a, .studio-next-action),
#main-content .writer-workspace :is(.writing-route-nav a, .writer-pane-tabs button, .writer-mobile-tabs button),
#main-content .document-workspace :is(.writing-route-nav a, .document-source-tabs a, .document-outline > summary, .document-restore > summary),
#main-content .journal-public-article .journal-reading-actions :is(a, button, summary) {
  font-family: var(--nylon-type-ui);
  font-weight: 600;
}
#main-content .studio-workspace .studio-status-tabs > a,
#main-content .studio-workspace .studio-status-tabs > a > span {
  font-weight: 600;
}
#main-content .studio-workspace .studio-status-tabs > a[aria-current],
#main-content .writer-workspace :is(.writer-pane-tabs button[aria-selected=true], .writer-mobile-tabs button[aria-selected=true]),
#main-content .document-workspace .document-source-tabs a[aria-current] {
  font-weight: 700;
}

/* Inputs must not silently return to regular weight through a page's `font:`.
   The editable body is UI sans; the reading preview remains serif. */
#main-content .journal-public .journal-search input,
#main-content .studio-workspace :is(input, select, button),
#main-content .writer-workspace :is(input, textarea, select, button),
#main-content .journal-public-article .blog-form :is(input[type=text], textarea, select) {
  font-family: var(--nylon-type-ui);
  font-weight: 500;
}
#main-content .writer-workspace .writer-sheet textarea {
  font-size: 16px;
  font-weight: 500;
  line-height: 1.85;
}
#main-content .writer-workspace .writer-title {
  font-weight: 700;
}
#main-content .writer-workspace .writer-title::placeholder {
  opacity: 1;
  color: var(--ny-muted);
}
#main-content .journal-public .journal-search button,
#main-content .studio-workspace :is(.studio-primary, button),
#main-content .writer-workspace :is(.writer-save-buttons > button, .writer-tools-heading h2, .writer-tool b),
#main-content .journal-public-article .blog-button,
#main-content .document-workspace .document-restore button {
  font-family: var(--nylon-type-ui);
  font-weight: 650;
}
#main-content .writer-workspace :is(.writer-meta > label, .writer-fold > summary, .writer-fold-body > label),
#main-content .journal-public-article .blog-form :is(label, legend) {
  font-weight: 600;
  color: var(--ny-text);
}
#main-content .writer-workspace :is(.writer-review-note, .writer-save-state [data-autosave-hint], .writer-preview-status, .writer-tool span:not(.tool-icon), .writer-tool-note, .writer-charcount),
#main-content .journal-public-article :is(.reading-meta-line, .reading-author-tools, .reading-composer-meta, .wh-consent-note p, .blog-muted, .blog-toolbar),
#main-content .document-workspace :is(.document-source-note, .document-version-total, .document-version-meta, .document-version-top, .document-comparison, .document-article-end) {
  font-family: var(--nylon-type-ui);
  font-size: 13px;
  font-weight: 500;
}
#main-content .writer-workspace .writer-state,
#main-content .document-workspace :is(.document-version-title, .document-version-top strong, .document-snapshot-heading strong) {
  font-weight: 650;
}
#main-content .writer-workspace .writer-preview-title {
  font-family: var(--nylon-type-reading, serif);
  font-weight: 700;
}

/* A complete reading family is supplied by the shared type system. Keep long
   text comfortably open, with deliberate medium strokes instead of UI bold. */
#main-content .journal-public-article .journal-prose,
#main-content .document-workspace .document-prose,
#main-content .writer-workspace .writer-preview-body {
  font-family: var(--nylon-type-reading, serif);
  font-size: 17px;
  font-weight: var(--nylon-reading-weight, 500);
  line-height: 1.85;
  color: var(--ny-text);
}
#main-content .journal-public-article .journal-prose :is(h1, h2, h3, h4, h5, h6),
#main-content .document-workspace .document-prose :is(h1, h2, h3, h4, h5, h6),
#main-content .writer-workspace .writer-preview-body :is(h1, h2, h3, h4, h5, h6) {
  font-family: var(--nylon-type-reading, serif);
  font-weight: 700;
}
#main-content .journal-public-article .journal-prose strong,
#main-content .document-workspace .document-prose strong,
#main-content .writer-workspace .writer-preview-body strong {
  font-weight: 700;
}
#main-content .journal-public-article .journal-prose :is(code, pre code),
#main-content .document-workspace .document-prose :is(code, pre code),
#main-content .writer-workspace .writer-preview-body :is(code, pre code) {
  font-family: var(--nylon-type-code, monospace);
  font-weight: 400;
}
#main-content .journal-public-article .journal-prose :is(table, figcaption),
#main-content .document-workspace .document-prose :is(table, figcaption),
#main-content .writer-workspace .writer-preview-body table {
  font-family: var(--nylon-type-ui);
  font-weight: 500;
}
#main-content .journal-public-article .journal-prose th,
#main-content .document-workspace .document-prose th,
#main-content .writer-workspace .writer-preview-body th {
  font-weight: 650;
}
#main-content .journal-public-article .blog-comment .blog-preserve,
#main-content .journal-public-article :is(.ny-askbox-q, .ny-askbox-a) {
  font-family: var(--nylon-type-ui);
  font-size: 15.5px;
  font-weight: 500;
}
#main-content .journal-public-article :is(.blog-component-section, .blog-comments, .blog-activity) h2 {
  font-family: var(--nylon-type-ui);
  font-weight: 650;
}
#main-content .journal-public-article .reading-outline-slot .reading-toc-links a,
#main-content .writer-workspace .writer-outline-item,
#main-content .document-workspace .document-outline a {
  font-family: var(--nylon-type-ui);
  font-weight: 500;
}

@media (max-width: 800px) {
  #main-content .studio-workspace .studio-summary,
  #main-content .studio-workspace .studio-review,
  #main-content .journal-public .journal-article-link p {
    font-size: 14px;
  }
  #main-content .journal-public-article .journal-prose,
  #main-content .document-workspace .document-prose,
  #main-content .writer-workspace .writer-preview-body {
    font-size: 16.5px;
  }
  #main-content .writer-workspace :is(.writer-save-state [data-autosave-hint], .writer-charcount, .writer-meta .writer-focus-toggle) {
    font-size: 13px;
  }
}

/* Printing is ink on paper, independent of the screen theme. */
@media print {
  #main-content .journal-public-article .journal-prose,
  #main-content .document-workspace .document-prose {
    color: #000;
  }
}
