/*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: 35px;
  --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: #fefcfb;
  --accent-2: #fff6f1;
  --accent-3: #ffeae0;
  --accent-4: #ffd7c4;
  --accent-5: #ffc9b1;
  --accent-6: #ffb99b;
  --accent-7: #fca788;
  --accent-8: #f18e69;
  --accent-9: #ed5807;
  --accent-10: #dc4e00;
  --accent-11: #d44500;
  --accent-12: #592c1b;

  --accent-a1: #c0400004;
  --accent-a2: #ff5c000e;
  --accent-a3: #ff53001f;
  --accent-a4: #ff53013b;
  --accent-a5: #ff4f004e;
  --accent-a6: #ff4d0064;
  --accent-a7: #f9430077;
  --accent-a8: #e83f0096;
  --accent-a9: #ed5300f8;
  --accent-a10: #dc4e00;
  --accent-a11: #d44500;
  --accent-a12: #451300e4;

  --accent-contrast: #fff;
  --accent-surface: #fff4eecc;
  --accent-indicator: #ed5807;
  --accent-track: #ed5807;
}

@supports (color: color(display-p3 1 1 1)) {
  @media (color-gamut: p3) {
    .light, :root {
      --accent-1: oklch(99.2% 0.0028 41.07);
      --accent-2: oklch(98% 0.0137 41.07);
      --accent-3: oklch(95.7% 0.0334 41.07);
      --accent-4: oklch(92.1% 0.0741 41.07);
      --accent-5: oklch(89.1% 0.0982 41.07);
      --accent-6: oklch(85.6% 0.104 41.07);
      --accent-7: oklch(80.5% 0.1096 41.07);
      --accent-8: oklch(74.5% 0.1307 41.07);
      --accent-9: oklch(65.1% 0.1976 41.07);
      --accent-10: oklch(61.1% 0.191 41.07);
      --accent-11: oklch(58.7% 0.191 41.07);
      --accent-12: oklch(34.9% 0.0719 41.07);

      --accent-a1: color(display-p3 0.7569 0.2667 0.0235 / 0.016);
      --accent-a2: color(display-p3 0.8471 0.3098 0.0039 / 0.051);
      --accent-a3: color(display-p3 0.8706 0.3373 0.0039 / 0.118);
      --accent-a4: color(display-p3 0.8941 0.3059 0.0039 / 0.22);
      --accent-a5: color(display-p3 0.8941 0.302 0.0039 / 0.291);
      --accent-a6: color(display-p3 0.8863 0.298 0.0039 / 0.373);
      --accent-a7: color(display-p3 0.8667 0.2588 0.0039 / 0.444);
      --accent-a8: color(display-p3 0.8039 0.2471 0 / 0.561);
      --accent-a9: color(display-p3 0.8353 0.2627 0 / 0.836);
      --accent-a10: color(display-p3 0.7686 0.2392 0 / 0.859);
      --accent-a11: color(display-p3 0.7333 0.2118 0 / 0.871);
      --accent-a12: color(display-p3 0.2314 0.0667 0 / 0.879);

      --accent-contrast: #fff;
      --accent-surface: color(display-p3 1 0.9569 0.9373 / 0.8);
      --accent-indicator: oklch(65.1% 0.1976 41.07);
      --accent-track: oklch(65.1% 0.1976 41.07);
    }
  }
}


.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: #16100d;
  --accent-2: #1f1512;
  --accent-3: #37190e;
  --accent-4: #4d1903;
  --accent-5: #5c2006;
  --accent-6: #6c2d14;
  --accent-7: #843e22;
  --accent-8: #aa502c;
  --accent-9: #ed5807;
  --accent-10: #df4a00;
  --accent-11: #ff9569;
  --accent-12: #fdd6c8;

  --accent-a1: #e6000006;
  --accent-a2: #ff55020f;
  --accent-a3: #fe430029;
  --accent-a4: #fd310041;
  --accent-a5: #fd400051;
  --accent-a6: #fe5a1662;
  --accent-a7: #fd6e327c;
  --accent-a8: #ff733aa4;
  --accent-a9: #ff5e07ec;
  --accent-a10: #ff5300dd;
  --accent-a11: #ff9569;
  --accent-a12: #ffd8cafd;

  --accent-contrast: #fff;
  --accent-surface: #2d191280;
  --accent-indicator: #ed5807;
  --accent-track: #ed5807;
}

@supports (color: color(display-p3 1 1 1)) {
  @media (color-gamut: p3) {
    .dark {
      --accent-1: oklch(17.9% 0.0117 41.07);
      --accent-2: oklch(20.7% 0.0171 41.07);
      --accent-3: oklch(25.4% 0.0519 41.07);
      --accent-4: oklch(29.1% 0.0851 41.07);
      --accent-5: oklch(33.2% 0.0946 41.07);
      --accent-6: oklch(38.2% 0.0973 41.07);
      --accent-7: oklch(44.9% 0.1052 41.07);
      --accent-8: oklch(53.8% 0.129 41.07);
      --accent-9: oklch(65.1% 0.1976 41.07);
      --accent-10: oklch(61.1% 0.1976 41.07);
      --accent-11: oklch(78.8% 0.1671 41.07);
      --accent-12: oklch(90.5% 0.0476 41.07);

      --accent-a1: color(display-p3 0.9922 0 0 / 0.017);
      --accent-a2: color(display-p3 0.9922 0.3765 0.0784 / 0.051);
      --accent-a3: color(display-p3 1 0.3412 0 / 0.143);
      --accent-a4: color(display-p3 1 0.2588 0 / 0.227);
      --accent-a5: color(display-p3 1 0.3294 0.0078 / 0.286);
      --accent-a6: color(display-p3 1 0.4275 0.1647 / 0.349);
      --accent-a7: color(display-p3 1 0.498 0.2667 / 0.446);
      --accent-a8: color(display-p3 1 0.5137 0.298 / 0.597);
      --accent-a9: color(display-p3 1 0.4392 0.1804 / 0.853);
      --accent-a10: color(display-p3 1 0.4039 0.1569 / 0.795);
      --accent-a11: color(display-p3 1 0.6353 0.4706 / 0.942);
      --accent-a12: color(display-p3 0.9961 0.8667 0.8157 / 0.967);

      --accent-contrast: #fff;
      --accent-surface: color(display-p3 0.1569 0.0941 0.0667 / 0.5);
      --accent-indicator: oklch(65.1% 0.1976 41.07);
      --accent-track: oklch(65.1% 0.1976 41.07);
    }
  }
}


.dark {
  --grayscale-1: #111113;
  --grayscale-2: #18191b;
  --grayscale-3: #212225;
  --grayscale-4: #272a2d;
  --grayscale-5: #2e3135;
  --grayscale-6: #363a3f;
  --grayscale-7: #43484e;
  --grayscale-8: #5a6169;
  --grayscale-9: #696e77;
  --grayscale-10: #777b84;
  --grayscale-11: #b0b4ba;
  --grayscale-12: #edeef0;

  --grayscale-a1: #00000000;
  --grayscale-a2: #d8f4f609;
  --grayscale-a3: #ddeaf814;
  --grayscale-a4: #d3edf81d;
  --grayscale-a5: #d9edfe25;
  --grayscale-a6: #d6ebfd30;
  --grayscale-a7: #d9edff40;
  --grayscale-a8: #d9edff5d;
  --grayscale-a9: #dfebfd6d;
  --grayscale-a10: #e5edfd7b;
  --grayscale-a11: #f1f7feb5;
  --grayscale-a12: #fcfdffef;

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

@supports (color: color(display-p3 1 1 1)) {
  @media (color-gamut: p3) {
    .dark {
      --grayscale-1: color(display-p3 0.067 0.067 0.074);
      --grayscale-2: color(display-p3 0.095 0.098 0.105);
      --grayscale-3: color(display-p3 0.13 0.135 0.145);
      --grayscale-4: color(display-p3 0.156 0.163 0.176);
      --grayscale-5: color(display-p3 0.183 0.191 0.206);
      --grayscale-6: color(display-p3 0.215 0.226 0.244);
      --grayscale-7: color(display-p3 0.265 0.28 0.302);
      --grayscale-8: color(display-p3 0.357 0.381 0.409);
      --grayscale-9: color(display-p3 0.415 0.431 0.463);
      --grayscale-10: color(display-p3 0.469 0.483 0.514);
      --grayscale-11: color(display-p3 0.692 0.704 0.728);
      --grayscale-12: color(display-p3 0.93 0.933 0.94);

      --grayscale-a1: #00000000;
      --grayscale-a2: #d8f4f609;
      --grayscale-a3: #ddeaf814;
      --grayscale-a4: #d3edf81d;
      --grayscale-a5: #d9edfe25;
      --grayscale-a6: #d6ebfd30;
      --grayscale-a7: #d9edff40;
      --grayscale-a8: #d9edff5d;
      --grayscale-a9: #dfebfd6d;
      --grayscale-a10: #e5edfd7b;
      --grayscale-a11: #f1f7feb5;
      --grayscale-a12: #fcfdffef;

      --grayscale-contrast: #fff;
      --grayscale-surface: color(display-p3 0 0 0 / 5%);
      --grayscale-indicator: color(display-p3 0.415 0.431 0.463);
      --grayscale-track: color(display-p3 0.415 0.431 0.463);
    }
  }
}

.light, :root {
  color-scheme: light;
  --accent: rgba(237, 88, 7, 1);
  --background: rgba(255, 255, 255, 1);
  --border: initial;
  --sidebar-background: initial;
  --header-background: color-mix(in srgb, var(--background), transparent 30%);
  --card-background: initial;
  --theme-color: #fff;
}

.dark {
  color-scheme: dark;
  --accent: rgba(237, 88, 7, 1);
  --background: rgba(17, 17, 19, 1);
  --border: initial;
  --sidebar-background: initial;
  --header-background: color-mix(in srgb, var(--background), transparent 30%);
  --card-background: initial;
  --theme-color: #111113;
}

.fern-header-navbar-links .fern-button[class*="filled"] {
  background-color: #ed2024 !important;
  background-image: linear-gradient(45deg, #ed2024, #ff8f1c) !important;
  border: 0 !important;
  color: #fff !important;
  font-weight: 700 !important;
  border-radius: 9999px !important;
}

.fern-header-navbar-links .fern-button[class*="filled"]:hover {
  background-color: #ed2024 !important;
  background-image: none !important;
}
.fern-header-navbar-links .fern-button[class*="filled"]:focus-visible {
  background-color: #ed2024 !important;
  background-image: none !important;
}

/* Subtle linear gradient background */
.fern-background-image {
  background-image: linear-gradient(180deg, color-mix(in srgb, var(--accent) 15%, transparent) 0%, transparent 50%);
}

