:root {
  --text-xxs:   0.667rem;  /* 10px */
  --text-xs:   0.833rem;  /* 12px */
  --text-sm:   1rem; /* 14px */
  --text-base: 1.2rem;     /* 16px */
  --text-lg:   1.44rem; /* 18px */
  --text-xl:   1.728rem;  /* 20px */
  --text-2xl:  2.074rem;   /* 24px */
  --text-3xl:  2.488rem; /* 30px */
  --text-4xl:  2.986rem;  /* 36px */
  --text-5xl:  3.583rem;     /* 48px */
  --text-6xl:  4.299rem;  /* 60px */
  --text-7xl:  5.159rem;   /* 72px */
  --text-8xl:  6.191rem;     /* 96px */
  --text-9xl:  7.429rem;     /* 128px */

  /* Abstractions */
  --color-white: #FFFFFF;
  --color-bg: #F9F9F9;
  --color-text: black;
  --color-text-reversed: white;
  --color-text-subtle: var(--zinc-500);
  --color-link: var(--color-primary);
  --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);
  --color-highlight: var(--yellow-200);

  /* Accent colors */
  /* --color-primary: #c5a561; */
  --color-primary: #EC5C9B;
  --color-secondary: #f0eced;
  /* --color-secondary: #f1e9ec; */
  /* --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(1);
  --color-filter-negative: invert(22%) sepia(85%) saturate(1790%) hue-rotate(339deg) brightness(105%) contrast(108%);
  --color-filter-positive: invert(44%) sepia(89%) saturate(409%) hue-rotate(89deg) brightness(94%) contrast(97%);

  @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(--blue-400);
    --color-border-light: var(--zinc-900);
    --color-border: var(--zinc-800);
    --color-border-dark: var(--zinc-600);
    --color-selected: var(--blue-950);
    --color-selected-dark: var(--blue-800);
    --color-highlight: var(--yellow-900); */

    /* 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(1);
    --color-filter-text-reversed: invert(0);
    --color-filter-negative: invert(15%) sepia(65%) saturate(2067%) hue-rotate(339deg) brightness(102%) contrast(97%);
    --color-filter-positive: invert(23%) sepia(62%) saturate(554%) hue-rotate(91deg) brightness(93%) contrast(91%); */
  }

  /* Aspect Ratios */
  --aspect-mobile: 9 / 16;
}

* {
  border-color: var(--color-border);
  scrollbar-color: #C1C1C1 transparent;
  scrollbar-width: thin;
}

html {
  scroll-behavior: smooth;
  /* 
  font-family: Charter, 'Bitstream Charter', 'Sitka Text', Cambria, serif;
  font-weight: normal; */

  /* font-family: 'Iowan Old Style', 'Palatino Linotype', 'URW Palladio L', P052, serif;
  font-weight: normal; */
  /* font-family: 'Nimbus Mono PS', 'Courier New', monospace */
}

body {
  background-color: var(--color-bg);
  color: var(--color-text);
  font-synthesis-weight: none;
  overscroll-behavior: none;
  text-rendering: optimizeLegibility;
}


.turbo-progress-bar {
  background-color: var(--color-primary);
}

::selection {
  background-color: var(--color-selected);
}