/*fern-site-stylesheet*/:root {
  --header-height: 64px;
  --header-height-real: 64px;
  --mobile-header-height-real: 64px;
  --content-width: 640px;
  --sidebar-width: 288px;
  --page-width: 100vw;
  --logo-height: 28px;
  --font-body: ui-sans-serif, system-ui, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
  --font-heading: ui-sans-serif, system-ui, sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol', 'Noto Color Emoji';
  --font-code: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, 'Liberation Mono', 'Courier New', monospace;
}

:root {
  --typography-body-font-family: var(--font-body);
  --typography-heading-font-family: var(--font-heading);
  --typography-code-font-family: var(--font-code);
}


.light, :root {
  --accent-1: #f6fcf9;
  --accent-2: #edfaf4;
  --accent-3: #d1fae8;
  --accent-4: #b5f7db;
  --accent-5: #98f0cd;
  --accent-6: #79e5bc;
  --accent-7: #64d2a9;
  --accent-8: #49ba92;
  --accent-9: #135b44;
  --accent-10: #004b35;
  --accent-11: #007a56;
  --accent-12: #004731;

  --accent-a1: #1ede9d08;
  --accent-a2: #0ed18411;
  --accent-a3: #04ed8a2d;
  --accent-a4: #01e88949;
  --accent-a5: #01dd8766;
  --accent-a6: #02d08286;
  --accent-a7: #02b7739b;
  --accent-a8: #01a068b6;
  --accent-a9: #004e35ec;
  --accent-a10: #004b35;
  --accent-a11: #007a56;
  --accent-a12: #004731;

  --accent-contrast: #fff;
  --accent-surface: #e9f9f3cc;
  --accent-indicator: #135b44;
  --accent-track: #135b44;
}

@supports (color: color(display-p3 1 1 1)) {
  @media (color-gamut: p3) {
    .light, :root {
      --accent-1: oklch(98.6% 0.008 166.6);
      --accent-2: oklch(97.5% 0.0156 166.6);
      --accent-3: oklch(95.2% 0.0488 166.6);
      --accent-4: oklch(92.5% 0.0771 166.6);
      --accent-5: oklch(89% 0.0997 166.6);
      --accent-6: oklch(84.6% 0.1176 166.6);
      --accent-7: oklch(78.8% 0.1184 166.6);
      --accent-8: oklch(71.2% 0.1184 166.6);
      --accent-9: oklch(42.2% 0.0789 166.6);
      --accent-10: oklch(36.4% 0.0789 166.6);
      --accent-11: oklch(50.7% 0.1184 166.6);
      --accent-12: oklch(35% 0.0789 166.6);

      --accent-a1: color(display-p3 0.0157 0.8314 0.502 / 0.024);
      --accent-a2: color(display-p3 0.0157 0.7843 0.4314 / 0.056);
      --accent-a3: color(display-p3 0.0078 0.8863 0.4706 / 0.143);
      --accent-a4: color(display-p3 0.0039 0.8588 0.4627 / 0.23);
      --accent-a5: color(display-p3 0.0039 0.8118 0.4392 / 0.321);
      --accent-a6: color(display-p3 0.0039 0.7373 0.4039 / 0.416);
      --accent-a7: color(display-p3 0.0039 0.6235 0.3529 / 0.491);
      --accent-a8: color(display-p3 0 0.5294 0.298 / 0.585);
      --accent-a9: color(display-p3 0 0.2235 0.1216 / 0.831);
      --accent-a10: color(display-p3 0 0.2 0.1098 / 0.886);
      --accent-a11: color(display-p3 0 0.3373 0.1843 / 0.795);
      --accent-a12: color(display-p3 0 0.1882 0.1059 / 0.894);

      --accent-contrast: #fff;
      --accent-surface: color(display-p3 0.9255 0.9765 0.9569 / 0.8);
      --accent-indicator: oklch(42.2% 0.0789 166.6);
      --accent-track: oklch(42.2% 0.0789 166.6);
    }
  }
}


.light, :root {
  --grayscale-1: #fdfdfc;
  --grayscale-2: #f9f9f8;
  --grayscale-3: #f1f0ef;
  --grayscale-4: #e9e8e6;
  --grayscale-5: #e2e1de;
  --grayscale-6: #dad9d6;
  --grayscale-7: #cfceca;
  --grayscale-8: #bcbbb5;
  --grayscale-9: #8d8d86;
  --grayscale-10: #82827c;
  --grayscale-11: #63635e;
  --grayscale-12: #21201c;

  --grayscale-a1: #55550003;
  --grayscale-a2: #25250007;
  --grayscale-a3: #20100010;
  --grayscale-a4: #1f150019;
  --grayscale-a5: #1f180021;
  --grayscale-a6: #19130029;
  --grayscale-a7: #19140035;
  --grayscale-a8: #1915014a;
  --grayscale-a9: #0f0f0079;
  --grayscale-a10: #0c0c0083;
  --grayscale-a11: #080800a1;
  --grayscale-a12: #060500e3;

  --grayscale-contrast: #000;
  --grayscale-surface: #ffffffcc;
  --grayscale-indicator: #8d8d86;
  --grayscale-track: #8d8d86;
}

