/* generated from ~/Desktop/code/blog/theme — edit there, then run build.sh */

/* Tokens. Black and white. Shared by the Obsidian app and Obsidian Publish;
   both put .theme-light / .theme-dark on <body>. */

/* Text face: Noto Serif, Palladium Magazine's body font, with its own fallback chain.
   @import has to be the first rule in the built file; tokens.css is first after the header. */
@import url("https://fonts.googleapis.com/css2?family=Noto+Serif:ital,wght@0,400;0,700;1,400;1,700&display=swap");

:root {
  /* Two faces, Palladium's pairing: a Times-family display for the wordmark and titles,
     Noto Serif for everything read. --id-font (mono) is used only for code. */
  --id-font: "SFMono-Regular", "SF Mono", Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", ui-monospace, monospace;
  --id-font-serif: Times, "Times New Roman", serif;
  --id-font-text: "Noto Serif", Constantia, "Lucida Bright", Georgia, "Times New Roman", serif;
  --id-font-prose: var(--id-font-text);
  --id-font-display: var(--id-font-serif);
  --id-measure: 820px;
  --id-measure-wide: 900px;
  --id-gutter: clamp(1.25rem, 2.5vw, 1.5rem);
  --id-page-inset: clamp(1.5rem, 5vw, 4rem);
  --id-prose-size: 16px;
  --id-prose-lh: 1.45;
  --id-paragraph-gap: 1.2em;
  --id-title-size: 1.75rem;
  --id-small-size: 0.85rem;
  --id-nav-size: 0.9rem;
}

/* Phone and small-tablet reading, shared by Publish and the editor. */
@media (max-width: 750px) {
  :root {
    --id-measure: 100%;
    --id-measure-wide: 100%;
    --id-gutter: 24px;
    --id-prose-size: 15px;
    --id-prose-lh: 1.45;
    --id-title-size: 1.5rem;
    --id-paragraph-gap: 1.4em;
  }
}

/* Light only. Both body classes get the same set, so the editor stays light whatever
   the app theme, and the variables keep the specificity Publish's own rules use. */
.theme-light,
.theme-dark {
  color-scheme: light;
  --id-paper: #ffffff;
  /* Palladium's warm near-black; softer on the eye than #000 over long reading. */
  --id-ink: #282520;
  --id-ink-rgb: 40, 37, 32;
  --id-muted: rgba(0, 0, 0, 0.62);
  --id-faint: rgba(0, 0, 0, 0.40);
  --id-hair: rgba(0, 0, 0, 0.18);
  --id-rule: #282520;
  --id-raised: rgba(0, 0, 0, 0.035);
  --id-selection: rgba(0, 0, 0, 0.12);
  --id-backdrop: rgba(0, 0, 0, 0.35);
  --id-link: #2563eb;
  --id-link-hover: #1d4ed8;
}

/* Obsidian and Publish variables, mapped onto the tokens. */
.theme-light,
.theme-dark {
  --background-primary: var(--id-paper);
  --background-primary-alt: var(--id-paper);
  --background-secondary: var(--id-paper);
  --background-secondary-alt: var(--id-paper);
  --background-modifier-border: var(--id-hair);
  --background-modifier-border-hover: var(--id-faint);
  --background-modifier-border-focus: var(--id-ink);
  --background-modifier-hover: var(--id-raised);
  --background-modifier-active-hover: var(--id-raised);
  --background-modifier-form-field: var(--id-paper);
  --background-modifier-form-field-highlighted: var(--id-paper);
  --background-modifier-message: var(--id-ink);
  --background-modifier-cover: var(--id-backdrop);

  --text-normal: var(--id-ink);
  --text-muted: var(--id-muted);
  --text-faint: var(--id-faint);
  --text-accent: var(--id-link);
  --text-accent-hover: var(--id-link-hover);
  --text-on-accent: var(--id-paper);
  --text-selection: var(--id-selection);
  /* Navigation flashes keep normal text; use a translucent background. */
  --text-highlight-bg: var(--id-selection);
  --highlight-mix-blend-mode: normal;
  --text-error: var(--id-ink);

  --interactive-normal: var(--id-paper);
  --interactive-hover: var(--id-raised);
  --interactive-accent: var(--id-ink);
  --interactive-accent-hover: var(--id-ink);
  --icon-color: var(--id-muted);
  --icon-color-hover: var(--id-ink);
  --icon-color-active: var(--id-ink);
  --icon-color-focused: var(--id-ink);

  --link-color: var(--id-link);
  --link-color-hover: var(--id-link-hover);
  --link-external-color: var(--id-link);
  --link-external-color-hover: var(--id-link-hover);
  --link-unresolved-color: var(--id-muted);
  --link-decoration: underline;
  --link-external-decoration: underline;

  --tag-color: var(--id-muted);
  --tag-color-hover: var(--id-ink);
  --tag-background: transparent;
  --tag-background-hover: transparent;
  --tag-border-width: 0;
  --tag-radius: 0;

  --code-normal: var(--id-ink);
  --code-background: var(--id-raised);
  --code-comment: var(--id-faint);
  --code-function: var(--id-ink);
  --code-important: var(--id-ink);
  --code-keyword: var(--id-ink);
  --code-operator: var(--id-muted);
  --code-property: var(--id-ink);
  --code-punctuation: var(--id-muted);
  --code-string: var(--id-muted);
  --code-tag: var(--id-ink);
  --code-value: var(--id-muted);
  --code-radius: 0;

  --blockquote-border-color: var(--id-ink);
  --blockquote-border-thickness: 2px;
  --blockquote-color: var(--id-muted);
  --blockquote-background-color: transparent;
  --hr-color: var(--id-rule);
  --hr-thickness: 1px;
  --table-border-color: var(--id-hair);
  --table-header-border-color: var(--id-hair);
  --table-header-background: transparent;
  --table-header-background-hover: transparent;
  --table-row-background-hover: transparent;
  --table-row-alt-background: transparent;
  --table-selection: var(--id-selection);
  --table-border-width: 0;

  --checkbox-radius: 0;
  --checkbox-color: var(--id-ink);
  --checkbox-color-hover: var(--id-ink);
  --checkbox-border-color: var(--id-faint);
  --checkbox-border-color-hover: var(--id-ink);
  --checkbox-marker-color: var(--id-paper);
  --checklist-done-color: var(--id-muted);

  --inline-title-color: var(--id-ink);
  --inline-title-font: var(--id-font-display);
  --inline-title-size: var(--id-title-size);
  --inline-title-weight: 700;
  --inline-title-line-height: 1.15;
  --inline-title-margin-bottom: 1.6rem;

  --footnote-divider-color: var(--id-rule);
  --footnote-divider-color-active: var(--id-rule);
  --footnote-id-color: var(--id-faint);
  --footnote-id-delimiter: "";
  --footnote-line-height: 1.55;

  /* Navigation and outline (app and Publish read these) */
  --nav-item-color: var(--id-muted);
  --nav-item-color-hover: var(--id-ink);
  --nav-item-color-active: var(--id-ink);
  --nav-item-background-hover: transparent;
  --nav-item-background-active: transparent;
  --nav-item-weight: 400;
  --nav-item-weight-hover: 400;
  --nav-item-weight-active: 400;
  --nav-parent-item-color: var(--id-muted);
  --nav-parent-item-weight: 400;
  --nav-collapse-icon-color: var(--id-faint);
  --nav-collapse-icon-color-hover: var(--id-ink);
  --nav-indentation-guide-color: var(--id-hair);
  --indentation-guide-color: var(--id-hair);
  --outline-heading-color: var(--id-muted);
  --outline-heading-color-active: var(--id-ink);
  --outline-heading-weight-active: 400;
  --popover-width: 360px;
  --popover-font-size: 0.85rem;
  --footnote-size: 0.85em;
  --logo-radius: 0;

  --scrollbar-bg: transparent;
  --scrollbar-thumb-bg: var(--id-hair);
  --scrollbar-active-thumb-bg: var(--id-faint);

  --file-line-width: var(--id-measure-wide);
  --font-text-theme: var(--id-font-prose);
  --font-interface-theme: var(--id-font-prose);
  --font-monospace-theme: var(--id-font);
  --font-text: var(--id-font-prose);
  --font-interface: var(--id-font-prose);
  --font-monospace: var(--id-font);
  --line-height-normal: var(--id-prose-lh);
  --line-height-tight: 1.3;

  --radius-s: 0;
  --radius-m: 0;
  --radius-l: 0;
  --radius-xl: 0;
  --input-radius: 0;
  --button-radius: 0;
  --clickable-icon-radius: 0;
  --tab-radius-active: 0;
  --callout-radius: 0;
  --modal-radius: 0;
  --prompt-border-radius: 0;
  --embed-radius: 0;
  --image-radius: 0;
  --shadow-s: none;
  --shadow-l: none;
}

