/* @generated by x0k-tangle (pipeline: theme-codegen) from decisions/design/themes/pansophia.md — DO NOT EDIT. */
/* Source: decisions/design/themes/pansophia.md */

[data-theme="pansophia"] {
  --color-accent: #b22222;
  --color-accent-soft: #d6a8a8;
  --color-amber-warn: #9c6b16;
  --color-blood-rose: #8c1818;
  --color-dag-canvas: #f6efd8;
  --color-edge-cyclic: #9a2424;
  --color-edge-dependency: #8e6a30;
  --color-edge-hierarchy: #4a6e3a;
  --color-entity-affordance: #ffdcc8;
  --color-entity-decision: #fffff8;
  --color-entity-doc: #fffff8;
  --color-entity-intent: #e0b8a8;
  --color-entity-seed: #f6c86a;
  --color-entity-session: #fffff8;
  --color-gold: #b88e44;
  --color-gold-bright: #d4a868;
  --color-gold-glow: rgba(240, 196, 104, 0.55);
  --color-gold-glow-soft: rgba(240, 196, 104, 0.30);
  --color-ink: #111111;
  --color-ink-2: #3a352d;
  --color-ink-3: #756e5b;
  --color-ink-quiet: #b3a98c;
  --color-paper: #fffff8;
  --color-paper-deeper: #ede4c6;
  --color-paper-warm: #f6efd8;
  --color-reg-actor: #3d4a5c;
  --color-reg-decision: #7a4520;
  --color-reg-lifecycle: #4a6e3a;
  --color-reg-structural: #1a4d8c;
  --color-role-actor: #5b6470;
  --color-role-decision: #7a4520;
  --color-role-lifecycle: #4a6e3a;
  --color-role-structural: #1a4d8c;
  --color-rule: #d9d0b6;
  --color-rule-faint: #ece4cb;
  --color-vellum: #fffefa;
  --color-verdant: #3f6232;
  --color-vignette: rgba(90, 74, 34, 0.10);
  --color-void: #1c160c;
  --spacing-l: 24px;
  --spacing-m: 16px;
  --spacing-s: 8px;
  --spacing-xl: 40px;
  --spacing-xs: 4px;
  --font-family: var(--type-serif-family);
  --font-code: var(--type-mono-family);
  --font-display: var(--type-display-family);
  --type-body-family-ref: serif;
  --type-body-size: 17.5px;
  --type-body-style: normal;
  --type-body-weight: 400;
  --type-code-family-ref: mono;
  --type-code-letter-spacing: 0.005em;
  --type-code-size: 0.84em;
  --type-code-weight: 400;
  --type-display-default-style: italic;
  --type-display-family: 'IM Fell English', 'EB Garamond', 'et-book', Palatino, serif;
  --type-display-mood: mythopoetic italic voice; subtitles, rubrics, ornaments-as-text;
  --type-display-purpose: display;
  --type-heading-large-family-ref: serif;
  --type-heading-large-letter-spacing: 0.006em;
  --type-heading-large-size: 27px;
  --type-heading-large-style: normal;
  --type-heading-large-weight: 400;
  --type-heading-mythopoetic-family-ref: display;
  --type-heading-mythopoetic-letter-spacing: 0.01em;
  --type-heading-mythopoetic-size: 20px;
  --type-heading-mythopoetic-style: italic;
  --type-heading-mythopoetic-weight: 400;
  --type-label-small-caps-family-ref: display;
  --type-label-small-caps-font-variant: small-caps;
  --type-label-small-caps-letter-spacing: 0.08em;
  --type-label-small-caps-size: 12.5px;
  --type-label-small-caps-style: italic;
  --type-label-small-caps-weight: 400;
  --type-mono-default-size: 0.84em;
  --type-mono-family: 'IBM Plex Mono', ui-monospace, 'SF Mono', Menlo, monospace;
  --type-mono-mood: contemporary trace; code/data/paths as part of the same tradition, set in a 21st-century face;
  --type-mono-purpose: code;
  --type-serif-default-line-height: 1.62;
  --type-serif-default-size: 17.5px;
  --type-serif-family: 'et-book', 'EB Garamond', Palatino, 'Palatino Linotype', 'Book Antiqua', Georgia, serif;
  --type-serif-mood: Tufte's printed-figure body face; the engraved-page spine;
  --type-serif-purpose: body;
  --motion-breathe-duration: 7000ms;
  --motion-breathe-easing: ease-in-out;
  --motion-breathe-loop: infinite;
  --motion-breathe-notes: Suppressed under prefers-reduced-motion.;
  --motion-breathe-purpose: bioluminescent halo; masthead ornament, primary ✦ glyphs at rest;
  --motion-disclosure-marker-duration: 260ms;
  --motion-disclosure-marker-easing: ease;
  --motion-disclosure-marker-purpose: rotation on details-summary ✦ marker when opened (45deg);
  --motion-fade-in-soft-duration: 300ms;
  --motion-fade-in-soft-easing: ease-in-out;
  --motion-fade-in-soft-purpose: crossfade between disclosure states, panel reveals;
  --motion-hover-duration: 220ms;
  --motion-hover-easing: ease;
  --motion-hover-purpose: settled hover transitions on links, summaries, interactive elements;
  --ornament-cartouche-corner-color-ref: gold;
  --ornament-cartouche-corner-font-family-ref: display;
  --ornament-cartouche-corner-glyph: ✦;
  --ornament-cartouche-corner-halo-ref: gold-glow;
  --ornament-cartouche-corner-position: top-left and bottom-right of bordered card;
  --ornament-cartouche-corner-purpose: marks a composed section; signals 'this is a plate, not a box';
  --ornament-cartouche-corner-size: 0.72em;
  --ornament-compass-rose-color-ref: gold;
  --ornament-compass-rose-font-family-ref: display;
  --ornament-compass-rose-glyph: ✦;
  --ornament-compass-rose-halo-ref: gold-glow;
  --ornament-compass-rose-purpose: primary brand ornament; masthead breaks; section starters; bullet prefix at small size;
  --ornament-em-dash-bracket-color-dashes-ref: ink-quiet;
  --ornament-em-dash-bracket-color-text-ref: ink-3;
  --ornament-em-dash-bracket-pattern: — TEXT —;
  --ornament-em-dash-bracket-purpose: wraps mythopoetic-register section labels; '— the through-line —';
  --ornament-engraved-rule-color-ref: rule;
  --ornament-engraved-rule-gradient-fade: transparent 0%, var(--rule) 8%, var(--rule) 92%, transparent 100%;
  --ornament-engraved-rule-opacity-secondary: 0.55;
  --ornament-engraved-rule-purpose: masthead frontispiece rule; section boundary on title pages;
  --ornament-engraved-rule-treatment: double-line;
  --ornament-engraved-rule-weight-primary: 1px;
  --ornament-engraved-rule-weight-secondary: 0.6px;
  --color-surface: var(--color-paper);
  --color-raised: var(--color-paper-warm);
  --color-surface-elevated: var(--color-vellum);
  --color-selection: var(--color-paper-deeper);
  --color-text: var(--color-ink);
  --color-text-dim: var(--color-ink-2);
  --color-text-muted: var(--color-ink-3);
  --color-border: var(--color-rule);
  --color-border-glow: var(--color-gold-bright);
  --color-error: var(--color-blood-rose);
  --color-warning: var(--color-amber-warn);
  --color-success: var(--color-verdant);
}