@supports (color: color(display-p3 1 1 1)) {
  @media (color-gamut: p3) {
    .light, :root {
      --grayscale-1: color(display-p3 0.992 0.992 0.989);
      --grayscale-2: color(display-p3 0.977 0.977 0.973);
      --grayscale-3: color(display-p3 0.943 0.942 0.936);
      --grayscale-4: color(display-p3 0.913 0.912 0.903);
      --grayscale-5: color(display-p3 0.885 0.883 0.873);
      --grayscale-6: color(display-p3 0.854 0.852 0.839);
      --grayscale-7: color(display-p3 0.813 0.81 0.794);
      --grayscale-8: color(display-p3 0.738 0.734 0.713);
      --grayscale-9: color(display-p3 0.553 0.553 0.528);
      --grayscale-10: color(display-p3 0.511 0.511 0.488);
      --grayscale-11: color(display-p3 0.388 0.388 0.37);
      --grayscale-12: color(display-p3 0.129 0.126 0.111);

      --grayscale-a1: #55550003;
      --grayscale-a2: #25250007;
      --grayscale-a3: #20100010;
      --grayscale-a4: #1f150019;
      --grayscale-a5: #1f180021;
      --grayscale-a6: #19130029;
      --grayscale-a7: #19140035;
      --grayscale-a8: #1915014a;
      --grayscale-a9: #0f0f0079;
      --grayscale-a10: #0c0c0083;
      --grayscale-a11: #080800a1;
      --grayscale-a12: #060500e3;

      --grayscale-contrast: #000;
      --grayscale-surface: color(display-p3 1 1 1 / 80%);
      --grayscale-indicator: color(display-p3 0.553 0.553 0.528);
      --grayscale-track: color(display-p3 0.553 0.553 0.528);
    }
  }
}


.dark {
  --accent-1: #141c18;
  --accent-2: #17201c;
  --accent-3: #163127;
  --accent-4: #123e2f;
  --accent-5: #154b39;
  --accent-6: #1c5844;
  --accent-7: #236951;
  --accent-8: #277c60;
  --accent-9: #1d7559;
  --accent-10: #1d644d;
  --accent-11: #79cbab;
  --accent-12: #acf1d4;

  --accent-a1: #00d95704;
  --accent-a2: #00f9b708;
  --accent-a3: #00fcae1b;
  --accent-a4: #00faa92a;
  --accent-a5: #00fcb238;
  --accent-a6: #1cffbb46;
  --accent-a7: #31ffbe59;
  --accent-a8: #36ffc16e;
  --accent-a9: #1fffbc66;
  --accent-a10: #1ffdbb54;
  --accent-a11: #94fed6c6;
  --accent-a12: #b5ffe0f0;

  --accent-contrast: #fff;
  --accent-surface: #13272180;
  --accent-indicator: #1d7559;
  --accent-track: #1d7559;
}

@supports (color: color(display-p3 1 1 1)) {
  @media (color-gamut: p3) {
    .dark {
      --accent-1: oklch(21.6% 0.0124 167);
      --accent-2: oklch(23.5% 0.0157 167);
      --accent-3: oklch(28.8% 0.038 167);
      --accent-4: oklch(32.9% 0.0557 167);
      --accent-5: oklch(37.1% 0.0641 167);
      --accent-6: oklch(41.7% 0.0709 167);
      --accent-7: oklch(46.9% 0.08 167);
      --accent-8: oklch(52.9% 0.0929 167);
      --accent-9: oklch(50.4% 0.0929 167);
      --accent-10: oklch(45.4% 0.08 167);
      --accent-11: oklch(78% 0.0929 167);
      --accent-12: oklch(90.5% 0.0801 167);

      --accent-a1: color(display-p3 0 0.9412 0.3725 / 0.014);
      --accent-a2: color(display-p3 0 0.9843 0.7255 / 0.031);
      --accent-a3: color(display-p3 0.1843 0.9961 0.7569 / 0.1);
      --accent-a4: color(display-p3 0.2078 1 0.7176 / 0.157);
      --accent-a5: color(display-p3 0.2902 0.9961 0.7333 / 0.214);
      --accent-a6: color(display-p3 0.3843 1 0.7608 / 0.27);
      --accent-a7: color(display-p3 0.4353 1 0.7647 / 0.344);
      --accent-a8: color(display-p3 0.4588 1 0.7882 / 0.422);
      --accent-a9: color(display-p3 0.4196 1 0.7725 / 0.392);
      --accent-a10: color(display-p3 0.4 1 0.7608 / 0.322);
      --accent-a11: color(display-p3 0.6863 1 0.8588 / 0.766);
      --accent-a12: color(display-p3 0.7804 1 0.8941 / 0.931);

      --accent-contrast: #fff;
      --accent-surface: color(display-p3 0.0902 0.149 0.1333 / 0.5);
      --accent-indicator: oklch(50.4% 0.0929 167);
      --accent-track: oklch(50.4% 0.0929 167);
    }
  }
}