/* Article typography. Shared verbatim by the Obsidian app (Reading view, popovers,
   Live Preview widgets) and Obsidian Publish. Everything is .markdown-rendered. */

.markdown-preview-view,
.markdown-rendered {
  color: var(--id-ink);
  background: var(--id-paper);
  font-family: var(--id-font-prose);
  font-size: var(--id-prose-size);
  font-kerning: normal;
  font-variant-ligatures: none;
  line-height: var(--id-prose-lh);
}

/* The sizer runs to the wide measure; prose blocks hold the reading measure at its
   left edge; tables, code blocks, and figures may run the full width. */
.markdown-preview-view .markdown-preview-sizer,
.published-container .markdown-preview-sizer {
  min-width: 0;
  max-width: var(--id-measure-wide);
  margin-inline: auto;
  padding: 1.5rem var(--id-gutter) 10rem;
  box-sizing: border-box;
}

.markdown-preview-sizer > div,
.markdown-preview-sizer > h1.page-header {
  max-width: var(--id-measure);
}

.markdown-preview-sizer > .el-table,
.markdown-preview-sizer > .el-pre,
.markdown-preview-sizer > div:has(> .image-embed),
.markdown-preview-sizer > div:has(> p > .image-embed) {
  max-width: none;
}

/* Publish prints the filename as h1.page-header. When the note carries its own H1,
   that is the title and the filename header is hidden; notes without an H1 keep it. */
.markdown-preview-sizer:has(> .el-h1) > h1.page-header,
.markdown-preview-sizer:has(> h1:not(.page-header)) > h1.page-header {
  display: none;
}

/* Headings: plain bold. Titles in the display face, sections in the reading face, no rules. */
.markdown-rendered h1,
.markdown-rendered h2,
.markdown-rendered h3,
.markdown-rendered h4,
.markdown-rendered h5,
.markdown-rendered h6,
.markdown-rendered .inline-title,
.inline-title,
h1.page-header {
  position: static;
  color: var(--id-ink);
  font-family: var(--id-font-prose);
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: 0;
  text-transform: none;
}

.markdown-rendered h1,
.markdown-rendered .inline-title,
.inline-title,
h1.page-header {
  margin: 0 0 1.2rem;
  padding: 0;
  border: 0;
  font-family: var(--id-font-display);
  font-size: var(--id-title-size);
  line-height: 1.15;
  letter-spacing: 0;
}

.markdown-rendered h1::before,
.markdown-rendered h3::before,
.markdown-rendered h4::before,
.markdown-rendered h5::before,
.markdown-rendered h6::before,
h1.page-header::before {
  content: none;
}

.markdown-rendered h2 {
  margin: 2.2rem 0 0.7rem;
  padding: 0;
  border: 0;
  font-size: 1.2rem;
}

.markdown-rendered h3 {
  margin: 1.9rem 0 0.6rem;
  padding: 0;
  border: 0;
  font-size: 1.05rem;
}

.markdown-rendered h4,
.markdown-rendered h5,
.markdown-rendered h6 {
  margin: 1.6rem 0 0.5rem;
  padding: 0;
  border: 0;
  font-size: 1rem;
  font-weight: 500;
  font-style: italic;
}

.markdown-rendered .heading-collapse-indicator {
  color: var(--id-faint);
}

/* Prose */
.markdown-rendered p {
  margin: 0 0 var(--id-paragraph-gap);
  line-height: var(--id-prose-lh);
}

.markdown-rendered strong {
  color: var(--id-ink);
  font-weight: 700;
}

.markdown-rendered em {
  color: var(--id-muted);
}

.markdown-rendered mark {
  padding: 0 0.15em;
  color: var(--id-paper);
  background: var(--id-ink);
}

.markdown-rendered del {
  color: var(--id-faint);
}

/* Links: blue, underlined. Glossary links are dotted and show the definition on hover. */
.markdown-rendered a,
.markdown-rendered a.internal-link,
.markdown-rendered a.external-link,
.markdown-rendered .internal-link,
.markdown-rendered .external-link {
  color: var(--id-link);
  padding-inline-end: 0;
  background-image: none;
  font-size: 1em;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 0.2em;
}

/* Draw the decorative external-link marker independently of emoji/font fallback. */
.markdown-rendered a.external-link::after {
  content: "";
  display: inline-block;
  width: 0.85em;
  height: 0.85em;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2016%2016%22%3E%3Cpath%20d%3D%22M3%2013%2013%203M3%203h10v10%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2016%2016%22%3E%3Cpath%20d%3D%22M3%2013%2013%203M3%203h10v10%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%221.5%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%2F%3E%3C%2Fsvg%3E") center / contain no-repeat;
  -webkit-print-color-adjust: exact;
  print-color-adjust: exact;
  margin-inline-start: 0.1em;
  color: inherit;
  font-size: 0.85em;
  font-weight: 400;
  line-height: 1;
  text-decoration: none;
  vertical-align: 0.15em;
}

@media (forced-colors: active) {
  .markdown-rendered a.external-link::after { background-color: LinkText; }
}

.markdown-rendered a.external-link:hover::after {
  color: inherit;
}

.markdown-rendered a.internal-link.is-unresolved {
  color: var(--id-muted);
  text-decoration-style: dotted;
}

.markdown-rendered a:hover,
.markdown-rendered a.internal-link:hover,
.markdown-rendered a.external-link:hover {
  color: var(--id-link-hover);
}

.markdown-rendered a.internal-link[href*="Glossary/"],
.markdown-rendered a.internal-link[data-href*="Glossary/"],
.markdown-rendered a.internal-link.glossary {
  cursor: help;
  text-decoration-style: dotted;
  text-decoration-thickness: 2px;
  text-underline-offset: 0.18em;
}