/* Semantic class vocabulary (representation-axes.md). */
.theme-surface-paper { background-color: var(--color-surface); color: var(--color-text); }
.theme-surface-warm { background-color: var(--color-raised); color: var(--color-text); }
.theme-text-ink { color: var(--color-text); }
.theme-text-quiet { color: var(--color-text-dim); }
.theme-display { font-family: var(--font-display, var(--font-family)); }
.theme-mono { font-family: var(--font-code, monospace); }
.theme-rule-engraved { border-top: 1px solid var(--color-border); }
.theme-cartouche { background-color: var(--color-raised); border: 1px solid var(--color-border); border-radius: calc(var(--corner-radius) * 1px); }
.theme-ornament-compass-rose::before { content: var(--ornament-compass-rose, "\2756"); color: var(--color-accent); }

/* Page baseline — applies the theme's tokens to standard HTML structure. */
html, body {
  background-color: var(--color-surface);
  color: var(--color-text);
  font-family: var(--font-family, var(--type-serif-family, serif));
  margin: 0;
  padding: 0;
  line-height: 1.5;
}
h1, h2, h3, h4, h5, h6 {
  font-family: var(--font-display, var(--type-display-family, var(--font-family, var(--type-serif-family, serif))));
  color: var(--color-text);
}
p, li, blockquote, dd, dt { color: var(--color-text); }
a { color: var(--color-accent); }
hr { border: 0; border-top: 1px solid var(--color-border); }
code, pre, kbd, samp { font-family: var(--font-code, var(--type-mono-family, monospace)); }
pre {
  background-color: var(--color-raised);
  color: var(--color-text);
  padding: 12px;
  overflow-x: auto;
  border-radius: 4px;
}
code { background-color: var(--color-raised); padding: 0 4px; border-radius: 2px; }
pre code { background-color: transparent; padding: 0; }
blockquote {
  border-left: 3px solid var(--color-border);
  margin-left: 0;
  padding-left: 12px;
  color: var(--color-text-dim);
}
table { border-collapse: collapse; }
th, td { border: 1px solid var(--color-border); padding: 6px 10px; }
th { background-color: var(--color-raised); }
