:root {
  /* Font families */
  --font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
  --font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;

  /* Font sizes and the line height each comes with */
  --font-size-xs: 0.75rem;
  --font-size-sm: 0.875rem;
  --font-size-base: 1rem;
  --font-size-lg: 1.125rem;
  --font-size-6xl: 3.75rem;
  --font-size-7xl: 4.5rem;
  --line-height-xs: calc(1 / 0.75);
  --line-height-sm: calc(1.25 / 0.875);
  --line-height-base: 1.5;
  --line-height-lg: calc(1.75 / 1.125);
  --line-height-none: 1;

  /* Font weights and letter spacing */
  --font-weight-normal: 400;
  --font-weight-medium: 500;
  --font-weight-semibold: 600;
  --font-weight-bold: 700;
  --tracking-tight: -0.025em;
  --tracking-tighter: -0.05em;

  /* Colors: paper is the page, ink the text on it */
  --color-paper: oklch(0.98 0.0223 87.15);
  --color-black: #000;
  --color-white: #fff;
  --color-gray-500: oklch(55.1% 0.027 264.364);
  --color-gray-800: oklch(27.8% 0.033 256.848);
  --color-muted: #6b7280;
  --color-negative: oklch(50.5% 0.213 27.518);
  --color-positive: oklch(52.7% 0.154 150.069);

  /* Space, in steps of a quarter rem */
  --space-1: 0.25rem;
  --space-2: 0.5rem;
  --space-3: 0.75rem;
  --space-4: 1rem;
  --space-5: 1.25rem;
  --space-6: 1.5rem;
  --space-8: 2rem;
  --space-9: 2.25rem;
  --space-10: 2.5rem;
  --space-12: 3rem;
  --space-16: 4rem;

  /* Corners and elevation */
  --radius-md: 0.375rem;
  --radius-lg: 0.5rem;
  --shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 10%), 0 4px 6px -4px rgb(0 0 0 / 10%);

  /* The widths of the pages' columns */
  --width-home: 650px;
  --width-post-header: 950px;
  --width-post-body: 728px;
  --width-form: 28rem;
}

*, ::before, ::after, ::backdrop {
  box-sizing: border-box;
  border: 0 solid;
  margin: 0;
  padding: 0;
}

html {
  -webkit-text-size-adjust: 100%;
  tab-size: 4;
  line-height: var(--line-height-base);
  font-family: var(--font-sans);
  -webkit-tap-highlight-color: transparent;
  overflow-x: hidden;
}

body {
  background-color: var(--color-paper);
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

body::selection, body ::selection {
  background-color: var(--color-black);
  color: var(--color-white);
}

hr { height: 0; color: inherit; border-top-width: 1px; }
abbr:where([title]) { text-decoration: underline dotted; }
h1, h2, h3, h4, h5, h6 { font-size: inherit; font-weight: inherit; }
a { color: inherit; text-decoration: inherit; }
b, strong { font-weight: bolder; }
code, kbd, samp, pre { font-family: var(--font-mono); font-size: 1em; }
small { font-size: 80%; }
sub, sup { vertical-align: baseline; font-size: 75%; line-height: 0; position: relative; }
sub { bottom: -0.25em; }
sup { top: -0.5em; }
table { text-indent: 0; border-color: inherit; border-collapse: collapse; }
:-moz-focusring { outline: auto; }
progress { vertical-align: baseline; }
summary { display: list-item; }
ol, ul, menu { list-style: none; }
img, svg, video, canvas, audio, iframe, embed, object { vertical-align: middle; display: block; }
img, video { max-width: 100%; height: auto; }
button, input, select, optgroup, textarea {
  font: inherit;
  font-feature-settings: inherit;
  font-variation-settings: inherit;
  letter-spacing: inherit;
  color: inherit;
  opacity: 1;
  background-color: transparent;
  border-radius: 0;
}
::placeholder { opacity: 1; color: color-mix(in oklab, currentcolor 50%, transparent); }
textarea { resize: vertical; }
[hidden]:where(:not([hidden="until-found"])) { display: none !important; }

/* The pages' scripts show and hide with this class */
.hidden { display: none; }