/* Gloss marker: says a definition is waiting, the way the arrow says the link leaves.
   inline-block keeps the dotted underline off the mark itself. */
.markdown-rendered a.internal-link[href*="Glossary/"]::after,
.markdown-rendered a.internal-link[data-href*="Glossary/"]::after,
.markdown-rendered a.internal-link.glossary::after {
  content: "\00b0";
  display: inline-block;
  margin-inline-start: 0.12em;
  color: inherit;
  font-size: 0.95em;
  font-weight: 400;
  line-height: 1;
  text-decoration: none;
  vertical-align: baseline;
}

/* Lists */
.markdown-rendered ul,
.markdown-rendered ol {
  margin: 0 0 1.2em;
  padding-inline-start: 1.6em;
}

.markdown-rendered li {
  margin-block: 0.28rem;
  line-height: var(--id-prose-lh);
}

.markdown-rendered li::marker {
  color: var(--id-muted);
  font-weight: 400;
}

.markdown-rendered li > p {
  margin-bottom: 0.4em;
}

.markdown-rendered input[type="checkbox"] {
  border: 1px solid var(--id-faint);
  border-radius: 0;
  box-shadow: none;
}

.markdown-rendered input[type="checkbox"]:checked {
  background-color: var(--id-ink);
  border-color: var(--id-ink);
}

.markdown-rendered .task-list-item.is-checked {
  color: var(--id-muted);
  text-decoration: none;
}

/* Quote */
.markdown-rendered blockquote {
  margin: 1.6rem 0;
  padding: 0.2rem 0 0.2rem 1.2rem;
  color: var(--id-muted);
  background: transparent;
  border: 0;
  border-left: 1px solid var(--id-faint);
  border-radius: 0;
}

.markdown-rendered blockquote p:last-child {
  margin-bottom: 0;
}

/* Code */
.markdown-rendered code,
.markdown-rendered pre {
  color: var(--id-ink);
  background: var(--id-raised);
  border-radius: 0;
  font-family: var(--id-font);
  font-size: 0.92em;
  font-variant-ligatures: none;
}

.markdown-rendered :not(pre) > code {
  padding: 0.12em 0.36em;
  border: 1px solid var(--id-hair);
}

.markdown-rendered pre {
  overflow-x: auto;
  margin: 1.6rem 0;
  padding: 1rem 1.1rem;
  border: 1px solid var(--id-hair);
  box-shadow: none;
  line-height: 1.55;
}

.markdown-rendered pre code {
  padding: 0;
  background: transparent;
  border: 0;
  font-size: 1em;
}

.markdown-rendered .copy-code-button {
  color: var(--id-faint);
  background: var(--id-paper);
  border: 1px solid var(--id-hair);
  border-radius: 0;
  font-family: var(--id-font);
  font-size: var(--id-small-size);
}

.markdown-rendered .copy-code-button:hover {
  color: var(--id-ink);
  border-color: var(--id-ink);
}

/* Tables: ruled rows, no boxes. */
.markdown-rendered table {
  display: table;
  width: 100%;
  max-width: 100%;
  margin: 1.8rem 0;
  border-collapse: collapse;
  border-spacing: 0;
  border: 0;
  border-top: 1px solid var(--id-rule);
  border-bottom: 1px solid var(--id-rule);
  border-radius: 0;
  font-family: var(--id-font-prose);
  font-size: 0.91em;
  line-height: 1.55;
}

.markdown-rendered th,
.markdown-rendered td {
  padding: 0.7rem 1rem 0.7rem 0;
  color: var(--id-ink);
  background: transparent;
  border: 0;
  border-bottom: 1px solid var(--id-hair);
  text-align: left;
  vertical-align: top;
}

.markdown-rendered th:last-child,
.markdown-rendered td:last-child {
  padding-right: 0;
}

.markdown-rendered tr:last-child td {
  border-bottom: 0;
}

.markdown-rendered th {
  color: var(--id-ink);
  font-weight: 700;
}

.markdown-rendered .table-wrapper {
  overflow-x: auto;
}

/* Rule */
.markdown-rendered hr {
  color: var(--id-rule);
  height: 0;
  margin: 2.7rem 0;
  border: 0;
  border-top: 1px solid var(--id-rule);
}

/* Figures */
.markdown-rendered img {
  max-width: 100%;
  height: auto;
  border: 1px solid var(--id-hair);
  border-radius: 0;
  box-shadow: none;
}

.markdown-rendered .internal-embed.image-embed {
  display: block;
  margin: 1.6rem 0;
}

/* Center images with an explicit width in the note. */
.markdown-rendered .image-embed img[width] {
  display: block;
  margin-inline: auto;
}

/* Set navigation flashes directly: app-level highlight tokens can be overridden. */
.markdown-rendered .is-flashing,
.markdown-source-view.mod-cm6 .is-flashing {
  background-color: var(--id-selection) !important;
  color: var(--id-ink);
  mix-blend-mode: normal;
}

/* Footnotes: a numbered apparatus under a rule. */
.markdown-rendered sup.footnote-ref {
  font-size: 0.72em;
  line-height: 0;
  vertical-align: super;
}

.markdown-rendered sup.footnote-ref a {
  color: var(--id-link);
  text-decoration: none;
}

.markdown-rendered .footnotes {
  margin-top: 3rem;
  padding-top: 1rem;
  border-top: 1px solid var(--id-rule);
  color: var(--id-muted);
  font-size: 0.88em;
  line-height: 1.55;
}

.markdown-rendered .footnotes > hr {
  display: none;
}

.markdown-rendered .footnotes ol {
  margin: 0;
  padding-inline-start: 2em;
}

.markdown-rendered .footnotes li {
  margin-block: 0.45rem;
}

.markdown-rendered .footnotes li::marker {
  color: var(--id-faint);
}

.markdown-rendered .footnotes p {
  margin: 0;
}

.markdown-rendered .footnote-backref {
  margin-inline-start: 0.4em;
  color: var(--id-link);
  text-decoration: none;
}

/* Tags */
.markdown-rendered a.tag,
.markdown-rendered .tag {
  padding: 0;
  color: var(--id-muted);
  background: transparent;
  border: 0;
  border-radius: 0;
  font-size: 0.92em;
  text-decoration: none;
}

.markdown-rendered a.tag:hover {
  color: var(--id-ink);
  text-decoration: underline;
}

/* Callouts: every type is one look, no icon. */
.markdown-rendered .callout {
  --callout-color: var(--id-ink-rgb) !important;
  margin: 1.6rem 0;
  padding: 0.5rem 0 0.5rem 1.2rem;
  background: transparent;
  border: 0;
  border-left: 1px solid var(--id-faint);
  border-radius: 0;
  mix-blend-mode: normal;
}

.markdown-rendered .callout-icon {
  display: none;
}

.markdown-rendered .callout-title {
  padding: 0 0 0.2rem;
  color: var(--id-ink);
  font-size: 1em;
  font-weight: 700;
}

.markdown-rendered .callout-content {
  color: var(--id-ink);
}

.markdown-rendered .callout-content > p:last-child {
  margin-bottom: 0;
}