/* ── Welcome page styling ── */

.unicorn-anchor .fern-page-heading,
.unicorn-anchor .fern-page-heading-wrapper,
.unicorn-anchor header.my-8 {
  display: none;
}

.unicorn-anchor {
  max-width: 960px;
  margin: 0 auto;
  padding: 80px 24px 64px;
  text-align: center;
}

.unicorn-anchor h1 {
  font-size: 5rem;
  line-height: 1.1;
  margin-bottom: 12px;
  pointer-events: none;
  cursor: default;
}

.unicorn-anchor .landing-subtitle {
  font-size: 1.5rem;
  opacity: 0.7;
  margin-bottom: 80px;
}

.unicorn-anchor .fern-card {
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  background-color: rgba(255, 255, 255, 0.01);
  text-align: left;
}

.unicorn-anchor .fern-card .font-semibold {
  font-size: 1.25rem;
}

.unicorn-anchor .landing-help {
  margin-top: 64px;
}

/* UnicornStudio canvas inside Fern's background container */
#unicorn-embed {
  position: absolute;
  inset: 0;
  pointer-events: none;
  -webkit-mask-image: linear-gradient(to bottom, black 40%, transparent 85%);
  mask-image: linear-gradient(to bottom, black 40%, transparent 85%);
}

#unicorn-embed::before {
  content: "";
  position: absolute;
  top: -10%;
  left: 50%;
  translate: -50% 0;
  width: 60%;
  height: 50%;
  background: radial-gradient(ellipse at center, var(--accent), transparent 70%);
  filter: blur(80px);
  mix-blend-mode: screen;
  opacity: 0.5;
  pointer-events: none;
  z-index: 1;
}

:root.dark #unicorn-embed::before {
  background: radial-gradient(ellipse at center, var(--accent), transparent 70%);
}

:root.light #unicorn-embed::before {
  background: radial-gradient(ellipse at center, var(--accent-2), transparent 70%);
}

#unicorn-embed canvas {
  position: relative;
  z-index: 0;
  filter: url(#accent-colorize);
}

:root.light #unicorn-embed canvas {
  opacity: 1;
}

:root.dark #unicorn-embed canvas {
  opacity: 0.8;
}
