@layer reset, base, components, modules, utilities;

@layer base {
  :root {
    color-scheme: light dark;
    --rs-font-family-title:
      Geist, BlinkMacSystemFont, -apple-system, Roboto, Helvetica, Arial,
      sans-serif;
    --rs-font-family-body:
      Geist, BlinkMacSystemFont, -apple-system, Roboto, Helvetica, Arial,
      sans-serif;
    --rs-font-family-monospace:
      "Geist Mono", "SFMono-Regular", Menlo, Monaco, Consolas,
      "Liberation Mono", "Courier New", monospace;
    /* Feather icons (feathericons.com) as mask sources for CSS-drawn glyphs.
       Tint via background-color; the stroke color in the SVG is irrelevant. */
    --rs-icon-check: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='20 6 9 17 4 12'/%3E%3C/svg%3E");
    --rs-icon-chevron-down: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='6 9 12 15 18 9'/%3E%3C/svg%3E");
    --rs-icon-chevron-right: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpolyline points='9 18 15 12 9 6'/%3E%3C/svg%3E");
    --rs-font-weight-regular: 400;
    --rs-font-weight-medium: 500;
    --rs-font-weight-semibold: 600;
    --rs-font-weight-bold: 700;
    --rs-font-weight-extrabold: 800;
    --rs-font-size-title-1: 6rem;
    --rs-line-height-title-1: 6.25rem;
    --rs-font-size-title-2: 5rem;
    --rs-line-height-title-2: 5.25rem;
    --rs-font-size-title-3: 4rem;
    --rs-line-height-title-3: 4.25rem;
    --rs-font-size-title-4: 3.5rem;
    --rs-line-height-title-4: 3.75rem;
    --rs-font-size-title-5: 3rem;
    --rs-line-height-title-5: 3.25rem;
    --rs-font-size-title-6: 2.25rem;
    --rs-line-height-title-6: 2.5rem;
    --rs-font-size-featured-1: 2rem;
    --rs-line-height-featured-1: 2.5rem;
    --rs-font-size-featured-2: 1.5rem;
    --rs-line-height-featured-2: 2rem;
    --rs-font-size-featured-3: 1.25rem;
    --rs-line-height-featured-3: 1.75rem;
    --rs-font-size-body-1: 1.125rem;
    --rs-line-height-body-1: 1.75rem;
    --rs-font-size-body-2: 1rem;
    --rs-line-height-body-2: 1.5rem;
    --rs-font-size-body-3: 0.875rem;
    --rs-line-height-body-3: 1.25rem;
    --rs-font-size-caption-1: 0.75rem;
    --rs-line-height-caption-1: 1rem;
    --rs-font-size-caption-2: 0.625rem;
    --rs-line-height-caption-2: 0.75rem;
    --rs-unit-base: 4px;
    --rs-unit-x1: 4px;
    --rs-unit-x2: 8px;
    --rs-unit-x3: 12px;
    --rs-unit-x4: 16px;
    --rs-unit-x5: 20px;
    --rs-unit-x6: 24px;
    --rs-unit-x7: 28px;
    --rs-unit-x8: 32px;
    --rs-unit-x9: 36px;
    --rs-unit-x10: 40px;
    --rs-radius-small: 4px;
    --rs-radius-medium: 8px;
    --rs-radius-large: 12px;
    --rs-radius-circular: 9999px;
    --rs-color-brand: oklch(0.58 0.24 285);
    --rs-color-white: #fff;
    --rs-color-black: #000;
    --rs-color-background-primary: light-dark(#5a58f2, #524fea);
    --rs-color-background-primary-faded: light-dark(#ecebfe, #252544);
    --rs-color-border-primary: light-dark(#3b38ed, #8c8bf3);
    --rs-color-border-primary-faded: light-dark(#dedcfb, #323164);
    --rs-color-foreground-primary: light-dark(#4f4cf0, #8b8af7);
    --rs-color-background-critical: light-dark(#e22c2c, #d02626);
    --rs-color-background-critical-faded: light-dark(#fdeded, #3e1f1f);
    --rs-color-border-critical: light-dark(#bf2424, #f46969);
    --rs-color-border-critical-faded: light-dark(#f3dad6, #5a2e29);
    --rs-color-foreground-critical: light-dark(#c42525, #f36a6a);
    --rs-color-background-warning: light-dark(#facc15, #f1c512);
    --rs-color-background-warning-faded: light-dark(#fffae9, #2c271f);
    --rs-color-border-warning: light-dark(#cfa90f, #b4920a);
    --rs-color-border-warning-faded: light-dark(#ece2c4, #453c1e);
    --rs-color-foreground-warning: light-dark(#7b6305, #d0a70e);
    --rs-color-background-positive: light-dark(#118850, #14784a);
    --rs-color-background-positive-faded: light-dark(#edfdf5, #1f2a23);
    --rs-color-border-positive: light-dark(#0c6e40, #21ab6b);
    --rs-color-border-positive-faded: light-dark(#d2eddb, #264431);
    --rs-color-foreground-positive: light-dark(#0d7544, #18ab66);
    --rs-color-background-neutral: light-dark(#dfe2ea, #494f60);
    --rs-color-background-neutral-faded: light-dark(#f3f3f5, #222835);
    --rs-color-border-neutral: light-dark(#0000001f, #ffffff24);
    --rs-color-border-neutral-faded: light-dark(#00000014, #ffffff14);
    --rs-color-foreground-neutral: light-dark(#14181f, #eff1f5);
    --rs-color-foreground-neutral-faded: light-dark(#5b667e, #c0c6d6);
    --rs-color-background-disabled: light-dark(#eceef2, #1e212a);
    --rs-color-background-disabled-faded: light-dark(#f5f6f9, #171921);
    --rs-color-border-disabled: light-dark(#dfe2ea, #262a34);
    --rs-color-foreground-disabled: light-dark(#c6ccda, #434959);
    --rs-color-background-elevation-base: light-dark(#fff, #15171e);
    --rs-color-background-elevation-raised: light-dark(#fff, #191b23);
    --rs-color-background-elevation-overlay: light-dark(#fff, #1c1f28);
    --rs-color-background-page: light-dark(#fff, #0f1116);
    --rs-color-background-page-faded: light-dark(#f9f9fb, #111319);
    --rs-color-on-background-primary: #fff;
    --rs-color-on-background-critical: #fff;
    --rs-color-on-background-warning: #000;
    --rs-color-on-background-positive: #fff;
    --rs-color-on-background-neutral: light-dark(#000, #fff);
    --rs-color-on-brand: #fff;
    --rs-duration-rapid: 100ms;
    --rs-duration-fast: 200ms;
    --rs-duration-medium: 300ms;
    --rs-duration-slow: 400ms;
    --rs-scroll-fade-size: 2rem;
    --rs-scroll-fade-range: 8rem;
    --rs-scrollbar-size: 14px;
    --rs-easing-standard: cubic-bezier(0.4, 0, 0.2, 1);
    --rs-easing-accelerate: cubic-bezier(0.4, 0, 1, 1);
    --rs-easing-decelerate: cubic-bezier(0, 0, 0.2, 1);
    --rs-shadow-raised:
      0 1px 5px -4px rgb(0 0 0 / 50%), 0 4px 8px rgb(0 0 0 / 5%);
    --rs-shadow-overlay:
      0 5px 10px rgb(0 0 0 / 5%), 0 15px 25px rgb(0 0 0 / 7%);
    --rs-shadow-focus:
      0 0 0 2px var(--rs-color-background-elevation-base),
      0 0 0 4px var(--rs-color-border-primary);
    --rs-shadow-focus-inset:
      inset 0 0 0 2px var(--rs-color-border-primary),
      inset 0 0 0 4px var(--rs-color-background-elevation-base);
    --rs-z-index-relative: 10;
    --rs-z-index-absolute: 100;
    --rs-z-index-fixed: 200;
  }

  @media (prefers-reduced-motion: reduce) {
    :root {
      --rs-duration-rapid: 0.01ms;
      --rs-duration-fast: 0.01ms;
      --rs-duration-medium: 0.01ms;
      --rs-duration-slow: 0.01ms;
    }

    :where([data-rs-theme], [data-rs-theme] *) {
      animation-duration: 0.01ms !important;
      animation-iteration-count: 1 !important;
      scroll-behavior: auto !important;
      transition-duration: 0.01ms !important;
    }
  }

  @supports (animation-timeline: scroll()) {
    @property --rs-scroll-fade-start {
      syntax: "<number>";
      inherits: false;
      initial-value: 0;
    }

    @property --rs-scroll-fade-end {
      syntax: "<number>";
      inherits: false;
      initial-value: 0;
    }

    @keyframes rs-scroll-fade-start {
      from {
        --rs-scroll-fade-start: 0;
      }

      to {
        --rs-scroll-fade-start: 1;
      }
    }

    @keyframes rs-scroll-fade-end {
      from {
        --rs-scroll-fade-end: 1;
      }

      to {
        --rs-scroll-fade-end: 0;
      }
    }
  }
}
