mirror of
https://github.com/tale/headplane.git
synced 2026-10-26 22:47:55 +00:00
165 lines
4.2 KiB
CSS
165 lines
4.2 KiB
CSS
@import "tailwindcss";
|
|
@import "fumadocs-ui/css/preset.css";
|
|
@import "../../app/tokens.css";
|
|
|
|
@theme {
|
|
--font-sans: "Inter Variable", -apple-system, BlinkMacSystemFont, sans-serif;
|
|
}
|
|
|
|
@theme inline {
|
|
--color-fd-background: var(--hp-canvas);
|
|
--color-fd-foreground: var(--hp-fg);
|
|
--color-fd-muted: var(--hp-subtle);
|
|
--color-fd-muted-foreground: var(--hp-muted);
|
|
--color-fd-popover: var(--hp-raised);
|
|
--color-fd-popover-foreground: var(--hp-fg);
|
|
--color-fd-card: var(--hp-surface);
|
|
--color-fd-card-foreground: var(--hp-fg);
|
|
--color-fd-border: var(--hp-line);
|
|
--color-fd-primary: var(--hp-ink);
|
|
--color-fd-primary-foreground: var(--hp-ink-fg);
|
|
--color-fd-secondary: var(--hp-subtle);
|
|
--color-fd-secondary-foreground: var(--hp-fg);
|
|
--color-fd-accent: var(--hp-hover);
|
|
--color-fd-accent-foreground: var(--hp-fg);
|
|
--color-fd-ring: var(--hp-accent);
|
|
--color-fd-overlay: var(--hp-backdrop);
|
|
|
|
--color-fd-info: var(--hp-accent);
|
|
--color-fd-warning: var(--hp-warn);
|
|
--color-fd-error: var(--hp-bad);
|
|
--color-fd-success: var(--hp-ok);
|
|
--color-fd-idea: var(--hp-warn);
|
|
--color-fd-diff-add: var(--hp-ok-subtle);
|
|
--color-fd-diff-add-symbol: var(--hp-ok);
|
|
--color-fd-diff-remove: var(--hp-bad-subtle);
|
|
--color-fd-diff-remove-symbol: var(--hp-bad);
|
|
}
|
|
|
|
/* Fumadocs toggles `.dark` itself, so skip the app's system-preference fallback. */
|
|
html.dark {
|
|
@apply dark-tokens;
|
|
}
|
|
|
|
body {
|
|
font-optical-sizing: auto;
|
|
-webkit-font-smoothing: antialiased;
|
|
-moz-osx-font-smoothing: grayscale;
|
|
}
|
|
|
|
/* Prose: app-style headings, accent links and the app's inline code chip. */
|
|
.prose {
|
|
--tw-prose-body: var(--hp-fg);
|
|
--tw-prose-headings: var(--hp-fg);
|
|
--tw-prose-links: var(--hp-accent);
|
|
--tw-prose-bold: var(--hp-fg);
|
|
--tw-prose-code: var(--hp-fg);
|
|
--tw-prose-bullets: var(--hp-faint);
|
|
--tw-prose-counters: var(--hp-muted);
|
|
--tw-prose-hr: var(--hp-line);
|
|
--tw-prose-quotes: var(--hp-muted);
|
|
--tw-prose-quote-borders: var(--hp-line-strong);
|
|
--tw-prose-th-borders: var(--hp-line-strong);
|
|
--tw-prose-td-borders: var(--hp-line);
|
|
}
|
|
|
|
.prose :where(h1, h2, h3, h4):not(:where(.not-prose *)) {
|
|
overflow-wrap: anywhere;
|
|
}
|
|
|
|
.prose :where(h1):not(:where(.not-prose *)) {
|
|
margin-bottom: 1rem;
|
|
font-size: 1.875rem;
|
|
line-height: 2.25rem;
|
|
font-weight: 600;
|
|
letter-spacing: -0.02em;
|
|
}
|
|
|
|
.prose :where(h2):not(:where(.not-prose *)) {
|
|
margin-top: 2.5rem;
|
|
margin-bottom: 0.75rem;
|
|
font-size: 1.375rem;
|
|
line-height: 1.875rem;
|
|
font-weight: 600;
|
|
letter-spacing: -0.015em;
|
|
}
|
|
|
|
.prose :where(h3):not(:where(.not-prose *)) {
|
|
margin-top: 2rem;
|
|
margin-bottom: 0.5rem;
|
|
font-size: 1.125rem;
|
|
line-height: 1.75rem;
|
|
font-weight: 600;
|
|
letter-spacing: -0.01em;
|
|
}
|
|
|
|
.prose :where(h4):not(:where(.not-prose *)) {
|
|
margin-top: 1.5rem;
|
|
margin-bottom: 0.5rem;
|
|
font-size: 1rem;
|
|
font-weight: 600;
|
|
}
|
|
|
|
.prose :where(a):not(:where(.not-prose *, h1 *, h2 *, h3 *, h4 *, h5 *, h6 *)) {
|
|
font-weight: inherit;
|
|
text-decoration-line: underline;
|
|
text-decoration-color: color-mix(in oklab, var(--hp-accent) 35%, transparent);
|
|
text-underline-offset: 3px;
|
|
overflow-wrap: anywhere;
|
|
}
|
|
|
|
.prose :where(a):not(:where(.not-prose *, h1 *, h2 *, h3 *, h4 *, h5 *, h6 *)):hover {
|
|
text-decoration-color: var(--hp-accent);
|
|
}
|
|
|
|
.prose :where(code):not(:where(pre *, .not-prose *)) {
|
|
padding: 0.125rem 0.25rem;
|
|
border: 1px solid var(--hp-line);
|
|
border-radius: 0.25rem;
|
|
background-color: var(--hp-subtle);
|
|
font-size: 0.875em;
|
|
font-weight: inherit;
|
|
overflow-wrap: anywhere;
|
|
}
|
|
|
|
/* Unhighlighted languages wrap blank lines in an empty span, which Fumadocs' `.line:empty` misses. */
|
|
.shiki .line {
|
|
min-height: 1lh;
|
|
}
|
|
|
|
/* Changelog: releases list tighter than prose. */
|
|
.release-notes > :first-child {
|
|
margin-top: 0;
|
|
}
|
|
|
|
.release-notes > :last-child {
|
|
margin-bottom: 0;
|
|
}
|
|
|
|
.release-section {
|
|
margin-top: 2rem;
|
|
}
|
|
|
|
.release-section > :nth-child(2) {
|
|
margin-top: 0.625rem;
|
|
}
|
|
|
|
.release-section > :last-child {
|
|
margin-bottom: 0;
|
|
}
|
|
|
|
.release-notes :where(h3):not(:where(.not-prose *)) {
|
|
margin-top: 2rem;
|
|
margin-bottom: 0.5rem;
|
|
font-size: 0.875rem;
|
|
line-height: 1.25rem;
|
|
font-weight: 500;
|
|
letter-spacing: normal;
|
|
color: var(--hp-muted);
|
|
}
|
|
|
|
.release-notes :where(li) {
|
|
margin-block: 0.375rem;
|
|
line-height: 1.625;
|
|
}
|