/* Embeds and properties */
.markdown-rendered .markdown-embed,
.markdown-rendered .file-embed,
.markdown-rendered .internal-embed:not(.image-embed) {
  padding: 0 0 0 1.2rem;
  background: transparent;
  border: 0;
  border-left: 2px solid var(--id-hair);
  border-radius: 0;
}

.markdown-rendered .markdown-embed-link,
.markdown-rendered .file-embed-link {
  color: var(--id-faint);
}

.metadata-container,
.metadata-properties,
.metadata-property {
  background: transparent;
  border-color: var(--id-hair);
  border-radius: 0;
}

.metadata-properties-heading,
.metadata-property-key {
  color: var(--id-muted);
  font-size: var(--id-small-size);
}

/* Hover glossary: a square card, one rule, no shadow. Same selector in app and Publish. */
.popover.hover-popover {
  max-width: 360px;
  color: var(--id-ink);
  background: var(--id-paper);
  border: 1px solid var(--id-ink);
  border-radius: 0;
  box-shadow: none;
}

.hover-popover .markdown-preview-view,
.hover-popover .markdown-rendered {
  font-size: 0.85rem;
  line-height: 1.55;
}

.hover-popover .markdown-preview-sizer {
  width: 100% !important;
  min-height: 0 !important;
  max-width: none !important;
  padding: 1rem 1.1rem !important;
}

.hover-popover .markdown-preview-sizer > div {
  max-width: none;
}

.hover-popover .inline-title,
.hover-popover h1.page-header,
.hover-popover .markdown-embed-title,
.hover-popover .metadata-container {
  display: none;
}

.hover-popover .markdown-rendered h1 {
  margin: 0 0 0.6rem;
  padding: 0;
  border: 0;
  font-size: 0.95rem;
}

.hover-popover .markdown-rendered p:last-child {
  margin-bottom: 0;
}

/* Home note: `cssclasses: [index]`. The wordmark is its title, so the note's own h1 is
   hidden; a plain list or a date-and-title table reads as rows separated by whitespace,
   and h3 gives small group labels in the display face. */
.markdown-rendered.index h1 {
  display: none;
}

.markdown-rendered.index p {
  max-width: 52ch;
}

.markdown-rendered.index h3 {
  margin: 1.8rem 0 0.5rem;
  font-family: var(--id-font-display);
  font-size: 1.05rem;
}

.markdown-rendered.index ul {
  margin: 0 0 1.2em;
  padding-inline-start: 0;
  list-style: none;
}

.markdown-rendered.index li {
  margin-block: 0.4rem;
}

.markdown-rendered.index table {
  margin-top: 1.2rem;
  border-top: 0;
  border-bottom: 0;
  font-size: 1em;
}

.markdown-rendered.index thead {
  display: none;
}

.markdown-rendered.index td {
  padding: 0.4rem 0;
  border-bottom: 0;
}

.markdown-rendered.index td:first-child {
  width: 7.5em;
  padding-right: 1.5rem;
  color: var(--id-faint);
  font-size: 0.9em;
  white-space: nowrap;
}

/* Selection and focus */
.markdown-rendered ::selection {
  color: var(--id-ink);
  background: var(--id-selection);
}

.markdown-rendered :focus-visible {
  outline: 2px solid var(--id-ink);
  outline-offset: 2px;
}

/* Obsidian Publish chrome only. Selectors verified against publish.obsidian.md/app.css
   and a live Publish DOM. */

