:root { /* Abstractions */ --color-bg: white; --color-text: black; --color-text-reversed: white; --color-text-subtle: var(--zinc-500); --color-link: var(--blue-700); --color-border-light: var(--zinc-100); --color-border: var(--zinc-200); --color-border-dark: var(--zinc-400); --color-selected: var(--blue-100); --color-selected-dark: var(--blue-300); /* Accent colors */ --color-primary: var(--zinc-900); --color-secondary: var(--zinc-100); --color-negative: var(--red-600); --color-positive: var(--green-600); /* SVG color values */ --color-filter-text: invert(0); --color-filter-text-reversed: invert(100%); --color-filter-text-subtle: invert(43%) sepia(8%) saturate(340%) hue-rotate(202deg) brightness(99%) contrast(85%); --color-filter-negative: invert(31%) sepia(96%) saturate(4646%) hue-rotate(350deg) brightness(91%) contrast(89%); --color-filter-positive: invert(48%) sepia(74%) saturate(520%) hue-rotate(90deg) brightness(89%) contrast(90%); @media (prefers-color-scheme: dark) { /* Abstractions */ --color-bg: var(--zinc-950); --color-text: white; --color-text-reversed: black; --color-text-subtle: var(--zinc-400); --color-link: var(--sky-400); --color-border-light: var(--zinc-800); --color-border: var(--zinc-800); --color-border-dark: var(--zinc-600); --color-selected: var(--blue-950); --color-selected-dark: var(--blue-800); /* Accent colors */ --color-primary: var(--zinc-50); --color-secondary: var(--zinc-800); --color-negative: var(--red-900); --color-positive: var(--green-900); /* SVG color values */ --color-filter-text: invert(100%); --color-filter-text-reversed: invert(0); --color-filter-text-subtle: invert(55%) sepia(98%) saturate(0%) hue-rotate(299deg) brightness(96%) contrast(94%); --color-filter-negative: invert(15%) sepia(83%) saturate(2066%) hue-rotate(345deg) brightness(87%) contrast(88%); --color-filter-positive: invert(23%) sepia(74%) saturate(495%) hue-rotate(91deg) brightness(88%) contrast(89%); } } * { border-color: var(--color-border); } html { scroll-behavior: smooth; } body { background-color: var(--color-bg); color: var(--color-text); font-synthesis-weight: none; text-rendering: optimizeLegibility; } ::selection { background-color: var(--color-selected); } :-webkit-autofill { -webkit-text-fill-color: var(--color-text); -webkit-box-shadow: 0 0 0px 1000px var(--color-selected) inset; }