:root {
	color-scheme: dark;

	--mf-color-background: #0a0a0a;
	--mf-color-surface: #0f0f0d;
	--mf-color-surface-raised: #17150f;
	--mf-color-text: #ffcf6b;

	/* Above the amber entirely: a flash, a live digit, the one glyph that must outrank
	   a title. Nothing at rest wears it. */
	--mf-color-text-bright: #fff;
	--mf-color-text-muted: #8a6f33;

	/* The name on a listing line: the brightest thing on it. */
	--mf-color-text-title: #fffbe5;
	--mf-color-accent: #ffb000;
	--mf-color-accent-strong: #ffd166;

	/* Amber that has receded: a spent state or a category that must stay legible while
	   ranking below the body text. */
	--mf-color-accent-dim: #b97f06;
	--mf-color-border: #3a2e10;
	--mf-color-border-strong: #7a5715;
	--mf-color-focus: #ffb000;
	--mf-color-scrim: rgb(0 0 0 / 0.5);

	/* What the focused window pushes everything else behind. Lighter than the scrim:
	   a modal refuses the screen, a focused window only stands in front of it. */
	--mf-color-dim: rgb(0 0 0 / 0.3);

	/* The two phosphors the tube can strike besides amber. Named by colour because they
	   are worn for reasons that are not status: a prompt caret, a category, a range mark. */
	--mf-color-green: #33ff66;
	--mf-color-cyan: #4ddbe0;

	/* Status wears the same phosphors. One value, so a green "OK" and a green caret can
	   never drift apart. */
	--mf-color-success: var(--mf-color-green);
	--mf-color-danger: #ff5a3c;
	--mf-color-danger-strong: #ff9a80;

	/* The wash under a surface that holds the one live object on the screen. */
	--mf-color-accent-soft: color-mix(in srgb, var(--mf-color-accent) 5%, var(--mf-color-surface));

	/* The same wash over whatever it lies on, for a mark that is only a hint. */
	--mf-color-accent-faint: color-mix(in srgb, var(--mf-color-accent) 8%, transparent);

	/* Dim at rest: a scrollbar states how far along it is, it does not ask to be used. */
	--mf-color-scroll-thumb: color-mix(in srgb, var(--mf-color-accent) 35%, transparent);

	/* No @font-face anywhere: the tube runs on whatever mono the system has. */
	--mf-font-mono: ui-monospace, "SFMono-Regular", Menlo, Consolas, monospace;
	--mf-font-size: 1rem;
	--mf-font-size-tiny: 0.6875rem;
	--mf-font-size-label: 0.8125rem;
	--mf-font-size-small: 0.875rem;
	--mf-font-line-height: 1.5;
	--mf-font-line-height-tight: 1.2;
	/* Prose only: a passage is read, not scanned, so it breathes wider than a label. */
	--mf-font-line-height-prose: 1.6;

	/* Tracked capitals, the terminal's one heading device. Three steps, and no sheet
	   writes a tracking of its own. */
	--mf-track-caption: 0.12em;
	--mf-track-label: 0.15em;
	--mf-track-heading: 0.18em;

	/* Headings only: a label is told apart by weight and hue, never by size. */
	--mf-font-weight-strong: 700;

	--mf-space-1: 0.25rem;
	--mf-space-2: 0.5rem;
	--mf-space-3: 0.75rem;
	--mf-space-4: 1rem;
	--mf-space-5: 1.5rem;
	--mf-space-6: 2rem;
	--mf-space-7: 3rem;
	--mf-space-8: 4rem;

	/* A chip's own height. Shared, because a host that draws its own line beside a
	   card's badge has to reserve the same band. */
	--mf-subject-badge-height: 1.5rem;

	--mf-border-width: 1px;
	--mf-border-color: var(--mf-color-border);
	--mf-border: var(--mf-border-width) solid var(--mf-border-color);
	--mf-border-strong: var(--mf-border-width) solid var(--mf-color-border-strong);

	--mf-transition-fast: 120ms ease;

	--mf-z-raised: 10;
	--mf-z-overlay: 100;
	--mf-z-tooltip: 350;
	--mf-z-pointer: 400;
	/* Over the whole terminal, under the tube: standby is a screen the CRT still runs on. */
	--mf-z-standby: 450;
	--mf-z-crt: 500;
}