html,
body {
  min-height: 100%;
  margin: 0;
  color: var(--id-ink);
  background: var(--id-paper);
  font-family: var(--id-font-prose);
  font-variant-ligatures: none;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.published-container {
  /* Publish defines its layout variables on this element, so they must be set here. */
  --page-width: var(--id-measure-wide);
  --page-side-padding: var(--id-gutter);
  --page-title-color: var(--id-ink);
  --page-title-font: var(--id-font-display);
  --page-title-size: var(--id-title-size);
  --page-title-weight: 700;
  --page-title-line-height: 1.15;
  --page-title-variant: normal;
  --page-title-style: normal;
  --header-height: 56px;
  --header-background: var(--id-paper);
  --sidebar-left-width: 320px;
  --sidebar-right-width: 0px;
  --sidebar-left-background: var(--id-paper);
  --sidebar-left-border-width: 1px;
  --sidebar-left-border-color: var(--id-hair);
  --sidebar-font-size: var(--id-nav-size);
  --nav-item-color: var(--id-ink);
  --nav-item-color-hover: var(--id-ink);
  --nav-item-color-active: var(--id-ink);
  --nav-item-weight-active: 700;
  --nav-item-border-color: var(--id-hair);
  --nav-item-border-color-hover: var(--id-faint);
  --nav-item-border-color-active: var(--id-ink);
  --nav-parent-item-color: var(--id-ink);
  --nav-parent-item-color-active: var(--id-ink);
  --nav-parent-item-weight: 600;
  --nav-collapse-icon-color: var(--id-faint);
  --nav-collapse-icon-color-collapsed: var(--id-faint);
  --site-name-color: var(--id-ink);
  --site-name-color-hover: var(--id-ink);
  --site-name-font: var(--id-font-prose);
  --site-menu-icon-color: var(--id-muted);
  --site-menu-icon-color-hover: var(--id-ink);
  --list-spacing: 0.15em;
  color: var(--id-ink);
  background: var(--id-paper);
}

.site-body,
.site-body-center-column,
.site-body-center-column-inner,
.render-container,
.render-container-inner,
.publish-renderer {
  width: 100%;
  min-width: 0;
  max-width: none;
  background: var(--id-paper);
}

/* Page title: Publish sets it from --page-title-* at (0,3,1); the rule below matches that. */
.published-container .markdown-rendered h1.page-header {
  max-width: var(--id-measure);
  margin: 0 0 1.6rem;
  padding-bottom: 0.8rem;
  border-bottom: 1px solid var(--id-rule);
  font-family: var(--id-font-prose);
  font-size: var(--id-title-size);
  font-weight: 700;
  letter-spacing: -0.01em;
  line-height: 1.3;
  text-transform: none;
}

/* Publish underlines h1 and h2 at container specificity with its own hairline;
   nothing carries a rule. Publish's own h1.page-header rule is (0,3,1), so the title
   is restated at that specificity. */
.published-container .markdown-rendered h1,
.published-container .markdown-rendered h1.page-header {
  margin: 0 0 1.2rem;
  padding-bottom: 0;
  border-bottom: 0;
  font-family: var(--id-font-display);
  font-size: var(--id-title-size);
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: 0;
}

.published-container .markdown-rendered h2,
.published-container .markdown-rendered h3,
.published-container .markdown-rendered h4,
.published-container .markdown-rendered h5,
.published-container .markdown-rendered h6 {
  padding: 0;
  border: 0;
}

/* Left-aligned page, like Alex's. Publish centres the page when readable line length
   is on (it grows the left column and auto-margins the sizer); both are pinned here. */
.published-container.is-readable-line-width .site-body-left-column {
  flex-basis: var(--sidebar-left-width) !important;
}

.site-body-left-column .site-body-left-column-inner {
  margin-left: 0;
}

.published-container .markdown-preview-sizer {
  margin-left: 0 !important;
}

/* Sizer padding: Publish sets it at (0,3,0) and forces padding-bottom to 0. */
.publish-renderer > .markdown-preview-view > .markdown-preview-sizer {
  padding: 1.5rem var(--id-gutter) 0;
}

.published-container:not(.has-navigation) .publish-renderer > .markdown-preview-view > .markdown-preview-sizer {
  padding-left: var(--id-page-inset);
}

.publish-renderer > .markdown-preview-view {
  padding-bottom: 8rem;
}

/* Header: shown by Publish when navigation is off (single-column layout) and on
   narrow screens. Publish centres it to --page-width; the padding is forced so the
   name aligns with the text below. */
.site-header {
  min-height: var(--header-height);
  color: var(--id-ink);
  background: var(--id-paper);
  border-bottom: 0;
  box-shadow: none;
}

.published-container:not(.has-navigation) .site-header {
  height: auto;
  margin-left: 0 !important;
  padding: 2rem var(--id-gutter) 0 var(--id-page-inset) !important;
  border-bottom: 0 !important;
}

@media screen and (max-width: 750px) {
  .site-header {
    padding-inline: var(--id-gutter);
    border-bottom: 1px solid var(--id-hair);
  }
}

/* Wordmark: the site name as Publish renders it, bold in the display face, the largest
   thing on the page. No logo. */
.site-body-left-column-site-logo,
.site-header-logo {
  display: none;
}

.published-container img {
  border-radius: 0;
}

.site-body-left-column-site-name,
.site-header-text {
  display: inline-block;
  margin: 0;
  padding: 0;
  color: var(--id-ink);
  font-family: var(--id-font-display);
  font-size: 1.4rem;
  font-weight: 700;
  line-height: 1.1;
  text-decoration: none;
}

.site-body-left-column-site-name {
  margin: 0 1.2rem 1.5rem;
}

.site-body-left-column-site-name:hover,
.site-header-text:hover {
  color: var(--id-muted);
  text-decoration: none;
}

/* Left column (only when the site option Show navigation is on) */
.site-body-left-column,
.site-body-left-column-inner,
.nav-view-outer,
.nav-view {
  color: var(--id-muted);
  background: var(--id-paper);
  border-color: var(--id-hair);
}

.site-body-left-column {
  border-right: 1px solid var(--id-hair);
}

.site-body-left-column {
  padding: 28px 24px 0 18px;
}

@media screen and (min-width: 751px) {
  .site-body-left-column {
    /* Match the article's two 1.5rem insets, plus the smaller wordmark's optical offset. */
    padding-top: calc(3rem + 2px);
  }
}

.site-body-left-column-inner {
  padding: 0 0 3rem;
}

.nav-backdrop {
  background: var(--id-backdrop);
}

/* No search; the index and the menu are the navigation. Also turn the site option off. */
.search-view-outer,
.site-header .search-view-outer,
.site-body-left-column .search-view-outer {
  display: none !important;
}

/* Menu: Publish's own tree geometry (chevrons, guide lines, indents) in the reading
   face. Folders semibold, files plain, hover a faint tint, the active file bold with an
   ink guide. Publish reads the --nav-* variables from .published-container. */
.published-container .nav-view-outer .tree-item-self.is-clickable,
.nav-view-outer .tree-item-self.mod-collapsible.is-clickable,
.nav-view-outer .nav-view > .tree-item > .tree-item-children > .tree-item > .tree-item-self {
  border-radius: 0;
  font-family: var(--id-font-prose);
  font-size: var(--id-nav-size);
  line-height: 1.35;
  height: auto;
  min-height: 28px;
  margin-block: 0;
  padding-block: 4px;
}

.nav-view-outer .tree-item-children {
  padding-bottom: 4px;
}

.nav-view-outer .tree-item-self.is-clickable:hover,
.nav-view-outer .nav-view > .tree-item > .tree-item-children > .tree-item > .tree-item-self:hover {
  color: var(--id-ink);
  background: var(--id-raised);
  opacity: 1;
}

.nav-view-outer .tree-item-self.mod-active,
.nav-view-outer .tree-item-self.is-active,
.nav-view-outer .is-active > .tree-item-self {
  color: var(--id-ink);
  background: transparent;
  border-left: 1px solid var(--id-ink);
  font-weight: 700;
}

.nav-view-outer .tree-item-icon,
.nav-view-outer .collapse-icon {
  color: var(--id-faint);
}

.nav-view-outer .tree-item-self.is-clickable:hover > .tree-item-icon {
  color: var(--id-ink);
}

/* No right column: the outline is off in site options and hidden here regardless. */
.site-body-right-column,
.graph-view-outer,
.outline-view-outer {
  display: none !important;
}

/* Buttons and icons */
button,
.clickable-icon,
.site-header .clickable-icon {
  color: var(--id-muted);
  background: transparent;
  border: 1px solid transparent;
  border-radius: 0;
  box-shadow: none;
  font-family: var(--id-font-prose);
}

button:hover,
.clickable-icon:hover,
.site-header .clickable-icon:hover {
  color: var(--id-ink);
  background: transparent;
  border-color: transparent;
}

/* Frontmatter is machinery, not content. */
.published-container .metadata-container {
  display: none;
}

/* No badge. The footer is Publish's fixed bottom-right "Powered by" link. */
.site-footer {
  display: none !important;
}

/* Selection, focus, scrollbars */
::selection {
  color: var(--id-ink);
  background: var(--id-selection);
}

:focus-visible {
  outline: 2px solid var(--id-ink);
  outline-offset: 2px;
}

* {
  scrollbar-color: var(--id-hair) transparent;
  scrollbar-width: thin;
}

::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}

::-webkit-scrollbar-thumb {
  background: var(--id-hair);
  border: 3px solid var(--id-paper);
  border-radius: 0;
}

/* Responsive */
@media (max-width: 750px) {
  .published-container .markdown-preview-sizer,
  .publish-renderer > .markdown-preview-view > .markdown-preview-sizer,
  .published-container:not(.has-navigation) .publish-renderer > .markdown-preview-view > .markdown-preview-sizer {
    min-width: 0;
    max-width: 100%;
    padding: 1.5rem var(--id-gutter) 0;
    box-sizing: border-box;
  }

  .published-container:not(.has-navigation) .site-header {
    padding-inline: var(--id-gutter) !important;
  }

  .publish-renderer > .markdown-preview-view {
    padding-bottom: 5rem;
  }

  .published-container .markdown-rendered table {
    display: block;
    overflow-x: auto;
  }

  .site-body-left-column-site-name {
    display: none;
  }

  .site-header-text {
    font-size: 1.2rem;
  }
}

@media (pointer: coarse) {
  button,
  .clickable-icon,
  .site-header .clickable-icon,
  .nav-file-title,
  .nav-folder-title,
  .tree-item-self {
    min-width: 40px;
    min-height: 44px;
  }
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    scroll-behavior: auto;
    transition-duration: 0.01ms;
    animation-duration: 0.01ms;
    animation-iteration-count: 1;
  }
}

@media (forced-colors: active) {
  a,
  button,
  input,
  .clickable-icon,
  .nav-file-title,
  .nav-folder-title {
    forced-color-adjust: auto;
  }

  :focus-visible {
    outline: 2px solid Highlight;
  }
}