.dark {
  --grayscale-1: #111110;
  --grayscale-2: #191918;
  --grayscale-3: #222221;
  --grayscale-4: #2a2a28;
  --grayscale-5: #31312e;
  --grayscale-6: #3b3a37;
  --grayscale-7: #494844;
  --grayscale-8: #62605b;
  --grayscale-9: #6f6d66;
  --grayscale-10: #7c7b74;
  --grayscale-11: #b5b3ad;
  --grayscale-12: #eeeeec;

  --grayscale-a1: #00000000;
  --grayscale-a2: #f4f4f309;
  --grayscale-a3: #f6f6f513;
  --grayscale-a4: #fefef31b;
  --grayscale-a5: #fbfbeb23;
  --grayscale-a6: #fffaed2d;
  --grayscale-a7: #fffbed3c;
  --grayscale-a8: #fff9eb57;
  --grayscale-a9: #fffae965;
  --grayscale-a10: #fffdee73;
  --grayscale-a11: #fffcf4b0;
  --grayscale-a12: #fffffded;

  --grayscale-contrast: #fff;
  --grayscale-surface: rgba(0, 0, 0, 0.05);
  --grayscale-indicator: #6f6d66;
  --grayscale-track: #6f6d66;
}

@supports (color: color(display-p3 1 1 1)) {
  @media (color-gamut: p3) {
    .dark {
      --grayscale-1: color(display-p3 0.067 0.067 0.063);
      --grayscale-2: color(display-p3 0.098 0.098 0.094);
      --grayscale-3: color(display-p3 0.135 0.135 0.129);
      --grayscale-4: color(display-p3 0.164 0.163 0.156);
      --grayscale-5: color(display-p3 0.193 0.192 0.183);
      --grayscale-6: color(display-p3 0.23 0.229 0.217);
      --grayscale-7: color(display-p3 0.285 0.282 0.267);
      --grayscale-8: color(display-p3 0.384 0.378 0.357);
      --grayscale-9: color(display-p3 0.434 0.428 0.403);
      --grayscale-10: color(display-p3 0.487 0.481 0.456);
      --grayscale-11: color(display-p3 0.707 0.703 0.68);
      --grayscale-12: color(display-p3 0.933 0.933 0.926);

      --grayscale-a1: #00000000;
      --grayscale-a2: #f4f4f309;
      --grayscale-a3: #f6f6f513;
      --grayscale-a4: #fefef31b;
      --grayscale-a5: #fbfbeb23;
      --grayscale-a6: #fffaed2d;
      --grayscale-a7: #fffbed3c;
      --grayscale-a8: #fff9eb57;
      --grayscale-a9: #fffae965;
      --grayscale-a10: #fffdee73;
      --grayscale-a11: #fffcf4b0;
      --grayscale-a12: #fffffded;

      --grayscale-contrast: #fff;
      --grayscale-surface: color(display-p3 0 0 0 / 5%);
      --grayscale-indicator: color(display-p3 0.434 0.428 0.403);
      --grayscale-track: color(display-p3 0.434 0.428 0.403);
    }
  }
}

.light, :root {
  color-scheme: light;
  --accent: rgba(19, 91, 68, 1);
  --background: rgba(253, 253, 252, 1);
  --border: rgba(231, 229, 228, 1);
  --sidebar-background: rgba(250, 250, 249, 1);
  --header-background: rgba(250, 250, 249, 1);
  --card-background: rgba(255, 255, 255, 1);
  --theme-color: #fdfdfc;
}

.dark {
  color-scheme: dark;
  --accent: rgba(29, 117, 89, 1);
  --background: rgba(28, 25, 23, 1);
  --border: rgba(41, 37, 36, 1);
  --sidebar-background: rgba(26, 22, 20, 1);
  --header-background: rgba(26, 22, 20, 1);
  --card-background: rgba(41, 37, 36, 1);
  --theme-color: #1c1917;
}

@import url("https://fonts.googleapis.com/css2?family=Inter:wght@400;450;500;600;700&family=Roboto+Mono:wght@400;500&display=swap");

/* Hide "Built with Fern" badge */
#builtwithfern {
  display: none !important;
}
