:root {
color-scheme: light dark;
--page: light-dark(#e7dcc0, #171310);
--leaf: light-dark(#f7f1e1, #201a14);
--leaf-sunk: light-dark(#f1e9d4, #29221a);
--ink: light-dark(#2b2620, #ece2cf);
--ink-soft: light-dark(#6f6656, #b6ab93);
--ink-faint: light-dark(#9a9080, #857b66);
--rule: light-dark(#d8ccae, #3b3327);
--rule-soft: light-dark(#e6dcc3, #2e2820);
--rubric: light-dark(#b0281d, #e0715f);
--sienna: light-dark(#9a6410, #cf9a4c);
--gold: light-dark(#b8860b, #d9ad4e);
--gold-leaf: linear-gradient(
135deg,
#f6e08f 0%,
#d9ad4e 28%,
#b8860b 50%,
#916a12 64%,
#d9ad4e 82%,
#f6e08f 100%
);
--verdigris: light-dark(#2f7a4d, #58b783);
--lapis: light-dark(#274690, #7f9fe6);
--tyrian: light-dark(#6b2f74, #bd83c8);
--claude: light-dark(#d97757, #e08a6a);
--user-edge: var(--lapis);
--assistant-edge: var(--claude);
--sidechain-edge: var(--tyrian);
--error-edge: var(--rubric);
--measure: 44rem;
--radius: 4px;
--serif: "Junicode", "Iowan Old Style", "Palatino Linotype", Palatino,
"Book Antiqua", Georgia, serif;
--mono: "Fira Code", ui-monospace, "SF Mono", "Cascadia Code",
"JetBrains Mono", Menlo, Consolas, monospace;
--display: "UnifrakturCook", var(--serif);
--ansi-black: light-dark(#4a4238, #6f6656);
--ansi-red: var(--rubric);
--ansi-green: var(--verdigris);
--ansi-yellow: var(--sienna);
--ansi-blue: var(--lapis);
--ansi-magenta: var(--tyrian);
--ansi-cyan: light-dark(#1f6f77, #6fc3cb);
--ansi-white: var(--ink-soft);
--ansi-bright-black: var(--ink-faint);
--ansi-bright-red: light-dark(#c8412f, #f08d7b);
--ansi-bright-green: light-dark(#3d9460, #74d19c);
--ansi-bright-yellow: light-dark(#b47c1f, #e5b667);
--ansi-bright-blue: light-dark(#3459ac, #9db6ee);
--ansi-bright-magenta: light-dark(#84408e, #d09ad9);
--ansi-bright-cyan: light-dark(#2a8890, #8ed6dd);
--ansi-bright-white: var(--ink);
--syn-comment: light-dark(#948a74, #7f765f);
--syn-string: var(--verdigris);
--syn-keyword: var(--rubric);
--syn-storage: var(--rubric);
--syn-constant: var(--sienna);
--syn-entity: var(--lapis);
--syn-variable: var(--tyrian);
--syn-support: var(--lapis);
--syn-inserted: var(--verdigris);
--syn-deleted: var(--rubric);
}
:root[data-theme="light"] {
color-scheme: light;
}
:root[data-theme="dark"] {
color-scheme: dark;
}
*,
*::before,
*::after {
box-sizing: border-box;
}
html {
min-height: 100%;
font-size: 17px;
background-color: var(--page);
background-image:
radial-gradient(
ellipse at 20% 15%,
light-dark(rgba(255, 255, 255, 0.35), rgba(255, 244, 214, 0.06)),
transparent 55%
),
radial-gradient(
ellipse at 85% 80%,
light-dark(rgba(120, 96, 48, 0.12), rgba(0, 0, 0, 0.28)),
transparent 60%
);
}
body {
position: relative;
max-width: var(--measure);
margin: 2.5rem auto 3rem;
padding: 3rem 3.25rem 2.5rem;
background: var(--leaf);
color: var(--ink);
font-family: var(--serif);
line-height: 1.6;
border: 1px solid var(--rule);
box-shadow:
0 0 0 1px var(--leaf) inset,
0 0 0 4px var(--rule-soft) inset,
0 6px 26px rgba(60, 46, 20, 0.18);
text-rendering: optimizeLegibility;
-webkit-font-smoothing: antialiased;
}
.margin {
position: absolute;
top: 0.5rem;
bottom: 0.5rem;
width: 90px;
background-repeat: repeat-y;
background-position: center top;
opacity: 0.9;
pointer-events: none;
}
.margin--left {
right: 100%;
margin-right: 0.5rem;
transform: scaleX(-1);
}
.margin--right {
left: 100%;
margin-left: 0.5rem;
}
@media (max-width: 62rem) {
.margin {
display: none;
}
}
@media (max-width: 34rem) {
body {
padding: 1.75rem 1.25rem;
}
}
.search {
position: fixed;
top: 0.8rem;
right: 0.8rem;
z-index: 10;
display: flex;
flex-direction: column;
gap: 0.3rem;
padding: 0.34rem 0.5rem;
background: var(--leaf);
border: 1px solid var(--rule);
border-radius: 0.9rem;
box-shadow: 0 2px 12px rgba(0, 0, 0, 0.18);
font-family: var(--mono);
font-size: 0.7rem;
}
.search__bar {
display: flex;
align-items: center;
gap: 0.25rem;
}
.search__scopes {
display: flex;
flex-wrap: wrap;
gap: 0.25rem;
justify-content: center;
}
.search__scope {
--scope-hue: var(--ink-soft);
padding: 0.05rem 0.4rem;
border: 1px solid color-mix(in srgb, var(--scope-hue) 45%, transparent);
border-radius: 999px;
background: transparent;
color: var(--scope-hue);
font: inherit;
line-height: 1.4;
cursor: pointer;
}
.search__scope--user {
--scope-hue: var(--user-edge);
}
.search__scope--assistant {
--scope-hue: var(--assistant-edge);
}
.search__scope[aria-pressed="true"] {
background: color-mix(in srgb, var(--scope-hue) 20%, transparent);
border-color: var(--scope-hue);
}
.search__scope[aria-pressed="false"] {
opacity: 0.5;
text-decoration: line-through;
}
.search__input {
width: 9rem;
border: none;
background: transparent;
color: var(--ink);
font: inherit;
outline: none;
}
.search__input::placeholder {
color: var(--ink-faint);
}
.search__count {
min-width: 3.4rem;
text-align: right;
color: var(--ink-faint);
font-variant-numeric: tabular-nums;
}
.search__nav {
padding: 0 0.25rem;
border: none;
background: transparent;
color: var(--ink-soft);
font: inherit;
line-height: 1;
cursor: pointer;
}
.search__nav:disabled {
opacity: 0.35;
cursor: default;
}
mark.search__hit {
color: inherit;
background: color-mix(in srgb, var(--gold) 34%, transparent);
border-radius: 2px;
}
mark.search__hit.is-current {
background: color-mix(in srgb, var(--gold) 68%, transparent);
outline: 1px solid var(--gold);
}
@media (max-width: 34rem) {
.search__input {
width: 6rem;
}
}
.dock {
position: fixed;
right: 0.8rem;
bottom: 0.8rem;
z-index: 10;
display: flex;
flex-direction: column;
gap: 0.2rem;
padding: 0.3rem;
background: var(--leaf);
border: 1px solid var(--rule);
border-radius: 0.9rem;
box-shadow: 0 2px 12px rgba(0, 0, 0, 0.18);
}
.dock__nav {
display: grid;
grid-template-columns: repeat(3, 2.2rem);
gap: 0.2rem;
}
.dock__fold,
.dock__leap {
display: flex;
justify-content: center;
gap: 0.2rem;
}
.dock__btn--tail[aria-pressed="true"] {
--dock-hue: var(--gold);
background: var(--leaf-sunk);
}
.dock__btn {
--dock-hue: var(--ink-soft);
display: grid;
place-items: center;
width: 2.2rem;
height: 2.2rem;
border: none;
border-radius: 50%;
background: transparent;
color: var(--dock-hue);
font-size: 0.95rem;
line-height: 1;
cursor: pointer;
}
.dock__btn--user {
--dock-hue: var(--user-edge);
}
.dock__btn--assistant {
--dock-hue: var(--assistant-edge);
}
.dock__btn--fold {
display: flex;
flex-direction: column;
}
.dock__btn--fold[data-fold="expand"] {
gap: 0.08rem;
}
.dock__btn--fold[data-fold="collapse"] {
gap: 0.32rem;
}
.dock__chevron {
font-size: 0.8rem;
line-height: 0.85;
}
.dock__btn:hover,
.dock__btn:focus-visible {
background: var(--leaf-sunk);
color: color-mix(in srgb, var(--dock-hue), white 30%);
}
.plaque {
position: fixed;
top: 0.8rem;
left: 0.8rem;
z-index: 10;
}
.plaque__seal {
display: grid;
place-items: center;
width: 1.9rem;
height: 1.9rem;
padding: 0;
background: var(--leaf);
border: 1px solid var(--rule);
border-radius: 50%;
box-shadow: 0 2px 12px rgba(0, 0, 0, 0.18);
color: var(--gold);
font-family: inherit;
font-size: 1rem;
line-height: 1;
cursor: pointer;
}
.plaque:hover .plaque__seal,
.plaque:focus-within .plaque__seal {
color: var(--rubric);
}
.plaque__panel {
position: absolute;
display: none;
top: calc(100% + 0.4rem);
left: 0;
width: max-content;
max-width: min(22rem, 80vw);
padding: 0.9rem 1.1rem;
background: var(--leaf);
border: 1px solid var(--rule);
border-radius: var(--radius);
box-shadow: 0 6px 26px rgba(60, 46, 20, 0.22);
}
.plaque:hover .plaque__panel,
.plaque:focus-within .plaque__panel {
display: block;
}
.plaque__panel::before {
content: "";
position: absolute;
bottom: 100%;
left: 0;
right: 0;
height: 0.5rem;
}
.plaque__title {
margin: 0 0 0.7rem;
font-family: var(--display);
font-size: 1.5rem;
font-weight: 400;
line-height: 1.1;
color: var(--rubric);
word-break: break-word;
}
.plaque__facts {
display: grid;
grid-template-columns: max-content 1fr;
gap: 0.15rem 1rem;
margin: 0;
font-size: 0.78rem;
color: var(--ink-soft);
}
.plaque__facts dt {
font-variant: small-caps;
letter-spacing: 0.04em;
color: var(--ink-faint);
}
.plaque__facts dd {
margin: 0;
word-break: break-word;
}
.plaque__colophon {
margin: 0.7rem 0 0;
font-size: 0.72rem;
line-height: 1.5;
color: var(--ink-faint);
}
.turn {
position: relative;
margin: 1.6rem 0;
padding: 0.2rem 0 0.2rem 1.1rem;
border-left: 2px solid var(--rule);
scroll-margin-top: 1rem;
}
.turn:target {
background: color-mix(in srgb, var(--gold) 9%, transparent);
border-radius: 0 var(--radius) var(--radius) 0;
padding-right: 1.1rem;
margin-right: -1.1rem;
}
.turn:target .copy-button--meta {
right: 1.1rem;
}
.turn--user {
border-left-color: var(--user-edge);
}
.turn--assistant {
border-left-color: var(--assistant-edge);
}
.turn[data-sidechain] {
border-left-color: var(--sidechain-edge);
border-left-style: dashed;
margin-left: 1.5rem;
}
.turn[data-meta] {
display: none;
}
.controls {
position: fixed;
left: 0.8rem;
bottom: 0.8rem;
z-index: 10;
}
.theme-toggle {
display: inline-flex;
background: var(--leaf);
border: 1px solid var(--rule);
border-radius: 999px;
overflow: hidden;
box-shadow: 0 2px 12px rgba(0, 0, 0, 0.18);
font-family: var(--mono);
font-size: 0.6rem;
letter-spacing: 0.09em;
text-transform: uppercase;
}
.theme-toggle button {
padding: 0.28rem 0.75rem;
border: none;
background: transparent;
color: var(--ink-faint);
font: inherit;
letter-spacing: inherit;
cursor: pointer;
}
.theme-toggle button + button {
border-left: 1px solid var(--rule);
}
.theme-toggle button[aria-pressed="true"] {
background: var(--leaf-sunk);
color: var(--rubric);
}
.turn__meta {
display: flex;
flex-wrap: wrap;
align-items: baseline;
gap: 0.4rem 0.9rem;
margin-bottom: 0.3rem;
font-family: var(--mono);
font-size: 0.68rem;
letter-spacing: 0.03em;
color: var(--ink-faint);
}
.turn__meta .turn__index {
color: var(--ink-faint);
text-decoration: none;
}
.turn__meta .turn__index:hover,
.turn__meta .turn__index:focus-visible {
color: var(--gold);
text-decoration: underline;
}
.turn__role {
font-weight: 600;
text-transform: uppercase;
letter-spacing: 0.09em;
color: var(--ink-soft);
}
.turn--user .turn__role {
color: var(--user-edge);
}
.turn--assistant .turn__role {
color: var(--assistant-edge);
}
.turn[data-kind="tool"] .turn__role,
.turn[data-kind="thinking"] .turn__role {
color: var(--ink-faint);
}
.turn__usage {
opacity: 0.45;
font-variant-numeric: tabular-nums;
cursor: help;
transition: opacity 0.12s ease;
}
.turn:hover .turn__usage {
opacity: 1;
}
.turn__time {
margin-left: auto;
}
.block {
margin: 0.7rem 0;
}
.block--text > :first-child,
.block--thinking > :first-child {
margin-top: 0;
}
.block--text > :last-child,
.block--thinking > :last-child {
margin-bottom: 0;
}
.block--text[data-versal] > p:first-child::first-letter {
-webkit-initial-letter: 2 2;
initial-letter: 2 2;
margin-right: 0.4rem;
font-family: var(--display);
font-weight: 400;
text-transform: uppercase;
text-shadow:
-2px -2px 0 #f6e08f, -1px -1px 0 #f6e08f,
-2px -1px 0 #ecd074, -1px -2px 0 #ecd074,
0 -2px 0 #dcb45a, -2px 0 0 #dcb45a,
1px -1px 0 #cfa347, -1px 1px 0 #cfa347,
2px 0 0 #b98d22, 0 2px 0 #b98d22,
1px 1px 0 #916a12, 2px 2px 0 #916a12,
0 0 3px #b8860b;
}
.turn--user .block--text[data-versal] > p:first-child::first-letter {
color: var(--user-edge);
}
.turn--assistant .block--text[data-versal] > p:first-child::first-letter {
color: var(--assistant-edge);
}
.block--thinking {
padding: 0.6rem 1rem;
border-left: 2px solid var(--rule-soft);
background: var(--leaf-sunk);
border-radius: 0 var(--radius) var(--radius) 0;
color: var(--ink-soft);
font-style: italic;
}
.block--redacted {
margin: 0.5rem 0;
font-family: var(--mono);
font-size: 0.68rem;
font-variant: small-caps;
letter-spacing: 0.08em;
color: var(--ink-faint);
}
.block--redacted::before {
content: "※ ";
color: var(--gold);
}
.block--image {
margin: 1rem 0;
}
.block--image img {
max-width: 100%;
height: auto;
border: 1px solid var(--rule);
border-radius: var(--radius);
}
.block--unknown {
font-family: var(--mono);
font-size: 0.82rem;
}
.block--unknown > summary {
color: var(--ink-faint);
font-style: italic;
}
.marginalia {
margin: 0.55rem 0;
border: 1px solid var(--rule);
border-radius: var(--radius);
background: var(--leaf-sunk);
font-size: 0.86rem;
}
.marginalia__head {
display: flex;
align-items: baseline;
gap: 0.6rem;
padding: 0.35rem 0.7rem;
cursor: pointer;
font-family: var(--mono);
font-size: 0.76rem;
color: var(--ink-soft);
list-style: none;
}
.marginalia > summary::-webkit-details-marker {
display: none;
}
.marginalia > summary::before {
content: "❧";
color: var(--gold);
font-size: 0.9em;
}
.marginalia[open] > summary::before {
content: "❧";
transform: rotate(90deg);
}
@supports (background-clip: text) or (-webkit-background-clip: text) {
.marginalia > summary::before,
.folio hr::before {
background: var(--gold-leaf);
-webkit-background-clip: text;
background-clip: text;
-webkit-text-fill-color: transparent;
}
}
.marginalia[open] > summary {
border-bottom: 1px solid var(--rule-soft);
}
.marginalia--flat .marginalia__head {
cursor: default;
}
.marginalia--flat .marginalia__head::before {
content: "❧";
color: var(--rule);
font-size: 0.9em;
}
.marginalia__tool {
font-weight: 600;
color: var(--sienna);
}
.marginalia__gist {
overflow: hidden;
color: var(--ink-faint);
text-overflow: ellipsis;
white-space: nowrap;
}
.marginalia--flat .marginalia__gist {
overflow: visible;
text-overflow: clip;
white-space: normal;
overflow-wrap: anywhere;
}
.marginalia__note {
flex: none;
color: var(--ink-faint);
font-style: italic;
}
.marginalia--result > summary {
color: var(--ink-faint);
text-transform: uppercase;
letter-spacing: 0.08em;
}
.marginalia[data-error] {
border-color: var(--error-edge);
background: color-mix(in srgb, var(--rubric) 7%, var(--leaf-sunk));
}
.marginalia[data-error] > summary {
color: var(--rubric);
}
.folio details > pre {
margin: 0;
background: none;
border: none;
border-radius: 0;
}
@media (min-width: 64rem) {
.marginalia[open]:has(pre) {
position: relative;
z-index: 1;
width: min(66rem, 92vw);
margin-inline: calc((100% - min(66rem, 92vw)) / 2);
box-shadow: 0 3px 20px rgba(40, 30, 12, 0.16);
}
}
.tool--todos {
margin: 0;
padding: 0.3rem 0.8rem;
list-style: none;
}
.tool__todo {
display: flex;
gap: 0.55rem;
padding: 0.12rem 0;
font-family: var(--mono);
font-size: 0.8rem;
color: var(--ink);
}
.tool__todo::before {
content: "☐";
color: var(--ink-faint);
}
.tool__todo[data-status="in_progress"]::before {
content: "◐";
color: var(--sienna);
}
.tool__todo[data-status="completed"]::before {
content: "☑";
color: var(--verdigris);
}
.tool__todo[data-status="completed"] {
color: var(--ink-faint);
text-decoration: line-through;
}
.tool {
margin: 0;
padding: 0.5rem 0.85rem;
}
.tool--questions,
.tool--answers,
.tool--findings,
.tool--prompts,
.tool--references,
.tool--links,
.tool--facts {
font-family: var(--mono);
font-size: 0.8rem;
}
.tool--questions,
.tool--answers,
.tool--findings,
.tool--prompts,
.tool--references {
list-style: none;
}
.tool__label {
color: var(--sienna);
font-weight: 600;
}
.tool__header {
padding: 0 0.35rem;
border: 1px solid var(--rule);
border-radius: 2px;
color: var(--ink-faint);
font-size: 0.9em;
}
.tool__question + .tool__question {
margin-top: 0.8rem;
}
.tool__ask {
display: flex;
gap: 0.5rem;
margin: 0 0 0.35rem;
color: var(--ink);
}
.tool__options {
margin: 0;
padding: 0;
list-style: none;
}
.tool__option {
padding: 0.15rem 0 0.15rem 0.9rem;
border-left: 2px solid var(--rule);
color: var(--ink-faint);
}
.tool__option + .tool__option {
margin-top: 0.3rem;
}
.tool__label + .tool__description::before {
content: " — ";
}
.tool__answer + .tool__answer {
margin-top: 0.6rem;
}
.tool__answer .tool__ask {
display: block;
margin: 0;
color: var(--ink-faint);
}
.tool__chosen {
margin: 0.1rem 0 0 0.9rem;
border-left: 2px solid var(--sienna);
padding-left: 0.5rem;
color: var(--sienna);
font-weight: 600;
}
.tool__chosen[data-typed] {
border-left-color: var(--rule);
color: var(--ink);
font-style: italic;
font-weight: 400;
}
.tool__finding + .tool__finding {
margin-top: 0.7rem;
}
.tool__where {
display: flex;
flex-wrap: wrap;
gap: 0.4rem;
margin: 0;
}
.tool__line {
color: var(--ink-faint);
}
.tool__summary {
margin: 0.2rem 0 0;
color: var(--ink);
}
.tool__scenario {
margin: 0.2rem 0 0;
color: var(--ink-faint);
}
.tool__prompt {
display: flex;
gap: 0.5rem;
}
.tool__prompt + .tool__prompt {
margin-top: 0.2rem;
}
.tool--prompts {
padding-top: 0;
border-top: 1px solid var(--rule-soft);
}
.tool__reference {
color: var(--sienna);
}
.tool__query {
margin: 0 0 0.4rem;
color: var(--ink-faint);
}
.tool__links {
margin: 0;
padding-left: 1.1rem;
}
.tool__links li {
padding: 0.1rem 0;
}
.tool--facts {
display: grid;
grid-template-columns: auto 1fr;
gap: 0.15rem 0.7rem;
}
.tool--facts dt {
color: var(--ink-faint);
}
.tool--facts dd {
margin: 0;
color: var(--ink);
}
.tool--prose > :first-child {
margin-top: 0;
}
.tool--prose > :last-child {
margin-bottom: 0;
}
.ansi--black { color: var(--ansi-black); }
.ansi--red { color: var(--ansi-red); }
.ansi--green { color: var(--ansi-green); }
.ansi--yellow { color: var(--ansi-yellow); }
.ansi--blue { color: var(--ansi-blue); }
.ansi--magenta { color: var(--ansi-magenta); }
.ansi--cyan { color: var(--ansi-cyan); }
.ansi--white { color: var(--ansi-white); }
.ansi--bright-black { color: var(--ansi-bright-black); }
.ansi--bright-red { color: var(--ansi-bright-red); }
.ansi--bright-green { color: var(--ansi-bright-green); }
.ansi--bright-yellow { color: var(--ansi-bright-yellow); }
.ansi--bright-blue { color: var(--ansi-bright-blue); }
.ansi--bright-magenta { color: var(--ansi-bright-magenta); }
.ansi--bright-cyan { color: var(--ansi-bright-cyan); }
.ansi--bright-white { color: var(--ansi-bright-white); }
.ansi--bg-black { background-color: var(--ansi-black); }
.ansi--bg-red { background-color: var(--ansi-red); }
.ansi--bg-green { background-color: var(--ansi-green); }
.ansi--bg-yellow { background-color: var(--ansi-yellow); }
.ansi--bg-blue { background-color: var(--ansi-blue); }
.ansi--bg-magenta { background-color: var(--ansi-magenta); }
.ansi--bg-cyan { background-color: var(--ansi-cyan); }
.ansi--bg-white { background-color: var(--ansi-white); }
.ansi--bg-bright-black { background-color: var(--ansi-bright-black); }
.ansi--bg-bright-red { background-color: var(--ansi-bright-red); }
.ansi--bg-bright-green { background-color: var(--ansi-bright-green); }
.ansi--bg-bright-yellow { background-color: var(--ansi-bright-yellow); }
.ansi--bg-bright-blue { background-color: var(--ansi-bright-blue); }
.ansi--bg-bright-magenta { background-color: var(--ansi-bright-magenta); }
.ansi--bg-bright-cyan { background-color: var(--ansi-bright-cyan); }
.ansi--bg-bright-white { background-color: var(--ansi-bright-white); }
.ansi[class*="ansi--bg-"] {
padding: 0 0.15em;
border-radius: 2px;
}
.ansi--bold {
font-weight: 700;
}
.ansi--dim {
opacity: 0.65;
}
.ansi--italic {
font-style: italic;
}
.ansi--underline {
text-decoration: underline;
}
.folio pre {
position: relative;
}
.copy-button {
padding: 0.1rem 0.42rem;
border: 1px solid var(--rule);
border-radius: 3px;
background: var(--leaf);
color: var(--ink-faint);
font-family: var(--mono);
font-size: 0.58rem;
letter-spacing: 0.07em;
text-transform: uppercase;
cursor: pointer;
opacity: 0;
transition: opacity 0.12s ease;
}
.folio pre > .copy-button {
position: absolute;
top: 0.3rem;
right: 0.5rem;
z-index: 1;
opacity: 0.6;
}
.folio details > pre > .copy-button {
top: 0;
transform: translateY(-50%);
}
.folio pre:hover > .copy-button,
.copy-button:focus-visible {
opacity: 1;
}
.copy-button--meta {
position: absolute;
top: 2.3rem;
right: 0;
z-index: 2;
opacity: 0.6;
transform: translateY(-50%);
}
.turn:hover .copy-button--meta,
.copy-button--meta:focus-visible {
opacity: 1;
}
.turn:has(.copy-button--meta) > .turn__meta + * {
margin-top: 1rem;
}
.turn:has(.copy-button--meta) > .turn__meta + .block--text {
padding-top: 0.6rem;
}
.copy-button.is-done {
color: var(--verdigris);
border-color: var(--verdigris);
opacity: 1;
}
.folio :is(h1, h2, h3, h4, h5, h6) {
margin: 1.3em 0 0.5em;
font-weight: 600;
line-height: 1.3;
color: var(--ink);
}
.folio :is(h1, h2, h3) {
font-family: var(--display);
font-weight: 400;
}
.folio h1 {
font-size: 1.6rem;
}
.folio h2 {
font-size: 1.2rem;
}
.folio h3 {
font-size: 1.05rem;
}
.folio :is(h4, h5, h6) {
font-size: 1rem;
}
.folio p {
margin: 0.6em 0;
}
.folio a {
color: var(--lapis);
text-underline-offset: 0.15em;
text-decoration-color: color-mix(in srgb, var(--lapis) 40%, transparent);
}
.folio a:hover {
text-decoration-color: currentColor;
}
.folio blockquote {
margin: 0.9em 0;
padding: 0.1em 1rem;
border-left: 3px solid var(--rule);
color: var(--ink-soft);
}
.folio ul,
.folio ol {
padding-left: 1.4rem;
}
.folio li {
margin: 0.15em 0;
}
.folio li::marker {
color: var(--gold);
}
.folio hr {
margin: 1.5em 0;
border: none;
text-align: center;
}
.folio hr::before {
content: "❧";
color: var(--gold);
font-size: 0.95rem;
}
.folio table {
margin: 1em 0;
border-collapse: collapse;
font-size: 0.9rem;
}
.folio :is(th, td) {
padding: 0.35rem 0.7rem;
border: 1px solid var(--rule);
text-align: left;
}
.folio th {
background: var(--leaf-sunk);
font-weight: 600;
}
.folio :not(pre) > code {
padding: 0.1em 0.35em;
background: var(--leaf-sunk);
border: 1px solid var(--rule-soft);
border-radius: 3px;
font-family: var(--mono);
font-size: 0.85em;
}
.folio pre {
padding: 0.7rem 0.9rem;
background: var(--leaf-sunk);
border: 1px solid var(--rule-soft);
border-radius: var(--radius);
font-size: 0.82rem;
line-height: 1.5;
}
.folio pre > code {
display: block;
overflow-x: auto;
}
.folio pre code {
font-family: var(--mono);
}
pre.syntax-highlighting {
color: var(--ink);
}
.ink-comment {
color: var(--syn-comment);
font-style: italic;
}
.ink-string {
color: var(--syn-string);
}
.ink-constant {
color: var(--syn-constant);
}
.ink-keyword {
color: var(--syn-keyword);
}
.ink-storage {
color: var(--syn-storage);
}
.ink-entity {
color: var(--syn-entity);
}
.ink-variable {
color: var(--syn-variable);
}
.ink-support {
color: var(--syn-support);
}
.ink-keyword.ink-operator,
.ink-punctuation {
color: var(--ink-soft);
}
.ink-markup.ink-bold {
font-weight: 700;
}
.ink-markup.ink-italic {
font-style: italic;
}
.ink-markup.ink-heading {
color: var(--rubric);
font-weight: 700;
}
.ink-markup.ink-raw {
color: var(--sienna);
}
.ink-markup.ink-inserted {
color: var(--syn-inserted);
}
.ink-markup.ink-deleted {
color: var(--syn-deleted);
}