@media print {
  .site-header,
  .site-body-left-column,
  .site-footer,
  .nav-backdrop {
    display: none !important;
  }

  .published-container .markdown-preview-sizer {
    padding: 0 !important;
  }
}

/* c — logo-free reading design, 2026-09-22.
   Publish-only overrides of the shared historical theme.
   Reference: ai/editorial/2sigmac-redesign/site.css (Original + contents).
   Keep this last in the Publish build; the Obsidian app uses c-reading.css. */

.published-container {
  --id-measure: 720px;
  --id-measure-wide: 784px;
  --id-gutter: 32px;
  --id-prose-size: 16.5px;
  --id-prose-lh: 1.5;
  --id-paragraph-gap: 1.2em;
  --id-title-size: 32px;
  --id-nav-size: 14px;
  --id-muted: #77736b;
  --id-hair: #e4e2dd;
  --id-selection: #e6edfc;
  --page-width: 784px;
  --page-title-weight: 400;
  --page-title-line-height: 1.2;
  --sidebar-right-width: 210px;
  --nav-item-weight-active: 400;
  --nav-item-border-color: transparent;
  --nav-item-border-color-hover: transparent;
  --nav-item-border-color-active: transparent;
  --nav-item-background-active: #f0f0ed;
  --nav-item-background-hover: #f7f7f5;
  --nav-indentation-guide-color: transparent;
  --nav-indentation-guide-width: 0;
}

html, body, .published-container, .site-body, .site-body-left-column, .site-body-center-column,
.nav-view-outer, .site-body-left-column-inner, .site-body-right-column-inner,
.render-container, .markdown-preview-view, .site-body-right-column {
  overscroll-behavior: none;
}

.published-container .markdown-rendered { overflow-wrap: break-word; }
.published-container .markdown-rendered h1,
.published-container .markdown-rendered h1.page-header {
  font-family: Times, "Times New Roman", serif;
  font-size: var(--id-title-size);
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: -.01em;
  margin: 0 0 28px;
  border: 0;
}
.published-container .markdown-rendered h2 { font-size: 21px; line-height: 1.3; }
.published-container .markdown-rendered h3 { font-size: 18px; line-height: 1.3; }
.published-container .markdown-rendered em { color: inherit; }
.published-container .markdown-rendered table { font-size: 14.5px; line-height: 1.5; }
.published-container .markdown-rendered .footnotes { font-size: 14px; line-height: 1.6; }
.published-container .markdown-rendered .footnotes p { line-height: inherit; }
.published-container .markdown-rendered :is(figcaption, .image-caption),
.published-container .markdown-rendered .el-p:has(>p>.image-embed)+.el-p:has(>p>em:only-child) { opacity: .68; }
.published-container .markdown-rendered :is(figcaption, .image-caption) a,
.published-container .markdown-rendered .el-p:has(>p>.image-embed)+.el-p:has(>p>em:only-child) a { color: inherit; }

.published-container .publish-renderer > .markdown-preview-view > .markdown-preview-sizer {
  width: auto;
  max-width: var(--page-width);
  padding: 48px var(--id-gutter) 0;
  box-sizing: border-box;
}
.published-container .site-body-left-column { padding-top: 48px; }
.published-container :is(.site-body-left-column-site-name, .site-body-left-column-site-logo, .site-header-text, .site-header-logo) { display: none !important; }

.published-container .nav-view-outer .tree-item-self.is-clickable {
  min-height: 28px;
  padding-block: 4px;
  padding-right: 8px;
  margin-block: 0;
  line-height: 1.35;
  border-radius: 3px;
  border-color: transparent !important;
  box-shadow: none;
}
.published-container .nav-view-outer .tree-item-children { padding-bottom: 2px; border-color: transparent; }
.published-container .nav-view-outer .tree-item-self.mod-active,
.published-container .nav-view-outer .tree-item-self.is-active,
.published-container .nav-view-outer .is-active > .tree-item-self {
  background: #f0f0ed;
  border-color: transparent;
  box-shadow: none;
  font-weight: 400;
}
.published-container .nav-view-outer .tree-item-self.mod-collapsible { font-weight: 600; }
.published-container .nav-view-outer .tree-item-inner { white-space: nowrap; min-width: 0; }

/* Follow native Outline enablement. Do not gate visibility on children: Publish
   can initialize the outline only after its container becomes visible. */
.published-container:not(.has-outline) { --sidebar-right-width: 0px; }
.published-container .site-body-right-column { display: block !important; }
.published-container.is-readable-line-width .site-body-right-column {
  width: var(--sidebar-right-width);
  max-width: var(--sidebar-right-width);
}
.published-container .site-body-right-column-inner {
  width: 100%;
  max-width: 100%;
  margin: 0;
  padding: 48px 20px 24px 0;
}
.published-container .site-body-right-column-inner > div:first-child { margin-top: 0; }
.published-container .outline-view-outer { display: block !important; }
.published-container:not(.has-outline) .site-body-right-column { display: none !important; }
.published-container .graph-view-outer { display: none !important; }
.published-container .outline-view-outer {
  border-left: 1px solid var(--id-hair);
  padding-left: 17px;
  padding-top: 0;
  font-family: var(--id-font-prose);
}
.published-container .outline-view-outer .published-section-header {
  font-size: 11px;
  font-weight: 400;
  color: var(--id-muted);
  margin-bottom: 12px;
  text-transform: none;
  letter-spacing: 0;
}
.published-container .outline-view-outer .published-section-header-icon { display: none; }
.published-container .outline-view { padding: 0; }
.published-container .outline-view .tree-item-children { border-color: transparent; }
.published-container .outline-view .tree-item-self {
  font-size: 12px;
  line-height: 1.55;
  padding-block: 5px;
  padding-right: 8px;
  color: var(--id-ink);
  border-color: transparent;
  font-weight: 400;
}

/* First paragraph only, scoped by the real Publish navigation path.
   Requiring the rendered header prevents later virtualized paragraphs acquiring a cap. */
.published-container:has(.nav-view .mod-active[data-path^="Blog/"])
.publish-renderer > .markdown-preview-view > .markdown-preview-sizer
> .mod-header ~ .el-p:not(.el-p ~ .el-p) { display: flow-root; }
.published-container:has(.nav-view .mod-active[data-path^="Blog/"])
.publish-renderer > .markdown-preview-view > .markdown-preview-sizer
> .mod-header ~ .el-p:not(.el-p ~ .el-p) > p::first-letter {
  float: left;
  font-family: "Hiedra Specimen Copy", Times, serif;
  font-size: 4.15em;
  font-weight: 400;
  font-style: normal;
  font-synthesis: none;
  line-height: 1;
  letter-spacing: 0;
  margin: .045em .14em 0 0;
  color: var(--id-ink);
}

@media (max-width: 1180px) {
  .published-container { --sidebar-left-width: 280px; --sidebar-right-width: 0px; --id-gutter: 28px; --page-width: 776px; }
  .published-container .publish-renderer > .markdown-preview-view > .markdown-preview-sizer { padding-top: 40px; }
  .published-container .site-body-right-column { display: none !important; }
  body:not(.sliding-windows) .published-container.is-readable-line-width.has-outline.has-navigation .publish-renderer > .markdown-preview-view > .markdown-preview-sizer { margin-right: 0 !important; }
}
@media (max-width: 750px) {
  .published-container {
    --id-gutter: 24px;
    --id-prose-size: 15.5px;
    --id-title-size: 28px;
    --id-paragraph-gap: 1.4em;
    --page-width: 100%;
  }
  .published-container .publish-renderer > .markdown-preview-view > .markdown-preview-sizer { padding-top: 29px; }
  .published-container .markdown-rendered .footnotes { font-size: 13px; }
}
@media (pointer: coarse) {
  .published-container .nav-view-outer .tree-item-self.is-clickable { min-height: 44px; }
}
@media print {
  .published-container .site-body-right-column { display: none !important; }
}

/* Traced Hiedra subset by reference to Camille Bertranou Birba specimens.
   Copies and provenance: life-system/ai/editorial/2sigmac-redesign/assets/hiedra-copies/.
   This is a reconstruction, not the designer’s original font file. */
@font-face{font-family:"Hiedra Specimen Copy";src:url("data:font/ttf;base64,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bwBwAHkALQBSAGUAZwB1AGwAYQByAFAAcgBlAHYAaQBlAHcAIABjAG8AcABpAGUAcwAgAHQAcgBhAGMAZQBkACAAZgByAG8AbQAgAHYAaQBzAGkAYgBsAGUAIABIAGkAZQBkAHIAYQAgAHMAcABlAGMAaQBtAGUAbgAgAGEAcgB0AHcAbwByAGsAIABiAHkAIABDAGEAbQBpAGwAbABlACAAQgBlAHIAdAByAGEAbgBvAHUAIABCAGkAcgBiAGEALgAgAE4AbwB0ACAAdABoAGUAIABjAHIAZQBhAHQAbwByACcAcwAgAG8AcgBpAGcAaQBuAGEAbAAgAGYAbwBuAHQALgAgAEMAbwBuAHQAYQBpAG4AcwAgAEEALAAgAEIAIABhAG4AZAAgAGMAIABvAG4AbAB5ADsAIAB1AHAAcABlAHIAYwBhAHMAZQAgAEMAIABpAG4AdABlAG4AdABpAG8AbgBhAGwAbAB5ACAAdQBzAGUAcwAgAHQAaABlACAAcwBhAG0AZQAgAGwAbwB3AGUAcgBjAGEAcwBlACAAYwAgAG8AdQB0AGwAaQBuAGUALgAgAFMAZQBlACAAYQBkAGoAYQBjAGUAbgB0ACAAdAByAGEAYwBpAG4AZwAgAHAAcgBvAHYAZQBuAGEAbgBjAGUALgAAAgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAFAAAAAwAkACUARg==") format("truetype");font-weight:400;font-style:normal;font-display:swap}

.published-container .markdown-rendered img { border: 0; }

/* Human Mode Collapse title-area correction. Append after publish-redesign.css.
   The exact path is verified in publish-migration/live-dom.html.
   Display text/date come from pages/hybrid/essay.html; no note or DOM text changes.
   If generated-content alternative text is unsupported, retain the original title
   and navigation label rather than rendering an empty heading or duplicate name. */

/* The sizer already supplies 48px desktop / 40px tablet / 29px mobile above
   the heading. Remove Publish's additional 24px from the outer reading view. */
.published-container:has(.nav-view .mod-active[data-path="Blog/2026-09-05 Human Mode Collapse—Or, the Decline in Metacognition.md"])
  .publish-renderer > .markdown-preview-view {
  padding-top: 0;
}

@supports (content: "visible text" / "") {
  .published-container:has(.nav-view .mod-active[data-path="Blog/2026-09-05 Human Mode Collapse—Or, the Decline in Metacognition.md"])
    .publish-renderer > .markdown-preview-view > .markdown-preview-sizer > .mod-header {
    display: grid;
    grid-template-columns: max-content minmax(0, 1fr);
    column-gap: 20px;
    row-gap: 0;
    margin: 0;
    padding: 0 0 26px;
  }

  /* Zero-size only the existing text; it remains the heading's DOM text.
     The empty speech alternative avoids adding a second generated title. */
  .published-container:has(.nav-view .mod-active[data-path="Blog/2026-09-05 Human Mode Collapse—Or, the Decline in Metacognition.md"])
    .publish-renderer > .markdown-preview-view > .markdown-preview-sizer > .mod-header > h1.page-header {
    grid-column: 1 / -1;
    grid-row: 1;
    min-width: 0;
    max-width: 100%;
    margin: 0 0 20px;
    padding: 0;
    border: 0;
    font-size: 0;
    line-height: 0;
  }

  .published-container:has(.nav-view .mod-active[data-path="Blog/2026-09-05 Human Mode Collapse—Or, the Decline in Metacognition.md"])
    .publish-renderer > .markdown-preview-view > .markdown-preview-sizer > .mod-header > h1.page-header::before {
    content: "Human Mode Collapse—Or, the Decline in Metacognition" / "";
    display: block;
    color: var(--id-ink);
    font-family: Times, "Times New Roman", serif;
    font-size: var(--id-title-size, 32px);
    font-weight: 400;
    font-style: normal;
    line-height: 1.2;
    letter-spacing: -.01em;
    white-space: normal;
    overflow-wrap: break-word;
  }

  .published-container:has(.nav-view .mod-active[data-path="Blog/2026-09-05 Human Mode Collapse—Or, the Decline in Metacognition.md"])
    .publish-renderer > .markdown-preview-view > .markdown-preview-sizer > .mod-header::before,
  .published-container:has(.nav-view .mod-active[data-path="Blog/2026-09-05 Human Mode Collapse—Or, the Decline in Metacognition.md"])
    .publish-renderer > .markdown-preview-view > .markdown-preview-sizer > .mod-header::after {
    grid-row: 2;
    display: block;
    margin: 0;
    padding: 0;
    color: var(--id-muted);
    font-family: var(--id-font-prose);
    font-size: 11px;
    font-weight: 400;
    font-style: normal;
    line-height: 1.5;
    letter-spacing: 0;
    white-space: nowrap;
  }

  .published-container:has(.nav-view .mod-active[data-path="Blog/2026-09-05 Human Mode Collapse—Or, the Decline in Metacognition.md"])
    .publish-renderer > .markdown-preview-view > .markdown-preview-sizer > .mod-header::before {
    grid-column: 1;
    content: "—C" / "By C";
  }

  .published-container:has(.nav-view .mod-active[data-path="Blog/2026-09-05 Human Mode Collapse—Or, the Decline in Metacognition.md"])
    .publish-renderer > .markdown-preview-view > .markdown-preview-sizer > .mod-header::after {
    grid-column: 2;
    content: "5 September 2026" / "5 September 2026";
  }

  .published-container
    .nav-view .tree-item-self[data-path="Blog/2026-09-05 Human Mode Collapse—Or, the Decline in Metacognition.md"] > .tree-item-inner > a {
    font-size: 0;
  }

  .published-container
    .nav-view .tree-item-self[data-path="Blog/2026-09-05 Human Mode Collapse—Or, the Decline in Metacognition.md"] > .tree-item-inner > a::before {
    content: "Human Mode Collapse" / "";
    font-family: var(--id-font-prose);
    font-size: 14px;
    font-weight: 400;
    line-height: 1.35;
    letter-spacing: 0;
  }

  @media (max-width: 750px) {
    .published-container:has(.nav-view .mod-active[data-path="Blog/2026-09-05 Human Mode Collapse—Or, the Decline in Metacognition.md"])
      .publish-renderer > .markdown-preview-view > .markdown-preview-sizer > .mod-header {
      padding-bottom: 22px;
    }

    .published-container:has(.nav-view .mod-active[data-path="Blog/2026-09-05 Human Mode Collapse—Or, the Decline in Metacognition.md"])
      .publish-renderer > .markdown-preview-view > .markdown-preview-sizer > .mod-header > h1.page-header {
      margin-bottom: 22px;
    }
  }
}

/* Article contents follow the reading measure instead of the viewport edge. */
@media (min-width: 1181px) {
  /* This title is two lines throughout the desktop article measure (587–720px).
     Keep the contents beside its opening paragraph, below title and metadata. */
  .published-container:has(.nav-view .mod-active[data-path="Blog/2026-09-05 Human Mode Collapse—Or, the Decline in Metacognition.md"]) {
    --c-outline-top: calc(48px + 2 * 32px * 1.2 + 20px + 16.5px + 26px);
  }
  .published-container .render-container-inner { position: relative; }
  .published-container.is-readable-line-width .site-body-right-column {
    left: min(calc(var(--page-width) + 4px), calc(100% - 206px));
    right: auto;
    top: var(--c-outline-top, 48px);
    min-width: 0;
    width: 174px;
    max-width: 174px;
  }
  .published-container .site-body-right-column-inner { padding: 0; }
  .published-container .outline-view-outer { padding-top: 3px; padding-bottom: 5px; }
  .published-container .outline-view .tree-item-self { padding: 0; margin: 0 0 14px; border: 0; }
  .published-container .outline-view .tree-item-children { margin: 0; padding: 0; }
  .published-container .outline-view-outer .published-section-header { margin-bottom: 15px; }
}
@media print {
  .published-container.is-readable-line-width.has-outline .site-body-right-column { display: none !important; }
}

/* c — native Publish link previews. Kept separate from article layout rules.
   Native popup positioning, open/close behavior and mobile suppression remain intact. */
.popover.hover-popover {
  --popover-width: min(432px, calc(100vw - 32px));
  --popover-height: min(440px, calc(100dvh - 40px));
  --popover-font-size: 14.5px;
  --footnote-size: 14.5px;
  --id-prose-size: 14.5px;
  --id-prose-lh: 1.5;
  --id-title-size: 22px;
  --id-paragraph-gap: .9em;
  --id-paper: #fff;
  --id-ink: #282520;
  --id-muted: #77736b;
  --id-hair: #e4e2dd;
  --id-rule: #e4e2dd;
  --file-margins: 0;
  max-width: var(--popover-width);
  max-height: var(--popover-height);
  color: var(--id-ink);
  background: var(--id-paper);
  border: 1px solid var(--id-hair);
  border-radius: 2px;
  box-shadow: 0 8px 28px rgb(40 37 32 / 10%), 0 2px 6px rgb(40 37 32 / 4%);
  font-family: var(--id-font-prose);
  font-size: var(--popover-font-size);
  line-height: var(--id-prose-lh);
  text-align: left;
}
.popover.hover-popover > .markdown-embed {
  min-width: 0;
  margin: 0;
  padding: 0;
  border: 0;
  overscroll-behavior: none;
}
.popover.hover-popover > .markdown-embed > .markdown-embed-content { height: auto; }
.popover.hover-popover > .markdown-embed > .markdown-embed-content .markdown-preview-view {
  padding: 0 !important;
  height: auto;
  max-height: none;
  overflow: visible;
}
.popover.hover-popover .markdown-preview-view,
.popover.hover-popover .markdown-rendered {
  font-family: var(--id-font-prose);
  font-size: var(--popover-font-size);
  line-height: var(--id-prose-lh);
  color: var(--id-ink);
  overscroll-behavior: none;
}
.popover.hover-popover .markdown-preview-sizer {
  width: 100% !important;
  min-height: 0 !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 20px !important;
  box-sizing: border-box;
}
.popover.hover-popover .markdown-rendered h1,
.popover.hover-popover .markdown-rendered h1.page-header,
.popover.hover-popover .markdown-embed-title {
  display: block;
  font-family: Times, "Times New Roman", serif;
  font-size: 22px;
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: -.01em;
  color: var(--id-ink);
  border: 0;
  margin: 0 0 14px;
  padding: 0;
  overflow-wrap: break-word;
}
.popover.hover-popover > .markdown-embed > .markdown-embed-title { margin: 20px 20px 0; }
.popover.hover-popover > .markdown-embed:has(> .markdown-embed-content > .markdown-preview-view > .markdown-preview-sizer > .mod-header > h1.page-header) > .markdown-embed-title { display: none; }
.popover.hover-popover .markdown-rendered h2 {
  font-size: 16px;
  line-height: 1.3;
  margin: 1.4em 0 .6em;
  border: 0;
  padding: 0;
}
.popover.hover-popover .markdown-rendered h3,
.popover.hover-popover .markdown-rendered h4 {
  font-size: 14.5px;
  line-height: 1.35;
  margin: 1.2em 0 .5em;
}
/* The old p:last-child rule removed every wrapped paragraph's spacing. */
.popover.hover-popover .markdown-rendered p {
  font-size: inherit;
  line-height: var(--id-prose-lh);
  margin: 0 0 .9em;
}
.popover.hover-popover .markdown-preview-sizer > .el-p:last-child > p:last-child,
.popover.hover-popover .markdown-preview-sizer > p:last-child { margin-bottom: 0; }
.popover.hover-popover .markdown-rendered li { line-height: var(--id-prose-lh); }
.popover.hover-popover .markdown-rendered a { overflow-wrap: anywhere; }
.popover.hover-popover .markdown-rendered a.external-link::after { content: none; }
.popover.hover-popover .markdown-rendered p::first-letter {
  float: none;
  font: inherit;
  line-height: inherit;
  margin: 0;
  padding: 0;
}
.popover.hover-popover .markdown-rendered img {
  max-width: 100%;
  height: auto;
  margin: 14px 0;
  border: 0;
}
.popover.hover-popover .markdown-rendered :is(figcaption, .image-caption) {
  font-size: 12px;
  line-height: 1.4;
  opacity: .68;
}
.popover.hover-popover .markdown-rendered table {
  display: block;
  max-width: 100%;
  overflow-x: auto;
  font-size: 13px;
  line-height: 1.45;
  border-color: var(--id-hair);
}
.popover.hover-popover .markdown-rendered :is(th, td) { border-color: var(--id-hair); }
.popover.hover-popover .markdown-rendered pre {
  max-width: 100%;
  overflow-x: auto;
  font-size: 12px;
  line-height: 1.5;
}
.popover.hover-popover .markdown-rendered .footnotes {
  color: var(--id-ink);
  font-size: 13px;
  line-height: 1.5;
  margin-top: 24px;
  border-color: var(--id-hair);
}
.popover.hover-popover > .markdown-embed[data-type="footnote"] .markdown-preview-sizer { padding: 16px 20px !important; }
.popover.hover-popover > .markdown-embed[data-type="footnote"] .footnotes { margin: 0; padding: 0; border: 0; }
